X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;ds=inline;f=src%2Fsignal%2Fi386%2Fsigsetjmp.s;h=690b251c4c9efea7e8bdb086415d803637514303;hb=0beb9dfbecad38af9759b1e83eeb007e28b70abb;hp=0e7eefb09530caddbad28c947b9e334cafda62f9;hpb=0b44a0315b47dd8eced9f3b7f31580cf14bbfc01;p=musl diff --git a/src/signal/i386/sigsetjmp.s b/src/signal/i386/sigsetjmp.s index 0e7eefb0..690b251c 100644 --- a/src/signal/i386/sigsetjmp.s +++ b/src/signal/i386/sigsetjmp.s @@ -1,13 +1,26 @@ .global sigsetjmp +.global __sigsetjmp +.type sigsetjmp,@function +.type __sigsetjmp,@function sigsetjmp: - mov 4(%esp),%eax +__sigsetjmp: mov 8(%esp),%ecx - mov %ecx,24(%eax) jecxz 1f - add $28,%eax - push %eax - push $0 - push $2 - call sigprocmask - add $12,%esp -1: jmp setjmp + + mov 4(%esp),%eax + popl 24(%eax) + mov %ebx,28+8(%eax) + mov %eax,%ebx + +.hidden ___setjmp + call ___setjmp + + pushl 24(%ebx) + mov %ebx,4(%esp) + mov %eax,8(%esp) + mov 28+8(%ebx),%ebx + +.hidden __sigsetjmp_tail + jmp __sigsetjmp_tail + +1: jmp ___setjmp