parisc: use long branch in fork_like macro
The "b" branch instruction used in the fork_like macro only can handle 17-bit pc-relative offsets. This fails with an out of range offset with some .config files. Rewrite to use the "be" instruction which can branch to any address in a space. Signed-off-by: John David Anglin <dave.anglin@bell.net> Signed-off-by: Helge Deller <deller@gmx.de>
This commit is contained in:
parent
93782eba49
commit
bbbfde7820
1 changed files with 2 additions and 1 deletions
|
@ -1702,7 +1702,8 @@ ENTRY(sys_\name\()_wrapper)
|
||||||
ldo TASK_REGS(%r1),%r1
|
ldo TASK_REGS(%r1),%r1
|
||||||
reg_save %r1
|
reg_save %r1
|
||||||
mfctl %cr27, %r28
|
mfctl %cr27, %r28
|
||||||
b sys_\name
|
ldil L%sys_\name, %r31
|
||||||
|
be R%sys_\name(%sr4,%r31)
|
||||||
STREG %r28, PT_CR27(%r1)
|
STREG %r28, PT_CR27(%r1)
|
||||||
ENDPROC(sys_\name\()_wrapper)
|
ENDPROC(sys_\name\()_wrapper)
|
||||||
.endm
|
.endm
|
||||||
|
|
Loading…
Add table
Reference in a new issue