Implementation notes: amd64, margaux, crypto_sign/rainbow1aclassic363232

Computer: margaux
Architecture: amd64
CPU ID: GenuineIntel-000006fb-bfebfbff
SUPERCOP version: 20200618
Operation: crypto_sign
Primitive: rainbow1aclassic363232
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
368217120351 8 0138434 904 1656ssse3clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020061920200618
381780104348 8 0121498 904 1656ssse3clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020061920200618
382527104348 8 0121498 904 1656ssse3clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020061920200618
41168784586 8 0100752 896 1656ssse3clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020061920200618
419625106919 8 0126648 872 1688ssse3gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020061920200618
43242393277 8 0111200 872 1688ssse3gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020061920200618
44186489839 8 0107360 872 1688ssse3gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020061920200618
62267450941 8 068120 864 1656ssse3gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020061920200618
706185124987 0 0141602 904 1656refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020061920200618
711378113358 0 0129178 904 1656refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020061920200618
713997165057 0 0182426 896 1656amd64clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020061920200618
754974113358 0 0129178 904 1656refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020061920200618
756954166276 0 0183770 896 1656amd64clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020061920200618
773046148954 0 0165522 896 1656amd64clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020061920200618
80708468525 0 085184 888 1656amd64clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020061920200618
816282126206 0 0142946 904 1656refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020061920200618
846018103077 0 0120896 864 1688amd64gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020061920200618
849717148954 0 0165522 896 1656amd64clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020061920200618
855999101601 0 0119168 864 1688amd64gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020061920200618
110253654136 0 070856 896 1656refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020061920200618
117507659350 0 077000 872 1688refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020061920200618
122280360345 0 078248 872 1688refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020061920200618
141745531539 0 048832 856 1656amd64gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020061920200618
205260328197 0 045352 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: 0x2d56b70: v16i8 = X86ISD::PSHUFB 0x2d54450, 0x2d56ca0
blas_comm.c: 0x2d54450: v16i8,ch = CopyFromReg 0x2c38000, Register:v16i8 %vreg34
blas_comm.c: 0x2d1cb90: v16i8 = Register %vreg34
blas_comm.c: 0x2d56ca0: v16i8 = bitcast 0x2d566b0
blas_comm.c: 0x2d566b0: v2i64 = and 0x2d55290, 0x2d8af40
blas_comm.c: 0x2d55290: v2i64 = bitcast 0x2d8d720
blas_comm.c: 0x2d8d720: v8i16 = X86ISD::VSRLI 0x2d8cbd0, Constant:i8<4>
blas_comm.c: 0x2d8cbd0: v8i16 = bitcast 0x2d94a90
blas_comm.c: 0x2d94a90: v2i64,ch = load<LD16[%73](align=1)(tbaa=<0x2b7bdf8>)> 0x2c38000, 0x2d94700, undef:i64
blas_comm.c: 0x2d94700: i64,ch = CopyFromReg 0x2c38000, Register:i64 %vreg38
blas_comm.c: 0x2d1cf20: i64 = Register %vreg38
blas_comm.c: 0x2d54f00: i64 = undef
blas_comm.c: 0x2d55160: i8 = Constant<4>
blas_comm.c: 0x2d8af40: v2i64,ch = load<LD16[ConstantPool]> 0x2c38000, 0x2d1d050, undef:i64
blas_comm.c: 0x2d1d050: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<<2 x i64> <i64 1085102592571150095, i64 1085102592571150095>> 0
blas_comm.c: 0x2d56a40: 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