Implementation notes: amd64, latour, crypto_sign/rainbow1aclassic363232

Computer: latour
Architecture: amd64
CPU ID: GenuineIntel-000006fb-bfebfbff
SUPERCOP version: 20200618
Operation: crypto_sign
Primitive: rainbow1aclassic363232
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
368982120351 8 0138570 904 1656ssse3clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020061920200618
380889104348 8 0121634 904 1656ssse3clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020061920200618
403569104348 8 0121634 904 1656ssse3clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020061920200618
41621484586 8 0100888 896 1656ssse3clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020061920200618
420561106919 8 0126784 872 1688ssse3gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020061920200618
43271193277 8 0111336 872 1688ssse3gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020061920200618
44109989839 8 0107496 872 1688ssse3gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020061920200618
64711850941 8 068256 864 1656ssse3gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020061920200618
707742113358 0 0129314 904 1656refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020061920200618
709848124987 0 0141738 904 1656refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020061920200618
740403166276 0 0183906 896 1656amd64clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020061920200618
753660113358 0 0129314 904 1656refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020061920200618
754389126206 0 0143082 904 1656refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020061920200618
761148165057 0 0182562 896 1656amd64clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020061920200618
766413148954 0 0165658 896 1656amd64clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020061920200618
771993148954 0 0165658 896 1656amd64clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020061920200618
77279468525 0 085320 888 1656amd64clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020061920200618
846792103077 0 0121032 864 1688amd64gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020061920200618
856098101601 0 0119304 864 1688amd64gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020061920200618
110262654136 0 070992 896 1656refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020061920200618
119173560345 0 078384 872 1688refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020061920200618
126052259350 0 077136 872 1688refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020061920200618
140063431539 0 048968 856 1656amd64gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020061920200618
197898328197 0 045488 864 1656refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020061920200618

Test failure

Implementation: crypto_sign/rainbow1aclassic363232/amd64
Compiler: gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE
error 111

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE amd64 ref

Compiler output

Implementation: crypto_sign/rainbow1aclassic363232/avx2
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
blas_comm.c: In file included from blas_comm.c:6:
blas_comm.c: In file included from ./blas.h:23:
blas_comm.c: ./blas_avx2.h:88:17: error: always_inline function '_mm256_loadu_si256' requires target feature 'xsave', but would be inlined into function 'gf256v_add_avx2' that is compiled without support for 'xsave'
blas_comm.c: __m256i inp = _mm256_loadu_si256( (__m256i*) (a+i*32) );
blas_comm.c: ^
blas_comm.c: ./blas_avx2.h:89:17: error: always_inline function '_mm256_loadu_si256' requires target feature 'xsave', but would be inlined into function 'gf256v_add_avx2' that is compiled without support for 'xsave'
blas_comm.c: __m256i out = _mm256_loadu_si256( (__m256i*) (accu_b+i*32) );
blas_comm.c: ^
blas_comm.c: ./blas_avx2.h:91:3: error: always_inline function '_mm256_storeu_si256' requires target feature 'xsave', but would be inlined into function 'gf256v_add_avx2' that is compiled without support for 'xsave'
blas_comm.c: _mm256_storeu_si256( (__m256i*) (accu_b+i*32) , out );
blas_comm.c: ^
blas_comm.c: ./blas_avx2.h:170:18: error: always_inline function '_mm256_load_si256' requires target feature 'xsave', but would be inlined into function 'gf256v_madd_avx2' that is compiled without support for 'xsave'
blas_comm.c: __m256i m_tab = _mm256_load_si256( (__m256i*) (__gf256_mul + 32*b) );
blas_comm.c: ^
blas_comm.c: ./blas_avx2.h:171:15: error: '__builtin_ia32_permti256' needs target feature avx2
blas_comm.c: __m256i ml = _mm256_permute2x128_si256( m_tab , m_tab , 0 );
blas_comm.c: ^
blas_comm.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/avx2intrin.h:882:12: note: expanded from macro '_mm256_permute2x128_si256'
blas_comm.c: (__m256i)__builtin_ia32_permti256((__m256i)(V1), (__m256i)(V2), (M)); })
blas_comm.c: ^
blas_comm.c: In file included from blas_comm.c:6:
blas_comm.c: In file included from ./blas.h:23:
blas_comm.c: ./blas_avx2.h:172:15: error: '__builtin_ia32_permti256' needs target feature avx2
blas_comm.c: __m256i mh = _mm256_permute2x128_si256( m_tab , m_tab , 0x11 );
blas_comm.c: ^
blas_comm.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE avx2
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE avx2
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE avx2
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE avx2

