mirror of
https://github.com/fluencelabs/musl
synced 2025-07-01 07:32:04 +00:00
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:
13
src/signal/arm/sigsetjmp.s
Normal file
13
src/signal/arm/sigsetjmp.s
Normal 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
|
Reference in New Issue
Block a user