Implementation notes: amd64, titan0, crypto_kem/ntskem1264
Computer: titan0
Microarchitecture: amd64; Haswell+AES (306c3)
Architecture: amd64
CPU ID: GenuineIntel-000306c3-bfebfbff
SUPERCOP version: 20240808
Operation: crypto_kem
Primitive: ntskem1264
Time | Object size | Test size | Implementation | Compiler | Benchmark date | SUPERCOP version |
476641 | 103688 6228 16 | 124015 7100 1792 | T:avx2 | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
499586 | 66222 6228 16 | 84719 7100 1792 | T:avx2 | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
509188 | 64646 6228 16 | 82639 7100 1792 | T:avx2 | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
518632 | 97643 6228 16 | 118498 7140 1728 | T:avx2 | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
530962 | 160732 6228 16 | 180970 7140 1728 | T:avx2 | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
586280 | 62313 6228 16 | 80796 7132 1824 | T:avx2 | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
608891 | 61511 6228 16 | 78534 7092 1760 | T:avx2 | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
617888 | 141743 6228 16 | 163650 7140 1728 | T:opt | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
627270 | 84887 6228 16 | 102738 7140 1728 | T:avx2 | clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
633260 | 92284 6228 16 | 113194 7140 1728 | T:sse2 | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
634806 | 155921 6228 16 | 176242 7140 1728 | T:sse2 | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
686144 | 92837 6228 16 | 114847 7100 1792 | T:opt | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
698354 | 57912 6228 16 | 76396 7132 1824 | T:sse2 | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
703121 | 54450 6228 16 | 74615 7100 1792 | T:opt | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
739602 | 91284 6228 16 | 113746 7140 1728 | T:opt | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
754442 | 53426 6228 16 | 73356 7132 1824 | T:opt | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
755676 | 80081 6228 16 | 97978 7140 1728 | T:sse2 | clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
759366 | 150971 6228 16 | 171130 7140 1728 | T:sse2 | clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
774640 | 145497 6228 16 | 167010 7140 1728 | T:opt | clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
783476 | 52655 6228 16 | 72343 7100 1792 | T:opt | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
838076 | 50429 6228 16 | 68982 7092 1760 | T:opt | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
864420 | 75587 6228 16 | 95010 7140 1728 | T:opt | clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
6294240 | 52710 76 16 | 75458 980 1728 | T:ref | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
6422969 | 58332 76 16 | 81170 980 1728 | T:ref | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
6458699 | 54666 76 16 | 76823 924 1792 | T:ref | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
6514473 | 38066 76 16 | 59986 980 1728 | T:ref | clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
7144415 | 25395 76 16 | 45559 924 1792 | T:ref | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
7206042 | 22603 76 16 | 42708 972 1824 | T:ref | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
7219432 | 29161 76 16 | 48562 980 1728 | T:ref | clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
7789819 | 23039 76 16 | 42687 924 1792 | T:ref | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
8188761 | 20305 76 16 | 38822 916 1760 | T:ref | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240720 | 20240716 |
Compiler output
bitslice_fft_256.c: bitslice_fft_256.c:87:25: error: always_inline function '_mm256_set_epi64x' requires target feature 'avx', but would be inlined into function 'bitslice_butterflies12_256' that is compiled without support for 'avx'
bitslice_fft_256.c: out[i][b] = _mm256_set_epi64x(-((in[0][b] >> reversal[4*i+3]) & 1),
bitslice_fft_256.c: ^
bitslice_fft_256.c: bitslice_fft_256.c:87:25: error: AVX vector return of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
bitslice_fft_256.c: bitslice_fft_256.c:99:22: error: '__builtin_ia32_pshufd256' needs target feature avx2
bitslice_fft_256.c: vb = _mm256_shuffle_epi32(tmp[b], _MM_SHUFFLE(3, 2, 3, 2));
bitslice_fft_256.c: ^
bitslice_fft_256.c: /usr/lib/llvm-14/lib/clang/14.0.0/include/avx2intrin.h:470:13: note: expanded from macro '_mm256_shuffle_epi32'
bitslice_fft_256.c: ((__m256i)__builtin_ia32_pshufd256((__v8si)(__m256i)(a), (int)(imm)))
bitslice_fft_256.c: ^
bitslice_fft_256.c: bitslice_fft_256.c:100:22: error: '__builtin_ia32_pslldqi256_byteshift' needs target feature avx2
bitslice_fft_256.c: va = _mm256_slli_si256(out[k][b], 8);
bitslice_fft_256.c: ^
bitslice_fft_256.c: /usr/lib/llvm-14/lib/clang/14.0.0/include/avx2intrin.h:497:13: note: expanded from macro '_mm256_slli_si256'
bitslice_fft_256.c: ((__m256i)__builtin_ia32_pslldqi256_byteshift((__v4di)(__m256i)(a), (int)(imm)))
bitslice_fft_256.c: ^
bitslice_fft_256.c: bitslice_fft_256.c:101:22: error: always_inline function '_mm256_xor_si256' requires target feature 'avx2', but would be inlined into function 'bitslice_butterflies12_256' that is compiled without support for 'avx2'
bitslice_fft_256.c: vb = _mm256_xor_si256(va, vb);
bitslice_fft_256.c: ^
bitslice_fft_256.c: bitslice_fft_256.c:101:22: error: AVX vector argument of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
bitslice_fft_256.c: bitslice_fft_256.c:102:29: error: always_inline function '_mm256_xor_si256' requires target feature 'avx2', but would be inlined into function 'bitslice_butterflies12_256' that is compiled without support for 'avx2'
bitslice_fft_256.c: out[k][b] = _mm256_xor_si256(out[k][b], vb);
bitslice_fft_256.c: ^
bitslice_fft_256.c: bitslice_fft_256.c:102:29: error: AVX vector argument of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
bitslice_fft_256.c: bitslice_fft_256.c:112:22: error: always_inline function '_mm256_set_epi64x' requires target feature 'avx', but would be inlined into function 'bitslice_butterflies12_256' that is compiled without support for 'avx'
bitslice_fft_256.c: ...
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:avx2 | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Compiler output
m4r.c: m4r.c: In function 'zero_vector':
m4r.c: m4r.c:85:20: error: incompatible types when assigning to type 'vector' {aka '__m128i'} from type '__m256i'
m4r.c: 85 | *vec_ptr = _mm256_setzero_si256(); vec_ptr++;
m4r.c: | ^~~~~~~~~~~~~~~~~~~~
m4r.c: m4r.c:86:20: error: incompatible types when assigning to type 'vector' {aka '__m128i'} from type '__m256i'
m4r.c: 86 | *vec_ptr = _mm256_setzero_si256(); vec_ptr++;
m4r.c: | ^~~~~~~~~~~~~~~~~~~~
m4r.c: m4r.c: In function '_m4ri_make_table_rev':
m4r.c: m4r.c:147:12: error: incompatible types when assigning to type 'vector' {aka '__m128i'} from type '__m256i'
m4r.c: 147 | mask = _mm256_set_epi64x(v[3], v[2], v[1], v[0]);
m4r.c: | ^~~~~~~~~~~~~~~~~
m4r.c: m4r.c:196:46: error: incompatible type for argument 1 of '_mm256_and_si256'
m4r.c: 196 | S_ptr[nblocks-1] = _mm256_and_si256(S_ptr[nblocks-1], mask);
m4r.c: | ~~~~~^~~~~~~~~~~
m4r.c: | |
m4r.c: | vector {aka __m128i}
m4r.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/immintrin.h:47,
m4r.c: from bits.h:28,
m4r.c: from m4r.c:26:
m4r.c: /usr/lib/gcc/x86_64-linux-gnu/11/include/avx2intrin.h:179:27: note: expected '__m256i' but argument is of type 'vector' {aka '__m128i'}
m4r.c: 179 | _mm256_and_si256 (__m256i __A, __m256i __B)
m4r.c: | ~~~~~~~~^~~
m4r.c: m4r.c:196:59: error: incompatible type for argument 2 of '_mm256_and_si256'
m4r.c: 196 | S_ptr[nblocks-1] = _mm256_and_si256(S_ptr[nblocks-1], mask);
m4r.c: | ^~~~
m4r.c: ...
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:sse2 | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:sse2 | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:sse2 | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:sse2 | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Namespace violations
bitslice_bma_128.o bitslice_bma T
bitslice_fft_256.o _twist_factors12_64_64 R
bitslice_fft_256.o a64_consts_256 D
bitslice_fft_256.o bitslice_fft12_256 T
bitslice_fft_256.o twiddle_factors R
bitslice_fft_256.o twist_factors D
ff.o bitslice_mul12_128 T
ff.o bitslice_mul12_256 T
ff.o bitslice_mul12_64 T
ff.o ff_add_m T
ff.o ff_create T
ff.o ff_inv_12 T
ff.o ff_mul_12 T
ff.o ff_reduce_12 T
ff.o ff_release T
ff.o ff_sqr_12 T
ff.o vector_ff_inv_12 T
ff.o vector_ff_mul_12 T
ff.o vector_ff_pow16_12 T
ff.o vector_ff_pow4_12 T
ff.o vector_ff_pow8_12 T
ff.o vector_ff_sqr_12 T
ff.o vector_ff_sqr_inv_12 T
ff.o vector_ff_transpose_xor_12 T
keccak.o shake_256 T
m4r.o _gray_codes_lut D
m4r.o _gray_codes_lut2 R
m4r.o _gray_codes_lut3 R
m4r.o _gray_codes_lut4 R
m4r.o _gray_codes_lut5 R
m4r.o _gray_codes_lut6 R
m4r.o _gray_codes_lut7 R
m4r.o _gray_codes_lut8 R
m4r.o _m4ri_gauss_submatrix T
m4r.o _m4ri_make_table_rev T
m4r.o m4r_rref T
matrix_ff2.o alloc_matrix_ff2 T
matrix_ff2.o calloc_matrix_ff2 T
matrix_ff2.o clone_matrix_ff2 T
matrix_ff2.o column_swap_matrix_ff2 T
matrix_ff2.o free_matrix_ff2 T
matrix_ff2.o is_equal_matrix_ff2 T
matrix_ff2.o reduce_row_echelon_matrix_ff2 T
matrix_ff2.o zero_matrix_ff2 T
nts_kem.o compute_syndrome T
nts_kem.o correct_error_and_recover_ke T
nts_kem.o create_matrix_G T
nts_kem.o create_random_goppa_polynomial T
nts_kem.o deserialise_private_key T
nts_kem.o fisher_yates_shuffle T
nts_kem.o is_valid_goppa_polynomial T
nts_kem.o load_input_ciphertext T
nts_kem.o nts_kem_ciphertext_size T
nts_kem.o nts_kem_create T
nts_kem.o nts_kem_decapsulate T
nts_kem.o nts_kem_encapsulate T
nts_kem.o nts_kem_init_from_private_key T
nts_kem.o nts_kem_key_size T
nts_kem.o nts_kem_release T
nts_kem.o pack_buffer T
nts_kem.o random_vector T
nts_kem.o serialise_private_key T
nts_kem.o serialise_public_key T
nts_kem.o unpack_buffer T
polynomial.o clone_poly T
polynomial.o create_random_poly T
polynomial.o evaluate_poly T
polynomial.o formal_derivative_poly T
polynomial.o free_poly T
polynomial.o gcd_poly T
polynomial.o init_poly T
polynomial.o is_equal_poly T
polynomial.o modulo_reduce_poly T
polynomial.o poly_from_roots T
polynomial.o update_poly_degree T
polynomial.o zero_poly T
random.o random_uint16_bounded T
random.o randombit T
utils.o cpucycles T
utils.o cpucycles_persecond T
vector_utils.o vector_ff_or_256 T
vector_utils.o vector_ff_or_64 T
vector_utils.o vector_load_1d_256 T
vector_utils.o vector_load_1d_64 T
vector_utils.o vector_load_2d_128 T
vector_utils.o vector_load_2d_256 T
vector_utils.o vector_load_2d_64 T
vector_utils.o vector_store_1d_256 T
vector_utils.o vector_store_1d_64 T
vector_utils.o vector_store_2d_256 T
vector_utils.o vector_store_2d_64 T
Number of similar (implementation,compiler) pairs: 8, namely:
Implementation | Compiler |
T:avx2 | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:avx2 | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:avx2 | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:avx2 | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:avx2 | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:avx2 | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:avx2 | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:avx2 | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Namespace violations
bitslice_bma_64.o bitslice_bma T
bitslice_fft_64.o _twist_factors12_64_64 R
bitslice_fft_64.o a64_consts_64 D
bitslice_fft_64.o bitslice_fft12_64 T
bitslice_fft_64.o twiddle_factors R
bitslice_fft_64.o twist_factors D
ff.o bitslice_mul12_64 T
ff.o ff_add_m T
ff.o ff_create T
ff.o ff_inv_12 T
ff.o ff_mul_12 T
ff.o ff_reduce_12 T
ff.o ff_release T
ff.o ff_sqr_12 T
ff.o vector_ff_inv_12 T
ff.o vector_ff_mul_12 T
ff.o vector_ff_pow16_12 T
ff.o vector_ff_pow4_12 T
ff.o vector_ff_pow8_12 T
ff.o vector_ff_sqr_12 T
ff.o vector_ff_sqr_inv_12 T
ff.o vector_ff_transpose_xor_12 T
keccak.o shake_256 T
m4r.o _gray_codes_lut D
m4r.o _gray_codes_lut2 R
m4r.o _gray_codes_lut3 R
m4r.o _gray_codes_lut4 R
m4r.o _gray_codes_lut5 R
m4r.o _gray_codes_lut6 R
m4r.o _gray_codes_lut7 R
m4r.o _gray_codes_lut8 R
m4r.o _m4ri_gauss_submatrix T
m4r.o _m4ri_make_table_rev T
m4r.o m4r_rref T
matrix_ff2.o alloc_matrix_ff2 T
matrix_ff2.o calloc_matrix_ff2 T
matrix_ff2.o clone_matrix_ff2 T
matrix_ff2.o column_swap_matrix_ff2 T
matrix_ff2.o free_matrix_ff2 T
matrix_ff2.o is_equal_matrix_ff2 T
matrix_ff2.o reduce_row_echelon_matrix_ff2 T
matrix_ff2.o zero_matrix_ff2 T
nts_kem.o compute_syndrome T
nts_kem.o correct_error_and_recover_ke T
nts_kem.o create_matrix_G T
nts_kem.o create_random_goppa_polynomial T
nts_kem.o deserialise_private_key T
nts_kem.o fisher_yates_shuffle T
nts_kem.o is_valid_goppa_polynomial T
nts_kem.o load_input_ciphertext T
nts_kem.o nts_kem_ciphertext_size T
nts_kem.o nts_kem_create T
nts_kem.o nts_kem_decapsulate T
nts_kem.o nts_kem_encapsulate T
nts_kem.o nts_kem_init_from_private_key T
nts_kem.o nts_kem_key_size T
nts_kem.o nts_kem_release T
nts_kem.o pack_buffer T
nts_kem.o random_vector T
nts_kem.o serialise_private_key T
nts_kem.o serialise_public_key T
nts_kem.o unpack_buffer T
polynomial.o clone_poly T
polynomial.o create_random_poly T
polynomial.o evaluate_poly T
polynomial.o formal_derivative_poly T
polynomial.o free_poly T
polynomial.o gcd_poly T
polynomial.o init_poly T
polynomial.o is_equal_poly T
polynomial.o modulo_reduce_poly T
polynomial.o poly_from_roots T
polynomial.o update_poly_degree T
polynomial.o zero_poly T
random.o random_uint16_bounded T
random.o randombit T
vector_utils.o vector_ff_or_64 T
vector_utils.o vector_load_1d_64 T
vector_utils.o vector_load_2d_64 T
vector_utils.o vector_store_1d_64 T
vector_utils.o vector_store_2d_64 T
Number of similar (implementation,compiler) pairs: 9, namely:
Implementation | Compiler |
T:opt | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:opt | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:opt | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:opt | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:opt | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:opt | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:opt | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:opt | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:opt | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Namespace violations
additive_fft.o _additive_fft_construct_basis T
additive_fft.o _additive_fft_core T
additive_fft.o _additive_fft_ff_value T
additive_fft.o additive_fft T
additive_fft.o ff_poly_taylor_expansion T
berlekamp_massey.o berlekamp_massey T
ff.o ff_add_m T
ff.o ff_create T
ff.o ff_inv_12 T
ff.o ff_mul_12 T
ff.o ff_reduce_12 T
ff.o ff_release T
ff.o ff_sqr_12 T
keccak.o Keccak T
keccak.o KeccakF1600_StatePermute T
keccak.o LFSR86540 T
keccak.o sha3_256 T
keccak.o sha3_384 T
keccak.o sha3_512 T
keccak.o shake_256 T
m4r.o _gray_codes_lut D
m4r.o _gray_codes_lut2 R
m4r.o _gray_codes_lut3 R
m4r.o _gray_codes_lut4 R
m4r.o _gray_codes_lut5 R
m4r.o _gray_codes_lut6 R
m4r.o _gray_codes_lut7 R
m4r.o _gray_codes_lut8 R
m4r.o _m4ri_gauss_submatrix T
m4r.o _m4ri_make_table_rev T
m4r.o m4r_rref T
matrix_ff2.o alloc_matrix_ff2 T
matrix_ff2.o calloc_matrix_ff2 T
matrix_ff2.o clone_matrix_ff2 T
matrix_ff2.o column_swap_matrix_ff2 T
matrix_ff2.o free_matrix_ff2 T
matrix_ff2.o is_equal_matrix_ff2 T
matrix_ff2.o reduce_row_echelon_matrix_ff2 T
matrix_ff2.o zero_matrix_ff2 T
nts_kem.o compute_syndrome T
nts_kem.o correct_error_and_recover_ke T
nts_kem.o create_matrix_G T
nts_kem.o create_random_goppa_polynomial T
nts_kem.o deserialise_private_key T
nts_kem.o fisher_yates_shuffle T
nts_kem.o is_valid_goppa_polynomial T
nts_kem.o nts_kem_ciphertext_size T
nts_kem.o nts_kem_create T
nts_kem.o nts_kem_decapsulate T
nts_kem.o nts_kem_encapsulate T
nts_kem.o nts_kem_init_from_private_key T
nts_kem.o nts_kem_key_size T
nts_kem.o nts_kem_release T
nts_kem.o pack_buffer T
nts_kem.o random_vector T
nts_kem.o serialise_private_key T
nts_kem.o serialise_public_key T
nts_kem.o unpack_buffer T
polynomial.o clone_poly T
polynomial.o create_random_poly T
polynomial.o evaluate_poly T
polynomial.o formal_derivative_poly T
polynomial.o free_poly T
polynomial.o gcd_poly T
polynomial.o init_poly T
polynomial.o is_equal_poly T
polynomial.o modulo_reduce_poly T
polynomial.o poly_from_roots T
polynomial.o update_poly_degree T
polynomial.o zero_poly T
random.o random_uint16_bounded T
random.o randombit T
stack.o stack_create T
stack.o stack_free T
stack.o stack_pop T
stack.o stack_push T
stack.o stack_size T
Number of similar (implementation,compiler) pairs: 9, namely:
Implementation | Compiler |
T:ref | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:ref | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:ref | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:ref | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Namespace violations
bitslice_bma_128.o bitslice_bma T
bitslice_fft_128.o _twist_factors12_64_64 R
bitslice_fft_128.o a64_consts_128 D
bitslice_fft_128.o bitslice_fft12_128 T
bitslice_fft_128.o twiddle_factors R
bitslice_fft_128.o twist_factors D
ff.o bitslice_mul12_128 T
ff.o bitslice_mul12_64 T
ff.o ff_add_m T
ff.o ff_create T
ff.o ff_inv_12 T
ff.o ff_mul_12 T
ff.o ff_reduce_12 T
ff.o ff_release T
ff.o ff_sqr_12 T
ff.o vector_ff_inv_12 T
ff.o vector_ff_mul_12 T
ff.o vector_ff_pow16_12 T
ff.o vector_ff_pow4_12 T
ff.o vector_ff_pow8_12 T
ff.o vector_ff_sqr_12 T
ff.o vector_ff_sqr_inv_12 T
ff.o vector_ff_transpose_xor_12 T
keccak.o shake_256 T
m4r.o _gray_codes_lut D
m4r.o _gray_codes_lut2 R
m4r.o _gray_codes_lut3 R
m4r.o _gray_codes_lut4 R
m4r.o _gray_codes_lut5 R
m4r.o _gray_codes_lut6 R
m4r.o _gray_codes_lut7 R
m4r.o _gray_codes_lut8 R
m4r.o _m4ri_gauss_submatrix T
m4r.o _m4ri_make_table_rev T
m4r.o m4r_rref T
matrix_ff2.o alloc_matrix_ff2 T
matrix_ff2.o calloc_matrix_ff2 T
matrix_ff2.o clone_matrix_ff2 T
matrix_ff2.o column_swap_matrix_ff2 T
matrix_ff2.o free_matrix_ff2 T
matrix_ff2.o is_equal_matrix_ff2 T
matrix_ff2.o reduce_row_echelon_matrix_ff2 T
matrix_ff2.o zero_matrix_ff2 T
nts_kem.o compute_syndrome T
nts_kem.o correct_error_and_recover_ke T
nts_kem.o create_matrix_G T
nts_kem.o create_random_goppa_polynomial T
nts_kem.o deserialise_private_key T
nts_kem.o fisher_yates_shuffle T
nts_kem.o is_valid_goppa_polynomial T
nts_kem.o load_input_ciphertext T
nts_kem.o nts_kem_ciphertext_size T
nts_kem.o nts_kem_create T
nts_kem.o nts_kem_decapsulate T
nts_kem.o nts_kem_encapsulate T
nts_kem.o nts_kem_init_from_private_key T
nts_kem.o nts_kem_key_size T
nts_kem.o nts_kem_release T
nts_kem.o pack_buffer T
nts_kem.o random_vector T
nts_kem.o serialise_private_key T
nts_kem.o serialise_public_key T
nts_kem.o unpack_buffer T
polynomial.o clone_poly T
polynomial.o create_random_poly T
polynomial.o evaluate_poly T
polynomial.o formal_derivative_poly T
polynomial.o free_poly T
polynomial.o gcd_poly T
polynomial.o init_poly T
polynomial.o is_equal_poly T
polynomial.o modulo_reduce_poly T
polynomial.o poly_from_roots T
polynomial.o update_poly_degree T
polynomial.o zero_poly T
random.o random_uint16_bounded T
random.o randombit T
utils.o cpucycles T
utils.o cpucycles_persecond T
vector_utils.o vector_ff_or_128 T
vector_utils.o vector_ff_or_64 T
vector_utils.o vector_load_1d_128 T
vector_utils.o vector_load_1d_64 T
vector_utils.o vector_load_2d_128 T
vector_utils.o vector_load_2d_64 T
vector_utils.o vector_store_1d_128 T
vector_utils.o vector_store_1d_64 T
vector_utils.o vector_store_2d_128 T
vector_utils.o vector_store_2d_64 T
Number of similar (implementation,compiler) pairs: 5, namely:
Implementation | Compiler |
T:sse2 | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:sse2 | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:sse2 | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:sse2 | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:sse2 | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |