|  | // This file is generated from a similarly-named Perl script in the BoringSSL | 
|  | // source tree. Do not edit by hand. | 
|  |  | 
|  | #include <openssl/asm_base.h> | 
|  |  | 
|  | #if !defined(OPENSSL_NO_ASM) && defined(OPENSSL_AARCH64) && defined(__APPLE__) | 
|  | #include <openssl/arm_arch.h> | 
|  |  | 
|  | .text | 
|  |  | 
|  | // abi_test_trampoline loads callee-saved registers from |state|, calls |func| | 
|  | // with |argv|, then saves the callee-saved registers into |state|. It returns | 
|  | // the result of |func|. The |unwind| argument is unused. | 
|  | // uint64_t abi_test_trampoline(void (*func)(...), CallerState *state, | 
|  | //                              const uint64_t *argv, size_t argc, | 
|  | //                              uint64_t unwind); | 
|  |  | 
|  | .globl	_abi_test_trampoline | 
|  | .private_extern	_abi_test_trampoline | 
|  | .align	4 | 
|  | _abi_test_trampoline: | 
|  | Labi_test_trampoline_begin: | 
|  | AARCH64_SIGN_LINK_REGISTER | 
|  | // Stack layout (low to high addresses) | 
|  | //   x29,x30 (16 bytes) | 
|  | //    d8-d15 (64 bytes) | 
|  | //   x19-x28 (80 bytes) | 
|  | //    x1 (8 bytes) | 
|  | //   padding (8 bytes) | 
|  | stp	x29, x30, [sp, #-176]! | 
|  | mov	x29, sp | 
|  |  | 
|  | // Saved callee-saved registers and |state|. | 
|  | stp	d8, d9, [sp, #16] | 
|  | stp	d10, d11, [sp, #32] | 
|  | stp	d12, d13, [sp, #48] | 
|  | stp	d14, d15, [sp, #64] | 
|  | stp	x19, x20, [sp, #80] | 
|  | stp	x21, x22, [sp, #96] | 
|  | stp	x23, x24, [sp, #112] | 
|  | stp	x25, x26, [sp, #128] | 
|  | stp	x27, x28, [sp, #144] | 
|  | str	x1, [sp, #160] | 
|  |  | 
|  | // Load registers from |state|, with the exception of x29. x29 is the | 
|  | // frame pointer and also callee-saved, but AAPCS64 allows platforms to | 
|  | // mandate that x29 always point to a frame. iOS64 does so, which means | 
|  | // we cannot fill x29 with entropy without violating ABI rules | 
|  | // ourselves. x29 is tested separately below. | 
|  | ldp	d8, d9, [x1], #16 | 
|  | ldp	d10, d11, [x1], #16 | 
|  | ldp	d12, d13, [x1], #16 | 
|  | ldp	d14, d15, [x1], #16 | 
|  | ldp	x19, x20, [x1], #16 | 
|  | ldp	x21, x22, [x1], #16 | 
|  | ldp	x23, x24, [x1], #16 | 
|  | ldp	x25, x26, [x1], #16 | 
|  | ldp	x27, x28, [x1], #16 | 
|  |  | 
|  | // Move parameters into temporary registers. | 
|  | mov	x9, x0 | 
|  | mov	x10, x2 | 
|  | mov	x11, x3 | 
|  |  | 
|  | // Load parameters into registers. | 
|  | cbz	x11, Largs_done | 
|  | ldr	x0, [x10], #8 | 
|  | subs	x11, x11, #1 | 
|  | b.eq	Largs_done | 
|  | ldr	x1, [x10], #8 | 
|  | subs	x11, x11, #1 | 
|  | b.eq	Largs_done | 
|  | ldr	x2, [x10], #8 | 
|  | subs	x11, x11, #1 | 
|  | b.eq	Largs_done | 
|  | ldr	x3, [x10], #8 | 
|  | subs	x11, x11, #1 | 
|  | b.eq	Largs_done | 
|  | ldr	x4, [x10], #8 | 
|  | subs	x11, x11, #1 | 
|  | b.eq	Largs_done | 
|  | ldr	x5, [x10], #8 | 
|  | subs	x11, x11, #1 | 
|  | b.eq	Largs_done | 
|  | ldr	x6, [x10], #8 | 
|  | subs	x11, x11, #1 | 
|  | b.eq	Largs_done | 
|  | ldr	x7, [x10], #8 | 
|  |  | 
|  | Largs_done: | 
|  | blr	x9 | 
|  |  | 
|  | // Reload |state| and store registers. | 
|  | ldr	x1, [sp, #160] | 
|  | stp	d8, d9, [x1], #16 | 
|  | stp	d10, d11, [x1], #16 | 
|  | stp	d12, d13, [x1], #16 | 
|  | stp	d14, d15, [x1], #16 | 
|  | stp	x19, x20, [x1], #16 | 
|  | stp	x21, x22, [x1], #16 | 
|  | stp	x23, x24, [x1], #16 | 
|  | stp	x25, x26, [x1], #16 | 
|  | stp	x27, x28, [x1], #16 | 
|  |  | 
|  | // |func| is required to preserve x29, the frame pointer. We cannot load | 
|  | // random values into x29 (see comment above), so compare it against the | 
|  | // expected value and zero the field of |state| if corrupted. | 
|  | mov	x9, sp | 
|  | cmp	x29, x9 | 
|  | b.eq	Lx29_ok | 
|  | str	xzr, [x1] | 
|  |  | 
|  | Lx29_ok: | 
|  | // Restore callee-saved registers. | 
|  | ldp	d8, d9, [sp, #16] | 
|  | ldp	d10, d11, [sp, #32] | 
|  | ldp	d12, d13, [sp, #48] | 
|  | ldp	d14, d15, [sp, #64] | 
|  | ldp	x19, x20, [sp, #80] | 
|  | ldp	x21, x22, [sp, #96] | 
|  | ldp	x23, x24, [sp, #112] | 
|  | ldp	x25, x26, [sp, #128] | 
|  | ldp	x27, x28, [sp, #144] | 
|  |  | 
|  | ldp	x29, x30, [sp], #176 | 
|  | AARCH64_VALIDATE_LINK_REGISTER | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_x0 | 
|  | .private_extern	_abi_test_clobber_x0 | 
|  | .align	4 | 
|  | _abi_test_clobber_x0: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | mov	x0, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_x1 | 
|  | .private_extern	_abi_test_clobber_x1 | 
|  | .align	4 | 
|  | _abi_test_clobber_x1: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | mov	x1, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_x2 | 
|  | .private_extern	_abi_test_clobber_x2 | 
|  | .align	4 | 
|  | _abi_test_clobber_x2: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | mov	x2, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_x3 | 
|  | .private_extern	_abi_test_clobber_x3 | 
|  | .align	4 | 
|  | _abi_test_clobber_x3: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | mov	x3, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_x4 | 
|  | .private_extern	_abi_test_clobber_x4 | 
|  | .align	4 | 
|  | _abi_test_clobber_x4: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | mov	x4, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_x5 | 
|  | .private_extern	_abi_test_clobber_x5 | 
|  | .align	4 | 
|  | _abi_test_clobber_x5: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | mov	x5, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_x6 | 
|  | .private_extern	_abi_test_clobber_x6 | 
|  | .align	4 | 
|  | _abi_test_clobber_x6: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | mov	x6, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_x7 | 
|  | .private_extern	_abi_test_clobber_x7 | 
|  | .align	4 | 
|  | _abi_test_clobber_x7: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | mov	x7, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_x8 | 
|  | .private_extern	_abi_test_clobber_x8 | 
|  | .align	4 | 
|  | _abi_test_clobber_x8: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | mov	x8, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_x9 | 
|  | .private_extern	_abi_test_clobber_x9 | 
|  | .align	4 | 
|  | _abi_test_clobber_x9: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | mov	x9, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_x10 | 
|  | .private_extern	_abi_test_clobber_x10 | 
|  | .align	4 | 
|  | _abi_test_clobber_x10: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | mov	x10, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_x11 | 
|  | .private_extern	_abi_test_clobber_x11 | 
|  | .align	4 | 
|  | _abi_test_clobber_x11: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | mov	x11, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_x12 | 
|  | .private_extern	_abi_test_clobber_x12 | 
|  | .align	4 | 
|  | _abi_test_clobber_x12: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | mov	x12, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_x13 | 
|  | .private_extern	_abi_test_clobber_x13 | 
|  | .align	4 | 
|  | _abi_test_clobber_x13: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | mov	x13, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_x14 | 
|  | .private_extern	_abi_test_clobber_x14 | 
|  | .align	4 | 
|  | _abi_test_clobber_x14: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | mov	x14, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_x15 | 
|  | .private_extern	_abi_test_clobber_x15 | 
|  | .align	4 | 
|  | _abi_test_clobber_x15: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | mov	x15, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_x16 | 
|  | .private_extern	_abi_test_clobber_x16 | 
|  | .align	4 | 
|  | _abi_test_clobber_x16: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | mov	x16, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_x17 | 
|  | .private_extern	_abi_test_clobber_x17 | 
|  | .align	4 | 
|  | _abi_test_clobber_x17: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | mov	x17, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_x19 | 
|  | .private_extern	_abi_test_clobber_x19 | 
|  | .align	4 | 
|  | _abi_test_clobber_x19: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | mov	x19, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_x20 | 
|  | .private_extern	_abi_test_clobber_x20 | 
|  | .align	4 | 
|  | _abi_test_clobber_x20: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | mov	x20, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_x21 | 
|  | .private_extern	_abi_test_clobber_x21 | 
|  | .align	4 | 
|  | _abi_test_clobber_x21: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | mov	x21, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_x22 | 
|  | .private_extern	_abi_test_clobber_x22 | 
|  | .align	4 | 
|  | _abi_test_clobber_x22: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | mov	x22, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_x23 | 
|  | .private_extern	_abi_test_clobber_x23 | 
|  | .align	4 | 
|  | _abi_test_clobber_x23: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | mov	x23, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_x24 | 
|  | .private_extern	_abi_test_clobber_x24 | 
|  | .align	4 | 
|  | _abi_test_clobber_x24: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | mov	x24, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_x25 | 
|  | .private_extern	_abi_test_clobber_x25 | 
|  | .align	4 | 
|  | _abi_test_clobber_x25: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | mov	x25, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_x26 | 
|  | .private_extern	_abi_test_clobber_x26 | 
|  | .align	4 | 
|  | _abi_test_clobber_x26: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | mov	x26, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_x27 | 
|  | .private_extern	_abi_test_clobber_x27 | 
|  | .align	4 | 
|  | _abi_test_clobber_x27: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | mov	x27, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_x28 | 
|  | .private_extern	_abi_test_clobber_x28 | 
|  | .align	4 | 
|  | _abi_test_clobber_x28: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | mov	x28, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_x29 | 
|  | .private_extern	_abi_test_clobber_x29 | 
|  | .align	4 | 
|  | _abi_test_clobber_x29: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | mov	x29, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d0 | 
|  | .private_extern	_abi_test_clobber_d0 | 
|  | .align	4 | 
|  | _abi_test_clobber_d0: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d0, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d1 | 
|  | .private_extern	_abi_test_clobber_d1 | 
|  | .align	4 | 
|  | _abi_test_clobber_d1: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d1, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d2 | 
|  | .private_extern	_abi_test_clobber_d2 | 
|  | .align	4 | 
|  | _abi_test_clobber_d2: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d2, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d3 | 
|  | .private_extern	_abi_test_clobber_d3 | 
|  | .align	4 | 
|  | _abi_test_clobber_d3: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d3, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d4 | 
|  | .private_extern	_abi_test_clobber_d4 | 
|  | .align	4 | 
|  | _abi_test_clobber_d4: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d4, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d5 | 
|  | .private_extern	_abi_test_clobber_d5 | 
|  | .align	4 | 
|  | _abi_test_clobber_d5: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d5, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d6 | 
|  | .private_extern	_abi_test_clobber_d6 | 
|  | .align	4 | 
|  | _abi_test_clobber_d6: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d6, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d7 | 
|  | .private_extern	_abi_test_clobber_d7 | 
|  | .align	4 | 
|  | _abi_test_clobber_d7: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d7, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d8 | 
|  | .private_extern	_abi_test_clobber_d8 | 
|  | .align	4 | 
|  | _abi_test_clobber_d8: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d8, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d9 | 
|  | .private_extern	_abi_test_clobber_d9 | 
|  | .align	4 | 
|  | _abi_test_clobber_d9: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d9, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d10 | 
|  | .private_extern	_abi_test_clobber_d10 | 
|  | .align	4 | 
|  | _abi_test_clobber_d10: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d10, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d11 | 
|  | .private_extern	_abi_test_clobber_d11 | 
|  | .align	4 | 
|  | _abi_test_clobber_d11: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d11, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d12 | 
|  | .private_extern	_abi_test_clobber_d12 | 
|  | .align	4 | 
|  | _abi_test_clobber_d12: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d12, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d13 | 
|  | .private_extern	_abi_test_clobber_d13 | 
|  | .align	4 | 
|  | _abi_test_clobber_d13: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d13, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d14 | 
|  | .private_extern	_abi_test_clobber_d14 | 
|  | .align	4 | 
|  | _abi_test_clobber_d14: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d14, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d15 | 
|  | .private_extern	_abi_test_clobber_d15 | 
|  | .align	4 | 
|  | _abi_test_clobber_d15: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d15, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d16 | 
|  | .private_extern	_abi_test_clobber_d16 | 
|  | .align	4 | 
|  | _abi_test_clobber_d16: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d16, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d17 | 
|  | .private_extern	_abi_test_clobber_d17 | 
|  | .align	4 | 
|  | _abi_test_clobber_d17: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d17, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d18 | 
|  | .private_extern	_abi_test_clobber_d18 | 
|  | .align	4 | 
|  | _abi_test_clobber_d18: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d18, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d19 | 
|  | .private_extern	_abi_test_clobber_d19 | 
|  | .align	4 | 
|  | _abi_test_clobber_d19: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d19, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d20 | 
|  | .private_extern	_abi_test_clobber_d20 | 
|  | .align	4 | 
|  | _abi_test_clobber_d20: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d20, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d21 | 
|  | .private_extern	_abi_test_clobber_d21 | 
|  | .align	4 | 
|  | _abi_test_clobber_d21: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d21, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d22 | 
|  | .private_extern	_abi_test_clobber_d22 | 
|  | .align	4 | 
|  | _abi_test_clobber_d22: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d22, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d23 | 
|  | .private_extern	_abi_test_clobber_d23 | 
|  | .align	4 | 
|  | _abi_test_clobber_d23: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d23, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d24 | 
|  | .private_extern	_abi_test_clobber_d24 | 
|  | .align	4 | 
|  | _abi_test_clobber_d24: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d24, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d25 | 
|  | .private_extern	_abi_test_clobber_d25 | 
|  | .align	4 | 
|  | _abi_test_clobber_d25: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d25, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d26 | 
|  | .private_extern	_abi_test_clobber_d26 | 
|  | .align	4 | 
|  | _abi_test_clobber_d26: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d26, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d27 | 
|  | .private_extern	_abi_test_clobber_d27 | 
|  | .align	4 | 
|  | _abi_test_clobber_d27: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d27, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d28 | 
|  | .private_extern	_abi_test_clobber_d28 | 
|  | .align	4 | 
|  | _abi_test_clobber_d28: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d28, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d29 | 
|  | .private_extern	_abi_test_clobber_d29 | 
|  | .align	4 | 
|  | _abi_test_clobber_d29: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d29, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d30 | 
|  | .private_extern	_abi_test_clobber_d30 | 
|  | .align	4 | 
|  | _abi_test_clobber_d30: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d30, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_d31 | 
|  | .private_extern	_abi_test_clobber_d31 | 
|  | .align	4 | 
|  | _abi_test_clobber_d31: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	d31, xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_v8_upper | 
|  | .private_extern	_abi_test_clobber_v8_upper | 
|  | .align	4 | 
|  | _abi_test_clobber_v8_upper: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	v8.d[1], xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_v9_upper | 
|  | .private_extern	_abi_test_clobber_v9_upper | 
|  | .align	4 | 
|  | _abi_test_clobber_v9_upper: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	v9.d[1], xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_v10_upper | 
|  | .private_extern	_abi_test_clobber_v10_upper | 
|  | .align	4 | 
|  | _abi_test_clobber_v10_upper: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	v10.d[1], xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_v11_upper | 
|  | .private_extern	_abi_test_clobber_v11_upper | 
|  | .align	4 | 
|  | _abi_test_clobber_v11_upper: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	v11.d[1], xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_v12_upper | 
|  | .private_extern	_abi_test_clobber_v12_upper | 
|  | .align	4 | 
|  | _abi_test_clobber_v12_upper: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	v12.d[1], xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_v13_upper | 
|  | .private_extern	_abi_test_clobber_v13_upper | 
|  | .align	4 | 
|  | _abi_test_clobber_v13_upper: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	v13.d[1], xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_v14_upper | 
|  | .private_extern	_abi_test_clobber_v14_upper | 
|  | .align	4 | 
|  | _abi_test_clobber_v14_upper: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	v14.d[1], xzr | 
|  | ret | 
|  |  | 
|  |  | 
|  | .globl	_abi_test_clobber_v15_upper | 
|  | .private_extern	_abi_test_clobber_v15_upper | 
|  | .align	4 | 
|  | _abi_test_clobber_v15_upper: | 
|  | AARCH64_VALID_CALL_TARGET | 
|  | fmov	v15.d[1], xzr | 
|  | ret | 
|  |  | 
|  | #endif  // !OPENSSL_NO_ASM && defined(OPENSSL_AARCH64) && defined(__APPLE__) |