From: ktietz Date: Fri, 22 Mar 2013 09:38:55 +0000 (+0000) Subject: * src/x86/win64.S: Make use of ffi_closure_win64_inner X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=817902a3ca95466ec0be43f40bfbcb8018cd8f3e;p=thirdparty%2Fgcc.git * src/x86/win64.S: Make use of ffi_closure_win64_inner symbol pc-relative. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@196900 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/libffi/ChangeLog b/libffi/ChangeLog index 57cf35672130..23a6a7800a49 100644 --- a/libffi/ChangeLog +++ b/libffi/ChangeLog @@ -1,3 +1,8 @@ +2013-03-22 Kai Tietz + + * src/x86/win64.S: Make use of ffi_closure_win64_inner + symbol pc-relative. + 2013-03-07 Dave Korn * src/closures.c (is_emutramp_enabled [!FFI_MMAP_EXEC_EMUTRAMP_PAX]): diff --git a/libffi/src/x86/win64.S b/libffi/src/x86/win64.S index fcdb270faf58..1394cf177b69 100644 --- a/libffi/src/x86/win64.S +++ b/libffi/src/x86/win64.S @@ -295,7 +295,7 @@ SYMBOL_NAME(ffi_closure_win64): mov %rax, %rcx # context is first parameter mov %rsp, %rdx # stack is second parameter add $48, %rdx # point to start of arguments - mov $SYMBOL_NAME(ffi_closure_win64_inner), %rax + leaq SYMBOL_NAME(ffi_closure_win64_inner)(%rip), %rax callq *%rax # call the real closure function add $40, %rsp movq %rax, %xmm0 # If the closure returned a float,