Browse Source

add __sigsetjmp ABI-compat alias for sigsetjmp

Rich Felker 11 years ago
parent
commit
b9b2db2f37

+ 3 - 0
src/signal/arm/sigsetjmp.s

@@ -1,6 +1,9 @@
 .global sigsetjmp
+.global __sigsetjmp
 .type sigsetjmp,%function
+.type __sigsetjmp,%function
 sigsetjmp:
+__sigsetjmp:
 	str a2,[a1,#256]
 	tst a2,a2
 	beq setjmp

+ 3 - 0
src/signal/i386/sigsetjmp.s

@@ -1,6 +1,9 @@
 .global sigsetjmp
+.global __sigsetjmp
 .type sigsetjmp,@function
+.type __sigsetjmp,@function
 sigsetjmp:
+__sigsetjmp:
 	mov 4(%esp),%eax
 	mov 8(%esp),%ecx
 	mov %ecx,24(%eax)

+ 3 - 0
src/signal/microblaze/sigsetjmp.s

@@ -1,6 +1,9 @@
 .global sigsetjmp
+.global __sigsetjmp
 .type sigsetjmp,@function
+.type __sigsetjmp,@function
 sigsetjmp:
+__sigsetjmp:
 	swi     r6, r5, 72
 	beqi    r6, setjmp@PLT
 

+ 3 - 0
src/signal/mips/sigsetjmp.s

@@ -1,8 +1,11 @@
 .set noreorder
 
 .global sigsetjmp
+.global __sigsetjmp
 .type sigsetjmp,@function
+.type __sigsetjmp,@function
 sigsetjmp:
+__sigsetjmp:
 	lui $gp, %hi(_gp_disp)
 	addiu $gp, %lo(_gp_disp)
 	beq $5, $0, 1f

+ 3 - 0
src/signal/powerpc/sigsetjmp.s

@@ -1,6 +1,9 @@
 	.global sigsetjmp
+	.global __sigsetjmp
 	.type sigsetjmp,%function
+	.type __sigsetjmp,%function
 sigsetjmp:
+__sigsetjmp:
 	#int sigsetjmp(sigjmp_buf buf, int save)
 	#		r3		r4
 	#0) store save into buf->__fl

+ 4 - 1
src/signal/sh/sigsetjmp.s

@@ -1,6 +1,9 @@
 .global sigsetjmp
-.type   sigsetjmp, @function
+.global __sigsetjmp
+.type sigsetjmp,@function
+.type __sigsetjmp,@function
 sigsetjmp:
+__sigsetjmp:
 	mov.l r5, @(36,r4)
 	tst r5, r5
 	bf  2f

+ 3 - 0
src/signal/sigsetjmp.c

@@ -1,5 +1,6 @@
 #include <setjmp.h>
 #include <signal.h>
+#include "libc.h"
 
 /* !!! This function will not work unless the compiler performs
  * tail call optimization. Machine-specific asm versions should
@@ -12,3 +13,5 @@ int sigsetjmp(sigjmp_buf buf, int save)
 		pthread_sigmask(SIG_SETMASK, 0, (sigset_t *)buf->__ss);
 	return setjmp(buf);
 }
+
+weak_alias(sigsetjmp, __sigsetjmp);

+ 3 - 0
src/signal/x32/sigsetjmp.s

@@ -1,7 +1,10 @@
 /* Copyright 2011-2012 Nicholas J. Kain, licensed under standard MIT license */
 .global sigsetjmp
+.global __sigsetjmp
 .type sigsetjmp,@function
+.type __sigsetjmp,@function
 sigsetjmp:
+__sigsetjmp:
 	andl %esi,%esi
 	movq %rsi,64(%rdi)
 	jz 1f

+ 3 - 0
src/signal/x86_64/sigsetjmp.s

@@ -1,7 +1,10 @@
 /* Copyright 2011-2012 Nicholas J. Kain, licensed under standard MIT license */
 .global sigsetjmp
+.global __sigsetjmp
 .type sigsetjmp,@function
+.type __sigsetjmp,@function
 sigsetjmp:
+__sigsetjmp:
 	andl %esi,%esi
 	movq %rsi,64(%rdi)
 	jz 1f