// 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.

#ifndef OPENSSL_HEADER_PREFIX_SYMBOLS_INTERNAL_C_H
#define OPENSSL_HEADER_PREFIX_SYMBOLS_INTERNAL_C_H

#include <openssl/prefix_symbols.h>


#if defined(BORINGSSL_PREFIX)

#define BORINGSSL_function_hit BORINGSSL_ADD_PREFIX(BORINGSSL_function_hit)
#define CRYPTO_rdrand BORINGSSL_ADD_PREFIX(CRYPTO_rdrand)
#define CRYPTO_rdrand_multiple8_buf BORINGSSL_ADD_PREFIX(CRYPTO_rdrand_multiple8_buf)
#define ChaCha20_ctr32_avx2 BORINGSSL_ADD_PREFIX(ChaCha20_ctr32_avx2)
#define ChaCha20_ctr32_neon BORINGSSL_ADD_PREFIX(ChaCha20_ctr32_neon)
#define ChaCha20_ctr32_nohw BORINGSSL_ADD_PREFIX(ChaCha20_ctr32_nohw)
#define ChaCha20_ctr32_ssse3 BORINGSSL_ADD_PREFIX(ChaCha20_ctr32_ssse3)
#define ChaCha20_ctr32_ssse3_4x BORINGSSL_ADD_PREFIX(ChaCha20_ctr32_ssse3_4x)
#define abi_test_bad_unwind_epilog BORINGSSL_ADD_PREFIX(abi_test_bad_unwind_epilog)
#define abi_test_bad_unwind_temporary BORINGSSL_ADD_PREFIX(abi_test_bad_unwind_temporary)
#define abi_test_bad_unwind_wrong_register BORINGSSL_ADD_PREFIX(abi_test_bad_unwind_wrong_register)
#define abi_test_clobber_d0 BORINGSSL_ADD_PREFIX(abi_test_clobber_d0)
#define abi_test_clobber_d1 BORINGSSL_ADD_PREFIX(abi_test_clobber_d1)
#define abi_test_clobber_d10 BORINGSSL_ADD_PREFIX(abi_test_clobber_d10)
#define abi_test_clobber_d11 BORINGSSL_ADD_PREFIX(abi_test_clobber_d11)
#define abi_test_clobber_d12 BORINGSSL_ADD_PREFIX(abi_test_clobber_d12)
#define abi_test_clobber_d13 BORINGSSL_ADD_PREFIX(abi_test_clobber_d13)
#define abi_test_clobber_d14 BORINGSSL_ADD_PREFIX(abi_test_clobber_d14)
#define abi_test_clobber_d15 BORINGSSL_ADD_PREFIX(abi_test_clobber_d15)
#define abi_test_clobber_d16 BORINGSSL_ADD_PREFIX(abi_test_clobber_d16)
#define abi_test_clobber_d17 BORINGSSL_ADD_PREFIX(abi_test_clobber_d17)
#define abi_test_clobber_d18 BORINGSSL_ADD_PREFIX(abi_test_clobber_d18)
#define abi_test_clobber_d19 BORINGSSL_ADD_PREFIX(abi_test_clobber_d19)
#define abi_test_clobber_d2 BORINGSSL_ADD_PREFIX(abi_test_clobber_d2)
#define abi_test_clobber_d20 BORINGSSL_ADD_PREFIX(abi_test_clobber_d20)
#define abi_test_clobber_d21 BORINGSSL_ADD_PREFIX(abi_test_clobber_d21)
#define abi_test_clobber_d22 BORINGSSL_ADD_PREFIX(abi_test_clobber_d22)
#define abi_test_clobber_d23 BORINGSSL_ADD_PREFIX(abi_test_clobber_d23)
#define abi_test_clobber_d24 BORINGSSL_ADD_PREFIX(abi_test_clobber_d24)
#define abi_test_clobber_d25 BORINGSSL_ADD_PREFIX(abi_test_clobber_d25)
#define abi_test_clobber_d26 BORINGSSL_ADD_PREFIX(abi_test_clobber_d26)
#define abi_test_clobber_d27 BORINGSSL_ADD_PREFIX(abi_test_clobber_d27)
#define abi_test_clobber_d28 BORINGSSL_ADD_PREFIX(abi_test_clobber_d28)
#define abi_test_clobber_d29 BORINGSSL_ADD_PREFIX(abi_test_clobber_d29)
#define abi_test_clobber_d3 BORINGSSL_ADD_PREFIX(abi_test_clobber_d3)
#define abi_test_clobber_d30 BORINGSSL_ADD_PREFIX(abi_test_clobber_d30)
#define abi_test_clobber_d31 BORINGSSL_ADD_PREFIX(abi_test_clobber_d31)
#define abi_test_clobber_d4 BORINGSSL_ADD_PREFIX(abi_test_clobber_d4)
#define abi_test_clobber_d5 BORINGSSL_ADD_PREFIX(abi_test_clobber_d5)
#define abi_test_clobber_d6 BORINGSSL_ADD_PREFIX(abi_test_clobber_d6)
#define abi_test_clobber_d7 BORINGSSL_ADD_PREFIX(abi_test_clobber_d7)
#define abi_test_clobber_d8 BORINGSSL_ADD_PREFIX(abi_test_clobber_d8)
#define abi_test_clobber_d9 BORINGSSL_ADD_PREFIX(abi_test_clobber_d9)
#define abi_test_clobber_eax BORINGSSL_ADD_PREFIX(abi_test_clobber_eax)
#define abi_test_clobber_ebp BORINGSSL_ADD_PREFIX(abi_test_clobber_ebp)
#define abi_test_clobber_ebx BORINGSSL_ADD_PREFIX(abi_test_clobber_ebx)
#define abi_test_clobber_ecx BORINGSSL_ADD_PREFIX(abi_test_clobber_ecx)
#define abi_test_clobber_edi BORINGSSL_ADD_PREFIX(abi_test_clobber_edi)
#define abi_test_clobber_edx BORINGSSL_ADD_PREFIX(abi_test_clobber_edx)
#define abi_test_clobber_esi BORINGSSL_ADD_PREFIX(abi_test_clobber_esi)
#define abi_test_clobber_r0 BORINGSSL_ADD_PREFIX(abi_test_clobber_r0)
#define abi_test_clobber_r1 BORINGSSL_ADD_PREFIX(abi_test_clobber_r1)
#define abi_test_clobber_r10 BORINGSSL_ADD_PREFIX(abi_test_clobber_r10)
#define abi_test_clobber_r11 BORINGSSL_ADD_PREFIX(abi_test_clobber_r11)
#define abi_test_clobber_r12 BORINGSSL_ADD_PREFIX(abi_test_clobber_r12)
#define abi_test_clobber_r13 BORINGSSL_ADD_PREFIX(abi_test_clobber_r13)
#define abi_test_clobber_r14 BORINGSSL_ADD_PREFIX(abi_test_clobber_r14)
#define abi_test_clobber_r15 BORINGSSL_ADD_PREFIX(abi_test_clobber_r15)
#define abi_test_clobber_r2 BORINGSSL_ADD_PREFIX(abi_test_clobber_r2)
#define abi_test_clobber_r3 BORINGSSL_ADD_PREFIX(abi_test_clobber_r3)
#define abi_test_clobber_r4 BORINGSSL_ADD_PREFIX(abi_test_clobber_r4)
#define abi_test_clobber_r5 BORINGSSL_ADD_PREFIX(abi_test_clobber_r5)
#define abi_test_clobber_r6 BORINGSSL_ADD_PREFIX(abi_test_clobber_r6)
#define abi_test_clobber_r7 BORINGSSL_ADD_PREFIX(abi_test_clobber_r7)
#define abi_test_clobber_r8 BORINGSSL_ADD_PREFIX(abi_test_clobber_r8)
#define abi_test_clobber_r9 BORINGSSL_ADD_PREFIX(abi_test_clobber_r9)
#define abi_test_clobber_rax BORINGSSL_ADD_PREFIX(abi_test_clobber_rax)
#define abi_test_clobber_rbp BORINGSSL_ADD_PREFIX(abi_test_clobber_rbp)
#define abi_test_clobber_rbx BORINGSSL_ADD_PREFIX(abi_test_clobber_rbx)
#define abi_test_clobber_rcx BORINGSSL_ADD_PREFIX(abi_test_clobber_rcx)
#define abi_test_clobber_rdi BORINGSSL_ADD_PREFIX(abi_test_clobber_rdi)
#define abi_test_clobber_rdx BORINGSSL_ADD_PREFIX(abi_test_clobber_rdx)
#define abi_test_clobber_rsi BORINGSSL_ADD_PREFIX(abi_test_clobber_rsi)
#define abi_test_clobber_v10_upper BORINGSSL_ADD_PREFIX(abi_test_clobber_v10_upper)
#define abi_test_clobber_v11_upper BORINGSSL_ADD_PREFIX(abi_test_clobber_v11_upper)
#define abi_test_clobber_v12_upper BORINGSSL_ADD_PREFIX(abi_test_clobber_v12_upper)
#define abi_test_clobber_v13_upper BORINGSSL_ADD_PREFIX(abi_test_clobber_v13_upper)
#define abi_test_clobber_v14_upper BORINGSSL_ADD_PREFIX(abi_test_clobber_v14_upper)
#define abi_test_clobber_v15_upper BORINGSSL_ADD_PREFIX(abi_test_clobber_v15_upper)
#define abi_test_clobber_v8_upper BORINGSSL_ADD_PREFIX(abi_test_clobber_v8_upper)
#define abi_test_clobber_v9_upper BORINGSSL_ADD_PREFIX(abi_test_clobber_v9_upper)
#define abi_test_clobber_x0 BORINGSSL_ADD_PREFIX(abi_test_clobber_x0)
#define abi_test_clobber_x1 BORINGSSL_ADD_PREFIX(abi_test_clobber_x1)
#define abi_test_clobber_x10 BORINGSSL_ADD_PREFIX(abi_test_clobber_x10)
#define abi_test_clobber_x11 BORINGSSL_ADD_PREFIX(abi_test_clobber_x11)
#define abi_test_clobber_x12 BORINGSSL_ADD_PREFIX(abi_test_clobber_x12)
#define abi_test_clobber_x13 BORINGSSL_ADD_PREFIX(abi_test_clobber_x13)
#define abi_test_clobber_x14 BORINGSSL_ADD_PREFIX(abi_test_clobber_x14)
#define abi_test_clobber_x15 BORINGSSL_ADD_PREFIX(abi_test_clobber_x15)
#define abi_test_clobber_x16 BORINGSSL_ADD_PREFIX(abi_test_clobber_x16)
#define abi_test_clobber_x17 BORINGSSL_ADD_PREFIX(abi_test_clobber_x17)
#define abi_test_clobber_x19 BORINGSSL_ADD_PREFIX(abi_test_clobber_x19)
#define abi_test_clobber_x2 BORINGSSL_ADD_PREFIX(abi_test_clobber_x2)
#define abi_test_clobber_x20 BORINGSSL_ADD_PREFIX(abi_test_clobber_x20)
#define abi_test_clobber_x21 BORINGSSL_ADD_PREFIX(abi_test_clobber_x21)
#define abi_test_clobber_x22 BORINGSSL_ADD_PREFIX(abi_test_clobber_x22)
#define abi_test_clobber_x23 BORINGSSL_ADD_PREFIX(abi_test_clobber_x23)
#define abi_test_clobber_x24 BORINGSSL_ADD_PREFIX(abi_test_clobber_x24)
#define abi_test_clobber_x25 BORINGSSL_ADD_PREFIX(abi_test_clobber_x25)
#define abi_test_clobber_x26 BORINGSSL_ADD_PREFIX(abi_test_clobber_x26)
#define abi_test_clobber_x27 BORINGSSL_ADD_PREFIX(abi_test_clobber_x27)
#define abi_test_clobber_x28 BORINGSSL_ADD_PREFIX(abi_test_clobber_x28)
#define abi_test_clobber_x29 BORINGSSL_ADD_PREFIX(abi_test_clobber_x29)
#define abi_test_clobber_x3 BORINGSSL_ADD_PREFIX(abi_test_clobber_x3)
#define abi_test_clobber_x4 BORINGSSL_ADD_PREFIX(abi_test_clobber_x4)
#define abi_test_clobber_x5 BORINGSSL_ADD_PREFIX(abi_test_clobber_x5)
#define abi_test_clobber_x6 BORINGSSL_ADD_PREFIX(abi_test_clobber_x6)
#define abi_test_clobber_x7 BORINGSSL_ADD_PREFIX(abi_test_clobber_x7)
#define abi_test_clobber_x8 BORINGSSL_ADD_PREFIX(abi_test_clobber_x8)
#define abi_test_clobber_x9 BORINGSSL_ADD_PREFIX(abi_test_clobber_x9)
#define abi_test_clobber_xmm0 BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm0)
#define abi_test_clobber_xmm1 BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm1)
#define abi_test_clobber_xmm10 BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm10)
#define abi_test_clobber_xmm11 BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm11)
#define abi_test_clobber_xmm12 BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm12)
#define abi_test_clobber_xmm13 BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm13)
#define abi_test_clobber_xmm14 BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm14)
#define abi_test_clobber_xmm15 BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm15)
#define abi_test_clobber_xmm2 BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm2)
#define abi_test_clobber_xmm3 BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm3)
#define abi_test_clobber_xmm4 BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm4)
#define abi_test_clobber_xmm5 BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm5)
#define abi_test_clobber_xmm6 BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm6)
#define abi_test_clobber_xmm7 BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm7)
#define abi_test_clobber_xmm8 BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm8)
#define abi_test_clobber_xmm9 BORINGSSL_ADD_PREFIX(abi_test_clobber_xmm9)
#define abi_test_get_and_clear_direction_flag BORINGSSL_ADD_PREFIX(abi_test_get_and_clear_direction_flag)
#define abi_test_set_direction_flag BORINGSSL_ADD_PREFIX(abi_test_set_direction_flag)
#define abi_test_trampoline BORINGSSL_ADD_PREFIX(abi_test_trampoline)
#define abi_test_unwind_return BORINGSSL_ADD_PREFIX(abi_test_unwind_return)
#define abi_test_unwind_start BORINGSSL_ADD_PREFIX(abi_test_unwind_start)
#define abi_test_unwind_stop BORINGSSL_ADD_PREFIX(abi_test_unwind_stop)
#define aes128gcmsiv_aes_ks BORINGSSL_ADD_PREFIX(aes128gcmsiv_aes_ks)
#define aes128gcmsiv_aes_ks_enc_x1 BORINGSSL_ADD_PREFIX(aes128gcmsiv_aes_ks_enc_x1)
#define aes128gcmsiv_dec BORINGSSL_ADD_PREFIX(aes128gcmsiv_dec)
#define aes128gcmsiv_ecb_enc_block BORINGSSL_ADD_PREFIX(aes128gcmsiv_ecb_enc_block)
#define aes128gcmsiv_enc_msg_x4 BORINGSSL_ADD_PREFIX(aes128gcmsiv_enc_msg_x4)
#define aes128gcmsiv_enc_msg_x8 BORINGSSL_ADD_PREFIX(aes128gcmsiv_enc_msg_x8)
#define aes128gcmsiv_kdf BORINGSSL_ADD_PREFIX(aes128gcmsiv_kdf)
#define aes256gcmsiv_aes_ks BORINGSSL_ADD_PREFIX(aes256gcmsiv_aes_ks)
#define aes256gcmsiv_aes_ks_enc_x1 BORINGSSL_ADD_PREFIX(aes256gcmsiv_aes_ks_enc_x1)
#define aes256gcmsiv_dec BORINGSSL_ADD_PREFIX(aes256gcmsiv_dec)
#define aes256gcmsiv_ecb_enc_block BORINGSSL_ADD_PREFIX(aes256gcmsiv_ecb_enc_block)
#define aes256gcmsiv_enc_msg_x4 BORINGSSL_ADD_PREFIX(aes256gcmsiv_enc_msg_x4)
#define aes256gcmsiv_enc_msg_x8 BORINGSSL_ADD_PREFIX(aes256gcmsiv_enc_msg_x8)
#define aes256gcmsiv_kdf BORINGSSL_ADD_PREFIX(aes256gcmsiv_kdf)
#define aes_gcm_dec_kernel BORINGSSL_ADD_PREFIX(aes_gcm_dec_kernel)
#define aes_gcm_dec_kernel_eor3 BORINGSSL_ADD_PREFIX(aes_gcm_dec_kernel_eor3)
#define aes_gcm_dec_update_vaes_avx2 BORINGSSL_ADD_PREFIX(aes_gcm_dec_update_vaes_avx2)
#define aes_gcm_dec_update_vaes_avx512 BORINGSSL_ADD_PREFIX(aes_gcm_dec_update_vaes_avx512)
#define aes_gcm_enc_kernel BORINGSSL_ADD_PREFIX(aes_gcm_enc_kernel)
#define aes_gcm_enc_kernel_eor3 BORINGSSL_ADD_PREFIX(aes_gcm_enc_kernel_eor3)
#define aes_gcm_enc_update_vaes_avx2 BORINGSSL_ADD_PREFIX(aes_gcm_enc_update_vaes_avx2)
#define aes_gcm_enc_update_vaes_avx512 BORINGSSL_ADD_PREFIX(aes_gcm_enc_update_vaes_avx512)
#define aes_hw_cbc_encrypt BORINGSSL_ADD_PREFIX(aes_hw_cbc_encrypt)
#define aes_hw_ccm64_decrypt_blocks BORINGSSL_ADD_PREFIX(aes_hw_ccm64_decrypt_blocks)
#define aes_hw_ccm64_encrypt_blocks BORINGSSL_ADD_PREFIX(aes_hw_ccm64_encrypt_blocks)
#define aes_hw_ctr32_encrypt_blocks BORINGSSL_ADD_PREFIX(aes_hw_ctr32_encrypt_blocks)
#define aes_hw_decrypt BORINGSSL_ADD_PREFIX(aes_hw_decrypt)
#define aes_hw_ecb_encrypt BORINGSSL_ADD_PREFIX(aes_hw_ecb_encrypt)
#define aes_hw_encrypt BORINGSSL_ADD_PREFIX(aes_hw_encrypt)
#define aes_hw_encrypt_key_to_decrypt_key BORINGSSL_ADD_PREFIX(aes_hw_encrypt_key_to_decrypt_key)
#define aes_hw_set_decrypt_key BORINGSSL_ADD_PREFIX(aes_hw_set_decrypt_key)
#define aes_hw_set_encrypt_key BORINGSSL_ADD_PREFIX(aes_hw_set_encrypt_key)
#define aes_hw_set_encrypt_key_alt BORINGSSL_ADD_PREFIX(aes_hw_set_encrypt_key_alt)
#define aes_hw_set_encrypt_key_base BORINGSSL_ADD_PREFIX(aes_hw_set_encrypt_key_base)
#define aes_hw_xts_decrypt BORINGSSL_ADD_PREFIX(aes_hw_xts_decrypt)
#define aes_hw_xts_encrypt BORINGSSL_ADD_PREFIX(aes_hw_xts_encrypt)
#define aesgcmsiv_htable6_init BORINGSSL_ADD_PREFIX(aesgcmsiv_htable6_init)
#define aesgcmsiv_htable_init BORINGSSL_ADD_PREFIX(aesgcmsiv_htable_init)
#define aesgcmsiv_htable_polyval BORINGSSL_ADD_PREFIX(aesgcmsiv_htable_polyval)
#define aesgcmsiv_polyval_horner BORINGSSL_ADD_PREFIX(aesgcmsiv_polyval_horner)
#define aesni_gcm_decrypt BORINGSSL_ADD_PREFIX(aesni_gcm_decrypt)
#define aesni_gcm_encrypt BORINGSSL_ADD_PREFIX(aesni_gcm_encrypt)
#define beeu_mod_inverse_vartime BORINGSSL_ADD_PREFIX(beeu_mod_inverse_vartime)
#define bn_add_words BORINGSSL_ADD_PREFIX(bn_add_words)
#define bn_gather5 BORINGSSL_ADD_PREFIX(bn_gather5)
#define bn_mul4x_mont BORINGSSL_ADD_PREFIX(bn_mul4x_mont)
#define bn_mul4x_mont_gather5 BORINGSSL_ADD_PREFIX(bn_mul4x_mont_gather5)
#define bn_mul8x_mont_neon BORINGSSL_ADD_PREFIX(bn_mul8x_mont_neon)
#define bn_mul_add_words BORINGSSL_ADD_PREFIX(bn_mul_add_words)
#define bn_mul_comba4 BORINGSSL_ADD_PREFIX(bn_mul_comba4)
#define bn_mul_comba8 BORINGSSL_ADD_PREFIX(bn_mul_comba8)
#define bn_mul_mont_gather5_nohw BORINGSSL_ADD_PREFIX(bn_mul_mont_gather5_nohw)
#define bn_mul_mont_nohw BORINGSSL_ADD_PREFIX(bn_mul_mont_nohw)
#define bn_mul_mont_words BORINGSSL_ADD_PREFIX(bn_mul_mont_words)
#define bn_mul_words BORINGSSL_ADD_PREFIX(bn_mul_words)
#define bn_mulx4x_mont BORINGSSL_ADD_PREFIX(bn_mulx4x_mont)
#define bn_mulx4x_mont_gather5 BORINGSSL_ADD_PREFIX(bn_mulx4x_mont_gather5)
#define bn_power5_nohw BORINGSSL_ADD_PREFIX(bn_power5_nohw)
#define bn_powerx5 BORINGSSL_ADD_PREFIX(bn_powerx5)
#define bn_scatter5 BORINGSSL_ADD_PREFIX(bn_scatter5)
#define bn_sqr8x_internal BORINGSSL_ADD_PREFIX(bn_sqr8x_internal)
#define bn_sqr8x_mont BORINGSSL_ADD_PREFIX(bn_sqr8x_mont)
#define bn_sqr_add_words BORINGSSL_ADD_PREFIX(bn_sqr_add_words)
#define bn_sqr_comba4 BORINGSSL_ADD_PREFIX(bn_sqr_comba4)
#define bn_sqr_comba8 BORINGSSL_ADD_PREFIX(bn_sqr_comba8)
#define bn_sqrx8x_internal BORINGSSL_ADD_PREFIX(bn_sqrx8x_internal)
#define bn_sub_words BORINGSSL_ADD_PREFIX(bn_sub_words)
#define bsaes_cbc_encrypt BORINGSSL_ADD_PREFIX(bsaes_cbc_encrypt)
#define bsaes_ctr32_encrypt_blocks BORINGSSL_ADD_PREFIX(bsaes_ctr32_encrypt_blocks)
#define chacha20_poly1305_open BORINGSSL_ADD_PREFIX(chacha20_poly1305_open)
#define chacha20_poly1305_open_avx2 BORINGSSL_ADD_PREFIX(chacha20_poly1305_open_avx2)
#define chacha20_poly1305_open_sse41 BORINGSSL_ADD_PREFIX(chacha20_poly1305_open_sse41)
#define chacha20_poly1305_seal BORINGSSL_ADD_PREFIX(chacha20_poly1305_seal)
#define chacha20_poly1305_seal_avx2 BORINGSSL_ADD_PREFIX(chacha20_poly1305_seal_avx2)
#define chacha20_poly1305_seal_sse41 BORINGSSL_ADD_PREFIX(chacha20_poly1305_seal_sse41)
#define ecp_nistz256_div_by_2 BORINGSSL_ADD_PREFIX(ecp_nistz256_div_by_2)
#define ecp_nistz256_mul_by_2 BORINGSSL_ADD_PREFIX(ecp_nistz256_mul_by_2)
#define ecp_nistz256_mul_by_3 BORINGSSL_ADD_PREFIX(ecp_nistz256_mul_by_3)
#define ecp_nistz256_mul_mont BORINGSSL_ADD_PREFIX(ecp_nistz256_mul_mont)
#define ecp_nistz256_mul_mont_adx BORINGSSL_ADD_PREFIX(ecp_nistz256_mul_mont_adx)
#define ecp_nistz256_mul_mont_nohw BORINGSSL_ADD_PREFIX(ecp_nistz256_mul_mont_nohw)
#define ecp_nistz256_neg BORINGSSL_ADD_PREFIX(ecp_nistz256_neg)
#define ecp_nistz256_ord_mul_mont BORINGSSL_ADD_PREFIX(ecp_nistz256_ord_mul_mont)
#define ecp_nistz256_ord_mul_mont_adx BORINGSSL_ADD_PREFIX(ecp_nistz256_ord_mul_mont_adx)
#define ecp_nistz256_ord_mul_mont_nohw BORINGSSL_ADD_PREFIX(ecp_nistz256_ord_mul_mont_nohw)
#define ecp_nistz256_ord_sqr_mont BORINGSSL_ADD_PREFIX(ecp_nistz256_ord_sqr_mont)
#define ecp_nistz256_ord_sqr_mont_adx BORINGSSL_ADD_PREFIX(ecp_nistz256_ord_sqr_mont_adx)
#define ecp_nistz256_ord_sqr_mont_nohw BORINGSSL_ADD_PREFIX(ecp_nistz256_ord_sqr_mont_nohw)
#define ecp_nistz256_point_add BORINGSSL_ADD_PREFIX(ecp_nistz256_point_add)
#define ecp_nistz256_point_add_adx BORINGSSL_ADD_PREFIX(ecp_nistz256_point_add_adx)
#define ecp_nistz256_point_add_affine BORINGSSL_ADD_PREFIX(ecp_nistz256_point_add_affine)
#define ecp_nistz256_point_add_affine_adx BORINGSSL_ADD_PREFIX(ecp_nistz256_point_add_affine_adx)
#define ecp_nistz256_point_add_affine_nohw BORINGSSL_ADD_PREFIX(ecp_nistz256_point_add_affine_nohw)
#define ecp_nistz256_point_add_nohw BORINGSSL_ADD_PREFIX(ecp_nistz256_point_add_nohw)
#define ecp_nistz256_point_double BORINGSSL_ADD_PREFIX(ecp_nistz256_point_double)
#define ecp_nistz256_point_double_adx BORINGSSL_ADD_PREFIX(ecp_nistz256_point_double_adx)
#define ecp_nistz256_point_double_nohw BORINGSSL_ADD_PREFIX(ecp_nistz256_point_double_nohw)
#define ecp_nistz256_select_w5 BORINGSSL_ADD_PREFIX(ecp_nistz256_select_w5)
#define ecp_nistz256_select_w5_avx2 BORINGSSL_ADD_PREFIX(ecp_nistz256_select_w5_avx2)
#define ecp_nistz256_select_w5_nohw BORINGSSL_ADD_PREFIX(ecp_nistz256_select_w5_nohw)
#define ecp_nistz256_select_w7 BORINGSSL_ADD_PREFIX(ecp_nistz256_select_w7)
#define ecp_nistz256_select_w7_avx2 BORINGSSL_ADD_PREFIX(ecp_nistz256_select_w7_avx2)
#define ecp_nistz256_select_w7_nohw BORINGSSL_ADD_PREFIX(ecp_nistz256_select_w7_nohw)
#define ecp_nistz256_sqr_mont BORINGSSL_ADD_PREFIX(ecp_nistz256_sqr_mont)
#define ecp_nistz256_sqr_mont_adx BORINGSSL_ADD_PREFIX(ecp_nistz256_sqr_mont_adx)
#define ecp_nistz256_sqr_mont_nohw BORINGSSL_ADD_PREFIX(ecp_nistz256_sqr_mont_nohw)
#define ecp_nistz256_sub BORINGSSL_ADD_PREFIX(ecp_nistz256_sub)
#define fiat_curve25519_adx_mul BORINGSSL_ADD_PREFIX(fiat_curve25519_adx_mul)
#define fiat_curve25519_adx_square BORINGSSL_ADD_PREFIX(fiat_curve25519_adx_square)
#define fiat_p256_adx_mul BORINGSSL_ADD_PREFIX(fiat_p256_adx_mul)
#define fiat_p256_adx_sqr BORINGSSL_ADD_PREFIX(fiat_p256_adx_sqr)
#define gcm_ghash_avx BORINGSSL_ADD_PREFIX(gcm_ghash_avx)
#define gcm_ghash_clmul BORINGSSL_ADD_PREFIX(gcm_ghash_clmul)
#define gcm_ghash_neon BORINGSSL_ADD_PREFIX(gcm_ghash_neon)
#define gcm_ghash_ssse3 BORINGSSL_ADD_PREFIX(gcm_ghash_ssse3)
#define gcm_ghash_v8 BORINGSSL_ADD_PREFIX(gcm_ghash_v8)
#define gcm_ghash_vpclmulqdq_avx2 BORINGSSL_ADD_PREFIX(gcm_ghash_vpclmulqdq_avx2)
#define gcm_ghash_vpclmulqdq_avx512 BORINGSSL_ADD_PREFIX(gcm_ghash_vpclmulqdq_avx512)
#define gcm_gmult_avx BORINGSSL_ADD_PREFIX(gcm_gmult_avx)
#define gcm_gmult_clmul BORINGSSL_ADD_PREFIX(gcm_gmult_clmul)
#define gcm_gmult_neon BORINGSSL_ADD_PREFIX(gcm_gmult_neon)
#define gcm_gmult_ssse3 BORINGSSL_ADD_PREFIX(gcm_gmult_ssse3)
#define gcm_gmult_v8 BORINGSSL_ADD_PREFIX(gcm_gmult_v8)
#define gcm_gmult_vpclmulqdq_avx2 BORINGSSL_ADD_PREFIX(gcm_gmult_vpclmulqdq_avx2)
#define gcm_gmult_vpclmulqdq_avx512 BORINGSSL_ADD_PREFIX(gcm_gmult_vpclmulqdq_avx512)
#define gcm_init_avx BORINGSSL_ADD_PREFIX(gcm_init_avx)
#define gcm_init_clmul BORINGSSL_ADD_PREFIX(gcm_init_clmul)
#define gcm_init_neon BORINGSSL_ADD_PREFIX(gcm_init_neon)
#define gcm_init_v8 BORINGSSL_ADD_PREFIX(gcm_init_v8)
#define gcm_init_vpclmulqdq_avx2 BORINGSSL_ADD_PREFIX(gcm_init_vpclmulqdq_avx2)
#define gcm_init_vpclmulqdq_avx512 BORINGSSL_ADD_PREFIX(gcm_init_vpclmulqdq_avx512)
#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)
#define rsaz_1024_norm2red_avx2 BORINGSSL_ADD_PREFIX(rsaz_1024_norm2red_avx2)
#define rsaz_1024_red2norm_avx2 BORINGSSL_ADD_PREFIX(rsaz_1024_red2norm_avx2)
#define rsaz_1024_scatter5_avx2 BORINGSSL_ADD_PREFIX(rsaz_1024_scatter5_avx2)
#define rsaz_1024_sqr_avx2 BORINGSSL_ADD_PREFIX(rsaz_1024_sqr_avx2)
#define sha1_block_data_order_avx BORINGSSL_ADD_PREFIX(sha1_block_data_order_avx)
#define sha1_block_data_order_avx2 BORINGSSL_ADD_PREFIX(sha1_block_data_order_avx2)
#define sha1_block_data_order_hw BORINGSSL_ADD_PREFIX(sha1_block_data_order_hw)
#define sha1_block_data_order_neon BORINGSSL_ADD_PREFIX(sha1_block_data_order_neon)
#define sha1_block_data_order_nohw BORINGSSL_ADD_PREFIX(sha1_block_data_order_nohw)
#define sha1_block_data_order_ssse3 BORINGSSL_ADD_PREFIX(sha1_block_data_order_ssse3)
#define sha256_block_data_order_avx BORINGSSL_ADD_PREFIX(sha256_block_data_order_avx)
#define sha256_block_data_order_hw BORINGSSL_ADD_PREFIX(sha256_block_data_order_hw)
#define sha256_block_data_order_neon BORINGSSL_ADD_PREFIX(sha256_block_data_order_neon)
#define sha256_block_data_order_nohw BORINGSSL_ADD_PREFIX(sha256_block_data_order_nohw)
#define sha256_block_data_order_ssse3 BORINGSSL_ADD_PREFIX(sha256_block_data_order_ssse3)
#define sha512_block_data_order_avx BORINGSSL_ADD_PREFIX(sha512_block_data_order_avx)
#define sha512_block_data_order_hw BORINGSSL_ADD_PREFIX(sha512_block_data_order_hw)
#define sha512_block_data_order_neon BORINGSSL_ADD_PREFIX(sha512_block_data_order_neon)
#define sha512_block_data_order_nohw BORINGSSL_ADD_PREFIX(sha512_block_data_order_nohw)
#define sha512_block_data_order_ssse3 BORINGSSL_ADD_PREFIX(sha512_block_data_order_ssse3)
#define vpaes_cbc_encrypt BORINGSSL_ADD_PREFIX(vpaes_cbc_encrypt)
#define vpaes_ctr32_encrypt_blocks BORINGSSL_ADD_PREFIX(vpaes_ctr32_encrypt_blocks)
#define vpaes_decrypt BORINGSSL_ADD_PREFIX(vpaes_decrypt)
#define vpaes_decrypt_key_to_bsaes BORINGSSL_ADD_PREFIX(vpaes_decrypt_key_to_bsaes)
#define vpaes_encrypt BORINGSSL_ADD_PREFIX(vpaes_encrypt)
#define vpaes_encrypt_key_to_bsaes BORINGSSL_ADD_PREFIX(vpaes_encrypt_key_to_bsaes)
#define vpaes_set_decrypt_key BORINGSSL_ADD_PREFIX(vpaes_set_decrypt_key)
#define vpaes_set_encrypt_key BORINGSSL_ADD_PREFIX(vpaes_set_encrypt_key)
#define x25519_NEON BORINGSSL_ADD_PREFIX(x25519_NEON)

#endif  // BORINGSSL_PREFIX

#endif  // OPENSSL_HEADER_PREFIX_SYMBOLS_INTERNAL_C_H
