X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=src%2Fsignal%2Farm%2Fsigsetjmp.s;h=318addba0a12c29760a371c2253e15f275a2ba0b;hb=0beb9dfbecad38af9759b1e83eeb007e28b70abb;hp=acb0301e04c74f4140d75bc930f227398fcabf44;hpb=e6129e6d836e5f4725d9b14ba7457b32e24adc61;p=musl diff --git a/src/signal/arm/sigsetjmp.s b/src/signal/arm/sigsetjmp.s index acb0301e..318addba 100644 --- a/src/signal/arm/sigsetjmp.s +++ b/src/signal/arm/sigsetjmp.s @@ -1,13 +1,23 @@ +.syntax unified .global sigsetjmp +.global __sigsetjmp .type sigsetjmp,%function +.type __sigsetjmp,%function sigsetjmp: - str a2,[a1,#256] - tst a2,a2 +__sigsetjmp: + tst r1,r1 beq setjmp - push {a1,lr} - add a3,a1,#260 - mov a2,#0 - mov a1,#2 - bl sigprocmask - pop {a1,lr} - b setjmp + + str lr,[r0,#256] + str r4,[r0,#260+8] + mov r4,r0 + + bl setjmp + + mov r1,r0 + mov r0,r4 + ldr lr,[r0,#256] + ldr r4,[r0,#260+8] + +.hidden __sigsetjmp_tail + b __sigsetjmp_tail