github.com/afumu/libc@v0.0.6/musl/src/thread/i386/syscall_cp.s (about) 1 .text 2 .global __cp_begin 3 .hidden __cp_begin 4 .global __cp_end 5 .hidden __cp_end 6 .global __cp_cancel 7 .hidden __cp_cancel 8 .hidden __cancel 9 .global __syscall_cp_asm 10 .hidden __syscall_cp_asm 11 .type __syscall_cp_asm,@function 12 __syscall_cp_asm: 13 mov 4(%esp),%ecx 14 pushl %ebx 15 pushl %esi 16 pushl %edi 17 pushl %ebp 18 __cp_begin: 19 movl (%ecx),%eax 20 testl %eax,%eax 21 jnz __cp_cancel 22 movl 24(%esp),%eax 23 movl 28(%esp),%ebx 24 movl 32(%esp),%ecx 25 movl 36(%esp),%edx 26 movl 40(%esp),%esi 27 movl 44(%esp),%edi 28 movl 48(%esp),%ebp 29 int $128 30 __cp_end: 31 popl %ebp 32 popl %edi 33 popl %esi 34 popl %ebx 35 ret 36 __cp_cancel: 37 popl %ebp 38 popl %edi 39 popl %esi 40 popl %ebx 41 jmp __cancel