An #endif in the wrong place would cause compile failure on powerpcle.

Using bl instead of b doesn't cause runtime failures as you might think,
but does mess the processor branch prediction.
This commit is contained in:
Alan Modra
2013-11-18 06:36:03 -05:00
committed by Anthony Green
parent 34f878a5ef
commit 16d56c51ad
2 changed files with 7 additions and 2 deletions

View File

@@ -1,3 +1,8 @@
2013-11-16 Alan Modra <amodra@gmail.com>
* src/powerpc/ppc_closure.S: Move errant #endif to where it belongs.
Don't bl .Luint128.
2013-11-16 Alan Modra <amodra@gmail.com>
* src/powerpc/ffi.c (ffi_prep_cif_machdep_core): Use #if _CALL_ELF

View File

@@ -238,7 +238,7 @@ ENTRY(ffi_closure_SYSV)
lwz %r3,112+0(%r1)
lwz %r4,112+4(%r1)
lwz %r5,112+8(%r1)
bl .Luint128
b .Luint128
# The return types below are only used when the ABI type is FFI_SYSV.
# case FFI_SYSV_TYPE_SMALL_STRUCT + 1. One byte struct.
@@ -320,13 +320,13 @@ ENTRY(ffi_closure_SYSV)
mtlr %r0
addi %r1,%r1,144
blr
#endif
.Luint128:
lwz %r6,112+12(%r1)
mtlr %r0
addi %r1,%r1,144
blr
#endif
END(ffi_closure_SYSV)