xref: /aosp_15_r20/external/cronet/third_party/boringssl/src/gen/test_support/trampoline-x86-apple.S (revision 6777b5387eb2ff775bb5750e3f5d96f37fb7352b)
1// This file is generated from a similarly-named Perl script in the BoringSSL
2// source tree. Do not edit by hand.
3
4#include <openssl/asm_base.h>
5
6#if !defined(OPENSSL_NO_ASM) && defined(OPENSSL_X86) && defined(__APPLE__)
7.text
8.globl	_abi_test_trampoline
9.private_extern	_abi_test_trampoline
10.align	4
11_abi_test_trampoline:
12L_abi_test_trampoline_begin:
13	pushl	%ebp
14	pushl	%ebx
15	pushl	%esi
16	pushl	%edi
17	movl	24(%esp),%ecx
18	movl	(%ecx),%esi
19	movl	4(%ecx),%edi
20	movl	8(%ecx),%ebx
21	movl	12(%ecx),%ebp
22	subl	$44,%esp
23	movl	72(%esp),%eax
24	xorl	%ecx,%ecx
25L000loop:
26	cmpl	76(%esp),%ecx
27	jae	L001loop_done
28	movl	(%eax,%ecx,4),%edx
29	movl	%edx,(%esp,%ecx,4)
30	addl	$1,%ecx
31	jmp	L000loop
32L001loop_done:
33	call	*64(%esp)
34	addl	$44,%esp
35	movl	24(%esp),%ecx
36	movl	%esi,(%ecx)
37	movl	%edi,4(%ecx)
38	movl	%ebx,8(%ecx)
39	movl	%ebp,12(%ecx)
40	popl	%edi
41	popl	%esi
42	popl	%ebx
43	popl	%ebp
44	ret
45.globl	_abi_test_get_and_clear_direction_flag
46.private_extern	_abi_test_get_and_clear_direction_flag
47.align	4
48_abi_test_get_and_clear_direction_flag:
49L_abi_test_get_and_clear_direction_flag_begin:
50	pushfl
51	popl	%eax
52	andl	$1024,%eax
53	shrl	$10,%eax
54	cld
55	ret
56.globl	_abi_test_set_direction_flag
57.private_extern	_abi_test_set_direction_flag
58.align	4
59_abi_test_set_direction_flag:
60L_abi_test_set_direction_flag_begin:
61	std
62	ret
63.globl	_abi_test_clobber_eax
64.private_extern	_abi_test_clobber_eax
65.align	4
66_abi_test_clobber_eax:
67L_abi_test_clobber_eax_begin:
68	xorl	%eax,%eax
69	ret
70.globl	_abi_test_clobber_ebx
71.private_extern	_abi_test_clobber_ebx
72.align	4
73_abi_test_clobber_ebx:
74L_abi_test_clobber_ebx_begin:
75	xorl	%ebx,%ebx
76	ret
77.globl	_abi_test_clobber_ecx
78.private_extern	_abi_test_clobber_ecx
79.align	4
80_abi_test_clobber_ecx:
81L_abi_test_clobber_ecx_begin:
82	xorl	%ecx,%ecx
83	ret
84.globl	_abi_test_clobber_edx
85.private_extern	_abi_test_clobber_edx
86.align	4
87_abi_test_clobber_edx:
88L_abi_test_clobber_edx_begin:
89	xorl	%edx,%edx
90	ret
91.globl	_abi_test_clobber_edi
92.private_extern	_abi_test_clobber_edi
93.align	4
94_abi_test_clobber_edi:
95L_abi_test_clobber_edi_begin:
96	xorl	%edi,%edi
97	ret
98.globl	_abi_test_clobber_esi
99.private_extern	_abi_test_clobber_esi
100.align	4
101_abi_test_clobber_esi:
102L_abi_test_clobber_esi_begin:
103	xorl	%esi,%esi
104	ret
105.globl	_abi_test_clobber_ebp
106.private_extern	_abi_test_clobber_ebp
107.align	4
108_abi_test_clobber_ebp:
109L_abi_test_clobber_ebp_begin:
110	xorl	%ebp,%ebp
111	ret
112.globl	_abi_test_clobber_xmm0
113.private_extern	_abi_test_clobber_xmm0
114.align	4
115_abi_test_clobber_xmm0:
116L_abi_test_clobber_xmm0_begin:
117	pxor	%xmm0,%xmm0
118	ret
119.globl	_abi_test_clobber_xmm1
120.private_extern	_abi_test_clobber_xmm1
121.align	4
122_abi_test_clobber_xmm1:
123L_abi_test_clobber_xmm1_begin:
124	pxor	%xmm1,%xmm1
125	ret
126.globl	_abi_test_clobber_xmm2
127.private_extern	_abi_test_clobber_xmm2
128.align	4
129_abi_test_clobber_xmm2:
130L_abi_test_clobber_xmm2_begin:
131	pxor	%xmm2,%xmm2
132	ret
133.globl	_abi_test_clobber_xmm3
134.private_extern	_abi_test_clobber_xmm3
135.align	4
136_abi_test_clobber_xmm3:
137L_abi_test_clobber_xmm3_begin:
138	pxor	%xmm3,%xmm3
139	ret
140.globl	_abi_test_clobber_xmm4
141.private_extern	_abi_test_clobber_xmm4
142.align	4
143_abi_test_clobber_xmm4:
144L_abi_test_clobber_xmm4_begin:
145	pxor	%xmm4,%xmm4
146	ret
147.globl	_abi_test_clobber_xmm5
148.private_extern	_abi_test_clobber_xmm5
149.align	4
150_abi_test_clobber_xmm5:
151L_abi_test_clobber_xmm5_begin:
152	pxor	%xmm5,%xmm5
153	ret
154.globl	_abi_test_clobber_xmm6
155.private_extern	_abi_test_clobber_xmm6
156.align	4
157_abi_test_clobber_xmm6:
158L_abi_test_clobber_xmm6_begin:
159	pxor	%xmm6,%xmm6
160	ret
161.globl	_abi_test_clobber_xmm7
162.private_extern	_abi_test_clobber_xmm7
163.align	4
164_abi_test_clobber_xmm7:
165L_abi_test_clobber_xmm7_begin:
166	pxor	%xmm7,%xmm7
167	ret
168#endif  // !defined(OPENSSL_NO_ASM) && defined(OPENSSL_X86) && defined(__APPLE__)
169