[PATCH] Don't call internal _Unwind_Resume via PLT

H.J. Lu hongjiu.lu@intel.com
Wed May 4 17:54:00 GMT 2016


There is no need to call the internal funtion, _Unwind_Resume, which
is defined in unwind-forcedunwind.c, via PLT.

Tested on x86-64.  OK for master?

H.J.
---
	* sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S
	(__condvar_cleanup2): Remove JUMPTARGET from  _Unwind_Resume
	call.
	* sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S
	(__condvar_cleanup1): Likewise.
---
 sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S | 2 +-
 sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S      | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S b/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S
index a2adc09..82ffa1a 100644
--- a/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S
+++ b/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S
@@ -586,7 +586,7 @@ __condvar_cleanup2:
 	movq	FRAME_SIZE+16(%rsp), %r13
 	movq	FRAME_SIZE+24(%rsp), %r12
 .LcallUR:
-	call	JUMPTARGET(_Unwind_Resume)
+	call	_Unwind_Resume
 	hlt
 .LENDCODE:
 	cfi_endproc
diff --git a/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S b/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S
index c4d3504..c82f37b 100644
--- a/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S
+++ b/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S
@@ -518,7 +518,7 @@ __condvar_cleanup1:
 
 8:	movq	24(%rsp), %rdi
 .LcallUR:
-	call	JUMPTARGET(_Unwind_Resume)
+	call	_Unwind_Resume
 	hlt
 .LENDCODE:
 	cfi_endproc
-- 
2.5.5



More information about the Libc-alpha mailing list