123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518 |
- // This file is generated from a similarly-named Perl script in the BoringSSL
- // source tree. Do not edit by hand.
- #if defined(__has_feature)
- #if __has_feature(memory_sanitizer) && !defined(OPENSSL_NO_ASM)
- #define OPENSSL_NO_ASM
- #endif
- #endif
- #if defined(__x86_64__) && !defined(OPENSSL_NO_ASM)
- #if defined(BORINGSSL_PREFIX)
- #include <boringssl_prefix_symbols_asm.h>
- #endif
- .text
- .type abi_test_trampoline, @function
- .globl abi_test_trampoline
- .hidden abi_test_trampoline
- .align 16
- abi_test_trampoline:
- .Labi_test_trampoline_seh_begin:
- .cfi_startproc
- subq $120,%rsp
- .cfi_adjust_cfa_offset 120
- .Labi_test_trampoline_seh_prolog_alloc:
- movq %r8,48(%rsp)
- movq %rbx,64(%rsp)
- .cfi_offset rbx, -64
- .Labi_test_trampoline_seh_prolog_rbx:
- movq %rbp,72(%rsp)
- .cfi_offset rbp, -56
- .Labi_test_trampoline_seh_prolog_rbp:
- movq %r12,80(%rsp)
- .cfi_offset r12, -48
- .Labi_test_trampoline_seh_prolog_r12:
- movq %r13,88(%rsp)
- .cfi_offset r13, -40
- .Labi_test_trampoline_seh_prolog_r13:
- movq %r14,96(%rsp)
- .cfi_offset r14, -32
- .Labi_test_trampoline_seh_prolog_r14:
- movq %r15,104(%rsp)
- .cfi_offset r15, -24
- .Labi_test_trampoline_seh_prolog_r15:
- .Labi_test_trampoline_seh_prolog_end:
- movq 0(%rsi),%rbx
- movq 8(%rsi),%rbp
- movq 16(%rsi),%r12
- movq 24(%rsi),%r13
- movq 32(%rsi),%r14
- movq 40(%rsi),%r15
- movq %rdi,32(%rsp)
- movq %rsi,40(%rsp)
- movq %rdx,%r10
- movq %rcx,%r11
- decq %r11
- js .Largs_done
- movq (%r10),%rdi
- addq $8,%r10
- decq %r11
- js .Largs_done
- movq (%r10),%rsi
- addq $8,%r10
- decq %r11
- js .Largs_done
- movq (%r10),%rdx
- addq $8,%r10
- decq %r11
- js .Largs_done
- movq (%r10),%rcx
- addq $8,%r10
- decq %r11
- js .Largs_done
- movq (%r10),%r8
- addq $8,%r10
- decq %r11
- js .Largs_done
- movq (%r10),%r9
- addq $8,%r10
- leaq 0(%rsp),%rax
- .Largs_loop:
- decq %r11
- js .Largs_done
- movq %r11,56(%rsp)
- movq (%r10),%r11
- movq %r11,(%rax)
- movq 56(%rsp),%r11
- addq $8,%r10
- addq $8,%rax
- jmp .Largs_loop
- .Largs_done:
- movq 32(%rsp),%rax
- movq 48(%rsp),%r10
- testq %r10,%r10
- jz .Lno_unwind
- pushfq
- orq $0x100,0(%rsp)
- popfq
- nop
- .globl abi_test_unwind_start
- .hidden abi_test_unwind_start
- abi_test_unwind_start:
- call *%rax
- .globl abi_test_unwind_return
- .hidden abi_test_unwind_return
- abi_test_unwind_return:
- pushfq
- andq $-0x101,0(%rsp)
- popfq
- .globl abi_test_unwind_stop
- .hidden abi_test_unwind_stop
- abi_test_unwind_stop:
- jmp .Lcall_done
- .Lno_unwind:
- call *%rax
- .Lcall_done:
- movq 40(%rsp),%rsi
- movq %rbx,0(%rsi)
- movq %rbp,8(%rsi)
- movq %r12,16(%rsi)
- movq %r13,24(%rsi)
- movq %r14,32(%rsi)
- movq %r15,40(%rsi)
- movq 64(%rsp),%rbx
- .cfi_restore rbx
- movq 72(%rsp),%rbp
- .cfi_restore rbp
- movq 80(%rsp),%r12
- .cfi_restore r12
- movq 88(%rsp),%r13
- .cfi_restore r13
- movq 96(%rsp),%r14
- .cfi_restore r14
- movq 104(%rsp),%r15
- .cfi_restore r15
- addq $120,%rsp
- .cfi_adjust_cfa_offset -120
- .byte 0xf3,0xc3
- .cfi_endproc
- .Labi_test_trampoline_seh_end:
- .size abi_test_trampoline,.-abi_test_trampoline
- .type abi_test_clobber_rax, @function
- .globl abi_test_clobber_rax
- .hidden abi_test_clobber_rax
- .align 16
- abi_test_clobber_rax:
- xorq %rax,%rax
- .byte 0xf3,0xc3
- .size abi_test_clobber_rax,.-abi_test_clobber_rax
- .type abi_test_clobber_rbx, @function
- .globl abi_test_clobber_rbx
- .hidden abi_test_clobber_rbx
- .align 16
- abi_test_clobber_rbx:
- xorq %rbx,%rbx
- .byte 0xf3,0xc3
- .size abi_test_clobber_rbx,.-abi_test_clobber_rbx
- .type abi_test_clobber_rcx, @function
- .globl abi_test_clobber_rcx
- .hidden abi_test_clobber_rcx
- .align 16
- abi_test_clobber_rcx:
- xorq %rcx,%rcx
- .byte 0xf3,0xc3
- .size abi_test_clobber_rcx,.-abi_test_clobber_rcx
- .type abi_test_clobber_rdx, @function
- .globl abi_test_clobber_rdx
- .hidden abi_test_clobber_rdx
- .align 16
- abi_test_clobber_rdx:
- xorq %rdx,%rdx
- .byte 0xf3,0xc3
- .size abi_test_clobber_rdx,.-abi_test_clobber_rdx
- .type abi_test_clobber_rdi, @function
- .globl abi_test_clobber_rdi
- .hidden abi_test_clobber_rdi
- .align 16
- abi_test_clobber_rdi:
- xorq %rdi,%rdi
- .byte 0xf3,0xc3
- .size abi_test_clobber_rdi,.-abi_test_clobber_rdi
- .type abi_test_clobber_rsi, @function
- .globl abi_test_clobber_rsi
- .hidden abi_test_clobber_rsi
- .align 16
- abi_test_clobber_rsi:
- xorq %rsi,%rsi
- .byte 0xf3,0xc3
- .size abi_test_clobber_rsi,.-abi_test_clobber_rsi
- .type abi_test_clobber_rbp, @function
- .globl abi_test_clobber_rbp
- .hidden abi_test_clobber_rbp
- .align 16
- abi_test_clobber_rbp:
- xorq %rbp,%rbp
- .byte 0xf3,0xc3
- .size abi_test_clobber_rbp,.-abi_test_clobber_rbp
- .type abi_test_clobber_r8, @function
- .globl abi_test_clobber_r8
- .hidden abi_test_clobber_r8
- .align 16
- abi_test_clobber_r8:
- xorq %r8,%r8
- .byte 0xf3,0xc3
- .size abi_test_clobber_r8,.-abi_test_clobber_r8
- .type abi_test_clobber_r9, @function
- .globl abi_test_clobber_r9
- .hidden abi_test_clobber_r9
- .align 16
- abi_test_clobber_r9:
- xorq %r9,%r9
- .byte 0xf3,0xc3
- .size abi_test_clobber_r9,.-abi_test_clobber_r9
- .type abi_test_clobber_r10, @function
- .globl abi_test_clobber_r10
- .hidden abi_test_clobber_r10
- .align 16
- abi_test_clobber_r10:
- xorq %r10,%r10
- .byte 0xf3,0xc3
- .size abi_test_clobber_r10,.-abi_test_clobber_r10
- .type abi_test_clobber_r11, @function
- .globl abi_test_clobber_r11
- .hidden abi_test_clobber_r11
- .align 16
- abi_test_clobber_r11:
- xorq %r11,%r11
- .byte 0xf3,0xc3
- .size abi_test_clobber_r11,.-abi_test_clobber_r11
- .type abi_test_clobber_r12, @function
- .globl abi_test_clobber_r12
- .hidden abi_test_clobber_r12
- .align 16
- abi_test_clobber_r12:
- xorq %r12,%r12
- .byte 0xf3,0xc3
- .size abi_test_clobber_r12,.-abi_test_clobber_r12
- .type abi_test_clobber_r13, @function
- .globl abi_test_clobber_r13
- .hidden abi_test_clobber_r13
- .align 16
- abi_test_clobber_r13:
- xorq %r13,%r13
- .byte 0xf3,0xc3
- .size abi_test_clobber_r13,.-abi_test_clobber_r13
- .type abi_test_clobber_r14, @function
- .globl abi_test_clobber_r14
- .hidden abi_test_clobber_r14
- .align 16
- abi_test_clobber_r14:
- xorq %r14,%r14
- .byte 0xf3,0xc3
- .size abi_test_clobber_r14,.-abi_test_clobber_r14
- .type abi_test_clobber_r15, @function
- .globl abi_test_clobber_r15
- .hidden abi_test_clobber_r15
- .align 16
- abi_test_clobber_r15:
- xorq %r15,%r15
- .byte 0xf3,0xc3
- .size abi_test_clobber_r15,.-abi_test_clobber_r15
- .type abi_test_clobber_xmm0, @function
- .globl abi_test_clobber_xmm0
- .hidden abi_test_clobber_xmm0
- .align 16
- abi_test_clobber_xmm0:
- pxor %xmm0,%xmm0
- .byte 0xf3,0xc3
- .size abi_test_clobber_xmm0,.-abi_test_clobber_xmm0
- .type abi_test_clobber_xmm1, @function
- .globl abi_test_clobber_xmm1
- .hidden abi_test_clobber_xmm1
- .align 16
- abi_test_clobber_xmm1:
- pxor %xmm1,%xmm1
- .byte 0xf3,0xc3
- .size abi_test_clobber_xmm1,.-abi_test_clobber_xmm1
- .type abi_test_clobber_xmm2, @function
- .globl abi_test_clobber_xmm2
- .hidden abi_test_clobber_xmm2
- .align 16
- abi_test_clobber_xmm2:
- pxor %xmm2,%xmm2
- .byte 0xf3,0xc3
- .size abi_test_clobber_xmm2,.-abi_test_clobber_xmm2
- .type abi_test_clobber_xmm3, @function
- .globl abi_test_clobber_xmm3
- .hidden abi_test_clobber_xmm3
- .align 16
- abi_test_clobber_xmm3:
- pxor %xmm3,%xmm3
- .byte 0xf3,0xc3
- .size abi_test_clobber_xmm3,.-abi_test_clobber_xmm3
- .type abi_test_clobber_xmm4, @function
- .globl abi_test_clobber_xmm4
- .hidden abi_test_clobber_xmm4
- .align 16
- abi_test_clobber_xmm4:
- pxor %xmm4,%xmm4
- .byte 0xf3,0xc3
- .size abi_test_clobber_xmm4,.-abi_test_clobber_xmm4
- .type abi_test_clobber_xmm5, @function
- .globl abi_test_clobber_xmm5
- .hidden abi_test_clobber_xmm5
- .align 16
- abi_test_clobber_xmm5:
- pxor %xmm5,%xmm5
- .byte 0xf3,0xc3
- .size abi_test_clobber_xmm5,.-abi_test_clobber_xmm5
- .type abi_test_clobber_xmm6, @function
- .globl abi_test_clobber_xmm6
- .hidden abi_test_clobber_xmm6
- .align 16
- abi_test_clobber_xmm6:
- pxor %xmm6,%xmm6
- .byte 0xf3,0xc3
- .size abi_test_clobber_xmm6,.-abi_test_clobber_xmm6
- .type abi_test_clobber_xmm7, @function
- .globl abi_test_clobber_xmm7
- .hidden abi_test_clobber_xmm7
- .align 16
- abi_test_clobber_xmm7:
- pxor %xmm7,%xmm7
- .byte 0xf3,0xc3
- .size abi_test_clobber_xmm7,.-abi_test_clobber_xmm7
- .type abi_test_clobber_xmm8, @function
- .globl abi_test_clobber_xmm8
- .hidden abi_test_clobber_xmm8
- .align 16
- abi_test_clobber_xmm8:
- pxor %xmm8,%xmm8
- .byte 0xf3,0xc3
- .size abi_test_clobber_xmm8,.-abi_test_clobber_xmm8
- .type abi_test_clobber_xmm9, @function
- .globl abi_test_clobber_xmm9
- .hidden abi_test_clobber_xmm9
- .align 16
- abi_test_clobber_xmm9:
- pxor %xmm9,%xmm9
- .byte 0xf3,0xc3
- .size abi_test_clobber_xmm9,.-abi_test_clobber_xmm9
- .type abi_test_clobber_xmm10, @function
- .globl abi_test_clobber_xmm10
- .hidden abi_test_clobber_xmm10
- .align 16
- abi_test_clobber_xmm10:
- pxor %xmm10,%xmm10
- .byte 0xf3,0xc3
- .size abi_test_clobber_xmm10,.-abi_test_clobber_xmm10
- .type abi_test_clobber_xmm11, @function
- .globl abi_test_clobber_xmm11
- .hidden abi_test_clobber_xmm11
- .align 16
- abi_test_clobber_xmm11:
- pxor %xmm11,%xmm11
- .byte 0xf3,0xc3
- .size abi_test_clobber_xmm11,.-abi_test_clobber_xmm11
- .type abi_test_clobber_xmm12, @function
- .globl abi_test_clobber_xmm12
- .hidden abi_test_clobber_xmm12
- .align 16
- abi_test_clobber_xmm12:
- pxor %xmm12,%xmm12
- .byte 0xf3,0xc3
- .size abi_test_clobber_xmm12,.-abi_test_clobber_xmm12
- .type abi_test_clobber_xmm13, @function
- .globl abi_test_clobber_xmm13
- .hidden abi_test_clobber_xmm13
- .align 16
- abi_test_clobber_xmm13:
- pxor %xmm13,%xmm13
- .byte 0xf3,0xc3
- .size abi_test_clobber_xmm13,.-abi_test_clobber_xmm13
- .type abi_test_clobber_xmm14, @function
- .globl abi_test_clobber_xmm14
- .hidden abi_test_clobber_xmm14
- .align 16
- abi_test_clobber_xmm14:
- pxor %xmm14,%xmm14
- .byte 0xf3,0xc3
- .size abi_test_clobber_xmm14,.-abi_test_clobber_xmm14
- .type abi_test_clobber_xmm15, @function
- .globl abi_test_clobber_xmm15
- .hidden abi_test_clobber_xmm15
- .align 16
- abi_test_clobber_xmm15:
- pxor %xmm15,%xmm15
- .byte 0xf3,0xc3
- .size abi_test_clobber_xmm15,.-abi_test_clobber_xmm15
- .type abi_test_bad_unwind_wrong_register, @function
- .globl abi_test_bad_unwind_wrong_register
- .hidden abi_test_bad_unwind_wrong_register
- .align 16
- abi_test_bad_unwind_wrong_register:
- .cfi_startproc
- .Labi_test_bad_unwind_wrong_register_seh_begin:
- pushq %r12
- .cfi_adjust_cfa_offset 8
- .cfi_offset %r13,-16
- .Labi_test_bad_unwind_wrong_register_seh_push_r13:
- nop
- popq %r12
- .cfi_adjust_cfa_offset -8
- .cfi_restore %r12
- .byte 0xf3,0xc3
- .Labi_test_bad_unwind_wrong_register_seh_end:
- .cfi_endproc
- .size abi_test_bad_unwind_wrong_register,.-abi_test_bad_unwind_wrong_register
- .type abi_test_bad_unwind_temporary, @function
- .globl abi_test_bad_unwind_temporary
- .hidden abi_test_bad_unwind_temporary
- .align 16
- abi_test_bad_unwind_temporary:
- .cfi_startproc
- .Labi_test_bad_unwind_temporary_seh_begin:
- pushq %r12
- .cfi_adjust_cfa_offset 8
- .cfi_offset %r12,-16
- .Labi_test_bad_unwind_temporary_seh_push_r12:
- movq %r12,%rax
- incq %rax
- movq %rax,(%rsp)
- movq %r12,(%rsp)
- popq %r12
- .cfi_adjust_cfa_offset -8
- .cfi_restore %r12
- .byte 0xf3,0xc3
- .Labi_test_bad_unwind_temporary_seh_end:
- .cfi_endproc
- .size abi_test_bad_unwind_temporary,.-abi_test_bad_unwind_temporary
- .type abi_test_set_direction_flag, @function
- .globl abi_test_get_and_clear_direction_flag
- .hidden abi_test_get_and_clear_direction_flag
- abi_test_get_and_clear_direction_flag:
- pushfq
- popq %rax
- andq $0x400,%rax
- shrq $10,%rax
- cld
- .byte 0xf3,0xc3
- .size abi_test_get_and_clear_direction_flag,.-abi_test_get_and_clear_direction_flag
- .type abi_test_set_direction_flag, @function
- .globl abi_test_set_direction_flag
- .hidden abi_test_set_direction_flag
- abi_test_set_direction_flag:
- std
- .byte 0xf3,0xc3
- .size abi_test_set_direction_flag,.-abi_test_set_direction_flag
- #endif
- .section .note.GNU-stack,"",@progbits
|