xref: /aosp_15_r20/external/musl/src/thread/i386/syscall_cp.s (revision c9945492fdd68bbe62686c5b452b4dc1be3f8453)
1*c9945492SAndroid Build Coastguard Worker.text
2*c9945492SAndroid Build Coastguard Worker.global __cp_begin
3*c9945492SAndroid Build Coastguard Worker.hidden __cp_begin
4*c9945492SAndroid Build Coastguard Worker.global __cp_end
5*c9945492SAndroid Build Coastguard Worker.hidden __cp_end
6*c9945492SAndroid Build Coastguard Worker.global __cp_cancel
7*c9945492SAndroid Build Coastguard Worker.hidden __cp_cancel
8*c9945492SAndroid Build Coastguard Worker.hidden __cancel
9*c9945492SAndroid Build Coastguard Worker.global __syscall_cp_asm
10*c9945492SAndroid Build Coastguard Worker.hidden __syscall_cp_asm
11*c9945492SAndroid Build Coastguard Worker.type   __syscall_cp_asm,@function
12*c9945492SAndroid Build Coastguard Worker__syscall_cp_asm:
13*c9945492SAndroid Build Coastguard Worker	mov 4(%esp),%ecx
14*c9945492SAndroid Build Coastguard Worker	pushl %ebx
15*c9945492SAndroid Build Coastguard Worker	pushl %esi
16*c9945492SAndroid Build Coastguard Worker	pushl %edi
17*c9945492SAndroid Build Coastguard Worker	pushl %ebp
18*c9945492SAndroid Build Coastguard Worker__cp_begin:
19*c9945492SAndroid Build Coastguard Worker	movl (%ecx),%eax
20*c9945492SAndroid Build Coastguard Worker	testl %eax,%eax
21*c9945492SAndroid Build Coastguard Worker	jnz __cp_cancel
22*c9945492SAndroid Build Coastguard Worker	movl 24(%esp),%eax
23*c9945492SAndroid Build Coastguard Worker	movl 28(%esp),%ebx
24*c9945492SAndroid Build Coastguard Worker	movl 32(%esp),%ecx
25*c9945492SAndroid Build Coastguard Worker	movl 36(%esp),%edx
26*c9945492SAndroid Build Coastguard Worker	movl 40(%esp),%esi
27*c9945492SAndroid Build Coastguard Worker	movl 44(%esp),%edi
28*c9945492SAndroid Build Coastguard Worker	movl 48(%esp),%ebp
29*c9945492SAndroid Build Coastguard Worker	int $128
30*c9945492SAndroid Build Coastguard Worker__cp_end:
31*c9945492SAndroid Build Coastguard Worker	popl %ebp
32*c9945492SAndroid Build Coastguard Worker	popl %edi
33*c9945492SAndroid Build Coastguard Worker	popl %esi
34*c9945492SAndroid Build Coastguard Worker	popl %ebx
35*c9945492SAndroid Build Coastguard Worker	ret
36*c9945492SAndroid Build Coastguard Worker__cp_cancel:
37*c9945492SAndroid Build Coastguard Worker	popl %ebp
38*c9945492SAndroid Build Coastguard Worker	popl %edi
39*c9945492SAndroid Build Coastguard Worker	popl %esi
40*c9945492SAndroid Build Coastguard Worker	popl %ebx
41*c9945492SAndroid Build Coastguard Worker	jmp __cancel
42