Compiler output

Implementation: crypto_sign/rainbow1aclassic363232/avx2
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
blas_comm.c: In file included from blas_comm.c:6:
blas_comm.c: In file included from ./blas.h:23:
blas_comm.c: ./blas_avx2.h:88:17: error: always_inline function '_mm256_loadu_si256' requires target feature 'sse4.2', but would be inlined into function 'gf256v_add_avx2' that is compiled without support for 'sse4.2'
blas_comm.c: __m256i inp = _mm256_loadu_si256( (__m256i*) (a+i*32) );
blas_comm.c: ^
blas_comm.c: ./blas_avx2.h:89:17: error: always_inline function '_mm256_loadu_si256' requires target feature 'sse4.2', but would be inlined into function 'gf256v_add_avx2' that is compiled without support for 'sse4.2'
blas_comm.c: __m256i out = _mm256_loadu_si256( (__m256i*) (accu_b+i*32) );
blas_comm.c: ^
blas_comm.c: ./blas_avx2.h:91:3: error: always_inline function '_mm256_storeu_si256' requires target feature 'sse4.2', but would be inlined into function 'gf256v_add_avx2' that is compiled without support for 'sse4.2'
blas_comm.c: _mm256_storeu_si256( (__m256i*) (accu_b+i*32) , out );
blas_comm.c: ^
blas_comm.c: ./blas_avx2.h:170:18: error: always_inline function '_mm256_load_si256' requires target feature 'sse4.2', but would be inlined into function 'gf256v_madd_avx2' that is compiled without support for 'sse4.2'
blas_comm.c: __m256i m_tab = _mm256_load_si256( (__m256i*) (__gf256_mul + 32*b) );
blas_comm.c: ^
blas_comm.c: ./blas_avx2.h:171:15: error: '__builtin_ia32_permti256' needs target feature avx2
blas_comm.c: __m256i ml = _mm256_permute2x128_si256( m_tab , m_tab , 0 );
blas_comm.c: ^
blas_comm.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/avx2intrin.h:882:12: note: expanded from macro '_mm256_permute2x128_si256'
blas_comm.c: (__m256i)__builtin_ia32_permti256((__m256i)(V1), (__m256i)(V2), (M)); })
blas_comm.c: ^
blas_comm.c: In file included from blas_comm.c:6:
blas_comm.c: In file included from ./blas.h:23:
blas_comm.c: ./blas_avx2.h:172:15: error: '__builtin_ia32_permti256' needs target feature avx2
blas_comm.c: __m256i mh = _mm256_permute2x128_si256( m_tab , m_tab , 0x11 );
blas_comm.c: ^
blas_comm.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE avx2

Compiler output

Implementation: crypto_sign/rainbow1aclassic363232/ssse3
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
blas_comm.c: In file included from blas_comm.c:6:
blas_comm.c: In file included from ./blas.h:23:
blas_comm.c: In file included from ./blas_sse.h:16:
blas_comm.c: ./gf16_sse.h:34:9: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'linear_transform_8x8_128b' that is compiled without support for 'ssse3'
blas_comm.c: return _mm_shuffle_epi8(tab_l,v&mask_f)^_mm_shuffle_epi8(tab_h,_mm_srli_epi16(v,4)&mask_f);
blas_comm.c: ^
blas_comm.c: ./gf16_sse.h:34:42: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'linear_transform_8x8_128b' that is compiled without support for 'ssse3'
blas_comm.c: return _mm_shuffle_epi8(tab_l,v&mask_f)^_mm_shuffle_epi8(tab_h,_mm_srli_epi16(v,4)&mask_f);
blas_comm.c: ^
blas_comm.c: fatal error: error in backend: Cannot select: 0x27ab090: v16i8 = X86ISD::PSHUFB 0x27deaf0, 0x27ab1c0
blas_comm.c: 0x27deaf0: v16i8,ch = CopyFromReg 0x26b9fc0, Register:v16i8 %vreg34
blas_comm.c: 0x27ddfa0: v16i8 = Register %vreg34
blas_comm.c: 0x27ab1c0: v16i8 = bitcast 0x27aabd0
blas_comm.c: 0x27aabd0: v2i64 = and 0x27df930, 0x281c120
blas_comm.c: 0x27df930: v2i64 = bitcast 0x281e900
blas_comm.c: 0x281e900: v8i16 = X86ISD::VSRLI 0x281ddb0, Constant:i8<4>
blas_comm.c: 0x281ddb0: v8i16 = bitcast 0x281b110
blas_comm.c: 0x281b110: v2i64,ch = load<LD16[%73](align=1)(tbaa=<0x25fdde8>)> 0x26b9fc0, 0x281ad80, undef:i64
blas_comm.c: 0x281ad80: i64,ch = CopyFromReg 0x26b9fc0, Register:i64 %vreg38
blas_comm.c: 0x27de330: i64 = Register %vreg38
blas_comm.c: 0x27df5a0: i64 = undef
blas_comm.c: 0x27df800: i8 = Constant<4>
blas_comm.c: 0x281c120: v2i64,ch = load<LD16[ConstantPool]> 0x26b9fc0, 0x27de460, undef:i64
blas_comm.c: 0x27de460: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<<2 x i64> <i64 1085102592571150095, i64 1085102592571150095>> 0
blas_comm.c: 0x27aaf60: i64 = TargetConstantPool<<2 x i64> <i64 1085102592571150095, i64 1085102592571150095>> 0
blas_comm.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ssse3

