fix sigsetjmp on arm (needs asm)

no idea why gcc refuses to compile the C code to use a tail call, but
it's best to use asm anyway so we don't have to rely on the quality of
the compiler's optimizations for correct code.
This commit is contained in:
Rich Felker 2012-07-02 22:49:25 -04:00
parent 8e26a591d0
commit e6129e6d83
1 changed files with 13 additions and 0 deletions

View File

@ -0,0 +1,13 @@
.global sigsetjmp
.type sigsetjmp,%function
sigsetjmp:
str a2,[a1,#256]
tst a2,a2
beq setjmp
push {a1,lr}
add a3,a1,#260
mov a2,#0
mov a1,#2
bl sigprocmask
pop {a1,lr}
b setjmp