diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index ed96b647b4..a2ffd4a364 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -77,10 +77,6 @@ if(OQS_USE_OPENSSL) target_link_libraries(oqs PUBLIC ${OPENSSL_CRYPTO_LIBRARY}) target_include_directories(oqs PUBLIC ${OPENSSL_INCLUDE_DIR}) endif() -if (CMAKE_SYSTEM_NAME MATCHES "Linux" AND OQS_USE_AVX2_INSTRUCTIONS AND OQS_ENABLE_KEM_CLASSIC_MCELIECE) - # hack to enable McEliece' AVX symbols to link on Linux -target_link_options(oqs PRIVATE -Wl,-Bsymbolic) -endif() set_target_properties(oqs PROPERTIES diff --git a/src/kem/classic_mceliece/pqclean_mceliece348864_avx/consts.S b/src/kem/classic_mceliece/pqclean_mceliece348864_avx/consts.S index 385ad55a7a..72176eab4b 100644 --- a/src/kem/classic_mceliece/pqclean_mceliece348864_avx/consts.S +++ b/src/kem/classic_mceliece/pqclean_mceliece348864_avx/consts.S @@ -16,6 +16,19 @@ .globl PQCLEAN_MCELIECE348864_AVX_MASK5_0 .globl PQCLEAN_MCELIECE348864_AVX_MASK5_1 +.hidden PQCLEAN_MCELIECE348864_AVX_MASK0_0 +.hidden PQCLEAN_MCELIECE348864_AVX_MASK0_1 +.hidden PQCLEAN_MCELIECE348864_AVX_MASK1_0 +.hidden PQCLEAN_MCELIECE348864_AVX_MASK1_1 +.hidden PQCLEAN_MCELIECE348864_AVX_MASK2_0 +.hidden PQCLEAN_MCELIECE348864_AVX_MASK2_1 +.hidden PQCLEAN_MCELIECE348864_AVX_MASK3_0 +.hidden PQCLEAN_MCELIECE348864_AVX_MASK3_1 +.hidden PQCLEAN_MCELIECE348864_AVX_MASK4_0 +.hidden PQCLEAN_MCELIECE348864_AVX_MASK4_1 +.hidden PQCLEAN_MCELIECE348864_AVX_MASK5_0 +.hidden PQCLEAN_MCELIECE348864_AVX_MASK5_1 + .p2align 5 PQCLEAN_MCELIECE348864_AVX_MASK0_0: .quad 0x5555555555555555, 0x5555555555555555, 0x5555555555555555, 0x5555555555555555 diff --git a/src/kem/classic_mceliece/pqclean_mceliece348864f_avx/consts.S b/src/kem/classic_mceliece/pqclean_mceliece348864f_avx/consts.S index 63e6defe50..a2251f63e8 100644 --- a/src/kem/classic_mceliece/pqclean_mceliece348864f_avx/consts.S +++ b/src/kem/classic_mceliece/pqclean_mceliece348864f_avx/consts.S @@ -16,6 +16,19 @@ .globl PQCLEAN_MCELIECE348864F_AVX_MASK5_0 .globl PQCLEAN_MCELIECE348864F_AVX_MASK5_1 +.hidden PQCLEAN_MCELIECE348864F_AVX_MASK0_0 +.hidden PQCLEAN_MCELIECE348864F_AVX_MASK0_1 +.hidden PQCLEAN_MCELIECE348864F_AVX_MASK1_0 +.hidden PQCLEAN_MCELIECE348864F_AVX_MASK1_1 +.hidden PQCLEAN_MCELIECE348864F_AVX_MASK2_0 +.hidden PQCLEAN_MCELIECE348864F_AVX_MASK2_1 +.hidden PQCLEAN_MCELIECE348864F_AVX_MASK3_0 +.hidden PQCLEAN_MCELIECE348864F_AVX_MASK3_1 +.hidden PQCLEAN_MCELIECE348864F_AVX_MASK4_0 +.hidden PQCLEAN_MCELIECE348864F_AVX_MASK4_1 +.hidden PQCLEAN_MCELIECE348864F_AVX_MASK5_0 +.hidden PQCLEAN_MCELIECE348864F_AVX_MASK5_1 + .p2align 5 PQCLEAN_MCELIECE348864F_AVX_MASK0_0: .quad 0x5555555555555555, 0x5555555555555555, 0x5555555555555555, 0x5555555555555555 diff --git a/src/kem/classic_mceliece/pqclean_mceliece460896_avx/consts.S b/src/kem/classic_mceliece/pqclean_mceliece460896_avx/consts.S index de62f1b014..712c6073ec 100644 --- a/src/kem/classic_mceliece/pqclean_mceliece460896_avx/consts.S +++ b/src/kem/classic_mceliece/pqclean_mceliece460896_avx/consts.S @@ -16,6 +16,19 @@ .globl PQCLEAN_MCELIECE460896_AVX_MASK5_0 .globl PQCLEAN_MCELIECE460896_AVX_MASK5_1 +.hidden PQCLEAN_MCELIECE460896_AVX_MASK0_0 +.hidden PQCLEAN_MCELIECE460896_AVX_MASK0_1 +.hidden PQCLEAN_MCELIECE460896_AVX_MASK1_0 +.hidden PQCLEAN_MCELIECE460896_AVX_MASK1_1 +.hidden PQCLEAN_MCELIECE460896_AVX_MASK2_0 +.hidden PQCLEAN_MCELIECE460896_AVX_MASK2_1 +.hidden PQCLEAN_MCELIECE460896_AVX_MASK3_0 +.hidden PQCLEAN_MCELIECE460896_AVX_MASK3_1 +.hidden PQCLEAN_MCELIECE460896_AVX_MASK4_0 +.hidden PQCLEAN_MCELIECE460896_AVX_MASK4_1 +.hidden PQCLEAN_MCELIECE460896_AVX_MASK5_0 +.hidden PQCLEAN_MCELIECE460896_AVX_MASK5_1 + .p2align 5 PQCLEAN_MCELIECE460896_AVX_MASK0_0: .quad 0x5555555555555555, 0x5555555555555555, 0x5555555555555555, 0x5555555555555555 diff --git a/src/kem/classic_mceliece/pqclean_mceliece460896f_avx/consts.S b/src/kem/classic_mceliece/pqclean_mceliece460896f_avx/consts.S index be96319337..d75f18dbfa 100644 --- a/src/kem/classic_mceliece/pqclean_mceliece460896f_avx/consts.S +++ b/src/kem/classic_mceliece/pqclean_mceliece460896f_avx/consts.S @@ -16,6 +16,19 @@ .globl PQCLEAN_MCELIECE460896F_AVX_MASK5_0 .globl PQCLEAN_MCELIECE460896F_AVX_MASK5_1 +.hidden PQCLEAN_MCELIECE460896F_AVX_MASK0_0 +.hidden PQCLEAN_MCELIECE460896F_AVX_MASK0_1 +.hidden PQCLEAN_MCELIECE460896F_AVX_MASK1_0 +.hidden PQCLEAN_MCELIECE460896F_AVX_MASK1_1 +.hidden PQCLEAN_MCELIECE460896F_AVX_MASK2_0 +.hidden PQCLEAN_MCELIECE460896F_AVX_MASK2_1 +.hidden PQCLEAN_MCELIECE460896F_AVX_MASK3_0 +.hidden PQCLEAN_MCELIECE460896F_AVX_MASK3_1 +.hidden PQCLEAN_MCELIECE460896F_AVX_MASK4_0 +.hidden PQCLEAN_MCELIECE460896F_AVX_MASK4_1 +.hidden PQCLEAN_MCELIECE460896F_AVX_MASK5_0 +.hidden PQCLEAN_MCELIECE460896F_AVX_MASK5_1 + .p2align 5 PQCLEAN_MCELIECE460896F_AVX_MASK0_0: .quad 0x5555555555555555, 0x5555555555555555, 0x5555555555555555, 0x5555555555555555 diff --git a/src/kem/classic_mceliece/pqclean_mceliece6688128_avx/consts.S b/src/kem/classic_mceliece/pqclean_mceliece6688128_avx/consts.S index 74691b8ceb..9438992a85 100644 --- a/src/kem/classic_mceliece/pqclean_mceliece6688128_avx/consts.S +++ b/src/kem/classic_mceliece/pqclean_mceliece6688128_avx/consts.S @@ -16,6 +16,19 @@ .globl PQCLEAN_MCELIECE6688128_AVX_MASK5_0 .globl PQCLEAN_MCELIECE6688128_AVX_MASK5_1 +.hidden PQCLEAN_MCELIECE6688128_AVX_MASK0_0 +.hidden PQCLEAN_MCELIECE6688128_AVX_MASK0_1 +.hidden PQCLEAN_MCELIECE6688128_AVX_MASK1_0 +.hidden PQCLEAN_MCELIECE6688128_AVX_MASK1_1 +.hidden PQCLEAN_MCELIECE6688128_AVX_MASK2_0 +.hidden PQCLEAN_MCELIECE6688128_AVX_MASK2_1 +.hidden PQCLEAN_MCELIECE6688128_AVX_MASK3_0 +.hidden PQCLEAN_MCELIECE6688128_AVX_MASK3_1 +.hidden PQCLEAN_MCELIECE6688128_AVX_MASK4_0 +.hidden PQCLEAN_MCELIECE6688128_AVX_MASK4_1 +.hidden PQCLEAN_MCELIECE6688128_AVX_MASK5_0 +.hidden PQCLEAN_MCELIECE6688128_AVX_MASK5_1 + .p2align 5 PQCLEAN_MCELIECE6688128_AVX_MASK0_0: .quad 0x5555555555555555, 0x5555555555555555, 0x5555555555555555, 0x5555555555555555 diff --git a/src/kem/classic_mceliece/pqclean_mceliece6688128f_avx/consts.S b/src/kem/classic_mceliece/pqclean_mceliece6688128f_avx/consts.S index f9127c38d5..7e26c56756 100644 --- a/src/kem/classic_mceliece/pqclean_mceliece6688128f_avx/consts.S +++ b/src/kem/classic_mceliece/pqclean_mceliece6688128f_avx/consts.S @@ -16,6 +16,19 @@ .globl PQCLEAN_MCELIECE6688128F_AVX_MASK5_0 .globl PQCLEAN_MCELIECE6688128F_AVX_MASK5_1 +.hidden PQCLEAN_MCELIECE6688128F_AVX_MASK0_0 +.hidden PQCLEAN_MCELIECE6688128F_AVX_MASK0_1 +.hidden PQCLEAN_MCELIECE6688128F_AVX_MASK1_0 +.hidden PQCLEAN_MCELIECE6688128F_AVX_MASK1_1 +.hidden PQCLEAN_MCELIECE6688128F_AVX_MASK2_0 +.hidden PQCLEAN_MCELIECE6688128F_AVX_MASK2_1 +.hidden PQCLEAN_MCELIECE6688128F_AVX_MASK3_0 +.hidden PQCLEAN_MCELIECE6688128F_AVX_MASK3_1 +.hidden PQCLEAN_MCELIECE6688128F_AVX_MASK4_0 +.hidden PQCLEAN_MCELIECE6688128F_AVX_MASK4_1 +.hidden PQCLEAN_MCELIECE6688128F_AVX_MASK5_0 +.hidden PQCLEAN_MCELIECE6688128F_AVX_MASK5_1 + .p2align 5 PQCLEAN_MCELIECE6688128F_AVX_MASK0_0: .quad 0x5555555555555555, 0x5555555555555555, 0x5555555555555555, 0x5555555555555555 diff --git a/src/kem/classic_mceliece/pqclean_mceliece6960119_avx/consts.S b/src/kem/classic_mceliece/pqclean_mceliece6960119_avx/consts.S index e4abaf6185..9880cbf94a 100644 --- a/src/kem/classic_mceliece/pqclean_mceliece6960119_avx/consts.S +++ b/src/kem/classic_mceliece/pqclean_mceliece6960119_avx/consts.S @@ -16,6 +16,19 @@ .globl PQCLEAN_MCELIECE6960119_AVX_MASK5_0 .globl PQCLEAN_MCELIECE6960119_AVX_MASK5_1 +.hidden PQCLEAN_MCELIECE6960119_AVX_MASK0_0 +.hidden PQCLEAN_MCELIECE6960119_AVX_MASK0_1 +.hidden PQCLEAN_MCELIECE6960119_AVX_MASK1_0 +.hidden PQCLEAN_MCELIECE6960119_AVX_MASK1_1 +.hidden PQCLEAN_MCELIECE6960119_AVX_MASK2_0 +.hidden PQCLEAN_MCELIECE6960119_AVX_MASK2_1 +.hidden PQCLEAN_MCELIECE6960119_AVX_MASK3_0 +.hidden PQCLEAN_MCELIECE6960119_AVX_MASK3_1 +.hidden PQCLEAN_MCELIECE6960119_AVX_MASK4_0 +.hidden PQCLEAN_MCELIECE6960119_AVX_MASK4_1 +.hidden PQCLEAN_MCELIECE6960119_AVX_MASK5_0 +.hidden PQCLEAN_MCELIECE6960119_AVX_MASK5_1 + .p2align 5 PQCLEAN_MCELIECE6960119_AVX_MASK0_0: .quad 0x5555555555555555, 0x5555555555555555, 0x5555555555555555, 0x5555555555555555 diff --git a/src/kem/classic_mceliece/pqclean_mceliece6960119f_avx/consts.S b/src/kem/classic_mceliece/pqclean_mceliece6960119f_avx/consts.S index a3096c1f0b..ef2ee0ff73 100644 --- a/src/kem/classic_mceliece/pqclean_mceliece6960119f_avx/consts.S +++ b/src/kem/classic_mceliece/pqclean_mceliece6960119f_avx/consts.S @@ -16,6 +16,19 @@ .globl PQCLEAN_MCELIECE6960119F_AVX_MASK5_0 .globl PQCLEAN_MCELIECE6960119F_AVX_MASK5_1 +.hidden PQCLEAN_MCELIECE6960119F_AVX_MASK0_0 +.hidden PQCLEAN_MCELIECE6960119F_AVX_MASK0_1 +.hidden PQCLEAN_MCELIECE6960119F_AVX_MASK1_0 +.hidden PQCLEAN_MCELIECE6960119F_AVX_MASK1_1 +.hidden PQCLEAN_MCELIECE6960119F_AVX_MASK2_0 +.hidden PQCLEAN_MCELIECE6960119F_AVX_MASK2_1 +.hidden PQCLEAN_MCELIECE6960119F_AVX_MASK3_0 +.hidden PQCLEAN_MCELIECE6960119F_AVX_MASK3_1 +.hidden PQCLEAN_MCELIECE6960119F_AVX_MASK4_0 +.hidden PQCLEAN_MCELIECE6960119F_AVX_MASK4_1 +.hidden PQCLEAN_MCELIECE6960119F_AVX_MASK5_0 +.hidden PQCLEAN_MCELIECE6960119F_AVX_MASK5_1 + .p2align 5 PQCLEAN_MCELIECE6960119F_AVX_MASK0_0: .quad 0x5555555555555555, 0x5555555555555555, 0x5555555555555555, 0x5555555555555555 diff --git a/src/kem/classic_mceliece/pqclean_mceliece8192128_avx/consts.S b/src/kem/classic_mceliece/pqclean_mceliece8192128_avx/consts.S index e34172eab8..cdf5cbcde4 100644 --- a/src/kem/classic_mceliece/pqclean_mceliece8192128_avx/consts.S +++ b/src/kem/classic_mceliece/pqclean_mceliece8192128_avx/consts.S @@ -16,6 +16,19 @@ .globl PQCLEAN_MCELIECE8192128_AVX_MASK5_0 .globl PQCLEAN_MCELIECE8192128_AVX_MASK5_1 +.hidden PQCLEAN_MCELIECE8192128_AVX_MASK0_0 +.hidden PQCLEAN_MCELIECE8192128_AVX_MASK0_1 +.hidden PQCLEAN_MCELIECE8192128_AVX_MASK1_0 +.hidden PQCLEAN_MCELIECE8192128_AVX_MASK1_1 +.hidden PQCLEAN_MCELIECE8192128_AVX_MASK2_0 +.hidden PQCLEAN_MCELIECE8192128_AVX_MASK2_1 +.hidden PQCLEAN_MCELIECE8192128_AVX_MASK3_0 +.hidden PQCLEAN_MCELIECE8192128_AVX_MASK3_1 +.hidden PQCLEAN_MCELIECE8192128_AVX_MASK4_0 +.hidden PQCLEAN_MCELIECE8192128_AVX_MASK4_1 +.hidden PQCLEAN_MCELIECE8192128_AVX_MASK5_0 +.hidden PQCLEAN_MCELIECE8192128_AVX_MASK5_1 + .p2align 5 PQCLEAN_MCELIECE8192128_AVX_MASK0_0: .quad 0x5555555555555555, 0x5555555555555555, 0x5555555555555555, 0x5555555555555555 diff --git a/src/kem/classic_mceliece/pqclean_mceliece8192128f_avx/consts.S b/src/kem/classic_mceliece/pqclean_mceliece8192128f_avx/consts.S index 57ba3d8b6e..b495465a8a 100644 --- a/src/kem/classic_mceliece/pqclean_mceliece8192128f_avx/consts.S +++ b/src/kem/classic_mceliece/pqclean_mceliece8192128f_avx/consts.S @@ -16,6 +16,19 @@ .globl PQCLEAN_MCELIECE8192128F_AVX_MASK5_0 .globl PQCLEAN_MCELIECE8192128F_AVX_MASK5_1 +.hidden PQCLEAN_MCELIECE8192128F_AVX_MASK0_0 +.hidden PQCLEAN_MCELIECE8192128F_AVX_MASK0_1 +.hidden PQCLEAN_MCELIECE8192128F_AVX_MASK1_0 +.hidden PQCLEAN_MCELIECE8192128F_AVX_MASK1_1 +.hidden PQCLEAN_MCELIECE8192128F_AVX_MASK2_0 +.hidden PQCLEAN_MCELIECE8192128F_AVX_MASK2_1 +.hidden PQCLEAN_MCELIECE8192128F_AVX_MASK3_0 +.hidden PQCLEAN_MCELIECE8192128F_AVX_MASK3_1 +.hidden PQCLEAN_MCELIECE8192128F_AVX_MASK4_0 +.hidden PQCLEAN_MCELIECE8192128F_AVX_MASK4_1 +.hidden PQCLEAN_MCELIECE8192128F_AVX_MASK5_0 +.hidden PQCLEAN_MCELIECE8192128F_AVX_MASK5_1 + .p2align 5 PQCLEAN_MCELIECE8192128F_AVX_MASK0_0: .quad 0x5555555555555555, 0x5555555555555555, 0x5555555555555555, 0x5555555555555555