diff options
Diffstat (limited to 'main/libc0.9.32/nptl-fix-unwind_resume-plt-calls.patch')
-rw-r--r-- | main/libc0.9.32/nptl-fix-unwind_resume-plt-calls.patch | 65 |
1 files changed, 0 insertions, 65 deletions
diff --git a/main/libc0.9.32/nptl-fix-unwind_resume-plt-calls.patch b/main/libc0.9.32/nptl-fix-unwind_resume-plt-calls.patch deleted file mode 100644 index 2647af915..000000000 --- a/main/libc0.9.32/nptl-fix-unwind_resume-plt-calls.patch +++ /dev/null @@ -1,65 +0,0 @@ -My change a49b3a18e463cbe8c94c41501e386e7f4c61609e fixed two -Unwind_Resume calls to go via PLT to avoid text relocations for PIC -builds. However, it looks the reason for upstream not using PLT calls -is that ebx gets clobbered. So we need to reload it. - -Signed-off-by: Timo Teräs <timo.teras@iki.fi> ---- - .../sysv/linux/i386/i486/pthread_cond_timedwait.S | 4 ++++ - .../unix/sysv/linux/i386/i486/pthread_cond_wait.S | 18 +++++++++++------- - 2 files changed, 15 insertions(+), 7 deletions(-) - -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S b/libpthread/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S -index ac7983c..3b61367 100644 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S -+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S -@@ -648,6 +648,10 @@ __condvar_tw_cleanup: - - movl %esi, (%esp) - .LcallUR: -+#ifdef __PIC__ -+ call __i686.get_pc_thunk.bx -+ addl $_GLOBAL_OFFSET_TABLE_, %ebx -+#endif - call _Unwind_Resume@PLT - hlt - .LENDCODE: -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S b/libpthread/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S -index abc963f..a1294c5 100644 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S -+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S -@@ -535,6 +535,10 @@ __condvar_w_cleanup: - - movl %esi, (%esp) - .LcallUR: -+#ifdef __PIC__ -+ call __i686.get_pc_thunk.bx -+ addl $_GLOBAL_OFFSET_TABLE_, %ebx -+#endif - call _Unwind_Resume@PLT - hlt - .LENDCODE: -@@ -569,14 +573,14 @@ __condvar_w_cleanup: - .Lcstend: - - #ifdef __PIC__ -- .section .gnu.linkonce.t.__i686.get_pc_thunk.cx,"ax",@progbits -- .globl __i686.get_pc_thunk.cx -- .hidden __i686.get_pc_thunk.cx -- .type __i686.get_pc_thunk.cx,@function --__i686.get_pc_thunk.cx: -- movl (%esp), %ecx; -+ .section .gnu.linkonce.t.__i686.get_pc_thunk.bx,"ax",@progbits -+ .globl __i686.get_pc_thunk.bx -+ .hidden __i686.get_pc_thunk.bx -+ .type __i686.get_pc_thunk.bx,@function -+__i686.get_pc_thunk.bx: -+ movl (%esp), %ebx; - ret -- .size __i686.get_pc_thunk.cx,.-__i686.get_pc_thunk.cx -+ .size __i686.get_pc_thunk.bx,.-__i686.get_pc_thunk.bx - #endif - - #ifdef SHARED --- -1.7.1 |