Commit 2107bd87 authored by Steven Valdez's avatar Steven Valdez Committed by Commit Bot

Roll src/third_party/boringssl/src 4cce955d1..8e8f25042

https://boringssl.googlesource.com/boringssl/+log/4cce955d1487b5bd2b3c03ead986558649cdaadf..8e8f250422663106d478f6927beefba289a95b37

Bug: none
Change-Id: Ifa87db808efd939abfb388c32f544e7510b70a63
Reviewed-on: https://chromium-review.googlesource.com/c/1393016Reviewed-by: default avatarDavid Benjamin <davidben@chromium.org>
Commit-Queue: Steven Valdez <svaldez@chromium.org>
Cr-Commit-Position: refs/heads/master@{#619710}
parent efbe4fc9
......@@ -153,7 +153,7 @@ vars = {
# Three lines of non-changing comments so that
# the commit queue can handle CLs rolling BoringSSL
# and whatever else without interference from each other.
'boringssl_revision': '4cce955d1487b5bd2b3c03ead986558649cdaadf',
'boringssl_revision': '8e8f250422663106d478f6927beefba289a95b37',
# Three lines of non-changing comments so that
# the commit queue can handle CLs rolling google-toolbox-for-mac
# and whatever else without interference from each other.
......
......@@ -478,6 +478,7 @@ crypto_sources_linux_x86_64 = [
"linux-x86_64/crypto/fipsmodule/vpaes-x86_64.S",
"linux-x86_64/crypto/fipsmodule/x86_64-mont.S",
"linux-x86_64/crypto/fipsmodule/x86_64-mont5.S",
"linux-x86_64/crypto/test/trampoline-x86_64.S",
"src/crypto/hrss/asm/poly_rq_mul.S",
]
......@@ -516,6 +517,7 @@ crypto_sources_mac_x86_64 = [
"mac-x86_64/crypto/fipsmodule/vpaes-x86_64.S",
"mac-x86_64/crypto/fipsmodule/x86_64-mont.S",
"mac-x86_64/crypto/fipsmodule/x86_64-mont5.S",
"mac-x86_64/crypto/test/trampoline-x86_64.S",
]
crypto_sources_win_x86 = [
......@@ -553,6 +555,7 @@ crypto_sources_win_x86_64 = [
"win-x86_64/crypto/fipsmodule/vpaes-x86_64.asm",
"win-x86_64/crypto/fipsmodule/x86_64-mont.asm",
"win-x86_64/crypto/fipsmodule/x86_64-mont5.asm",
"win-x86_64/crypto/test/trampoline-x86_64.asm",
]
fuzzers = [
......
......@@ -5,6 +5,8 @@
# This file is created by generate_build_files.py. Do not edit manually.
test_support_sources = [
"src/crypto/test/abi_test.cc",
"src/crypto/test/abi_test.h",
"src/crypto/test/file_test.cc",
"src/crypto/test/file_test.h",
"src/crypto/test/gtest_main.h",
......@@ -25,6 +27,7 @@ test_support_sources = [
crypto_test_sources = [
"crypto_test_data.cc",
"src/crypto/abi_self_test.cc",
"src/crypto/asn1/asn1_test.cc",
"src/crypto/base64/base64_test.cc",
"src/crypto/bio/bio_test.cc",
......
......@@ -111,10 +111,16 @@ component("boringssl") {
public = all_headers
friend = [ ":*" ]
deps = [
":boringssl_asm",
"//third_party/boringssl/src/third_party/fiat:fiat_license",
]
# Mark boringssl_asm as a public dependency so the OPENSSL_NO_ASM
# config is forwarded to callers. In particular, boringssl_crypto_tests
# requires it.
public_deps = [
":boringssl_asm",
]
public_configs = [ ":external_config" ]
configs += [ ":internal_config" ]
......@@ -197,6 +203,13 @@ if (build_with_chromium) {
sources = all_sources
deps = [
"//third_party/boringssl/src/third_party/fiat:fiat_license",
]
# Mark boringssl_asm as a public dependency so the OPENSSL_NO_ASM
# config is forwarded to callers. In particular, boringssl_crypto_tests
# requires it.
public_deps = [
":boringssl_asm",
]
......@@ -259,6 +272,13 @@ if (build_with_chromium) {
sources = all_sources
deps = [
"//third_party/boringssl/src/third_party/fiat:fiat_license",
]
# Mark boringssl_asm as a public dependency so the OPENSSL_NO_ASM
# config is forwarded to callers. In particular, boringssl_crypto_tests
# requires it.
public_deps = [
":boringssl_asm",
]
......
# 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_begin:
.cfi_startproc
subq $120,%rsp
.cfi_adjust_cfa_offset 120
.Labi_test_trampoline_prolog_alloc:
movq %rbx,64(%rsp)
.cfi_offset rbx, -64
.Labi_test_trampoline_prolog_rbx:
movq %rbp,72(%rsp)
.cfi_offset rbp, -56
.Labi_test_trampoline_prolog_rbp:
movq %r12,80(%rsp)
.cfi_offset r12, -48
.Labi_test_trampoline_prolog_r12:
movq %r13,88(%rsp)
.cfi_offset r13, -40
.Labi_test_trampoline_prolog_r13:
movq %r14,96(%rsp)
.cfi_offset r14, -32
.Labi_test_trampoline_prolog_r14:
movq %r15,104(%rsp)
.cfi_offset r15, -24
.Labi_test_trampoline_prolog_r15:
.Labi_test_trampoline_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,40(%rsp)
movq %rsi,48(%rsp)
movq %rdx,%r10
movq %rcx,%r11
decq %r11
js .Lcall
movq (%r10),%rdi
addq $8,%r10
decq %r11
js .Lcall
movq (%r10),%rsi
addq $8,%r10
decq %r11
js .Lcall
movq (%r10),%rdx
addq $8,%r10
decq %r11
js .Lcall
movq (%r10),%rcx
addq $8,%r10
decq %r11
js .Lcall
movq (%r10),%r8
addq $8,%r10
decq %r11
js .Lcall
movq (%r10),%r9
addq $8,%r10
leaq 0(%rsp),%rax
.Largs_loop:
decq %r11
js .Lcall
movq %r11,56(%rsp)
movq (%r10),%r11
movq %r11,(%rax)
movq 56(%rsp),%r11
addq $8,%r10
addq $8,%rax
jmp .Largs_loop
.Lcall:
movq 40(%rsp),%rax
call *%rax
movq 48(%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_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
#endif
# 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
.globl _abi_test_trampoline
.private_extern _abi_test_trampoline
.p2align 4
_abi_test_trampoline:
L$abi_test_trampoline_begin:
subq $120,%rsp
L$abi_test_trampoline_prolog_alloc:
movq %rbx,64(%rsp)
L$abi_test_trampoline_prolog_rbx:
movq %rbp,72(%rsp)
L$abi_test_trampoline_prolog_rbp:
movq %r12,80(%rsp)
L$abi_test_trampoline_prolog_r12:
movq %r13,88(%rsp)
L$abi_test_trampoline_prolog_r13:
movq %r14,96(%rsp)
L$abi_test_trampoline_prolog_r14:
movq %r15,104(%rsp)
L$abi_test_trampoline_prolog_r15:
L$abi_test_trampoline_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,40(%rsp)
movq %rsi,48(%rsp)
movq %rdx,%r10
movq %rcx,%r11
decq %r11
js L$call
movq (%r10),%rdi
addq $8,%r10
decq %r11
js L$call
movq (%r10),%rsi
addq $8,%r10
decq %r11
js L$call
movq (%r10),%rdx
addq $8,%r10
decq %r11
js L$call
movq (%r10),%rcx
addq $8,%r10
decq %r11
js L$call
movq (%r10),%r8
addq $8,%r10
decq %r11
js L$call
movq (%r10),%r9
addq $8,%r10
leaq 0(%rsp),%rax
L$args_loop:
decq %r11
js L$call
movq %r11,56(%rsp)
movq (%r10),%r11
movq %r11,(%rax)
movq 56(%rsp),%r11
addq $8,%r10
addq $8,%rax
jmp L$args_loop
L$call:
movq 40(%rsp),%rax
call *%rax
movq 48(%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
movq 72(%rsp),%rbp
movq 80(%rsp),%r12
movq 88(%rsp),%r13
movq 96(%rsp),%r14
movq 104(%rsp),%r15
addq $120,%rsp
.byte 0xf3,0xc3
L$abi_test_trampoline_end:
.globl _abi_test_clobber_rax
.private_extern _abi_test_clobber_rax
.p2align 4
_abi_test_clobber_rax:
xorq %rax,%rax
.byte 0xf3,0xc3
.globl _abi_test_clobber_rbx
.private_extern _abi_test_clobber_rbx
.p2align 4
_abi_test_clobber_rbx:
xorq %rbx,%rbx
.byte 0xf3,0xc3
.globl _abi_test_clobber_rcx
.private_extern _abi_test_clobber_rcx
.p2align 4
_abi_test_clobber_rcx:
xorq %rcx,%rcx
.byte 0xf3,0xc3
.globl _abi_test_clobber_rdx
.private_extern _abi_test_clobber_rdx
.p2align 4
_abi_test_clobber_rdx:
xorq %rdx,%rdx
.byte 0xf3,0xc3
.globl _abi_test_clobber_rdi
.private_extern _abi_test_clobber_rdi
.p2align 4
_abi_test_clobber_rdi:
xorq %rdi,%rdi
.byte 0xf3,0xc3
.globl _abi_test_clobber_rsi
.private_extern _abi_test_clobber_rsi
.p2align 4
_abi_test_clobber_rsi:
xorq %rsi,%rsi
.byte 0xf3,0xc3
.globl _abi_test_clobber_rbp
.private_extern _abi_test_clobber_rbp
.p2align 4
_abi_test_clobber_rbp:
xorq %rbp,%rbp
.byte 0xf3,0xc3
.globl _abi_test_clobber_r8
.private_extern _abi_test_clobber_r8
.p2align 4
_abi_test_clobber_r8:
xorq %r8,%r8
.byte 0xf3,0xc3
.globl _abi_test_clobber_r9
.private_extern _abi_test_clobber_r9
.p2align 4
_abi_test_clobber_r9:
xorq %r9,%r9
.byte 0xf3,0xc3
.globl _abi_test_clobber_r10
.private_extern _abi_test_clobber_r10
.p2align 4
_abi_test_clobber_r10:
xorq %r10,%r10
.byte 0xf3,0xc3
.globl _abi_test_clobber_r11
.private_extern _abi_test_clobber_r11
.p2align 4
_abi_test_clobber_r11:
xorq %r11,%r11
.byte 0xf3,0xc3
.globl _abi_test_clobber_r12
.private_extern _abi_test_clobber_r12
.p2align 4
_abi_test_clobber_r12:
xorq %r12,%r12
.byte 0xf3,0xc3
.globl _abi_test_clobber_r13
.private_extern _abi_test_clobber_r13
.p2align 4
_abi_test_clobber_r13:
xorq %r13,%r13
.byte 0xf3,0xc3
.globl _abi_test_clobber_r14
.private_extern _abi_test_clobber_r14
.p2align 4
_abi_test_clobber_r14:
xorq %r14,%r14
.byte 0xf3,0xc3
.globl _abi_test_clobber_r15
.private_extern _abi_test_clobber_r15
.p2align 4
_abi_test_clobber_r15:
xorq %r15,%r15
.byte 0xf3,0xc3
.globl _abi_test_clobber_xmm0
.private_extern _abi_test_clobber_xmm0
.p2align 4
_abi_test_clobber_xmm0:
pxor %xmm0,%xmm0
.byte 0xf3,0xc3
.globl _abi_test_clobber_xmm1
.private_extern _abi_test_clobber_xmm1
.p2align 4
_abi_test_clobber_xmm1:
pxor %xmm1,%xmm1
.byte 0xf3,0xc3
.globl _abi_test_clobber_xmm2
.private_extern _abi_test_clobber_xmm2
.p2align 4
_abi_test_clobber_xmm2:
pxor %xmm2,%xmm2
.byte 0xf3,0xc3
.globl _abi_test_clobber_xmm3
.private_extern _abi_test_clobber_xmm3
.p2align 4
_abi_test_clobber_xmm3:
pxor %xmm3,%xmm3
.byte 0xf3,0xc3
.globl _abi_test_clobber_xmm4
.private_extern _abi_test_clobber_xmm4
.p2align 4
_abi_test_clobber_xmm4:
pxor %xmm4,%xmm4
.byte 0xf3,0xc3
.globl _abi_test_clobber_xmm5
.private_extern _abi_test_clobber_xmm5
.p2align 4
_abi_test_clobber_xmm5:
pxor %xmm5,%xmm5
.byte 0xf3,0xc3
.globl _abi_test_clobber_xmm6
.private_extern _abi_test_clobber_xmm6
.p2align 4
_abi_test_clobber_xmm6:
pxor %xmm6,%xmm6
.byte 0xf3,0xc3
.globl _abi_test_clobber_xmm7
.private_extern _abi_test_clobber_xmm7
.p2align 4
_abi_test_clobber_xmm7:
pxor %xmm7,%xmm7
.byte 0xf3,0xc3
.globl _abi_test_clobber_xmm8
.private_extern _abi_test_clobber_xmm8
.p2align 4
_abi_test_clobber_xmm8:
pxor %xmm8,%xmm8
.byte 0xf3,0xc3
.globl _abi_test_clobber_xmm9
.private_extern _abi_test_clobber_xmm9
.p2align 4
_abi_test_clobber_xmm9:
pxor %xmm9,%xmm9
.byte 0xf3,0xc3
.globl _abi_test_clobber_xmm10
.private_extern _abi_test_clobber_xmm10
.p2align 4
_abi_test_clobber_xmm10:
pxor %xmm10,%xmm10
.byte 0xf3,0xc3
.globl _abi_test_clobber_xmm11
.private_extern _abi_test_clobber_xmm11
.p2align 4
_abi_test_clobber_xmm11:
pxor %xmm11,%xmm11
.byte 0xf3,0xc3
.globl _abi_test_clobber_xmm12
.private_extern _abi_test_clobber_xmm12
.p2align 4
_abi_test_clobber_xmm12:
pxor %xmm12,%xmm12
.byte 0xf3,0xc3
.globl _abi_test_clobber_xmm13
.private_extern _abi_test_clobber_xmm13
.p2align 4
_abi_test_clobber_xmm13:
pxor %xmm13,%xmm13
.byte 0xf3,0xc3
.globl _abi_test_clobber_xmm14
.private_extern _abi_test_clobber_xmm14
.p2align 4
_abi_test_clobber_xmm14:
pxor %xmm14,%xmm14
.byte 0xf3,0xc3
.globl _abi_test_clobber_xmm15
.private_extern _abi_test_clobber_xmm15
.p2align 4
_abi_test_clobber_xmm15:
pxor %xmm15,%xmm15
.byte 0xf3,0xc3
#endif
; This file is generated from a similarly-named Perl script in the BoringSSL
; source tree. Do not edit by hand.
default rel
%define XMMWORD
%define YMMWORD
%define ZMMWORD
%ifdef BORINGSSL_PREFIX
%include "boringssl_prefix_symbols_nasm.inc"
%endif
section .text code align=64
global abi_test_trampoline
ALIGN 16
abi_test_trampoline:
$L$abi_test_trampoline_begin:
sub rsp,344
$L$abi_test_trampoline_prolog_alloc:
mov QWORD[112+rsp],rbx
$L$abi_test_trampoline_prolog_rbx:
mov QWORD[120+rsp],rbp
$L$abi_test_trampoline_prolog_rbp:
mov QWORD[128+rsp],rdi
$L$abi_test_trampoline_prolog_rdi:
mov QWORD[136+rsp],rsi
$L$abi_test_trampoline_prolog_rsi:
mov QWORD[144+rsp],r12
$L$abi_test_trampoline_prolog_r12:
mov QWORD[152+rsp],r13
$L$abi_test_trampoline_prolog_r13:
mov QWORD[160+rsp],r14
$L$abi_test_trampoline_prolog_r14:
mov QWORD[168+rsp],r15
$L$abi_test_trampoline_prolog_r15:
movdqa XMMWORD[176+rsp],xmm6
$L$abi_test_trampoline_prolog_xmm6:
movdqa XMMWORD[192+rsp],xmm7
$L$abi_test_trampoline_prolog_xmm7:
movdqa XMMWORD[208+rsp],xmm8
$L$abi_test_trampoline_prolog_xmm8:
movdqa XMMWORD[224+rsp],xmm9
$L$abi_test_trampoline_prolog_xmm9:
movdqa XMMWORD[240+rsp],xmm10
$L$abi_test_trampoline_prolog_xmm10:
movdqa XMMWORD[256+rsp],xmm11
$L$abi_test_trampoline_prolog_xmm11:
movdqa XMMWORD[272+rsp],xmm12
$L$abi_test_trampoline_prolog_xmm12:
movdqa XMMWORD[288+rsp],xmm13
$L$abi_test_trampoline_prolog_xmm13:
movdqa XMMWORD[304+rsp],xmm14
$L$abi_test_trampoline_prolog_xmm14:
movdqa XMMWORD[320+rsp],xmm15
$L$abi_test_trampoline_prolog_xmm15:
$L$abi_test_trampoline_prolog_end:
mov rbx,QWORD[rdx]
mov rbp,QWORD[8+rdx]
mov rdi,QWORD[16+rdx]
mov rsi,QWORD[24+rdx]
mov r12,QWORD[32+rdx]
mov r13,QWORD[40+rdx]
mov r14,QWORD[48+rdx]
mov r15,QWORD[56+rdx]
movdqa xmm6,XMMWORD[64+rdx]
movdqa xmm7,XMMWORD[80+rdx]
movdqa xmm8,XMMWORD[96+rdx]
movdqa xmm9,XMMWORD[112+rdx]
movdqa xmm10,XMMWORD[128+rdx]
movdqa xmm11,XMMWORD[144+rdx]
movdqa xmm12,XMMWORD[160+rdx]
movdqa xmm13,XMMWORD[176+rdx]
movdqa xmm14,XMMWORD[192+rdx]
movdqa xmm15,XMMWORD[208+rdx]
mov QWORD[88+rsp],rcx
mov QWORD[96+rsp],rdx
mov r10,r8
mov r11,r9
dec r11
js NEAR $L$call
mov rcx,QWORD[r10]
add r10,8
dec r11
js NEAR $L$call
mov rdx,QWORD[r10]
add r10,8
dec r11
js NEAR $L$call
mov r8,QWORD[r10]
add r10,8
dec r11
js NEAR $L$call
mov r9,QWORD[r10]
add r10,8
lea rax,[32+rsp]
$L$args_loop:
dec r11
js NEAR $L$call
mov QWORD[104+rsp],r11
mov r11,QWORD[r10]
mov QWORD[rax],r11
mov r11,QWORD[104+rsp]
add r10,8
add rax,8
jmp NEAR $L$args_loop
$L$call:
mov rax,QWORD[88+rsp]
call rax
mov rdx,QWORD[96+rsp]
mov QWORD[rdx],rbx
mov QWORD[8+rdx],rbp
mov QWORD[16+rdx],rdi
mov QWORD[24+rdx],rsi
mov QWORD[32+rdx],r12
mov QWORD[40+rdx],r13
mov QWORD[48+rdx],r14
mov QWORD[56+rdx],r15
movdqa XMMWORD[64+rdx],xmm6
movdqa XMMWORD[80+rdx],xmm7
movdqa XMMWORD[96+rdx],xmm8
movdqa XMMWORD[112+rdx],xmm9
movdqa XMMWORD[128+rdx],xmm10
movdqa XMMWORD[144+rdx],xmm11
movdqa XMMWORD[160+rdx],xmm12
movdqa XMMWORD[176+rdx],xmm13
movdqa XMMWORD[192+rdx],xmm14
movdqa XMMWORD[208+rdx],xmm15
mov rbx,QWORD[112+rsp]
mov rbp,QWORD[120+rsp]
mov rdi,QWORD[128+rsp]
mov rsi,QWORD[136+rsp]
mov r12,QWORD[144+rsp]
mov r13,QWORD[152+rsp]
mov r14,QWORD[160+rsp]
mov r15,QWORD[168+rsp]
movdqa xmm6,XMMWORD[176+rsp]
movdqa xmm7,XMMWORD[192+rsp]
movdqa xmm8,XMMWORD[208+rsp]
movdqa xmm9,XMMWORD[224+rsp]
movdqa xmm10,XMMWORD[240+rsp]
movdqa xmm11,XMMWORD[256+rsp]
movdqa xmm12,XMMWORD[272+rsp]
movdqa xmm13,XMMWORD[288+rsp]
movdqa xmm14,XMMWORD[304+rsp]
movdqa xmm15,XMMWORD[320+rsp]
add rsp,344
DB 0F3h,0C3h ;repret
$L$abi_test_trampoline_end:
global abi_test_clobber_rax
ALIGN 16
abi_test_clobber_rax:
xor rax,rax
DB 0F3h,0C3h ;repret
global abi_test_clobber_rbx
ALIGN 16
abi_test_clobber_rbx:
xor rbx,rbx
DB 0F3h,0C3h ;repret
global abi_test_clobber_rcx
ALIGN 16
abi_test_clobber_rcx:
xor rcx,rcx
DB 0F3h,0C3h ;repret
global abi_test_clobber_rdx
ALIGN 16
abi_test_clobber_rdx:
xor rdx,rdx
DB 0F3h,0C3h ;repret
global abi_test_clobber_rdi
ALIGN 16
abi_test_clobber_rdi:
xor rdi,rdi
DB 0F3h,0C3h ;repret
global abi_test_clobber_rsi
ALIGN 16
abi_test_clobber_rsi:
xor rsi,rsi
DB 0F3h,0C3h ;repret
global abi_test_clobber_rbp
ALIGN 16
abi_test_clobber_rbp:
xor rbp,rbp
DB 0F3h,0C3h ;repret
global abi_test_clobber_r8
ALIGN 16
abi_test_clobber_r8:
xor r8,r8
DB 0F3h,0C3h ;repret
global abi_test_clobber_r9
ALIGN 16
abi_test_clobber_r9:
xor r9,r9
DB 0F3h,0C3h ;repret
global abi_test_clobber_r10
ALIGN 16
abi_test_clobber_r10:
xor r10,r10
DB 0F3h,0C3h ;repret
global abi_test_clobber_r11
ALIGN 16
abi_test_clobber_r11:
xor r11,r11
DB 0F3h,0C3h ;repret
global abi_test_clobber_r12
ALIGN 16
abi_test_clobber_r12:
xor r12,r12
DB 0F3h,0C3h ;repret
global abi_test_clobber_r13
ALIGN 16
abi_test_clobber_r13:
xor r13,r13
DB 0F3h,0C3h ;repret
global abi_test_clobber_r14
ALIGN 16
abi_test_clobber_r14:
xor r14,r14
DB 0F3h,0C3h ;repret
global abi_test_clobber_r15
ALIGN 16
abi_test_clobber_r15:
xor r15,r15
DB 0F3h,0C3h ;repret
global abi_test_clobber_xmm0
ALIGN 16
abi_test_clobber_xmm0:
pxor xmm0,xmm0
DB 0F3h,0C3h ;repret
global abi_test_clobber_xmm1
ALIGN 16
abi_test_clobber_xmm1:
pxor xmm1,xmm1
DB 0F3h,0C3h ;repret
global abi_test_clobber_xmm2
ALIGN 16
abi_test_clobber_xmm2:
pxor xmm2,xmm2
DB 0F3h,0C3h ;repret
global abi_test_clobber_xmm3
ALIGN 16
abi_test_clobber_xmm3:
pxor xmm3,xmm3
DB 0F3h,0C3h ;repret
global abi_test_clobber_xmm4
ALIGN 16
abi_test_clobber_xmm4:
pxor xmm4,xmm4
DB 0F3h,0C3h ;repret
global abi_test_clobber_xmm5
ALIGN 16
abi_test_clobber_xmm5:
pxor xmm5,xmm5
DB 0F3h,0C3h ;repret
global abi_test_clobber_xmm6
ALIGN 16
abi_test_clobber_xmm6:
pxor xmm6,xmm6
DB 0F3h,0C3h ;repret
global abi_test_clobber_xmm7
ALIGN 16
abi_test_clobber_xmm7:
pxor xmm7,xmm7
DB 0F3h,0C3h ;repret
global abi_test_clobber_xmm8
ALIGN 16
abi_test_clobber_xmm8:
pxor xmm8,xmm8
DB 0F3h,0C3h ;repret
global abi_test_clobber_xmm9
ALIGN 16
abi_test_clobber_xmm9:
pxor xmm9,xmm9
DB 0F3h,0C3h ;repret
global abi_test_clobber_xmm10
ALIGN 16
abi_test_clobber_xmm10:
pxor xmm10,xmm10
DB 0F3h,0C3h ;repret
global abi_test_clobber_xmm11
ALIGN 16
abi_test_clobber_xmm11:
pxor xmm11,xmm11
DB 0F3h,0C3h ;repret
global abi_test_clobber_xmm12
ALIGN 16
abi_test_clobber_xmm12:
pxor xmm12,xmm12
DB 0F3h,0C3h ;repret
global abi_test_clobber_xmm13
ALIGN 16
abi_test_clobber_xmm13:
pxor xmm13,xmm13
DB 0F3h,0C3h ;repret
global abi_test_clobber_xmm14
ALIGN 16
abi_test_clobber_xmm14:
pxor xmm14,xmm14
DB 0F3h,0C3h ;repret
global abi_test_clobber_xmm15
ALIGN 16
abi_test_clobber_xmm15:
pxor xmm15,xmm15
DB 0F3h,0C3h ;repret
section .pdata rdata align=4
ALIGN 4
DD $L$abi_test_trampoline_begin wrt ..imagebase
DD $L$abi_test_trampoline_end wrt ..imagebase
DD $L$abi_test_trampoline_info wrt ..imagebase
section .xdata rdata align=8
ALIGN 8
$L$abi_test_trampoline_info:
DB 1
DB $L$abi_test_trampoline_prolog_end-$L$abi_test_trampoline_begin
DB 38
DB 0
DB $L$abi_test_trampoline_prolog_alloc-$L$abi_test_trampoline_begin
DB 1
DW 43
DB $L$abi_test_trampoline_prolog_rbx-$L$abi_test_trampoline_begin
DB 52
DW 14
DB $L$abi_test_trampoline_prolog_rbp-$L$abi_test_trampoline_begin
DB 84
DW 15
DB $L$abi_test_trampoline_prolog_rdi-$L$abi_test_trampoline_begin
DB 116
DW 16
DB $L$abi_test_trampoline_prolog_rsi-$L$abi_test_trampoline_begin
DB 100
DW 17
DB $L$abi_test_trampoline_prolog_r12-$L$abi_test_trampoline_begin
DB 196
DW 18
DB $L$abi_test_trampoline_prolog_r13-$L$abi_test_trampoline_begin
DB 212
DW 19
DB $L$abi_test_trampoline_prolog_r14-$L$abi_test_trampoline_begin
DB 228
DW 20
DB $L$abi_test_trampoline_prolog_r15-$L$abi_test_trampoline_begin
DB 244
DW 21
DB $L$abi_test_trampoline_prolog_xmm6-$L$abi_test_trampoline_begin
DB 104
DW 11
DB $L$abi_test_trampoline_prolog_xmm7-$L$abi_test_trampoline_begin
DB 120
DW 12
DB $L$abi_test_trampoline_prolog_xmm8-$L$abi_test_trampoline_begin
DB 136
DW 13
DB $L$abi_test_trampoline_prolog_xmm9-$L$abi_test_trampoline_begin
DB 152
DW 14
DB $L$abi_test_trampoline_prolog_xmm10-$L$abi_test_trampoline_begin
DB 168
DW 15
DB $L$abi_test_trampoline_prolog_xmm11-$L$abi_test_trampoline_begin
DB 184
DW 16
DB $L$abi_test_trampoline_prolog_xmm12-$L$abi_test_trampoline_begin
DB 200
DW 17
DB $L$abi_test_trampoline_prolog_xmm13-$L$abi_test_trampoline_begin
DB 216
DW 18
DB $L$abi_test_trampoline_prolog_xmm14-$L$abi_test_trampoline_begin
DB 232
DW 19
DB $L$abi_test_trampoline_prolog_xmm15-$L$abi_test_trampoline_begin
DB 248
DW 20
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment