Fix asm symbol prefixing includes: - For nasm, include the BoringSSL prefix directly in the macros (which in this preprocessor is possible, unlike C's). - For nasm, put the _ only on x86-64, not on x86. - Include p_thread_callback_boringssl as an asm symbol, as it's used in an asm-like way and must be prefixed. Bug: 42220000 Change-Id: I13f950275b9128ebc29ce5ce8d9ad9f26a6a6964 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/87387 Reviewed-by: Xiangfei Ding <xfding@google.com> Auto-Submit: Rudolf Polzer <rpolzer@google.com> Commit-Queue: Rudolf Polzer <rpolzer@google.com>
diff --git a/gen/boringssl_prefix_symbols_internal_S.inc b/gen/boringssl_prefix_symbols_internal_S.inc index b7d5261..0e1fc7e 100644 --- a/gen/boringssl_prefix_symbols_internal_S.inc +++ b/gen/boringssl_prefix_symbols_internal_S.inc
@@ -280,6 +280,7 @@ #define _md5_block_asm_data_order BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(md5_block_asm_data_order)) #define _openssl_poly1305_neon2_addmulmod BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(openssl_poly1305_neon2_addmulmod)) #define _openssl_poly1305_neon2_blocks BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(openssl_poly1305_neon2_blocks)) +#define _p_thread_callback_boringssl BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(p_thread_callback_boringssl)) #define _poly_Rq_mul BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(poly_Rq_mul)) #define _rsaz_1024_gather5_avx2 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(rsaz_1024_gather5_avx2)) #define _rsaz_1024_mul_avx2 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(rsaz_1024_mul_avx2)) @@ -579,6 +580,7 @@ #define md5_block_asm_data_order BORINGSSL_ADD_PREFIX(md5_block_asm_data_order) #define openssl_poly1305_neon2_addmulmod BORINGSSL_ADD_PREFIX(openssl_poly1305_neon2_addmulmod) #define openssl_poly1305_neon2_blocks BORINGSSL_ADD_PREFIX(openssl_poly1305_neon2_blocks) +#define p_thread_callback_boringssl BORINGSSL_ADD_PREFIX(p_thread_callback_boringssl) #define poly_Rq_mul BORINGSSL_ADD_PREFIX(poly_Rq_mul) #define rsaz_1024_gather5_avx2 BORINGSSL_ADD_PREFIX(rsaz_1024_gather5_avx2) #define rsaz_1024_mul_avx2 BORINGSSL_ADD_PREFIX(rsaz_1024_mul_avx2)
diff --git a/gen/boringssl_prefix_symbols_internal_asm.inc b/gen/boringssl_prefix_symbols_internal_asm.inc deleted file mode 100644 index ea66411..0000000 --- a/gen/boringssl_prefix_symbols_internal_asm.inc +++ /dev/null
@@ -1,312 +0,0 @@ -; Copyright 2024 The BoringSSL Authors -; -; Licensed under the Apache License, Version 2.0 (the "License"); -; you may not use this file except in compliance with the License. -; You may obtain a copy of the License at -; -; https://www.apache.org/licenses/LICENSE-2.0 -; -; Unless required by applicable law or agreed to in writing, software -; distributed under the License is distributed on an "AS IS" BASIS, -; WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -; See the License for the specific language governing permissions and -; limitations under the License. - -; Generated by go ./util/pregenerate. Do not edit manually. - -%define _BORINGSSL_function_hit BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(BORINGSSL_function_hit)) -%define _CRYPTO_rdrand BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(CRYPTO_rdrand)) -%define _CRYPTO_rdrand_multiple8_buf BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(CRYPTO_rdrand_multiple8_buf)) -%define _ChaCha20_ctr32_avx2 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ChaCha20_ctr32_avx2)) -%define _ChaCha20_ctr32_neon BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ChaCha20_ctr32_neon)) -%define _ChaCha20_ctr32_nohw BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ChaCha20_ctr32_nohw)) -%define _ChaCha20_ctr32_ssse3 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ChaCha20_ctr32_ssse3)) -%define _ChaCha20_ctr32_ssse3_4x BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ChaCha20_ctr32_ssse3_4x)) -%define _abi_test_bad_unwind_epilog BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_bad_unwind_epilog)) -%define _abi_test_bad_unwind_temporary BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_bad_unwind_temporary)) -%define _abi_test_bad_unwind_wrong_register BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_bad_unwind_wrong_register)) -%define _abi_test_clobber_d0 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d0)) -%define _abi_test_clobber_d1 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d1)) -%define _abi_test_clobber_d10 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d10)) -%define _abi_test_clobber_d11 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d11)) -%define _abi_test_clobber_d12 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d12)) -%define _abi_test_clobber_d13 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d13)) -%define _abi_test_clobber_d14 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d14)) -%define _abi_test_clobber_d15 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d15)) -%define _abi_test_clobber_d16 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d16)) -%define _abi_test_clobber_d17 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d17)) -%define _abi_test_clobber_d18 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d18)) -%define _abi_test_clobber_d19 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d19)) -%define _abi_test_clobber_d2 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d2)) -%define _abi_test_clobber_d20 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d20)) -%define _abi_test_clobber_d21 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d21)) -%define _abi_test_clobber_d22 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d22)) -%define _abi_test_clobber_d23 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d23)) -%define _abi_test_clobber_d24 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d24)) -%define _abi_test_clobber_d25 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d25)) -%define _abi_test_clobber_d26 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d26)) -%define _abi_test_clobber_d27 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d27)) -%define _abi_test_clobber_d28 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d28)) -%define _abi_test_clobber_d29 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d29)) -%define _abi_test_clobber_d3 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d3)) -%define _abi_test_clobber_d30 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d30)) -%define _abi_test_clobber_d31 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d31)) -%define _abi_test_clobber_d4 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d4)) -%define _abi_test_clobber_d5 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d5)) -%define _abi_test_clobber_d6 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d6)) -%define _abi_test_clobber_d7 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d7)) -%define _abi_test_clobber_d8 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d8)) -%define _abi_test_clobber_d9 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_d9)) -%define _abi_test_clobber_eax BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_eax)) -%define _abi_test_clobber_ebp BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_ebp)) -%define _abi_test_clobber_ebx BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_ebx)) -%define _abi_test_clobber_ecx BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_ecx)) -%define _abi_test_clobber_edi BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_edi)) -%define _abi_test_clobber_edx BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_edx)) -%define _abi_test_clobber_esi BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_esi)) -%define _abi_test_clobber_r0 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_r0)) -%define _abi_test_clobber_r1 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_r1)) -%define _abi_test_clobber_r10 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_r10)) -%define _abi_test_clobber_r11 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_r11)) -%define _abi_test_clobber_r12 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_r12)) -%define _abi_test_clobber_r13 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_r13)) -%define _abi_test_clobber_r14 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_r14)) -%define _abi_test_clobber_r15 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_r15)) -%define _abi_test_clobber_r2 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_r2)) -%define _abi_test_clobber_r3 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_r3)) -%define _abi_test_clobber_r4 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_r4)) -%define _abi_test_clobber_r5 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_r5)) -%define _abi_test_clobber_r6 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_r6)) -%define _abi_test_clobber_r7 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_r7)) -%define _abi_test_clobber_r8 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_r8)) -%define _abi_test_clobber_r9 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_r9)) -%define _abi_test_clobber_rax BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_rax)) -%define _abi_test_clobber_rbp BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_rbp)) -%define _abi_test_clobber_rbx BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_rbx)) -%define _abi_test_clobber_rcx BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_rcx)) -%define _abi_test_clobber_rdi BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_rdi)) -%define _abi_test_clobber_rdx BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_rdx)) -%define _abi_test_clobber_rsi BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_rsi)) -%define _abi_test_clobber_v10_upper BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_v10_upper)) -%define _abi_test_clobber_v11_upper BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_v11_upper)) -%define _abi_test_clobber_v12_upper BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_v12_upper)) -%define _abi_test_clobber_v13_upper BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_v13_upper)) -%define _abi_test_clobber_v14_upper BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_v14_upper)) -%define _abi_test_clobber_v15_upper BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_v15_upper)) -%define _abi_test_clobber_v8_upper BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_v8_upper)) -%define _abi_test_clobber_v9_upper BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_v9_upper)) -%define _abi_test_clobber_x0 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_x0)) -%define _abi_test_clobber_x1 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_x1)) -%define _abi_test_clobber_x10 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_x10)) -%define _abi_test_clobber_x11 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_x11)) -%define _abi_test_clobber_x12 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_x12)) -%define _abi_test_clobber_x13 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_x13)) -%define _abi_test_clobber_x14 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_x14)) -%define _abi_test_clobber_x15 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_x15)) -%define _abi_test_clobber_x16 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_x16)) -%define _abi_test_clobber_x17 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_x17)) -%define _abi_test_clobber_x19 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_x19)) -%define _abi_test_clobber_x2 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_x2)) -%define _abi_test_clobber_x20 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_x20)) -%define _abi_test_clobber_x21 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_x21)) -%define _abi_test_clobber_x22 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_x22)) -%define _abi_test_clobber_x23 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_x23)) -%define _abi_test_clobber_x24 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_x24)) -%define _abi_test_clobber_x25 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_x25)) -%define _abi_test_clobber_x26 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_x26)) -%define _abi_test_clobber_x27 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_x27)) -%define _abi_test_clobber_x28 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_x28)) -%define _abi_test_clobber_x29 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_x29)) -%define _abi_test_clobber_x3 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_x3)) -%define _abi_test_clobber_x4 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_x4)) -%define _abi_test_clobber_x5 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_x5)) -%define _abi_test_clobber_x6 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_x6)) -%define _abi_test_clobber_x7 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_x7)) -%define _abi_test_clobber_x8 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_x8)) -%define _abi_test_clobber_x9 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_x9)) -%define _abi_test_clobber_xmm0 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm0)) -%define _abi_test_clobber_xmm1 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm1)) -%define _abi_test_clobber_xmm10 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm10)) -%define _abi_test_clobber_xmm11 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm11)) -%define _abi_test_clobber_xmm12 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm12)) -%define _abi_test_clobber_xmm13 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm13)) -%define _abi_test_clobber_xmm14 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm14)) -%define _abi_test_clobber_xmm15 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm15)) -%define _abi_test_clobber_xmm2 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm2)) -%define _abi_test_clobber_xmm3 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm3)) -%define _abi_test_clobber_xmm4 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm4)) -%define _abi_test_clobber_xmm5 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm5)) -%define _abi_test_clobber_xmm6 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm6)) -%define _abi_test_clobber_xmm7 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm7)) -%define _abi_test_clobber_xmm8 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm8)) -%define _abi_test_clobber_xmm9 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm9)) -%define _abi_test_get_and_clear_direction_flag BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_get_and_clear_direction_flag)) -%define _abi_test_set_direction_flag BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_set_direction_flag)) -%define _abi_test_trampoline BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_trampoline)) -%define _abi_test_unwind_return BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_unwind_return)) -%define _abi_test_unwind_start BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_unwind_start)) -%define _abi_test_unwind_stop BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(abi_test_unwind_stop)) -%define _aes128gcmsiv_aes_ks BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes128gcmsiv_aes_ks)) -%define _aes128gcmsiv_aes_ks_enc_x1 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes128gcmsiv_aes_ks_enc_x1)) -%define _aes128gcmsiv_dec BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes128gcmsiv_dec)) -%define _aes128gcmsiv_ecb_enc_block BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes128gcmsiv_ecb_enc_block)) -%define _aes128gcmsiv_enc_msg_x4 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes128gcmsiv_enc_msg_x4)) -%define _aes128gcmsiv_enc_msg_x8 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes128gcmsiv_enc_msg_x8)) -%define _aes128gcmsiv_kdf BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes128gcmsiv_kdf)) -%define _aes256gcmsiv_aes_ks BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes256gcmsiv_aes_ks)) -%define _aes256gcmsiv_aes_ks_enc_x1 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes256gcmsiv_aes_ks_enc_x1)) -%define _aes256gcmsiv_dec BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes256gcmsiv_dec)) -%define _aes256gcmsiv_ecb_enc_block BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes256gcmsiv_ecb_enc_block)) -%define _aes256gcmsiv_enc_msg_x4 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes256gcmsiv_enc_msg_x4)) -%define _aes256gcmsiv_enc_msg_x8 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes256gcmsiv_enc_msg_x8)) -%define _aes256gcmsiv_kdf BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes256gcmsiv_kdf)) -%define _aes_gcm_dec_kernel BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes_gcm_dec_kernel)) -%define _aes_gcm_dec_update_vaes_avx2 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes_gcm_dec_update_vaes_avx2)) -%define _aes_gcm_dec_update_vaes_avx512 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes_gcm_dec_update_vaes_avx512)) -%define _aes_gcm_enc_kernel BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes_gcm_enc_kernel)) -%define _aes_gcm_enc_update_vaes_avx2 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes_gcm_enc_update_vaes_avx2)) -%define _aes_gcm_enc_update_vaes_avx512 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes_gcm_enc_update_vaes_avx512)) -%define _aes_hw_cbc_encrypt BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes_hw_cbc_encrypt)) -%define _aes_hw_ccm64_decrypt_blocks BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes_hw_ccm64_decrypt_blocks)) -%define _aes_hw_ccm64_encrypt_blocks BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes_hw_ccm64_encrypt_blocks)) -%define _aes_hw_ctr32_encrypt_blocks BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes_hw_ctr32_encrypt_blocks)) -%define _aes_hw_decrypt BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes_hw_decrypt)) -%define _aes_hw_ecb_encrypt BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes_hw_ecb_encrypt)) -%define _aes_hw_encrypt BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes_hw_encrypt)) -%define _aes_hw_encrypt_key_to_decrypt_key BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes_hw_encrypt_key_to_decrypt_key)) -%define _aes_hw_set_decrypt_key BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes_hw_set_decrypt_key)) -%define _aes_hw_set_encrypt_key BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes_hw_set_encrypt_key)) -%define _aes_hw_set_encrypt_key_alt BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes_hw_set_encrypt_key_alt)) -%define _aes_hw_set_encrypt_key_base BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes_hw_set_encrypt_key_base)) -%define _aes_hw_xts_decrypt BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes_hw_xts_decrypt)) -%define _aes_hw_xts_encrypt BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aes_hw_xts_encrypt)) -%define _aesgcmsiv_htable6_init BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aesgcmsiv_htable6_init)) -%define _aesgcmsiv_htable_init BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aesgcmsiv_htable_init)) -%define _aesgcmsiv_htable_polyval BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aesgcmsiv_htable_polyval)) -%define _aesgcmsiv_polyval_horner BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aesgcmsiv_polyval_horner)) -%define _aesni_gcm_decrypt BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aesni_gcm_decrypt)) -%define _aesni_gcm_encrypt BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(aesni_gcm_encrypt)) -%define _beeu_mod_inverse_vartime BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(beeu_mod_inverse_vartime)) -%define _bn_add_words BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(bn_add_words)) -%define _bn_gather5 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(bn_gather5)) -%define _bn_mul4x_mont BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(bn_mul4x_mont)) -%define _bn_mul4x_mont_gather5 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(bn_mul4x_mont_gather5)) -%define _bn_mul8x_mont_neon BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(bn_mul8x_mont_neon)) -%define _bn_mul_add_words BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(bn_mul_add_words)) -%define _bn_mul_comba4 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(bn_mul_comba4)) -%define _bn_mul_comba8 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(bn_mul_comba8)) -%define _bn_mul_mont_gather5_nohw BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(bn_mul_mont_gather5_nohw)) -%define _bn_mul_mont_nohw BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(bn_mul_mont_nohw)) -%define _bn_mul_mont_words BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(bn_mul_mont_words)) -%define _bn_mul_words BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(bn_mul_words)) -%define _bn_mulx4x_mont BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(bn_mulx4x_mont)) -%define _bn_mulx4x_mont_gather5 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(bn_mulx4x_mont_gather5)) -%define _bn_power5_nohw BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(bn_power5_nohw)) -%define _bn_powerx5 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(bn_powerx5)) -%define _bn_scatter5 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(bn_scatter5)) -%define _bn_sqr8x_internal BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(bn_sqr8x_internal)) -%define _bn_sqr8x_mont BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(bn_sqr8x_mont)) -%define _bn_sqr_add_words BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(bn_sqr_add_words)) -%define _bn_sqr_comba4 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(bn_sqr_comba4)) -%define _bn_sqr_comba8 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(bn_sqr_comba8)) -%define _bn_sqrx8x_internal BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(bn_sqrx8x_internal)) -%define _bn_sub_words BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(bn_sub_words)) -%define _bsaes_cbc_encrypt BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(bsaes_cbc_encrypt)) -%define _bsaes_ctr32_encrypt_blocks BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(bsaes_ctr32_encrypt_blocks)) -%define _chacha20_poly1305_open BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(chacha20_poly1305_open)) -%define _chacha20_poly1305_open_avx2 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(chacha20_poly1305_open_avx2)) -%define _chacha20_poly1305_open_sse41 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(chacha20_poly1305_open_sse41)) -%define _chacha20_poly1305_seal BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(chacha20_poly1305_seal)) -%define _chacha20_poly1305_seal_avx2 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(chacha20_poly1305_seal_avx2)) -%define _chacha20_poly1305_seal_sse41 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(chacha20_poly1305_seal_sse41)) -%define _ecp_nistz256_div_by_2 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_div_by_2)) -%define _ecp_nistz256_mul_by_2 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_mul_by_2)) -%define _ecp_nistz256_mul_by_3 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_mul_by_3)) -%define _ecp_nistz256_mul_mont BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_mul_mont)) -%define _ecp_nistz256_mul_mont_adx BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_mul_mont_adx)) -%define _ecp_nistz256_mul_mont_nohw BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_mul_mont_nohw)) -%define _ecp_nistz256_neg BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_neg)) -%define _ecp_nistz256_ord_mul_mont BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_ord_mul_mont)) -%define _ecp_nistz256_ord_mul_mont_adx BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_ord_mul_mont_adx)) -%define _ecp_nistz256_ord_mul_mont_nohw BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_ord_mul_mont_nohw)) -%define _ecp_nistz256_ord_sqr_mont BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_ord_sqr_mont)) -%define _ecp_nistz256_ord_sqr_mont_adx BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_ord_sqr_mont_adx)) -%define _ecp_nistz256_ord_sqr_mont_nohw BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_ord_sqr_mont_nohw)) -%define _ecp_nistz256_point_add BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_point_add)) -%define _ecp_nistz256_point_add_adx BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_point_add_adx)) -%define _ecp_nistz256_point_add_affine BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_point_add_affine)) -%define _ecp_nistz256_point_add_affine_adx BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_point_add_affine_adx)) -%define _ecp_nistz256_point_add_affine_nohw BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_point_add_affine_nohw)) -%define _ecp_nistz256_point_add_nohw BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_point_add_nohw)) -%define _ecp_nistz256_point_double BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_point_double)) -%define _ecp_nistz256_point_double_adx BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_point_double_adx)) -%define _ecp_nistz256_point_double_nohw BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_point_double_nohw)) -%define _ecp_nistz256_select_w5 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_select_w5)) -%define _ecp_nistz256_select_w5_avx2 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_select_w5_avx2)) -%define _ecp_nistz256_select_w5_nohw BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_select_w5_nohw)) -%define _ecp_nistz256_select_w7 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_select_w7)) -%define _ecp_nistz256_select_w7_avx2 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_select_w7_avx2)) -%define _ecp_nistz256_select_w7_nohw BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_select_w7_nohw)) -%define _ecp_nistz256_sqr_mont BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_sqr_mont)) -%define _ecp_nistz256_sqr_mont_adx BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_sqr_mont_adx)) -%define _ecp_nistz256_sqr_mont_nohw BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_sqr_mont_nohw)) -%define _ecp_nistz256_sub BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(ecp_nistz256_sub)) -%define _fiat_curve25519_adx_mul BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(fiat_curve25519_adx_mul)) -%define _fiat_curve25519_adx_square BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(fiat_curve25519_adx_square)) -%define _fiat_p256_adx_mul BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(fiat_p256_adx_mul)) -%define _fiat_p256_adx_sqr BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(fiat_p256_adx_sqr)) -%define _gcm_ghash_avx BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(gcm_ghash_avx)) -%define _gcm_ghash_clmul BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(gcm_ghash_clmul)) -%define _gcm_ghash_neon BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(gcm_ghash_neon)) -%define _gcm_ghash_ssse3 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(gcm_ghash_ssse3)) -%define _gcm_ghash_v8 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(gcm_ghash_v8)) -%define _gcm_ghash_vpclmulqdq_avx2 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(gcm_ghash_vpclmulqdq_avx2)) -%define _gcm_ghash_vpclmulqdq_avx512 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(gcm_ghash_vpclmulqdq_avx512)) -%define _gcm_gmult_avx BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(gcm_gmult_avx)) -%define _gcm_gmult_clmul BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(gcm_gmult_clmul)) -%define _gcm_gmult_neon BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(gcm_gmult_neon)) -%define _gcm_gmult_ssse3 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(gcm_gmult_ssse3)) -%define _gcm_gmult_v8 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(gcm_gmult_v8)) -%define _gcm_gmult_vpclmulqdq_avx2 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(gcm_gmult_vpclmulqdq_avx2)) -%define _gcm_gmult_vpclmulqdq_avx512 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(gcm_gmult_vpclmulqdq_avx512)) -%define _gcm_init_avx BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(gcm_init_avx)) -%define _gcm_init_clmul BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(gcm_init_clmul)) -%define _gcm_init_neon BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(gcm_init_neon)) -%define _gcm_init_v8 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(gcm_init_v8)) -%define _gcm_init_vpclmulqdq_avx2 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(gcm_init_vpclmulqdq_avx2)) -%define _gcm_init_vpclmulqdq_avx512 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(gcm_init_vpclmulqdq_avx512)) -%define _md5_block_asm_data_order BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(md5_block_asm_data_order)) -%define _openssl_poly1305_neon2_addmulmod BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(openssl_poly1305_neon2_addmulmod)) -%define _openssl_poly1305_neon2_blocks BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(openssl_poly1305_neon2_blocks)) -%define _poly_Rq_mul BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(poly_Rq_mul)) -%define _rsaz_1024_gather5_avx2 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(rsaz_1024_gather5_avx2)) -%define _rsaz_1024_mul_avx2 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(rsaz_1024_mul_avx2)) -%define _rsaz_1024_norm2red_avx2 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(rsaz_1024_norm2red_avx2)) -%define _rsaz_1024_red2norm_avx2 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(rsaz_1024_red2norm_avx2)) -%define _rsaz_1024_scatter5_avx2 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(rsaz_1024_scatter5_avx2)) -%define _rsaz_1024_sqr_avx2 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(rsaz_1024_sqr_avx2)) -%define _sha1_block_data_order_avx BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(sha1_block_data_order_avx)) -%define _sha1_block_data_order_avx2 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(sha1_block_data_order_avx2)) -%define _sha1_block_data_order_hw BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(sha1_block_data_order_hw)) -%define _sha1_block_data_order_neon BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(sha1_block_data_order_neon)) -%define _sha1_block_data_order_nohw BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(sha1_block_data_order_nohw)) -%define _sha1_block_data_order_ssse3 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(sha1_block_data_order_ssse3)) -%define _sha256_block_data_order_avx BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(sha256_block_data_order_avx)) -%define _sha256_block_data_order_hw BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(sha256_block_data_order_hw)) -%define _sha256_block_data_order_neon BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(sha256_block_data_order_neon)) -%define _sha256_block_data_order_nohw BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(sha256_block_data_order_nohw)) -%define _sha256_block_data_order_ssse3 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(sha256_block_data_order_ssse3)) -%define _sha512_block_data_order_avx BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(sha512_block_data_order_avx)) -%define _sha512_block_data_order_hw BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(sha512_block_data_order_hw)) -%define _sha512_block_data_order_neon BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(sha512_block_data_order_neon)) -%define _sha512_block_data_order_nohw BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(sha512_block_data_order_nohw)) -%define _sha512_block_data_order_ssse3 BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(sha512_block_data_order_ssse3)) -%define _vpaes_cbc_encrypt BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(vpaes_cbc_encrypt)) -%define _vpaes_ctr32_encrypt_blocks BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(vpaes_ctr32_encrypt_blocks)) -%define _vpaes_decrypt BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(vpaes_decrypt)) -%define _vpaes_decrypt_key_to_bsaes BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(vpaes_decrypt_key_to_bsaes)) -%define _vpaes_encrypt BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(vpaes_encrypt)) -%define _vpaes_encrypt_key_to_bsaes BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(vpaes_encrypt_key_to_bsaes)) -%define _vpaes_set_decrypt_key BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(vpaes_set_decrypt_key)) -%define _vpaes_set_encrypt_key BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(vpaes_set_encrypt_key)) -%define _x25519_NEON BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(x25519_NEON))
diff --git a/gen/boringssl_prefix_symbols_internal_c.inc b/gen/boringssl_prefix_symbols_internal_c.inc index 009a821..0066d9b 100644 --- a/gen/boringssl_prefix_symbols_internal_c.inc +++ b/gen/boringssl_prefix_symbols_internal_c.inc
@@ -278,6 +278,7 @@ #define md5_block_asm_data_order BORINGSSL_ADD_PREFIX(md5_block_asm_data_order) #define openssl_poly1305_neon2_addmulmod BORINGSSL_ADD_PREFIX(openssl_poly1305_neon2_addmulmod) #define openssl_poly1305_neon2_blocks BORINGSSL_ADD_PREFIX(openssl_poly1305_neon2_blocks) +#define p_thread_callback_boringssl BORINGSSL_ADD_PREFIX(p_thread_callback_boringssl) #define poly_Rq_mul BORINGSSL_ADD_PREFIX(poly_Rq_mul) #define rsaz_1024_gather5_avx2 BORINGSSL_ADD_PREFIX(rsaz_1024_gather5_avx2) #define rsaz_1024_mul_avx2 BORINGSSL_ADD_PREFIX(rsaz_1024_mul_avx2)
diff --git a/gen/boringssl_prefix_symbols_internal_x86_64_asm.inc b/gen/boringssl_prefix_symbols_internal_x86_64_asm.inc new file mode 100644 index 0000000..5a20a2f --- /dev/null +++ b/gen/boringssl_prefix_symbols_internal_x86_64_asm.inc
@@ -0,0 +1,313 @@ +; Copyright 2024 The BoringSSL Authors +; +; Licensed under the Apache License, Version 2.0 (the "License"); +; you may not use this file except in compliance with the License. +; You may obtain a copy of the License at +; +; https://www.apache.org/licenses/LICENSE-2.0 +; +; Unless required by applicable law or agreed to in writing, software +; distributed under the License is distributed on an "AS IS" BASIS, +; WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +; See the License for the specific language governing permissions and +; limitations under the License. + +; Generated by go ./util/pregenerate. Do not edit manually. + +%define BORINGSSL_function_hit BORINGSSL_PREFIX %+ _BORINGSSL_function_hit +%define CRYPTO_rdrand BORINGSSL_PREFIX %+ _CRYPTO_rdrand +%define CRYPTO_rdrand_multiple8_buf BORINGSSL_PREFIX %+ _CRYPTO_rdrand_multiple8_buf +%define ChaCha20_ctr32_avx2 BORINGSSL_PREFIX %+ _ChaCha20_ctr32_avx2 +%define ChaCha20_ctr32_neon BORINGSSL_PREFIX %+ _ChaCha20_ctr32_neon +%define ChaCha20_ctr32_nohw BORINGSSL_PREFIX %+ _ChaCha20_ctr32_nohw +%define ChaCha20_ctr32_ssse3 BORINGSSL_PREFIX %+ _ChaCha20_ctr32_ssse3 +%define ChaCha20_ctr32_ssse3_4x BORINGSSL_PREFIX %+ _ChaCha20_ctr32_ssse3_4x +%define abi_test_bad_unwind_epilog BORINGSSL_PREFIX %+ _abi_test_bad_unwind_epilog +%define abi_test_bad_unwind_temporary BORINGSSL_PREFIX %+ _abi_test_bad_unwind_temporary +%define abi_test_bad_unwind_wrong_register BORINGSSL_PREFIX %+ _abi_test_bad_unwind_wrong_register +%define abi_test_clobber_d0 BORINGSSL_PREFIX %+ _abi_test_clobber_d0 +%define abi_test_clobber_d1 BORINGSSL_PREFIX %+ _abi_test_clobber_d1 +%define abi_test_clobber_d10 BORINGSSL_PREFIX %+ _abi_test_clobber_d10 +%define abi_test_clobber_d11 BORINGSSL_PREFIX %+ _abi_test_clobber_d11 +%define abi_test_clobber_d12 BORINGSSL_PREFIX %+ _abi_test_clobber_d12 +%define abi_test_clobber_d13 BORINGSSL_PREFIX %+ _abi_test_clobber_d13 +%define abi_test_clobber_d14 BORINGSSL_PREFIX %+ _abi_test_clobber_d14 +%define abi_test_clobber_d15 BORINGSSL_PREFIX %+ _abi_test_clobber_d15 +%define abi_test_clobber_d16 BORINGSSL_PREFIX %+ _abi_test_clobber_d16 +%define abi_test_clobber_d17 BORINGSSL_PREFIX %+ _abi_test_clobber_d17 +%define abi_test_clobber_d18 BORINGSSL_PREFIX %+ _abi_test_clobber_d18 +%define abi_test_clobber_d19 BORINGSSL_PREFIX %+ _abi_test_clobber_d19 +%define abi_test_clobber_d2 BORINGSSL_PREFIX %+ _abi_test_clobber_d2 +%define abi_test_clobber_d20 BORINGSSL_PREFIX %+ _abi_test_clobber_d20 +%define abi_test_clobber_d21 BORINGSSL_PREFIX %+ _abi_test_clobber_d21 +%define abi_test_clobber_d22 BORINGSSL_PREFIX %+ _abi_test_clobber_d22 +%define abi_test_clobber_d23 BORINGSSL_PREFIX %+ _abi_test_clobber_d23 +%define abi_test_clobber_d24 BORINGSSL_PREFIX %+ _abi_test_clobber_d24 +%define abi_test_clobber_d25 BORINGSSL_PREFIX %+ _abi_test_clobber_d25 +%define abi_test_clobber_d26 BORINGSSL_PREFIX %+ _abi_test_clobber_d26 +%define abi_test_clobber_d27 BORINGSSL_PREFIX %+ _abi_test_clobber_d27 +%define abi_test_clobber_d28 BORINGSSL_PREFIX %+ _abi_test_clobber_d28 +%define abi_test_clobber_d29 BORINGSSL_PREFIX %+ _abi_test_clobber_d29 +%define abi_test_clobber_d3 BORINGSSL_PREFIX %+ _abi_test_clobber_d3 +%define abi_test_clobber_d30 BORINGSSL_PREFIX %+ _abi_test_clobber_d30 +%define abi_test_clobber_d31 BORINGSSL_PREFIX %+ _abi_test_clobber_d31 +%define abi_test_clobber_d4 BORINGSSL_PREFIX %+ _abi_test_clobber_d4 +%define abi_test_clobber_d5 BORINGSSL_PREFIX %+ _abi_test_clobber_d5 +%define abi_test_clobber_d6 BORINGSSL_PREFIX %+ _abi_test_clobber_d6 +%define abi_test_clobber_d7 BORINGSSL_PREFIX %+ _abi_test_clobber_d7 +%define abi_test_clobber_d8 BORINGSSL_PREFIX %+ _abi_test_clobber_d8 +%define abi_test_clobber_d9 BORINGSSL_PREFIX %+ _abi_test_clobber_d9 +%define abi_test_clobber_eax BORINGSSL_PREFIX %+ _abi_test_clobber_eax +%define abi_test_clobber_ebp BORINGSSL_PREFIX %+ _abi_test_clobber_ebp +%define abi_test_clobber_ebx BORINGSSL_PREFIX %+ _abi_test_clobber_ebx +%define abi_test_clobber_ecx BORINGSSL_PREFIX %+ _abi_test_clobber_ecx +%define abi_test_clobber_edi BORINGSSL_PREFIX %+ _abi_test_clobber_edi +%define abi_test_clobber_edx BORINGSSL_PREFIX %+ _abi_test_clobber_edx +%define abi_test_clobber_esi BORINGSSL_PREFIX %+ _abi_test_clobber_esi +%define abi_test_clobber_r0 BORINGSSL_PREFIX %+ _abi_test_clobber_r0 +%define abi_test_clobber_r1 BORINGSSL_PREFIX %+ _abi_test_clobber_r1 +%define abi_test_clobber_r10 BORINGSSL_PREFIX %+ _abi_test_clobber_r10 +%define abi_test_clobber_r11 BORINGSSL_PREFIX %+ _abi_test_clobber_r11 +%define abi_test_clobber_r12 BORINGSSL_PREFIX %+ _abi_test_clobber_r12 +%define abi_test_clobber_r13 BORINGSSL_PREFIX %+ _abi_test_clobber_r13 +%define abi_test_clobber_r14 BORINGSSL_PREFIX %+ _abi_test_clobber_r14 +%define abi_test_clobber_r15 BORINGSSL_PREFIX %+ _abi_test_clobber_r15 +%define abi_test_clobber_r2 BORINGSSL_PREFIX %+ _abi_test_clobber_r2 +%define abi_test_clobber_r3 BORINGSSL_PREFIX %+ _abi_test_clobber_r3 +%define abi_test_clobber_r4 BORINGSSL_PREFIX %+ _abi_test_clobber_r4 +%define abi_test_clobber_r5 BORINGSSL_PREFIX %+ _abi_test_clobber_r5 +%define abi_test_clobber_r6 BORINGSSL_PREFIX %+ _abi_test_clobber_r6 +%define abi_test_clobber_r7 BORINGSSL_PREFIX %+ _abi_test_clobber_r7 +%define abi_test_clobber_r8 BORINGSSL_PREFIX %+ _abi_test_clobber_r8 +%define abi_test_clobber_r9 BORINGSSL_PREFIX %+ _abi_test_clobber_r9 +%define abi_test_clobber_rax BORINGSSL_PREFIX %+ _abi_test_clobber_rax +%define abi_test_clobber_rbp BORINGSSL_PREFIX %+ _abi_test_clobber_rbp +%define abi_test_clobber_rbx BORINGSSL_PREFIX %+ _abi_test_clobber_rbx +%define abi_test_clobber_rcx BORINGSSL_PREFIX %+ _abi_test_clobber_rcx +%define abi_test_clobber_rdi BORINGSSL_PREFIX %+ _abi_test_clobber_rdi +%define abi_test_clobber_rdx BORINGSSL_PREFIX %+ _abi_test_clobber_rdx +%define abi_test_clobber_rsi BORINGSSL_PREFIX %+ _abi_test_clobber_rsi +%define abi_test_clobber_v10_upper BORINGSSL_PREFIX %+ _abi_test_clobber_v10_upper +%define abi_test_clobber_v11_upper BORINGSSL_PREFIX %+ _abi_test_clobber_v11_upper +%define abi_test_clobber_v12_upper BORINGSSL_PREFIX %+ _abi_test_clobber_v12_upper +%define abi_test_clobber_v13_upper BORINGSSL_PREFIX %+ _abi_test_clobber_v13_upper +%define abi_test_clobber_v14_upper BORINGSSL_PREFIX %+ _abi_test_clobber_v14_upper +%define abi_test_clobber_v15_upper BORINGSSL_PREFIX %+ _abi_test_clobber_v15_upper +%define abi_test_clobber_v8_upper BORINGSSL_PREFIX %+ _abi_test_clobber_v8_upper +%define abi_test_clobber_v9_upper BORINGSSL_PREFIX %+ _abi_test_clobber_v9_upper +%define abi_test_clobber_x0 BORINGSSL_PREFIX %+ _abi_test_clobber_x0 +%define abi_test_clobber_x1 BORINGSSL_PREFIX %+ _abi_test_clobber_x1 +%define abi_test_clobber_x10 BORINGSSL_PREFIX %+ _abi_test_clobber_x10 +%define abi_test_clobber_x11 BORINGSSL_PREFIX %+ _abi_test_clobber_x11 +%define abi_test_clobber_x12 BORINGSSL_PREFIX %+ _abi_test_clobber_x12 +%define abi_test_clobber_x13 BORINGSSL_PREFIX %+ _abi_test_clobber_x13 +%define abi_test_clobber_x14 BORINGSSL_PREFIX %+ _abi_test_clobber_x14 +%define abi_test_clobber_x15 BORINGSSL_PREFIX %+ _abi_test_clobber_x15 +%define abi_test_clobber_x16 BORINGSSL_PREFIX %+ _abi_test_clobber_x16 +%define abi_test_clobber_x17 BORINGSSL_PREFIX %+ _abi_test_clobber_x17 +%define abi_test_clobber_x19 BORINGSSL_PREFIX %+ _abi_test_clobber_x19 +%define abi_test_clobber_x2 BORINGSSL_PREFIX %+ _abi_test_clobber_x2 +%define abi_test_clobber_x20 BORINGSSL_PREFIX %+ _abi_test_clobber_x20 +%define abi_test_clobber_x21 BORINGSSL_PREFIX %+ _abi_test_clobber_x21 +%define abi_test_clobber_x22 BORINGSSL_PREFIX %+ _abi_test_clobber_x22 +%define abi_test_clobber_x23 BORINGSSL_PREFIX %+ _abi_test_clobber_x23 +%define abi_test_clobber_x24 BORINGSSL_PREFIX %+ _abi_test_clobber_x24 +%define abi_test_clobber_x25 BORINGSSL_PREFIX %+ _abi_test_clobber_x25 +%define abi_test_clobber_x26 BORINGSSL_PREFIX %+ _abi_test_clobber_x26 +%define abi_test_clobber_x27 BORINGSSL_PREFIX %+ _abi_test_clobber_x27 +%define abi_test_clobber_x28 BORINGSSL_PREFIX %+ _abi_test_clobber_x28 +%define abi_test_clobber_x29 BORINGSSL_PREFIX %+ _abi_test_clobber_x29 +%define abi_test_clobber_x3 BORINGSSL_PREFIX %+ _abi_test_clobber_x3 +%define abi_test_clobber_x4 BORINGSSL_PREFIX %+ _abi_test_clobber_x4 +%define abi_test_clobber_x5 BORINGSSL_PREFIX %+ _abi_test_clobber_x5 +%define abi_test_clobber_x6 BORINGSSL_PREFIX %+ _abi_test_clobber_x6 +%define abi_test_clobber_x7 BORINGSSL_PREFIX %+ _abi_test_clobber_x7 +%define abi_test_clobber_x8 BORINGSSL_PREFIX %+ _abi_test_clobber_x8 +%define abi_test_clobber_x9 BORINGSSL_PREFIX %+ _abi_test_clobber_x9 +%define abi_test_clobber_xmm0 BORINGSSL_PREFIX %+ _abi_test_clobber_xmm0 +%define abi_test_clobber_xmm1 BORINGSSL_PREFIX %+ _abi_test_clobber_xmm1 +%define abi_test_clobber_xmm10 BORINGSSL_PREFIX %+ _abi_test_clobber_xmm10 +%define abi_test_clobber_xmm11 BORINGSSL_PREFIX %+ _abi_test_clobber_xmm11 +%define abi_test_clobber_xmm12 BORINGSSL_PREFIX %+ _abi_test_clobber_xmm12 +%define abi_test_clobber_xmm13 BORINGSSL_PREFIX %+ _abi_test_clobber_xmm13 +%define abi_test_clobber_xmm14 BORINGSSL_PREFIX %+ _abi_test_clobber_xmm14 +%define abi_test_clobber_xmm15 BORINGSSL_PREFIX %+ _abi_test_clobber_xmm15 +%define abi_test_clobber_xmm2 BORINGSSL_PREFIX %+ _abi_test_clobber_xmm2 +%define abi_test_clobber_xmm3 BORINGSSL_PREFIX %+ _abi_test_clobber_xmm3 +%define abi_test_clobber_xmm4 BORINGSSL_PREFIX %+ _abi_test_clobber_xmm4 +%define abi_test_clobber_xmm5 BORINGSSL_PREFIX %+ _abi_test_clobber_xmm5 +%define abi_test_clobber_xmm6 BORINGSSL_PREFIX %+ _abi_test_clobber_xmm6 +%define abi_test_clobber_xmm7 BORINGSSL_PREFIX %+ _abi_test_clobber_xmm7 +%define abi_test_clobber_xmm8 BORINGSSL_PREFIX %+ _abi_test_clobber_xmm8 +%define abi_test_clobber_xmm9 BORINGSSL_PREFIX %+ _abi_test_clobber_xmm9 +%define abi_test_get_and_clear_direction_flag BORINGSSL_PREFIX %+ _abi_test_get_and_clear_direction_flag +%define abi_test_set_direction_flag BORINGSSL_PREFIX %+ _abi_test_set_direction_flag +%define abi_test_trampoline BORINGSSL_PREFIX %+ _abi_test_trampoline +%define abi_test_unwind_return BORINGSSL_PREFIX %+ _abi_test_unwind_return +%define abi_test_unwind_start BORINGSSL_PREFIX %+ _abi_test_unwind_start +%define abi_test_unwind_stop BORINGSSL_PREFIX %+ _abi_test_unwind_stop +%define aes128gcmsiv_aes_ks BORINGSSL_PREFIX %+ _aes128gcmsiv_aes_ks +%define aes128gcmsiv_aes_ks_enc_x1 BORINGSSL_PREFIX %+ _aes128gcmsiv_aes_ks_enc_x1 +%define aes128gcmsiv_dec BORINGSSL_PREFIX %+ _aes128gcmsiv_dec +%define aes128gcmsiv_ecb_enc_block BORINGSSL_PREFIX %+ _aes128gcmsiv_ecb_enc_block +%define aes128gcmsiv_enc_msg_x4 BORINGSSL_PREFIX %+ _aes128gcmsiv_enc_msg_x4 +%define aes128gcmsiv_enc_msg_x8 BORINGSSL_PREFIX %+ _aes128gcmsiv_enc_msg_x8 +%define aes128gcmsiv_kdf BORINGSSL_PREFIX %+ _aes128gcmsiv_kdf +%define aes256gcmsiv_aes_ks BORINGSSL_PREFIX %+ _aes256gcmsiv_aes_ks +%define aes256gcmsiv_aes_ks_enc_x1 BORINGSSL_PREFIX %+ _aes256gcmsiv_aes_ks_enc_x1 +%define aes256gcmsiv_dec BORINGSSL_PREFIX %+ _aes256gcmsiv_dec +%define aes256gcmsiv_ecb_enc_block BORINGSSL_PREFIX %+ _aes256gcmsiv_ecb_enc_block +%define aes256gcmsiv_enc_msg_x4 BORINGSSL_PREFIX %+ _aes256gcmsiv_enc_msg_x4 +%define aes256gcmsiv_enc_msg_x8 BORINGSSL_PREFIX %+ _aes256gcmsiv_enc_msg_x8 +%define aes256gcmsiv_kdf BORINGSSL_PREFIX %+ _aes256gcmsiv_kdf +%define aes_gcm_dec_kernel BORINGSSL_PREFIX %+ _aes_gcm_dec_kernel +%define aes_gcm_dec_update_vaes_avx2 BORINGSSL_PREFIX %+ _aes_gcm_dec_update_vaes_avx2 +%define aes_gcm_dec_update_vaes_avx512 BORINGSSL_PREFIX %+ _aes_gcm_dec_update_vaes_avx512 +%define aes_gcm_enc_kernel BORINGSSL_PREFIX %+ _aes_gcm_enc_kernel +%define aes_gcm_enc_update_vaes_avx2 BORINGSSL_PREFIX %+ _aes_gcm_enc_update_vaes_avx2 +%define aes_gcm_enc_update_vaes_avx512 BORINGSSL_PREFIX %+ _aes_gcm_enc_update_vaes_avx512 +%define aes_hw_cbc_encrypt BORINGSSL_PREFIX %+ _aes_hw_cbc_encrypt +%define aes_hw_ccm64_decrypt_blocks BORINGSSL_PREFIX %+ _aes_hw_ccm64_decrypt_blocks +%define aes_hw_ccm64_encrypt_blocks BORINGSSL_PREFIX %+ _aes_hw_ccm64_encrypt_blocks +%define aes_hw_ctr32_encrypt_blocks BORINGSSL_PREFIX %+ _aes_hw_ctr32_encrypt_blocks +%define aes_hw_decrypt BORINGSSL_PREFIX %+ _aes_hw_decrypt +%define aes_hw_ecb_encrypt BORINGSSL_PREFIX %+ _aes_hw_ecb_encrypt +%define aes_hw_encrypt BORINGSSL_PREFIX %+ _aes_hw_encrypt +%define aes_hw_encrypt_key_to_decrypt_key BORINGSSL_PREFIX %+ _aes_hw_encrypt_key_to_decrypt_key +%define aes_hw_set_decrypt_key BORINGSSL_PREFIX %+ _aes_hw_set_decrypt_key +%define aes_hw_set_encrypt_key BORINGSSL_PREFIX %+ _aes_hw_set_encrypt_key +%define aes_hw_set_encrypt_key_alt BORINGSSL_PREFIX %+ _aes_hw_set_encrypt_key_alt +%define aes_hw_set_encrypt_key_base BORINGSSL_PREFIX %+ _aes_hw_set_encrypt_key_base +%define aes_hw_xts_decrypt BORINGSSL_PREFIX %+ _aes_hw_xts_decrypt +%define aes_hw_xts_encrypt BORINGSSL_PREFIX %+ _aes_hw_xts_encrypt +%define aesgcmsiv_htable6_init BORINGSSL_PREFIX %+ _aesgcmsiv_htable6_init +%define aesgcmsiv_htable_init BORINGSSL_PREFIX %+ _aesgcmsiv_htable_init +%define aesgcmsiv_htable_polyval BORINGSSL_PREFIX %+ _aesgcmsiv_htable_polyval +%define aesgcmsiv_polyval_horner BORINGSSL_PREFIX %+ _aesgcmsiv_polyval_horner +%define aesni_gcm_decrypt BORINGSSL_PREFIX %+ _aesni_gcm_decrypt +%define aesni_gcm_encrypt BORINGSSL_PREFIX %+ _aesni_gcm_encrypt +%define beeu_mod_inverse_vartime BORINGSSL_PREFIX %+ _beeu_mod_inverse_vartime +%define bn_add_words BORINGSSL_PREFIX %+ _bn_add_words +%define bn_gather5 BORINGSSL_PREFIX %+ _bn_gather5 +%define bn_mul4x_mont BORINGSSL_PREFIX %+ _bn_mul4x_mont +%define bn_mul4x_mont_gather5 BORINGSSL_PREFIX %+ _bn_mul4x_mont_gather5 +%define bn_mul8x_mont_neon BORINGSSL_PREFIX %+ _bn_mul8x_mont_neon +%define bn_mul_add_words BORINGSSL_PREFIX %+ _bn_mul_add_words +%define bn_mul_comba4 BORINGSSL_PREFIX %+ _bn_mul_comba4 +%define bn_mul_comba8 BORINGSSL_PREFIX %+ _bn_mul_comba8 +%define bn_mul_mont_gather5_nohw BORINGSSL_PREFIX %+ _bn_mul_mont_gather5_nohw +%define bn_mul_mont_nohw BORINGSSL_PREFIX %+ _bn_mul_mont_nohw +%define bn_mul_mont_words BORINGSSL_PREFIX %+ _bn_mul_mont_words +%define bn_mul_words BORINGSSL_PREFIX %+ _bn_mul_words +%define bn_mulx4x_mont BORINGSSL_PREFIX %+ _bn_mulx4x_mont +%define bn_mulx4x_mont_gather5 BORINGSSL_PREFIX %+ _bn_mulx4x_mont_gather5 +%define bn_power5_nohw BORINGSSL_PREFIX %+ _bn_power5_nohw +%define bn_powerx5 BORINGSSL_PREFIX %+ _bn_powerx5 +%define bn_scatter5 BORINGSSL_PREFIX %+ _bn_scatter5 +%define bn_sqr8x_internal BORINGSSL_PREFIX %+ _bn_sqr8x_internal +%define bn_sqr8x_mont BORINGSSL_PREFIX %+ _bn_sqr8x_mont +%define bn_sqr_add_words BORINGSSL_PREFIX %+ _bn_sqr_add_words +%define bn_sqr_comba4 BORINGSSL_PREFIX %+ _bn_sqr_comba4 +%define bn_sqr_comba8 BORINGSSL_PREFIX %+ _bn_sqr_comba8 +%define bn_sqrx8x_internal BORINGSSL_PREFIX %+ _bn_sqrx8x_internal +%define bn_sub_words BORINGSSL_PREFIX %+ _bn_sub_words +%define bsaes_cbc_encrypt BORINGSSL_PREFIX %+ _bsaes_cbc_encrypt +%define bsaes_ctr32_encrypt_blocks BORINGSSL_PREFIX %+ _bsaes_ctr32_encrypt_blocks +%define chacha20_poly1305_open BORINGSSL_PREFIX %+ _chacha20_poly1305_open +%define chacha20_poly1305_open_avx2 BORINGSSL_PREFIX %+ _chacha20_poly1305_open_avx2 +%define chacha20_poly1305_open_sse41 BORINGSSL_PREFIX %+ _chacha20_poly1305_open_sse41 +%define chacha20_poly1305_seal BORINGSSL_PREFIX %+ _chacha20_poly1305_seal +%define chacha20_poly1305_seal_avx2 BORINGSSL_PREFIX %+ _chacha20_poly1305_seal_avx2 +%define chacha20_poly1305_seal_sse41 BORINGSSL_PREFIX %+ _chacha20_poly1305_seal_sse41 +%define ecp_nistz256_div_by_2 BORINGSSL_PREFIX %+ _ecp_nistz256_div_by_2 +%define ecp_nistz256_mul_by_2 BORINGSSL_PREFIX %+ _ecp_nistz256_mul_by_2 +%define ecp_nistz256_mul_by_3 BORINGSSL_PREFIX %+ _ecp_nistz256_mul_by_3 +%define ecp_nistz256_mul_mont BORINGSSL_PREFIX %+ _ecp_nistz256_mul_mont +%define ecp_nistz256_mul_mont_adx BORINGSSL_PREFIX %+ _ecp_nistz256_mul_mont_adx +%define ecp_nistz256_mul_mont_nohw BORINGSSL_PREFIX %+ _ecp_nistz256_mul_mont_nohw +%define ecp_nistz256_neg BORINGSSL_PREFIX %+ _ecp_nistz256_neg +%define ecp_nistz256_ord_mul_mont BORINGSSL_PREFIX %+ _ecp_nistz256_ord_mul_mont +%define ecp_nistz256_ord_mul_mont_adx BORINGSSL_PREFIX %+ _ecp_nistz256_ord_mul_mont_adx +%define ecp_nistz256_ord_mul_mont_nohw BORINGSSL_PREFIX %+ _ecp_nistz256_ord_mul_mont_nohw +%define ecp_nistz256_ord_sqr_mont BORINGSSL_PREFIX %+ _ecp_nistz256_ord_sqr_mont +%define ecp_nistz256_ord_sqr_mont_adx BORINGSSL_PREFIX %+ _ecp_nistz256_ord_sqr_mont_adx +%define ecp_nistz256_ord_sqr_mont_nohw BORINGSSL_PREFIX %+ _ecp_nistz256_ord_sqr_mont_nohw +%define ecp_nistz256_point_add BORINGSSL_PREFIX %+ _ecp_nistz256_point_add +%define ecp_nistz256_point_add_adx BORINGSSL_PREFIX %+ _ecp_nistz256_point_add_adx +%define ecp_nistz256_point_add_affine BORINGSSL_PREFIX %+ _ecp_nistz256_point_add_affine +%define ecp_nistz256_point_add_affine_adx BORINGSSL_PREFIX %+ _ecp_nistz256_point_add_affine_adx +%define ecp_nistz256_point_add_affine_nohw BORINGSSL_PREFIX %+ _ecp_nistz256_point_add_affine_nohw +%define ecp_nistz256_point_add_nohw BORINGSSL_PREFIX %+ _ecp_nistz256_point_add_nohw +%define ecp_nistz256_point_double BORINGSSL_PREFIX %+ _ecp_nistz256_point_double +%define ecp_nistz256_point_double_adx BORINGSSL_PREFIX %+ _ecp_nistz256_point_double_adx +%define ecp_nistz256_point_double_nohw BORINGSSL_PREFIX %+ _ecp_nistz256_point_double_nohw +%define ecp_nistz256_select_w5 BORINGSSL_PREFIX %+ _ecp_nistz256_select_w5 +%define ecp_nistz256_select_w5_avx2 BORINGSSL_PREFIX %+ _ecp_nistz256_select_w5_avx2 +%define ecp_nistz256_select_w5_nohw BORINGSSL_PREFIX %+ _ecp_nistz256_select_w5_nohw +%define ecp_nistz256_select_w7 BORINGSSL_PREFIX %+ _ecp_nistz256_select_w7 +%define ecp_nistz256_select_w7_avx2 BORINGSSL_PREFIX %+ _ecp_nistz256_select_w7_avx2 +%define ecp_nistz256_select_w7_nohw BORINGSSL_PREFIX %+ _ecp_nistz256_select_w7_nohw +%define ecp_nistz256_sqr_mont BORINGSSL_PREFIX %+ _ecp_nistz256_sqr_mont +%define ecp_nistz256_sqr_mont_adx BORINGSSL_PREFIX %+ _ecp_nistz256_sqr_mont_adx +%define ecp_nistz256_sqr_mont_nohw BORINGSSL_PREFIX %+ _ecp_nistz256_sqr_mont_nohw +%define ecp_nistz256_sub BORINGSSL_PREFIX %+ _ecp_nistz256_sub +%define fiat_curve25519_adx_mul BORINGSSL_PREFIX %+ _fiat_curve25519_adx_mul +%define fiat_curve25519_adx_square BORINGSSL_PREFIX %+ _fiat_curve25519_adx_square +%define fiat_p256_adx_mul BORINGSSL_PREFIX %+ _fiat_p256_adx_mul +%define fiat_p256_adx_sqr BORINGSSL_PREFIX %+ _fiat_p256_adx_sqr +%define gcm_ghash_avx BORINGSSL_PREFIX %+ _gcm_ghash_avx +%define gcm_ghash_clmul BORINGSSL_PREFIX %+ _gcm_ghash_clmul +%define gcm_ghash_neon BORINGSSL_PREFIX %+ _gcm_ghash_neon +%define gcm_ghash_ssse3 BORINGSSL_PREFIX %+ _gcm_ghash_ssse3 +%define gcm_ghash_v8 BORINGSSL_PREFIX %+ _gcm_ghash_v8 +%define gcm_ghash_vpclmulqdq_avx2 BORINGSSL_PREFIX %+ _gcm_ghash_vpclmulqdq_avx2 +%define gcm_ghash_vpclmulqdq_avx512 BORINGSSL_PREFIX %+ _gcm_ghash_vpclmulqdq_avx512 +%define gcm_gmult_avx BORINGSSL_PREFIX %+ _gcm_gmult_avx +%define gcm_gmult_clmul BORINGSSL_PREFIX %+ _gcm_gmult_clmul +%define gcm_gmult_neon BORINGSSL_PREFIX %+ _gcm_gmult_neon +%define gcm_gmult_ssse3 BORINGSSL_PREFIX %+ _gcm_gmult_ssse3 +%define gcm_gmult_v8 BORINGSSL_PREFIX %+ _gcm_gmult_v8 +%define gcm_gmult_vpclmulqdq_avx2 BORINGSSL_PREFIX %+ _gcm_gmult_vpclmulqdq_avx2 +%define gcm_gmult_vpclmulqdq_avx512 BORINGSSL_PREFIX %+ _gcm_gmult_vpclmulqdq_avx512 +%define gcm_init_avx BORINGSSL_PREFIX %+ _gcm_init_avx +%define gcm_init_clmul BORINGSSL_PREFIX %+ _gcm_init_clmul +%define gcm_init_neon BORINGSSL_PREFIX %+ _gcm_init_neon +%define gcm_init_v8 BORINGSSL_PREFIX %+ _gcm_init_v8 +%define gcm_init_vpclmulqdq_avx2 BORINGSSL_PREFIX %+ _gcm_init_vpclmulqdq_avx2 +%define gcm_init_vpclmulqdq_avx512 BORINGSSL_PREFIX %+ _gcm_init_vpclmulqdq_avx512 +%define md5_block_asm_data_order BORINGSSL_PREFIX %+ _md5_block_asm_data_order +%define openssl_poly1305_neon2_addmulmod BORINGSSL_PREFIX %+ _openssl_poly1305_neon2_addmulmod +%define openssl_poly1305_neon2_blocks BORINGSSL_PREFIX %+ _openssl_poly1305_neon2_blocks +%define p_thread_callback_boringssl BORINGSSL_PREFIX %+ _p_thread_callback_boringssl +%define poly_Rq_mul BORINGSSL_PREFIX %+ _poly_Rq_mul +%define rsaz_1024_gather5_avx2 BORINGSSL_PREFIX %+ _rsaz_1024_gather5_avx2 +%define rsaz_1024_mul_avx2 BORINGSSL_PREFIX %+ _rsaz_1024_mul_avx2 +%define rsaz_1024_norm2red_avx2 BORINGSSL_PREFIX %+ _rsaz_1024_norm2red_avx2 +%define rsaz_1024_red2norm_avx2 BORINGSSL_PREFIX %+ _rsaz_1024_red2norm_avx2 +%define rsaz_1024_scatter5_avx2 BORINGSSL_PREFIX %+ _rsaz_1024_scatter5_avx2 +%define rsaz_1024_sqr_avx2 BORINGSSL_PREFIX %+ _rsaz_1024_sqr_avx2 +%define sha1_block_data_order_avx BORINGSSL_PREFIX %+ _sha1_block_data_order_avx +%define sha1_block_data_order_avx2 BORINGSSL_PREFIX %+ _sha1_block_data_order_avx2 +%define sha1_block_data_order_hw BORINGSSL_PREFIX %+ _sha1_block_data_order_hw +%define sha1_block_data_order_neon BORINGSSL_PREFIX %+ _sha1_block_data_order_neon +%define sha1_block_data_order_nohw BORINGSSL_PREFIX %+ _sha1_block_data_order_nohw +%define sha1_block_data_order_ssse3 BORINGSSL_PREFIX %+ _sha1_block_data_order_ssse3 +%define sha256_block_data_order_avx BORINGSSL_PREFIX %+ _sha256_block_data_order_avx +%define sha256_block_data_order_hw BORINGSSL_PREFIX %+ _sha256_block_data_order_hw +%define sha256_block_data_order_neon BORINGSSL_PREFIX %+ _sha256_block_data_order_neon +%define sha256_block_data_order_nohw BORINGSSL_PREFIX %+ _sha256_block_data_order_nohw +%define sha256_block_data_order_ssse3 BORINGSSL_PREFIX %+ _sha256_block_data_order_ssse3 +%define sha512_block_data_order_avx BORINGSSL_PREFIX %+ _sha512_block_data_order_avx +%define sha512_block_data_order_hw BORINGSSL_PREFIX %+ _sha512_block_data_order_hw +%define sha512_block_data_order_neon BORINGSSL_PREFIX %+ _sha512_block_data_order_neon +%define sha512_block_data_order_nohw BORINGSSL_PREFIX %+ _sha512_block_data_order_nohw +%define sha512_block_data_order_ssse3 BORINGSSL_PREFIX %+ _sha512_block_data_order_ssse3 +%define vpaes_cbc_encrypt BORINGSSL_PREFIX %+ _vpaes_cbc_encrypt +%define vpaes_ctr32_encrypt_blocks BORINGSSL_PREFIX %+ _vpaes_ctr32_encrypt_blocks +%define vpaes_decrypt BORINGSSL_PREFIX %+ _vpaes_decrypt +%define vpaes_decrypt_key_to_bsaes BORINGSSL_PREFIX %+ _vpaes_decrypt_key_to_bsaes +%define vpaes_encrypt BORINGSSL_PREFIX %+ _vpaes_encrypt +%define vpaes_encrypt_key_to_bsaes BORINGSSL_PREFIX %+ _vpaes_encrypt_key_to_bsaes +%define vpaes_set_decrypt_key BORINGSSL_PREFIX %+ _vpaes_set_decrypt_key +%define vpaes_set_encrypt_key BORINGSSL_PREFIX %+ _vpaes_set_encrypt_key +%define x25519_NEON BORINGSSL_PREFIX %+ _x25519_NEON
diff --git a/gen/boringssl_prefix_symbols_internal_x86_asm.inc b/gen/boringssl_prefix_symbols_internal_x86_asm.inc new file mode 100644 index 0000000..49531e6 --- /dev/null +++ b/gen/boringssl_prefix_symbols_internal_x86_asm.inc
@@ -0,0 +1,313 @@ +; Copyright 2024 The BoringSSL Authors +; +; Licensed under the Apache License, Version 2.0 (the "License"); +; you may not use this file except in compliance with the License. +; You may obtain a copy of the License at +; +; https://www.apache.org/licenses/LICENSE-2.0 +; +; Unless required by applicable law or agreed to in writing, software +; distributed under the License is distributed on an "AS IS" BASIS, +; WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +; See the License for the specific language governing permissions and +; limitations under the License. + +; Generated by go ./util/pregenerate. Do not edit manually. + +%define _BORINGSSL_function_hit _ %+ BORINGSSL_PREFIX %+ _BORINGSSL_function_hit +%define _CRYPTO_rdrand _ %+ BORINGSSL_PREFIX %+ _CRYPTO_rdrand +%define _CRYPTO_rdrand_multiple8_buf _ %+ BORINGSSL_PREFIX %+ _CRYPTO_rdrand_multiple8_buf +%define _ChaCha20_ctr32_avx2 _ %+ BORINGSSL_PREFIX %+ _ChaCha20_ctr32_avx2 +%define _ChaCha20_ctr32_neon _ %+ BORINGSSL_PREFIX %+ _ChaCha20_ctr32_neon +%define _ChaCha20_ctr32_nohw _ %+ BORINGSSL_PREFIX %+ _ChaCha20_ctr32_nohw +%define _ChaCha20_ctr32_ssse3 _ %+ BORINGSSL_PREFIX %+ _ChaCha20_ctr32_ssse3 +%define _ChaCha20_ctr32_ssse3_4x _ %+ BORINGSSL_PREFIX %+ _ChaCha20_ctr32_ssse3_4x +%define _abi_test_bad_unwind_epilog _ %+ BORINGSSL_PREFIX %+ _abi_test_bad_unwind_epilog +%define _abi_test_bad_unwind_temporary _ %+ BORINGSSL_PREFIX %+ _abi_test_bad_unwind_temporary +%define _abi_test_bad_unwind_wrong_register _ %+ BORINGSSL_PREFIX %+ _abi_test_bad_unwind_wrong_register +%define _abi_test_clobber_d0 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d0 +%define _abi_test_clobber_d1 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d1 +%define _abi_test_clobber_d10 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d10 +%define _abi_test_clobber_d11 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d11 +%define _abi_test_clobber_d12 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d12 +%define _abi_test_clobber_d13 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d13 +%define _abi_test_clobber_d14 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d14 +%define _abi_test_clobber_d15 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d15 +%define _abi_test_clobber_d16 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d16 +%define _abi_test_clobber_d17 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d17 +%define _abi_test_clobber_d18 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d18 +%define _abi_test_clobber_d19 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d19 +%define _abi_test_clobber_d2 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d2 +%define _abi_test_clobber_d20 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d20 +%define _abi_test_clobber_d21 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d21 +%define _abi_test_clobber_d22 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d22 +%define _abi_test_clobber_d23 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d23 +%define _abi_test_clobber_d24 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d24 +%define _abi_test_clobber_d25 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d25 +%define _abi_test_clobber_d26 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d26 +%define _abi_test_clobber_d27 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d27 +%define _abi_test_clobber_d28 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d28 +%define _abi_test_clobber_d29 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d29 +%define _abi_test_clobber_d3 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d3 +%define _abi_test_clobber_d30 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d30 +%define _abi_test_clobber_d31 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d31 +%define _abi_test_clobber_d4 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d4 +%define _abi_test_clobber_d5 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d5 +%define _abi_test_clobber_d6 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d6 +%define _abi_test_clobber_d7 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d7 +%define _abi_test_clobber_d8 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d8 +%define _abi_test_clobber_d9 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_d9 +%define _abi_test_clobber_eax _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_eax +%define _abi_test_clobber_ebp _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_ebp +%define _abi_test_clobber_ebx _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_ebx +%define _abi_test_clobber_ecx _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_ecx +%define _abi_test_clobber_edi _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_edi +%define _abi_test_clobber_edx _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_edx +%define _abi_test_clobber_esi _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_esi +%define _abi_test_clobber_r0 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_r0 +%define _abi_test_clobber_r1 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_r1 +%define _abi_test_clobber_r10 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_r10 +%define _abi_test_clobber_r11 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_r11 +%define _abi_test_clobber_r12 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_r12 +%define _abi_test_clobber_r13 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_r13 +%define _abi_test_clobber_r14 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_r14 +%define _abi_test_clobber_r15 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_r15 +%define _abi_test_clobber_r2 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_r2 +%define _abi_test_clobber_r3 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_r3 +%define _abi_test_clobber_r4 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_r4 +%define _abi_test_clobber_r5 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_r5 +%define _abi_test_clobber_r6 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_r6 +%define _abi_test_clobber_r7 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_r7 +%define _abi_test_clobber_r8 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_r8 +%define _abi_test_clobber_r9 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_r9 +%define _abi_test_clobber_rax _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_rax +%define _abi_test_clobber_rbp _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_rbp +%define _abi_test_clobber_rbx _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_rbx +%define _abi_test_clobber_rcx _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_rcx +%define _abi_test_clobber_rdi _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_rdi +%define _abi_test_clobber_rdx _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_rdx +%define _abi_test_clobber_rsi _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_rsi +%define _abi_test_clobber_v10_upper _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_v10_upper +%define _abi_test_clobber_v11_upper _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_v11_upper +%define _abi_test_clobber_v12_upper _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_v12_upper +%define _abi_test_clobber_v13_upper _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_v13_upper +%define _abi_test_clobber_v14_upper _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_v14_upper +%define _abi_test_clobber_v15_upper _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_v15_upper +%define _abi_test_clobber_v8_upper _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_v8_upper +%define _abi_test_clobber_v9_upper _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_v9_upper +%define _abi_test_clobber_x0 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_x0 +%define _abi_test_clobber_x1 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_x1 +%define _abi_test_clobber_x10 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_x10 +%define _abi_test_clobber_x11 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_x11 +%define _abi_test_clobber_x12 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_x12 +%define _abi_test_clobber_x13 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_x13 +%define _abi_test_clobber_x14 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_x14 +%define _abi_test_clobber_x15 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_x15 +%define _abi_test_clobber_x16 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_x16 +%define _abi_test_clobber_x17 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_x17 +%define _abi_test_clobber_x19 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_x19 +%define _abi_test_clobber_x2 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_x2 +%define _abi_test_clobber_x20 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_x20 +%define _abi_test_clobber_x21 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_x21 +%define _abi_test_clobber_x22 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_x22 +%define _abi_test_clobber_x23 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_x23 +%define _abi_test_clobber_x24 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_x24 +%define _abi_test_clobber_x25 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_x25 +%define _abi_test_clobber_x26 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_x26 +%define _abi_test_clobber_x27 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_x27 +%define _abi_test_clobber_x28 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_x28 +%define _abi_test_clobber_x29 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_x29 +%define _abi_test_clobber_x3 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_x3 +%define _abi_test_clobber_x4 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_x4 +%define _abi_test_clobber_x5 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_x5 +%define _abi_test_clobber_x6 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_x6 +%define _abi_test_clobber_x7 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_x7 +%define _abi_test_clobber_x8 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_x8 +%define _abi_test_clobber_x9 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_x9 +%define _abi_test_clobber_xmm0 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_xmm0 +%define _abi_test_clobber_xmm1 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_xmm1 +%define _abi_test_clobber_xmm10 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_xmm10 +%define _abi_test_clobber_xmm11 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_xmm11 +%define _abi_test_clobber_xmm12 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_xmm12 +%define _abi_test_clobber_xmm13 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_xmm13 +%define _abi_test_clobber_xmm14 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_xmm14 +%define _abi_test_clobber_xmm15 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_xmm15 +%define _abi_test_clobber_xmm2 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_xmm2 +%define _abi_test_clobber_xmm3 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_xmm3 +%define _abi_test_clobber_xmm4 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_xmm4 +%define _abi_test_clobber_xmm5 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_xmm5 +%define _abi_test_clobber_xmm6 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_xmm6 +%define _abi_test_clobber_xmm7 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_xmm7 +%define _abi_test_clobber_xmm8 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_xmm8 +%define _abi_test_clobber_xmm9 _ %+ BORINGSSL_PREFIX %+ _abi_test_clobber_xmm9 +%define _abi_test_get_and_clear_direction_flag _ %+ BORINGSSL_PREFIX %+ _abi_test_get_and_clear_direction_flag +%define _abi_test_set_direction_flag _ %+ BORINGSSL_PREFIX %+ _abi_test_set_direction_flag +%define _abi_test_trampoline _ %+ BORINGSSL_PREFIX %+ _abi_test_trampoline +%define _abi_test_unwind_return _ %+ BORINGSSL_PREFIX %+ _abi_test_unwind_return +%define _abi_test_unwind_start _ %+ BORINGSSL_PREFIX %+ _abi_test_unwind_start +%define _abi_test_unwind_stop _ %+ BORINGSSL_PREFIX %+ _abi_test_unwind_stop +%define _aes128gcmsiv_aes_ks _ %+ BORINGSSL_PREFIX %+ _aes128gcmsiv_aes_ks +%define _aes128gcmsiv_aes_ks_enc_x1 _ %+ BORINGSSL_PREFIX %+ _aes128gcmsiv_aes_ks_enc_x1 +%define _aes128gcmsiv_dec _ %+ BORINGSSL_PREFIX %+ _aes128gcmsiv_dec +%define _aes128gcmsiv_ecb_enc_block _ %+ BORINGSSL_PREFIX %+ _aes128gcmsiv_ecb_enc_block +%define _aes128gcmsiv_enc_msg_x4 _ %+ BORINGSSL_PREFIX %+ _aes128gcmsiv_enc_msg_x4 +%define _aes128gcmsiv_enc_msg_x8 _ %+ BORINGSSL_PREFIX %+ _aes128gcmsiv_enc_msg_x8 +%define _aes128gcmsiv_kdf _ %+ BORINGSSL_PREFIX %+ _aes128gcmsiv_kdf +%define _aes256gcmsiv_aes_ks _ %+ BORINGSSL_PREFIX %+ _aes256gcmsiv_aes_ks +%define _aes256gcmsiv_aes_ks_enc_x1 _ %+ BORINGSSL_PREFIX %+ _aes256gcmsiv_aes_ks_enc_x1 +%define _aes256gcmsiv_dec _ %+ BORINGSSL_PREFIX %+ _aes256gcmsiv_dec +%define _aes256gcmsiv_ecb_enc_block _ %+ BORINGSSL_PREFIX %+ _aes256gcmsiv_ecb_enc_block +%define _aes256gcmsiv_enc_msg_x4 _ %+ BORINGSSL_PREFIX %+ _aes256gcmsiv_enc_msg_x4 +%define _aes256gcmsiv_enc_msg_x8 _ %+ BORINGSSL_PREFIX %+ _aes256gcmsiv_enc_msg_x8 +%define _aes256gcmsiv_kdf _ %+ BORINGSSL_PREFIX %+ _aes256gcmsiv_kdf +%define _aes_gcm_dec_kernel _ %+ BORINGSSL_PREFIX %+ _aes_gcm_dec_kernel +%define _aes_gcm_dec_update_vaes_avx2 _ %+ BORINGSSL_PREFIX %+ _aes_gcm_dec_update_vaes_avx2 +%define _aes_gcm_dec_update_vaes_avx512 _ %+ BORINGSSL_PREFIX %+ _aes_gcm_dec_update_vaes_avx512 +%define _aes_gcm_enc_kernel _ %+ BORINGSSL_PREFIX %+ _aes_gcm_enc_kernel +%define _aes_gcm_enc_update_vaes_avx2 _ %+ BORINGSSL_PREFIX %+ _aes_gcm_enc_update_vaes_avx2 +%define _aes_gcm_enc_update_vaes_avx512 _ %+ BORINGSSL_PREFIX %+ _aes_gcm_enc_update_vaes_avx512 +%define _aes_hw_cbc_encrypt _ %+ BORINGSSL_PREFIX %+ _aes_hw_cbc_encrypt +%define _aes_hw_ccm64_decrypt_blocks _ %+ BORINGSSL_PREFIX %+ _aes_hw_ccm64_decrypt_blocks +%define _aes_hw_ccm64_encrypt_blocks _ %+ BORINGSSL_PREFIX %+ _aes_hw_ccm64_encrypt_blocks +%define _aes_hw_ctr32_encrypt_blocks _ %+ BORINGSSL_PREFIX %+ _aes_hw_ctr32_encrypt_blocks +%define _aes_hw_decrypt _ %+ BORINGSSL_PREFIX %+ _aes_hw_decrypt +%define _aes_hw_ecb_encrypt _ %+ BORINGSSL_PREFIX %+ _aes_hw_ecb_encrypt +%define _aes_hw_encrypt _ %+ BORINGSSL_PREFIX %+ _aes_hw_encrypt +%define _aes_hw_encrypt_key_to_decrypt_key _ %+ BORINGSSL_PREFIX %+ _aes_hw_encrypt_key_to_decrypt_key +%define _aes_hw_set_decrypt_key _ %+ BORINGSSL_PREFIX %+ _aes_hw_set_decrypt_key +%define _aes_hw_set_encrypt_key _ %+ BORINGSSL_PREFIX %+ _aes_hw_set_encrypt_key +%define _aes_hw_set_encrypt_key_alt _ %+ BORINGSSL_PREFIX %+ _aes_hw_set_encrypt_key_alt +%define _aes_hw_set_encrypt_key_base _ %+ BORINGSSL_PREFIX %+ _aes_hw_set_encrypt_key_base +%define _aes_hw_xts_decrypt _ %+ BORINGSSL_PREFIX %+ _aes_hw_xts_decrypt +%define _aes_hw_xts_encrypt _ %+ BORINGSSL_PREFIX %+ _aes_hw_xts_encrypt +%define _aesgcmsiv_htable6_init _ %+ BORINGSSL_PREFIX %+ _aesgcmsiv_htable6_init +%define _aesgcmsiv_htable_init _ %+ BORINGSSL_PREFIX %+ _aesgcmsiv_htable_init +%define _aesgcmsiv_htable_polyval _ %+ BORINGSSL_PREFIX %+ _aesgcmsiv_htable_polyval +%define _aesgcmsiv_polyval_horner _ %+ BORINGSSL_PREFIX %+ _aesgcmsiv_polyval_horner +%define _aesni_gcm_decrypt _ %+ BORINGSSL_PREFIX %+ _aesni_gcm_decrypt +%define _aesni_gcm_encrypt _ %+ BORINGSSL_PREFIX %+ _aesni_gcm_encrypt +%define _beeu_mod_inverse_vartime _ %+ BORINGSSL_PREFIX %+ _beeu_mod_inverse_vartime +%define _bn_add_words _ %+ BORINGSSL_PREFIX %+ _bn_add_words +%define _bn_gather5 _ %+ BORINGSSL_PREFIX %+ _bn_gather5 +%define _bn_mul4x_mont _ %+ BORINGSSL_PREFIX %+ _bn_mul4x_mont +%define _bn_mul4x_mont_gather5 _ %+ BORINGSSL_PREFIX %+ _bn_mul4x_mont_gather5 +%define _bn_mul8x_mont_neon _ %+ BORINGSSL_PREFIX %+ _bn_mul8x_mont_neon +%define _bn_mul_add_words _ %+ BORINGSSL_PREFIX %+ _bn_mul_add_words +%define _bn_mul_comba4 _ %+ BORINGSSL_PREFIX %+ _bn_mul_comba4 +%define _bn_mul_comba8 _ %+ BORINGSSL_PREFIX %+ _bn_mul_comba8 +%define _bn_mul_mont_gather5_nohw _ %+ BORINGSSL_PREFIX %+ _bn_mul_mont_gather5_nohw +%define _bn_mul_mont_nohw _ %+ BORINGSSL_PREFIX %+ _bn_mul_mont_nohw +%define _bn_mul_mont_words _ %+ BORINGSSL_PREFIX %+ _bn_mul_mont_words +%define _bn_mul_words _ %+ BORINGSSL_PREFIX %+ _bn_mul_words +%define _bn_mulx4x_mont _ %+ BORINGSSL_PREFIX %+ _bn_mulx4x_mont +%define _bn_mulx4x_mont_gather5 _ %+ BORINGSSL_PREFIX %+ _bn_mulx4x_mont_gather5 +%define _bn_power5_nohw _ %+ BORINGSSL_PREFIX %+ _bn_power5_nohw +%define _bn_powerx5 _ %+ BORINGSSL_PREFIX %+ _bn_powerx5 +%define _bn_scatter5 _ %+ BORINGSSL_PREFIX %+ _bn_scatter5 +%define _bn_sqr8x_internal _ %+ BORINGSSL_PREFIX %+ _bn_sqr8x_internal +%define _bn_sqr8x_mont _ %+ BORINGSSL_PREFIX %+ _bn_sqr8x_mont +%define _bn_sqr_add_words _ %+ BORINGSSL_PREFIX %+ _bn_sqr_add_words +%define _bn_sqr_comba4 _ %+ BORINGSSL_PREFIX %+ _bn_sqr_comba4 +%define _bn_sqr_comba8 _ %+ BORINGSSL_PREFIX %+ _bn_sqr_comba8 +%define _bn_sqrx8x_internal _ %+ BORINGSSL_PREFIX %+ _bn_sqrx8x_internal +%define _bn_sub_words _ %+ BORINGSSL_PREFIX %+ _bn_sub_words +%define _bsaes_cbc_encrypt _ %+ BORINGSSL_PREFIX %+ _bsaes_cbc_encrypt +%define _bsaes_ctr32_encrypt_blocks _ %+ BORINGSSL_PREFIX %+ _bsaes_ctr32_encrypt_blocks +%define _chacha20_poly1305_open _ %+ BORINGSSL_PREFIX %+ _chacha20_poly1305_open +%define _chacha20_poly1305_open_avx2 _ %+ BORINGSSL_PREFIX %+ _chacha20_poly1305_open_avx2 +%define _chacha20_poly1305_open_sse41 _ %+ BORINGSSL_PREFIX %+ _chacha20_poly1305_open_sse41 +%define _chacha20_poly1305_seal _ %+ BORINGSSL_PREFIX %+ _chacha20_poly1305_seal +%define _chacha20_poly1305_seal_avx2 _ %+ BORINGSSL_PREFIX %+ _chacha20_poly1305_seal_avx2 +%define _chacha20_poly1305_seal_sse41 _ %+ BORINGSSL_PREFIX %+ _chacha20_poly1305_seal_sse41 +%define _ecp_nistz256_div_by_2 _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_div_by_2 +%define _ecp_nistz256_mul_by_2 _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_mul_by_2 +%define _ecp_nistz256_mul_by_3 _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_mul_by_3 +%define _ecp_nistz256_mul_mont _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_mul_mont +%define _ecp_nistz256_mul_mont_adx _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_mul_mont_adx +%define _ecp_nistz256_mul_mont_nohw _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_mul_mont_nohw +%define _ecp_nistz256_neg _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_neg +%define _ecp_nistz256_ord_mul_mont _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_ord_mul_mont +%define _ecp_nistz256_ord_mul_mont_adx _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_ord_mul_mont_adx +%define _ecp_nistz256_ord_mul_mont_nohw _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_ord_mul_mont_nohw +%define _ecp_nistz256_ord_sqr_mont _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_ord_sqr_mont +%define _ecp_nistz256_ord_sqr_mont_adx _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_ord_sqr_mont_adx +%define _ecp_nistz256_ord_sqr_mont_nohw _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_ord_sqr_mont_nohw +%define _ecp_nistz256_point_add _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_point_add +%define _ecp_nistz256_point_add_adx _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_point_add_adx +%define _ecp_nistz256_point_add_affine _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_point_add_affine +%define _ecp_nistz256_point_add_affine_adx _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_point_add_affine_adx +%define _ecp_nistz256_point_add_affine_nohw _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_point_add_affine_nohw +%define _ecp_nistz256_point_add_nohw _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_point_add_nohw +%define _ecp_nistz256_point_double _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_point_double +%define _ecp_nistz256_point_double_adx _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_point_double_adx +%define _ecp_nistz256_point_double_nohw _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_point_double_nohw +%define _ecp_nistz256_select_w5 _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_select_w5 +%define _ecp_nistz256_select_w5_avx2 _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_select_w5_avx2 +%define _ecp_nistz256_select_w5_nohw _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_select_w5_nohw +%define _ecp_nistz256_select_w7 _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_select_w7 +%define _ecp_nistz256_select_w7_avx2 _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_select_w7_avx2 +%define _ecp_nistz256_select_w7_nohw _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_select_w7_nohw +%define _ecp_nistz256_sqr_mont _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_sqr_mont +%define _ecp_nistz256_sqr_mont_adx _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_sqr_mont_adx +%define _ecp_nistz256_sqr_mont_nohw _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_sqr_mont_nohw +%define _ecp_nistz256_sub _ %+ BORINGSSL_PREFIX %+ _ecp_nistz256_sub +%define _fiat_curve25519_adx_mul _ %+ BORINGSSL_PREFIX %+ _fiat_curve25519_adx_mul +%define _fiat_curve25519_adx_square _ %+ BORINGSSL_PREFIX %+ _fiat_curve25519_adx_square +%define _fiat_p256_adx_mul _ %+ BORINGSSL_PREFIX %+ _fiat_p256_adx_mul +%define _fiat_p256_adx_sqr _ %+ BORINGSSL_PREFIX %+ _fiat_p256_adx_sqr +%define _gcm_ghash_avx _ %+ BORINGSSL_PREFIX %+ _gcm_ghash_avx +%define _gcm_ghash_clmul _ %+ BORINGSSL_PREFIX %+ _gcm_ghash_clmul +%define _gcm_ghash_neon _ %+ BORINGSSL_PREFIX %+ _gcm_ghash_neon +%define _gcm_ghash_ssse3 _ %+ BORINGSSL_PREFIX %+ _gcm_ghash_ssse3 +%define _gcm_ghash_v8 _ %+ BORINGSSL_PREFIX %+ _gcm_ghash_v8 +%define _gcm_ghash_vpclmulqdq_avx2 _ %+ BORINGSSL_PREFIX %+ _gcm_ghash_vpclmulqdq_avx2 +%define _gcm_ghash_vpclmulqdq_avx512 _ %+ BORINGSSL_PREFIX %+ _gcm_ghash_vpclmulqdq_avx512 +%define _gcm_gmult_avx _ %+ BORINGSSL_PREFIX %+ _gcm_gmult_avx +%define _gcm_gmult_clmul _ %+ BORINGSSL_PREFIX %+ _gcm_gmult_clmul +%define _gcm_gmult_neon _ %+ BORINGSSL_PREFIX %+ _gcm_gmult_neon +%define _gcm_gmult_ssse3 _ %+ BORINGSSL_PREFIX %+ _gcm_gmult_ssse3 +%define _gcm_gmult_v8 _ %+ BORINGSSL_PREFIX %+ _gcm_gmult_v8 +%define _gcm_gmult_vpclmulqdq_avx2 _ %+ BORINGSSL_PREFIX %+ _gcm_gmult_vpclmulqdq_avx2 +%define _gcm_gmult_vpclmulqdq_avx512 _ %+ BORINGSSL_PREFIX %+ _gcm_gmult_vpclmulqdq_avx512 +%define _gcm_init_avx _ %+ BORINGSSL_PREFIX %+ _gcm_init_avx +%define _gcm_init_clmul _ %+ BORINGSSL_PREFIX %+ _gcm_init_clmul +%define _gcm_init_neon _ %+ BORINGSSL_PREFIX %+ _gcm_init_neon +%define _gcm_init_v8 _ %+ BORINGSSL_PREFIX %+ _gcm_init_v8 +%define _gcm_init_vpclmulqdq_avx2 _ %+ BORINGSSL_PREFIX %+ _gcm_init_vpclmulqdq_avx2 +%define _gcm_init_vpclmulqdq_avx512 _ %+ BORINGSSL_PREFIX %+ _gcm_init_vpclmulqdq_avx512 +%define _md5_block_asm_data_order _ %+ BORINGSSL_PREFIX %+ _md5_block_asm_data_order +%define _openssl_poly1305_neon2_addmulmod _ %+ BORINGSSL_PREFIX %+ _openssl_poly1305_neon2_addmulmod +%define _openssl_poly1305_neon2_blocks _ %+ BORINGSSL_PREFIX %+ _openssl_poly1305_neon2_blocks +%define _p_thread_callback_boringssl _ %+ BORINGSSL_PREFIX %+ _p_thread_callback_boringssl +%define _poly_Rq_mul _ %+ BORINGSSL_PREFIX %+ _poly_Rq_mul +%define _rsaz_1024_gather5_avx2 _ %+ BORINGSSL_PREFIX %+ _rsaz_1024_gather5_avx2 +%define _rsaz_1024_mul_avx2 _ %+ BORINGSSL_PREFIX %+ _rsaz_1024_mul_avx2 +%define _rsaz_1024_norm2red_avx2 _ %+ BORINGSSL_PREFIX %+ _rsaz_1024_norm2red_avx2 +%define _rsaz_1024_red2norm_avx2 _ %+ BORINGSSL_PREFIX %+ _rsaz_1024_red2norm_avx2 +%define _rsaz_1024_scatter5_avx2 _ %+ BORINGSSL_PREFIX %+ _rsaz_1024_scatter5_avx2 +%define _rsaz_1024_sqr_avx2 _ %+ BORINGSSL_PREFIX %+ _rsaz_1024_sqr_avx2 +%define _sha1_block_data_order_avx _ %+ BORINGSSL_PREFIX %+ _sha1_block_data_order_avx +%define _sha1_block_data_order_avx2 _ %+ BORINGSSL_PREFIX %+ _sha1_block_data_order_avx2 +%define _sha1_block_data_order_hw _ %+ BORINGSSL_PREFIX %+ _sha1_block_data_order_hw +%define _sha1_block_data_order_neon _ %+ BORINGSSL_PREFIX %+ _sha1_block_data_order_neon +%define _sha1_block_data_order_nohw _ %+ BORINGSSL_PREFIX %+ _sha1_block_data_order_nohw +%define _sha1_block_data_order_ssse3 _ %+ BORINGSSL_PREFIX %+ _sha1_block_data_order_ssse3 +%define _sha256_block_data_order_avx _ %+ BORINGSSL_PREFIX %+ _sha256_block_data_order_avx +%define _sha256_block_data_order_hw _ %+ BORINGSSL_PREFIX %+ _sha256_block_data_order_hw +%define _sha256_block_data_order_neon _ %+ BORINGSSL_PREFIX %+ _sha256_block_data_order_neon +%define _sha256_block_data_order_nohw _ %+ BORINGSSL_PREFIX %+ _sha256_block_data_order_nohw +%define _sha256_block_data_order_ssse3 _ %+ BORINGSSL_PREFIX %+ _sha256_block_data_order_ssse3 +%define _sha512_block_data_order_avx _ %+ BORINGSSL_PREFIX %+ _sha512_block_data_order_avx +%define _sha512_block_data_order_hw _ %+ BORINGSSL_PREFIX %+ _sha512_block_data_order_hw +%define _sha512_block_data_order_neon _ %+ BORINGSSL_PREFIX %+ _sha512_block_data_order_neon +%define _sha512_block_data_order_nohw _ %+ BORINGSSL_PREFIX %+ _sha512_block_data_order_nohw +%define _sha512_block_data_order_ssse3 _ %+ BORINGSSL_PREFIX %+ _sha512_block_data_order_ssse3 +%define _vpaes_cbc_encrypt _ %+ BORINGSSL_PREFIX %+ _vpaes_cbc_encrypt +%define _vpaes_ctr32_encrypt_blocks _ %+ BORINGSSL_PREFIX %+ _vpaes_ctr32_encrypt_blocks +%define _vpaes_decrypt _ %+ BORINGSSL_PREFIX %+ _vpaes_decrypt +%define _vpaes_decrypt_key_to_bsaes _ %+ BORINGSSL_PREFIX %+ _vpaes_decrypt_key_to_bsaes +%define _vpaes_encrypt _ %+ BORINGSSL_PREFIX %+ _vpaes_encrypt +%define _vpaes_encrypt_key_to_bsaes _ %+ BORINGSSL_PREFIX %+ _vpaes_encrypt_key_to_bsaes +%define _vpaes_set_decrypt_key _ %+ BORINGSSL_PREFIX %+ _vpaes_set_decrypt_key +%define _vpaes_set_encrypt_key _ %+ BORINGSSL_PREFIX %+ _vpaes_set_encrypt_key +%define _x25519_NEON _ %+ BORINGSSL_PREFIX %+ _x25519_NEON
diff --git a/util/pregenerate/asm_globals.go b/util/pregenerate/asm_globals.go index 7d35a26..ff648d4 100644 --- a/util/pregenerate/asm_globals.go +++ b/util/pregenerate/asm_globals.go
@@ -23,13 +23,22 @@ "strings" ) +// addedAsmSymbols are additional symbols to include in prefixing, +// even if not found by scanning the asm files. +var addedAsmSymbols = []string{ + "p_thread_callback_boringssl", +} + // CollectAsmGlobals collects assembly global symbols, deduplicated and sorted. // Inputs are paths to both original and fully templated assembly source files, // including GAS assembly source .S and NASM .asm files. // It will understand symbols prefixed with double underscores as private, // symbols prefixed with a *single* underscore as public on Apple platforms. func CollectAsmGlobals(srcs []string) ([]string, error) { - syms := make(map[string]bool) + syms := make(map[string]struct{}) + for _, sym := range addedAsmSymbols { + syms[sym] = struct{}{} + } for _, src := range srcs { var file *os.File file, err := os.Open(src) @@ -53,7 +62,7 @@ } sym := strings.TrimPrefix(sym, "_") if _, exists := syms[sym]; !exists { - syms[sym] = true + syms[sym] = struct{}{} } } } @@ -66,19 +75,21 @@ return ret, nil } -// BuildAsmGlobalsCHeader builds a symbol prefixing header for C. -func BuildAsmGlobalsCHeader(syms []string) []byte { +// BuildAsmGlobalsCInclude builds a symbol prefixing include for C. +func BuildAsmGlobalsCInclude(syms []string) []byte { var output bytes.Buffer writeHeader(&output, "//") output.WriteString("\n") + // Not using redefine_extname here, as some asm symbols are conditionally inline functions + // (on platforms with no asm implementation). for _, sym := range syms { fmt.Fprintf(&output, "#define %s BORINGSSL_ADD_PREFIX(%s)\n", sym, sym) } return output.Bytes() } -// BuildAsmGlobalsGasHeader builds a symbol prefixing header for the GNU Assembler (gas). -func BuildAsmGlobalsGasHeader(syms []string) []byte { +// BuildAsmGlobalsGasInclude builds a symbol prefixing include for the GNU Assembler (gas). +func BuildAsmGlobalsGasInclude(syms []string) []byte { var output bytes.Buffer writeHeader(&output, "//") output.WriteString("\n") @@ -98,13 +109,24 @@ return output.Bytes() } -// BuildAsmGlobalsNasmHeader builds a symbol prefixing header for the Netwide Assembler (nasm). -func BuildAsmGlobalsNasmHeader(syms []string) []byte { +// BuildAsmGlobalsNasmX86Include builds a symbol prefixing include for the Netwide Assembler (nasm). +func BuildAsmGlobalsNasmX86Include(syms []string) []byte { var output bytes.Buffer writeHeader(&output, ";") output.WriteString("\n") for _, sym := range syms { - fmt.Fprintf(&output, "%%define _%s BORINGSSL_SYMBOL(BORINGSSL_ADD_PREFIX(%s))\n", sym, sym) + fmt.Fprintf(&output, "%%define _%s _ %%+ BORINGSSL_PREFIX %%+ _%s\n", sym, sym) + } + return output.Bytes() +} + +// BuildAsmGlobalsNasmInclude builds a symbol prefixing include for the Netwide Assembler (nasm). +func BuildAsmGlobalsNasmX8664Include(syms []string) []byte { + var output bytes.Buffer + writeHeader(&output, ";") + output.WriteString("\n") + for _, sym := range syms { + fmt.Fprintf(&output, "%%define %s BORINGSSL_PREFIX %%+ _%s\n", sym, sym) } return output.Bytes() }
diff --git a/util/pregenerate/build.go b/util/pregenerate/build.go index 4ddbb8a..5853a29 100644 --- a/util/pregenerate/build.go +++ b/util/pregenerate/build.go
@@ -341,15 +341,19 @@ return []*Task{ NewSimpleTask("gen/boringssl_prefix_symbols_internal_c.inc", func() ([]byte, error) { once.Do(buildIncludesOnce) - return BuildAsmGlobalsCHeader(syms), err + return BuildAsmGlobalsCInclude(syms), err }, perlAsmTasks...), NewSimpleTask("gen/boringssl_prefix_symbols_internal_S.inc", func() ([]byte, error) { once.Do(buildIncludesOnce) - return BuildAsmGlobalsGasHeader(syms), err + return BuildAsmGlobalsGasInclude(syms), err }, perlAsmTasks...), - NewSimpleTask("gen/boringssl_prefix_symbols_internal_asm.inc", func() ([]byte, error) { + NewSimpleTask("gen/boringssl_prefix_symbols_internal_x86_asm.inc", func() ([]byte, error) { once.Do(buildIncludesOnce) - return BuildAsmGlobalsNasmHeader(syms), err + return BuildAsmGlobalsNasmX86Include(syms), err + }, perlAsmTasks...), + NewSimpleTask("gen/boringssl_prefix_symbols_internal_x86_64_asm.inc", func() ([]byte, error) { + once.Do(buildIncludesOnce) + return BuildAsmGlobalsNasmX8664Include(syms), err }, perlAsmTasks...), } }