about summary refs log tree commit diff
path: root/sysdeps/unix/sysv/linux/x86_64/cancellation.S
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/unix/sysv/linux/x86_64/cancellation.S')
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/cancellation.S6
1 files changed, 4 insertions, 2 deletions
diff --git a/sysdeps/unix/sysv/linux/x86_64/cancellation.S b/sysdeps/unix/sysv/linux/x86_64/cancellation.S
index 04a0e59ea8..bd22aa0752 100644
--- a/sysdeps/unix/sysv/linux/x86_64/cancellation.S
+++ b/sysdeps/unix/sysv/linux/x86_64/cancellation.S
@@ -21,9 +21,11 @@
 #include <kernel-features.h>
 #include "lowlevellock.h"
 
+#define PTHREAD_UNWIND JUMPTARGET(__pthread_unwind)
 #if IS_IN (libpthread)
 # if defined SHARED && !defined NO_HIDDEN
-#  define __pthread_unwind __GI___pthread_unwind
+#  undef PTHREAD_UNWIND
+#  define PTHREAD_UNWIND __GI___pthread_unwind
 # endif
 #else
 # ifndef SHARED
@@ -76,7 +78,7 @@ ENTRY(__pthread_enable_asynccancel)
 	lock
 	orl	$TCB_EXITING_BITMASK, %fs:CANCELHANDLING
 	mov	%fs:CLEANUP_JMP_BUF, %RDI_LP
-	call	JUMPTARGET(__pthread_unwind)
+	call	PTHREAD_UNWIND
 	hlt
 END(__pthread_enable_asynccancel)