powerpc: Fix ffi_go_closure_linux64
Unlike ffi_closure_LINUX64, this entry point is called normally, so we already have the TOC in R2 and the closure in R11. * powerpc/linux64_closure.S (ffi_closure_LINUX64): Remove a register dependency chain. (ffi_go_closure_linux64): Don't load r11 or r2.
This commit is contained in:
committed by
Alan Modra
parent
fa1040c111
commit
590663b30b
@@ -101,7 +101,7 @@ ffi_closure_LINUX64:
|
|||||||
# else
|
# else
|
||||||
# copy r2 to r11 and load TOC into r2
|
# copy r2 to r11 and load TOC into r2
|
||||||
mr %r11, %r2
|
mr %r11, %r2
|
||||||
ld %r2, 16(%r11)
|
ld %r2, 16(%r2)
|
||||||
|
|
||||||
mflr %r0
|
mflr %r0
|
||||||
# Save general regs into parm save area
|
# Save general regs into parm save area
|
||||||
@@ -444,10 +444,6 @@ ffi_go_closure_linux64:
|
|||||||
# load up the pointer to the parm save area
|
# load up the pointer to the parm save area
|
||||||
mr %r7, %r12
|
mr %r7, %r12
|
||||||
# else
|
# else
|
||||||
# copy r2 to r11 and load TOC into r2
|
|
||||||
mr %r11, %r2
|
|
||||||
ld %r2, 16(%r11)
|
|
||||||
|
|
||||||
mflr %r0
|
mflr %r0
|
||||||
# Save general regs into parm save area
|
# Save general regs into parm save area
|
||||||
# This is the parameter save area set up by our caller.
|
# This is the parameter save area set up by our caller.
|
||||||
|
|||||||
Reference in New Issue
Block a user