fix crash in x32 sigsetjmp
[musl] / src / signal / x32 / sigsetjmp.s
1 .global sigsetjmp
2 .global __sigsetjmp
3 .type sigsetjmp,@function
4 .type __sigsetjmp,@function
5 sigsetjmp:
6 __sigsetjmp:
7         test %esi,%esi
8         jz 1f
9
10         popq 64(%rdi)
11         mov %rbx,72+8(%rdi)
12         mov %rdi,%rbx
13
14         call setjmp@PLT
15
16         pushq 64(%rbx)
17         movl $0, 4(%rsp)
18         mov %rbx,%rdi
19         mov %eax,%esi
20         mov 72+8(%rbx),%rbx
21
22 .hidden __sigsetjmp_tail
23         jmp __sigsetjmp_tail
24
25 1:      jmp setjmp@PLT