setjmp: optimize x86 longjmp epilogues
[musl] / src / setjmp / i386 / setjmp.s
1 .global ___setjmp
2 .hidden ___setjmp
3 .global __setjmp
4 .global _setjmp
5 .global setjmp
6 .type __setjmp,@function
7 .type _setjmp,@function
8 .type setjmp,@function
9 ___setjmp:
10 __setjmp:
11 _setjmp:
12 setjmp:
13         mov 4(%esp), %eax
14         mov    %ebx, (%eax)
15         mov    %esi, 4(%eax)
16         mov    %edi, 8(%eax)
17         mov    %ebp, 12(%eax)
18         lea 4(%esp), %ecx
19         mov    %ecx, 16(%eax)
20         mov  (%esp), %ecx
21         mov    %ecx, 20(%eax)
22         xor    %eax, %eax
23         ret