1
0
Fork 0

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>
hifive-unleashed-5.1
John David Anglin 2013-05-04 19:16:41 +00:00 committed by Helge Deller
parent 93782eba49
commit bbbfde7820
1 changed files with 2 additions and 1 deletions

View File

@ -1702,7 +1702,8 @@ ENTRY(sys_\name\()_wrapper)
ldo TASK_REGS(%r1),%r1
reg_save %r1
mfctl %cr27, %r28
b sys_\name
ldil L%sys_\name, %r31
be R%sys_\name(%sr4,%r31)
STREG %r28, PT_CR27(%r1)
ENDPROC(sys_\name\()_wrapper)
.endm