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