Compiler output

Implementation: crypto_sign/rainbow1aclassic363232/avx2
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
blas_comm.c: In file included from blas_avx2.h:15:0,
blas_comm.c: from blas.h:23,
blas_comm.c: from blas_comm.c:6:
blas_comm.c: gf16_avx2.h: In function 'linear_transform_8x8_256b':
blas_comm.c: gf16_avx2.h:28:1: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
blas_comm.c: {
blas_comm.c: ^
blas_comm.c: In file included from blas.h:23:0,
blas_comm.c: from blas_comm.c:6:
blas_comm.c: blas_avx2.h: In function 'linearmap_8x8_accu_ymm':
blas_comm.c: blas_avx2.h:63:6: note: The ABI for passing parameters with 32-byte alignment has changed in GCC 4.6
blas_comm.c: void linearmap_8x8_accu_ymm( uint8_t * accu_c , const uint8_t * a , __m256i ml , __m256i mh , __m256i mask , unsigned _num_byte ) {
blas_comm.c: ^
blas_comm.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
blas_comm.c: from blas_avx2.h:10,
blas_comm.c: from blas.h:23,
blas_comm.c: from blas_comm.c:6:
blas_comm.c: gf16_avx2.h: In function 'linear_transform_8x8_256b':
blas_comm.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:588:1: error: inlining failed in call to always_inline '_mm256_shuffle_epi8': target specific option mismatch
blas_comm.c: _mm256_shuffle_epi8 (__m256i __X, __m256i __Y)
blas_comm.c: ^
blas_comm.c: In file included from blas_avx2.h:15:0,
blas_comm.c: from blas.h:23,
blas_comm.c: from blas_comm.c:6:
blas_comm.c: gf16_avx2.h:29:45: error: called from here
blas_comm.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE avx2
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE avx2
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE avx2
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE avx2

Namespace violations

Implementation: crypto_sign/rainbow1aclassic363232/ssse3
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
blas_comm.o gf16mat_gauss_elim T
blas_comm.o gf16mat_inv T
blas_comm.o gf16mat_mul T
blas_comm.o gf16mat_prod T
blas_comm.o gf16mat_solve_linear_eq T
blas_comm.o gf256mat_gauss_elim T
blas_comm.o gf256mat_inv T
blas_comm.o gf256mat_mul T
blas_comm.o gf256mat_prod T
blas_comm.o gf256mat_solve_linear_eq T
blas_comm.o gf256v_is_zero T
blas_comm.o gf256v_polymul T
blas_comm.o gf256v_set_zero T
blas_comm_sse.o gf16mat_gauss_elim_sse T
blas_comm_sse.o gf16mat_prod_16_sse T
blas_comm_sse.o gf16mat_prod_add_multab_sse T
blas_comm_sse.o gf16mat_prod_multab_sse T
blas_comm_sse.o gf16mat_prod_sse T
blas_comm_sse.o gf16mat_solve_linear_eq_sse T
blas_comm_sse.o gf256mat_gauss_elim_sse T
blas_comm_sse.o gf256mat_prod_add_multab_sse T
blas_comm_sse.o gf256mat_prod_add_sse T
blas_comm_sse.o gf256mat_prod_multab_sse T
blas_comm_sse.o gf256mat_prod_sse T
blas_comm_sse.o gf256mat_solve_linear_eq_sse T
gf16.o __gf16_exp R
gf16.o __gf16_inv R
gf16.o __gf16_log R
gf16.o __gf16_mul D
gf16.o __gf16_mulx2 R
gf16.o __gf16_squ R
gf16.o __gf16_squ_sl4 R
gf16.o __gf16_squ_x8 R
gf16.o __gf256_mul R
gf16.o __mask_0x55 R
gf16.o __mask_16 R
gf16.o __mask_low R
parallel_matrix_op.o UpperTrianglize T
parallel_matrix_op.o batch_2trimat_madd_gf16 T
parallel_matrix_op.o batch_2trimat_madd_gf256 T
parallel_matrix_op.o batch_bmatTr_madd_gf16 T
parallel_matrix_op.o batch_bmatTr_madd_gf256 T
parallel_matrix_op.o batch_matTr_madd_gf16 T
parallel_matrix_op.o batch_matTr_madd_gf256 T
parallel_matrix_op.o batch_mat_madd_gf16 T
parallel_matrix_op.o batch_mat_madd_gf256 T
parallel_matrix_op.o batch_quad_recmat_eval_gf16 T
parallel_matrix_op.o batch_quad_recmat_eval_gf256 T
parallel_matrix_op.o batch_quad_trimat_eval_gf16 T
parallel_matrix_op.o batch_quad_trimat_eval_gf256 T
parallel_matrix_op.o batch_trimatTr_madd_gf16 T
parallel_matrix_op.o batch_trimatTr_madd_gf256 T
parallel_matrix_op.o batch_trimat_madd_gf16 T
parallel_matrix_op.o batch_trimat_madd_gf256 T
parallel_matrix_op_sse.o batch_2trimat_madd_multab_gf16_sse T
parallel_matrix_op_sse.o batch_2trimat_madd_multab_gf256_sse T
parallel_matrix_op_sse.o batch_bmatTr_madd_multab_gf16_sse T
parallel_matrix_op_sse.o batch_bmatTr_madd_multab_gf256_sse T
parallel_matrix_op_sse.o batch_matTr_madd_multab_gf16_sse T
parallel_matrix_op_sse.o batch_matTr_madd_multab_gf256_sse T
parallel_matrix_op_sse.o batch_mat_madd_multab_gf16_sse T
parallel_matrix_op_sse.o batch_mat_madd_multab_gf256_sse T
parallel_matrix_op_sse.o batch_quad_trimat_eval_multab_gf16_sse T
parallel_matrix_op_sse.o batch_quad_trimat_eval_multab_gf256_sse T
parallel_matrix_op_sse.o batch_trimatTr_madd_multab_gf16_sse T
parallel_matrix_op_sse.o batch_trimatTr_madd_multab_gf256_sse T
parallel_matrix_op_sse.o batch_trimat_madd_multab_gf16_sse T
parallel_matrix_op_sse.o batch_trimat_madd_multab_gf256_sse T
rainbow_blas.o public_map T
rainbow_keypair.o cpk_to_pk T
rainbow_keypair.o generate_compact_keypair_cyclic T
rainbow_keypair.o generate_keypair T
rainbow_keypair.o generate_keypair_cyclic T
rainbow_keypair.o generate_secretkey T
rainbow_keypair.o generate_secretkey_cyclic T
rainbow_keypair.o rainbow_evaluate_cpk T
rainbow_keypair.o sk_to_pk T
rainbow_keypair_computation.o calculate_F_from_Q T
rainbow_keypair_computation.o calculate_Q_from_F T
rainbow_keypair_computation.o calculate_Q_from_F_cyclic T
rainbow_keypair_computation.o extcpk_to_pk T
rainbow_keypair_computation_simd.o calculate_F_from_Q_simd T
rainbow_keypair_computation_simd.o calculate_Q_from_F_cyclic_simd T
rainbow_keypair_computation_simd.o calculate_Q_from_F_simd T
rainbow_simd.o rainbow_sign T
rainbow_simd.o rainbow_sign_cyclic T
rainbow_simd.o rainbow_verify T
rainbow_simd.o rainbow_verify_cyclic T
rng.o AES256_CTR_DRBG_Update T
rng.o AES256_ECB T
rng.o DRBG_ctx C
rng.o handleErrors T
rng.o randombytes_init T
rng.o randombytes_init_with_state T
rng.o randombytes_with_state T
rng.o seedexpander T
rng.o seedexpander_init T
utils.o byte_fdump T
utils.o byte_fget T
utils.o byte_from_binfile T
utils.o byte_from_file T
utils.o byte_read_file T
utils_hash.o hash_msg T
utils_prng.o prng_gen T
utils_prng.o prng_set T

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ssse3
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ssse3
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ssse3
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ssse3
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE ssse3
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE ssse3
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE ssse3
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE ssse3

Namespace violations

Implementation: crypto_sign/rainbow1aclassic363232/amd64
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
blas_comm.o gf16mat_gauss_elim T
blas_comm.o gf16mat_inv T
blas_comm.o gf16mat_mul T
blas_comm.o gf16mat_prod T
blas_comm.o gf16mat_solve_linear_eq T
blas_comm.o gf256mat_gauss_elim T
blas_comm.o gf256mat_inv T
blas_comm.o gf256mat_mul T
blas_comm.o gf256mat_prod T
blas_comm.o gf256mat_solve_linear_eq T
blas_comm.o gf256v_is_zero T
blas_comm.o gf256v_polymul T
blas_comm.o gf256v_set_zero T
parallel_matrix_op.o UpperTrianglize T
parallel_matrix_op.o batch_2trimat_madd_gf16 T
parallel_matrix_op.o batch_2trimat_madd_gf256 T
parallel_matrix_op.o batch_bmatTr_madd_gf16 T
parallel_matrix_op.o batch_bmatTr_madd_gf256 T
parallel_matrix_op.o batch_matTr_madd_gf16 T
parallel_matrix_op.o batch_matTr_madd_gf256 T
parallel_matrix_op.o batch_mat_madd_gf16 T
parallel_matrix_op.o batch_mat_madd_gf256 T
parallel_matrix_op.o batch_quad_recmat_eval_gf16 T
parallel_matrix_op.o batch_quad_recmat_eval_gf256 T
parallel_matrix_op.o batch_quad_trimat_eval_gf16 T
parallel_matrix_op.o batch_quad_trimat_eval_gf256 T
parallel_matrix_op.o batch_trimatTr_madd_gf16 T
parallel_matrix_op.o batch_trimatTr_madd_gf256 T
parallel_matrix_op.o batch_trimat_madd_gf16 T
parallel_matrix_op.o batch_trimat_madd_gf256 T
rainbow.o rainbow_sign T
rainbow.o rainbow_sign_cyclic T
rainbow.o rainbow_verify T
rainbow.o rainbow_verify_cyclic T
rainbow_blas.o public_map T
rainbow_keypair.o cpk_to_pk T
rainbow_keypair.o generate_compact_keypair_cyclic T
rainbow_keypair.o generate_keypair T
rainbow_keypair.o generate_keypair_cyclic T
rainbow_keypair.o generate_secretkey T
rainbow_keypair.o generate_secretkey_cyclic T
rainbow_keypair.o rainbow_evaluate_cpk T
rainbow_keypair.o sk_to_pk T
rainbow_keypair_computation.o calculate_F_from_Q T
rainbow_keypair_computation.o calculate_Q_from_F T
rainbow_keypair_computation.o calculate_Q_from_F_cyclic T
rainbow_keypair_computation.o extcpk_to_pk T
rng.o AES256_CTR_DRBG_Update T
rng.o AES256_ECB T
rng.o DRBG_ctx C
rng.o handleErrors T
rng.o randombytes_init T
rng.o randombytes_init_with_state T
rng.o randombytes_with_state T
rng.o seedexpander T
rng.o seedexpander_init T
utils.o byte_fdump T
utils.o byte_fget T
utils.o byte_from_binfile T
utils.o byte_from_file T
utils.o byte_read_file T
utils_hash.o hash_msg T
utils_prng.o prng_gen T
utils_prng.o prng_set T

Number of similar (compiler,implementation) pairs: 16, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE amd64 ref
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE amd64 ref
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE amd64 ref
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE amd64 ref
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE amd64 ref
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE amd64 ref
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE amd64 ref
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE amd64 ref