projects
/
platform
/
upstream
/
gcc48.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Imported Upstream version 4.8.1
[platform/upstream/gcc48.git]
/
libffi
/
src
/
powerpc
/
linux64_closure.S
diff --git
a/libffi/src/powerpc/linux64_closure.S
b/libffi/src/powerpc/linux64_closure.S
index
f7aa2c9
..
b1e1219
100644
(file)
--- a/
libffi/src/powerpc/linux64_closure.S
+++ b/
libffi/src/powerpc/linux64_closure.S
@@
-32,16
+32,24
@@
#ifdef __powerpc64__
FFI_HIDDEN (ffi_closure_LINUX64)
#ifdef __powerpc64__
FFI_HIDDEN (ffi_closure_LINUX64)
- FFI_HIDDEN (.ffi_closure_LINUX64)
- .globl ffi_closure_LINUX64, .ffi_closure_LINUX64
+ .globl ffi_closure_LINUX64
.section ".opd","aw"
.align 3
ffi_closure_LINUX64:
.section ".opd","aw"
.align 3
ffi_closure_LINUX64:
+#ifdef _CALL_LINUX
+ .quad .L.ffi_closure_LINUX64,.TOC.@tocbase,0
+ .type ffi_closure_LINUX64,@function
+ .text
+.L.ffi_closure_LINUX64:
+#else
+ FFI_HIDDEN (.ffi_closure_LINUX64)
+ .globl .ffi_closure_LINUX64
.quad .ffi_closure_LINUX64,.TOC.@tocbase,0
.size ffi_closure_LINUX64,24
.type .ffi_closure_LINUX64,@function
.text
.ffi_closure_LINUX64:
.quad .ffi_closure_LINUX64,.TOC.@tocbase,0
.size ffi_closure_LINUX64,24
.type .ffi_closure_LINUX64,@function
.text
.ffi_closure_LINUX64:
+#endif
.LFB1:
# save general regs into parm save area
std %r3, 48(%r1)
.LFB1:
# save general regs into parm save area
std %r3, 48(%r1)
@@
-91,7
+99,11
@@
ffi_closure_LINUX64:
addi %r6, %r1, 128
# make the call
addi %r6, %r1, 128
# make the call
+#ifdef _CALL_LINUX
+ bl ffi_closure_helper_LINUX64
+#else
bl .ffi_closure_helper_LINUX64
bl .ffi_closure_helper_LINUX64
+#endif
.Lret:
# now r3 contains the return type
.Lret:
# now r3 contains the return type
@@
-194,7
+206,11
@@
ffi_closure_LINUX64:
.LFE1:
.long 0
.byte 0,12,0,1,128,0,0,0
.LFE1:
.long 0
.byte 0,12,0,1,128,0,0,0
+#ifdef _CALL_LINUX
+ .size ffi_closure_LINUX64,.-.L.ffi_closure_LINUX64
+#else
.size .ffi_closure_LINUX64,.-.ffi_closure_LINUX64
.size .ffi_closure_LINUX64,.-.ffi_closure_LINUX64
+#endif
.section .eh_frame,EH_FRAME_FLAGS,@progbits
.Lframe1:
.section .eh_frame,EH_FRAME_FLAGS,@progbits
.Lframe1: