Implementation notes: amd64, genji291, crypto_sign/rainbow3b

Computer: genji291
Architecture: amd64
CPU ID: GenuineIntel-00050671-bfebfbff
SUPERCOP version: 20180818
Operation: crypto_sign
Primitive: rainbow3b
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
6135304? ? ?? ? ?avx2icc_-xCOMMON-AVX512_-O3_-fomit-frame-pointer2018082020180818
6137012? ? ?? ? ?avx2icc_-xMIC-AVX512_-O2_-fomit-frame-pointer2018082020180818
6147708? ? ?? ? ?avx2icc_-xCOMMON-AVX512_-O2_-fomit-frame-pointer2018082020180818
6173930? ? ?? ? ?avx2icc_-xCORE-AVX2_-O3_-fomit-frame-pointer2018082020180818
6221670? ? ?? ? ?avx2icc_-xMIC-AVX512_-O3_-fomit-frame-pointer2018082020180818
6247598? ? ?? ? ?avx2icc_-xAVX_-O3_-fomit-frame-pointer2018082020180818
6260268? ? ?? ? ?avx2icc_-xCORE-AVX2_-O2_-fomit-frame-pointer2018082020180818
6291516? ? ?? ? ?avx2icc_-xAVX_-O2_-fomit-frame-pointer2018082020180818
6292048? ? ?? ? ?avx2icc_-xCORE-AVX-I_-O2_-fomit-frame-pointer2018082020180818
6326488? ? ?? ? ?avx2icc_-xCORE-AVX-I_-O3_-fomit-frame-pointer2018082020180818
6483750? ? ?? ? ?avx2icc2018082020180818
6484282? ? ?? ? ?avx2icc_-xSSE4.2_-O3_-fomit-frame-pointer2018082020180818
6490974? ? ?? ? ?avx2icc_-xSSE4.2_-O2_-fomit-frame-pointer2018082020180818
6497862? ? ?? ? ?avx2icc_-xSSE4.1_-O3_-fomit-frame-pointer2018082020180818
6506108? ? ?? ? ?avx2icc_-no-vec2018082020180818
6524070? ? ?? ? ?avx2icc_-xSSE4.1_-O2_-fomit-frame-pointer2018082020180818
26759376? ? ?? ? ?portableicc_-xCOMMON-AVX512_-O3_-fomit-frame-pointer2018082020180818
26824770? ? ?? ? ?reficc_-xCOMMON-AVX512_-O3_-fomit-frame-pointer2018082020180818
27161918? ? ?? ? ?reficc_-xMIC-AVX512_-O3_-fomit-frame-pointer2018082020180818
27182162? ? ?? ? ?portableicc_-xMIC-AVX512_-O3_-fomit-frame-pointer2018082020180818
27348692? ? ?? ? ?portableicc_-xMIC-AVX512_-O2_-fomit-frame-pointer2018082020180818
27487208? ? ?? ? ?reficc_-xMIC-AVX512_-O2_-fomit-frame-pointer2018082020180818
27580462? ? ?? ? ?reficc_-xCOMMON-AVX512_-O2_-fomit-frame-pointer2018082020180818
27603926? ? ?? ? ?portableicc_-xCOMMON-AVX512_-O2_-fomit-frame-pointer2018082020180818

Test failure

Implementation: portable
Security model: unknown
Compiler: icc
error 142
sh: line 1: 40019 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc portable

Test failure

Implementation: portable
Security model: unknown
Compiler: icc -no-vec
error 142
sh: line 1: 39923 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -no-vec portable

Test failure

Implementation: portable
Security model: unknown
Compiler: icc -xAVX -O2 -fomit-frame-pointer
error 142
sh: line 1: 40043 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -xAVX -O2 -fomit-frame-pointer portable

Test failure

Implementation: portable
Security model: unknown
Compiler: icc -xAVX -O3 -fomit-frame-pointer
error 142
sh: line 1: 38742 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -xAVX -O3 -fomit-frame-pointer portable

Test failure

Implementation: portable
Security model: unknown
Compiler: icc -xCORE-AVX-I -O2 -fomit-frame-pointer
error 142
sh: line 1: 40041 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -xCORE-AVX-I -O2 -fomit-frame-pointer portable

Test failure

Implementation: portable
Security model: unknown
Compiler: icc -xCORE-AVX-I -O3 -fomit-frame-pointer
error 142
sh: line 1: 38867 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -xCORE-AVX-I -O3 -fomit-frame-pointer portable

Test failure

Implementation: portable
Security model: unknown
Compiler: icc -xCORE-AVX2 -O2 -fomit-frame-pointer
error 142
sh: line 1: 39697 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -xCORE-AVX2 -O2 -fomit-frame-pointer portable

Test failure

Implementation: portable
Security model: unknown
Compiler: icc -xCORE-AVX2 -O3 -fomit-frame-pointer
error 142
sh: line 1: 38587 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -xCORE-AVX2 -O3 -fomit-frame-pointer portable

Test failure

Implementation: portable
Security model: unknown
Compiler: icc -xSSE4.1 -O2 -fomit-frame-pointer
error 142
sh: line 1: 40048 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -xSSE4.1 -O2 -fomit-frame-pointer portable

Test failure

Implementation: portable
Security model: unknown
Compiler: icc -xSSE4.1 -O3 -fomit-frame-pointer
error 142
sh: line 1: 38661 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -xSSE4.1 -O3 -fomit-frame-pointer portable

Test failure

Implementation: portable
Security model: unknown
Compiler: icc -xSSE4.2 -O2 -fomit-frame-pointer
error 142
sh: line 1: 40044 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -xSSE4.2 -O2 -fomit-frame-pointer portable

Test failure

Implementation: portable
Security model: unknown
Compiler: icc -xSSE4.2 -O3 -fomit-frame-pointer
error 142
sh: line 1: 38680 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -xSSE4.2 -O3 -fomit-frame-pointer portable

Test failure

Implementation: ref
Security model: unknown
Compiler: icc
error 142
sh: line 1: 40960 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc ref

Test failure

Implementation: ref
Security model: unknown
Compiler: icc -no-vec
error 142
sh: line 1: 40910 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -no-vec ref

Test failure

Implementation: ref
Security model: unknown
Compiler: icc -xAVX -O2 -fomit-frame-pointer
error 142
sh: line 1: 41076 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -xAVX -O2 -fomit-frame-pointer ref

Test failure

Implementation: ref
Security model: unknown
Compiler: icc -xAVX -O3 -fomit-frame-pointer
error 142
sh: line 1: 40265 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -xAVX -O3 -fomit-frame-pointer ref

Test failure

Implementation: ref
Security model: unknown
Compiler: icc -xCORE-AVX-I -O2 -fomit-frame-pointer
error 142
sh: line 1: 41166 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -xCORE-AVX-I -O2 -fomit-frame-pointer ref

Test failure

Implementation: ref
Security model: unknown
Compiler: icc -xCORE-AVX-I -O3 -fomit-frame-pointer
error 142
sh: line 1: 40284 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -xCORE-AVX-I -O3 -fomit-frame-pointer ref

Test failure

Implementation: ref
Security model: unknown
Compiler: icc -xCORE-AVX2 -O2 -fomit-frame-pointer
error 142
sh: line 1: 40896 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -xCORE-AVX2 -O2 -fomit-frame-pointer ref

Test failure

Implementation: ref
Security model: unknown
Compiler: icc -xCORE-AVX2 -O3 -fomit-frame-pointer
error 142
sh: line 1: 40372 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -xCORE-AVX2 -O3 -fomit-frame-pointer ref

Test failure

Implementation: ref
Security model: unknown
Compiler: icc -xSSE4.1 -O2 -fomit-frame-pointer
error 142
sh: line 1: 41048 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -xSSE4.1 -O2 -fomit-frame-pointer ref

Test failure

Implementation: ref
Security model: unknown
Compiler: icc -xSSE4.1 -O3 -fomit-frame-pointer
error 142
sh: line 1: 40249 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -xSSE4.1 -O3 -fomit-frame-pointer ref

Test failure

Implementation: ref
Security model: unknown
Compiler: icc -xSSE4.2 -O2 -fomit-frame-pointer
error 142
sh: line 1: 41015 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -xSSE4.2 -O2 -fomit-frame-pointer ref

Test failure

Implementation: ref
Security model: unknown
Compiler: icc -xSSE4.2 -O3 -fomit-frame-pointer
error 142
sh: line 1: 40272 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -xSSE4.2 -O3 -fomit-frame-pointer ref

Compiler output

Implementation: avx2
Security model: unknown
Compiler: cc
blas.c: In file included from gf31_sse.h:9:0,
blas.c: from blas_avx2.h:6,
blas.c: from blas.h:17,
blas.c: from blas.c:1:
blas.c: /usr/lib/gcc/x86_64-redhat-linux/4.8.5/include/tmmintrin.h:31:3: error: #error "SSSE3 instruction set not enabled"
blas.c: # error "SSSE3 instruction set not enabled"
blas.c: ^
blas.c: In file included from blas_avx2.h:6:0,
blas.c: from blas.h:17,
blas.c: from blas.c:1:
blas.c: gf31_sse.h: In function 'gf31_inv_sse':
blas.c: gf31_sse.h:23:20: error: incompatible types when initializing type '__m128i' using type 'int'
blas.c: __m128i inv_16p = _mm_shuffle_epi8( _mm_load_si128( (__m128i*)gf31_inv_tab2 ) , aa_16 );
blas.c: ^
blas.c: gf31_sse.h:26:20: error: incompatible types when initializing type '__m128i' using type 'int'
blas.c: __m128i inv_16m = _mm_shuffle_epi8( _mm_load_si128( (__m128i*)(gf31_inv_tab2+16) ) , aa_16m );
blas.c: ^
blas.c: In file included from blas.h:17:0,
blas.c: from blas.c:1:
blas.c: blas_avx2.h: At top level:
blas.c: blas_avx2.h:17:1: error: unknown type name '__m256i'
blas.c: __m256i _gf31v_u8_to_u16_avx2( __m128i a ) {
blas.c: ^
blas.c: blas_avx2.h: In function 'gf31v_u8_to_u16':
blas.c: blas_avx2.h:31:3: error: unknown type name '__m256i'
blas.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
cc avx2

Compiler output

Implementation: avx2
Security model: unknown
Compiler: gcc
blas.c: In file included from blas.h:17,
blas.c: from blas.c:1:
blas.c: blas_avx2.h: In function '_gf31v_u8_to_u16_avx2':
blas.c: blas_avx2.h:17:1: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
blas.c: __m256i _gf31v_u8_to_u16_avx2( __m128i a ) {
blas.c: ^~~~~~~
rainbow.c: In file included from blas.h:17,
rainbow.c: from rainbow.h:7,
rainbow.c: from rainbow.c:4:
rainbow.c: blas_avx2.h: In function '_gf31v_u8_to_u16_avx2':
rainbow.c: blas_avx2.h:17:1: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
rainbow.c: __m256i _gf31v_u8_to_u16_avx2( __m128i a ) {
rainbow.c: ^~~~~~~
rainbow.c: blas_avx2.h: In function '_gf31v_reduce_u16_avx2':
rainbow.c: blas_avx2.h:110:9: note: The ABI for passing parameters with 32-byte alignment has changed in GCC 4.6
rainbow.c: __m256i _gf31v_reduce_u16_avx2( __m256i a ){
rainbow.c: ^~~~~~~~~~~~~~~~~~~~~~
rainbow.c: In file included from gf31_sse.h:9,
rainbow.c: from blas_avx2.h:6,
rainbow.c: from blas.h:17,
rainbow.c: from rainbow.h:7,
rainbow.c: from rainbow.c:4:
rainbow.c: gf31_sse.h: In function 'gf31_inv_sse':
rainbow.c: /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
rainbow.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
rainbow.c: ^~~~~~~~~~~~~~~~
rainbow.c: In file included from blas_avx2.h:6,
rainbow.c: from blas.h:17,
rainbow.c: from rainbow.h:7,
rainbow.c: from rainbow.c:4:
rainbow.c: gf31_sse.h:26:20: note: called from here
rainbow.c: ...

Number of similar (compiler,implementation) pairs: 70, namely:
CompilerImplementations
gcc avx2
gcc -O2 -fomit-frame-pointer avx2
gcc -O3 -fomit-frame-pointer avx2
gcc -O -fomit-frame-pointer avx2
gcc -Os -fomit-frame-pointer avx2
gcc -fno-schedule-insns -O2 -fomit-frame-pointer avx2
gcc -fno-schedule-insns -O3 -fomit-frame-pointer avx2
gcc -fno-schedule-insns -O -fomit-frame-pointer avx2
gcc -fno-schedule-insns -Os -fomit-frame-pointer avx2
gcc -funroll-loops avx2
gcc -funroll-loops -O2 -fomit-frame-pointer avx2
gcc -funroll-loops -O3 -fomit-frame-pointer avx2
gcc -funroll-loops -O -fomit-frame-pointer avx2
gcc -funroll-loops -Os -fomit-frame-pointer avx2
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer avx2
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer avx2
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer avx2
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -O -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -Os -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer avx2
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer avx2
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer avx2
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer avx2
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer avx2
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer avx2
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer avx2
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer avx2
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer avx2
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer avx2
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer avx2
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer avx2
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer avx2
gcc -m64 -O2 -fomit-frame-pointer avx2
gcc -m64 -O3 -fomit-frame-pointer avx2
gcc -m64 -O -fomit-frame-pointer avx2
gcc -m64 -Os -fomit-frame-pointer avx2
gcc -m64 -march=k8 -O2 -fomit-frame-pointer avx2
gcc -m64 -march=k8 -O3 -fomit-frame-pointer avx2
gcc -m64 -march=k8 -O -fomit-frame-pointer avx2
gcc -m64 -march=k8 -Os -fomit-frame-pointer avx2
gcc -m64 -march=nocona -O2 -fomit-frame-pointer avx2
gcc -m64 -march=nocona -O3 -fomit-frame-pointer avx2
gcc -m64 -march=nocona -O -fomit-frame-pointer avx2
gcc -m64 -march=nocona -Os -fomit-frame-pointer avx2
gcc -march=barcelona -O2 -fomit-frame-pointer avx2
gcc -march=barcelona -O3 -fomit-frame-pointer avx2
gcc -march=barcelona -O -fomit-frame-pointer avx2
gcc -march=barcelona -Os -fomit-frame-pointer avx2
gcc -march=k8 -O2 -fomit-frame-pointer avx2
gcc -march=k8 -O3 -fomit-frame-pointer avx2
gcc -march=k8 -O -fomit-frame-pointer avx2
gcc -march=k8 -Os -fomit-frame-pointer avx2
gcc -march=nocona -O2 -fomit-frame-pointer avx2
gcc -march=nocona -O3 -fomit-frame-pointer avx2
gcc -march=nocona -O -fomit-frame-pointer avx2
gcc -march=nocona -Os -fomit-frame-pointer avx2

Compiler output

Implementation: avx2
Security model: unknown
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
blas.c: In file included from blas.h:17,
blas.c: from blas.c:1:
blas.c: blas_avx2.h: In function '_gf31v_u8_to_u16_avx2':
blas.c: blas_avx2.h:17:1: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
blas.c: __m256i _gf31v_u8_to_u16_avx2( __m128i a ) {
blas.c: ^~~~~~~
rainbow.c: In file included from blas.h:17,
rainbow.c: from rainbow.h:7,
rainbow.c: from rainbow.c:4:
rainbow.c: blas_avx2.h: In function '_gf31v_u8_to_u16_avx2':
rainbow.c: blas_avx2.h:17:1: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
rainbow.c: __m256i _gf31v_u8_to_u16_avx2( __m128i a ) {
rainbow.c: ^~~~~~~
rainbow.c: blas_avx2.h: In function '_gf31v_reduce_u16_avx2':
rainbow.c: blas_avx2.h:110:9: note: The ABI for passing parameters with 32-byte alignment has changed in GCC 4.6
rainbow.c: __m256i _gf31v_reduce_u16_avx2( __m256i a ){
rainbow.c: ^~~~~~~~~~~~~~~~~~~~~~
rainbow.c: In file included from gf31_sse.h:9,
rainbow.c: from blas_avx2.h:6,
rainbow.c: from blas.h:17,
rainbow.c: from rainbow.h:7,
rainbow.c: from rainbow.c:4:
rainbow.c: gf31_sse.h: In function 'gf31_inv_sse':
rainbow.c: /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
rainbow.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
rainbow.c: ^~~~~~~~~~~~~~~~
rainbow.c: In file included from blas_avx2.h:6,
rainbow.c: from blas.h:17,
rainbow.c: from rainbow.h:7,
rainbow.c: from rainbow.c:4:
rainbow.c: gf31_sse.h:26:20: note: called from here
rainbow.c: ...
blas.c: In file included from blas.h:17,
blas.c: from blas.c:1:
blas.c: blas_avx2.h: In function '_gf31v_u8_to_u16_avx2':
blas.c: blas_avx2.h:17:1: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
blas.c: __m256i _gf31v_u8_to_u16_avx2( __m128i a ) {
blas.c: ^~~~~~~
rainbow.c: In file included from blas.h:17,
rainbow.c: from rainbow.h:7,
rainbow.c: from rainbow.c:4:
rainbow.c: blas_avx2.h: In function '_gf31v_u8_to_u16_avx2':
rainbow.c: blas_avx2.h:17:1: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
rainbow.c: __m256i _gf31v_u8_to_u16_avx2( __m128i a ) {
rainbow.c: ^~~~~~~
rainbow.c: blas_avx2.h: In function '_gf31v_reduce_u16_avx2':
rainbow.c: blas_avx2.h:110:9: note: The ABI for passing parameters with 32-byte alignment has changed in GCC 4.6
rainbow.c: __m256i _gf31v_reduce_u16_avx2( __m256i a ){
rainbow.c: ^~~~~~~~~~~~~~~~~~~~~~
rainbow.c: In file included from gf31_sse.h:9,
rainbow.c: from blas_avx2.h:6,
rainbow.c: from blas.h:17,
rainbow.c: from rainbow.h:7,
rainbow.c: from rainbow.c:4:
rainbow.c: gf31_sse.h: In function 'gf31_inv_sse':
rainbow.c: /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
rainbow.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
rainbow.c: ^~~~~~~~~~~~~~~~
rainbow.c: In file included from blas_avx2.h:6,
rainbow.c: from blas.h:17,
rainbow.c: from rainbow.h:7,
rainbow.c: from rainbow.c:4:
rainbow.c: gf31_sse.h:26:20: note: called from here
rainbow.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer avx2
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer avx2
gcc -m64 -march=barcelona -O -fomit-frame-pointer avx2
gcc -m64 -march=barcelona -Os -fomit-frame-pointer avx2

Compiler output

Implementation: avx2
Security model: unknown
Compiler: gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer
rainbow.c: In file included from /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:43,
rainbow.c: from blas_avx2.h:8,
rainbow.c: from blas.h:17,
rainbow.c: from rainbow.h:7,
rainbow.c: from rainbow.c:4:
rainbow.c: blas_avx2.h: In function '_gf31v_reduce_u16_avx2':
rainbow.c: /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/avx2intrin.h:112:1: error: inlining failed in call to always_inline '_mm256_add_epi16': target specific option mismatch
rainbow.c: _mm256_add_epi16 (__m256i __A, __m256i __B)
rainbow.c: ^~~~~~~~~~~~~~~~
rainbow.c: In file included from blas.h:17,
rainbow.c: from rainbow.h:7,
rainbow.c: from rainbow.c:4:
rainbow.c: blas_avx2.h:112:9: note: called from here
rainbow.c: return _mm256_add_epi16( a&mask , _mm256_srli_epi16(a,5) );
rainbow.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rainbow.c: In file included from /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:43,
rainbow.c: from blas_avx2.h:8,
rainbow.c: from blas.h:17,
rainbow.c: from rainbow.h:7,
rainbow.c: from rainbow.c:4:
rainbow.c: /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/avx2intrin.h:759:1: error: inlining failed in call to always_inline '_mm256_srli_epi16': target specific option mismatch
rainbow.c: _mm256_srli_epi16 (__m256i __A, int __B)
rainbow.c: ^~~~~~~~~~~~~~~~~
rainbow.c: In file included from blas.h:17,
rainbow.c: from rainbow.h:7,
rainbow.c: ...

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer avx2
gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer avx2
gcc -m64 -march=core-avx-i -O -fomit-frame-pointer avx2
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer avx2
gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer avx2
gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer avx2
gcc -m64 -march=corei7-avx -O -fomit-frame-pointer avx2
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer avx2

Compiler output

Implementation: avx2
Security model: unknown
Compiler: gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer
try.c: /scratch_lustre_DDN7k/bdolbeaur/supercop-20180818/supercop-data/genji291/amd64/lib/knownrandombytes.o: In function `randombytes':
try.c: knownrandombytes.c:(.text+0x...): undefined reference to `_intel_fast_memcpy'
try.c: knownrandombytes.c:(.text+0x...): undefined reference to `_intel_fast_memset'
try.c: /scratch_lustre_DDN7k/bdolbeaur/supercop-20180818/supercop-data/genji291/amd64/lib/libsupercop.a(crypto_stream_chacha20_dolbeau_amd64_avx2-api.o): In function `crypto_stream_chacha20_dolbeau_amd64_avx2':
try.c: api.c:(.text+0x...): undefined reference to `__intel_mic_avx512f_memset'
try.c: /scratch_lustre_DDN7k/bdolbeaur/supercop-20180818/supercop-data/genji291/amd64/lib/libsupercop.a(crypto_stream_chacha20_dolbeau_amd64_avx2-chacha.o): In function `crypto_stream_chacha20_dolbeau_amd64_avx2_ECRYPT_keystream_bytes':
try.c: chacha.c:(.text+0x...): undefined reference to `__intel_mic_avx512f_memset'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 224, namely:
CompilerImplementations
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer avx2
gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer avx2
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer avx2
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer avx2
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer avx2
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer avx2
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer avx2
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer avx2
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv avx2
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv avx2
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv avx2
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv avx2
gcc portable
gcc -O2 -fomit-frame-pointer portable
gcc -O3 -fomit-frame-pointer portable
gcc -O -fomit-frame-pointer portable
gcc -Os -fomit-frame-pointer portable
gcc -fno-schedule-insns -O2 -fomit-frame-pointer portable
gcc -fno-schedule-insns -O3 -fomit-frame-pointer portable
gcc -fno-schedule-insns -O -fomit-frame-pointer portable
gcc -fno-schedule-insns -Os -fomit-frame-pointer portable
gcc -funroll-loops portable
gcc -funroll-loops -O2 -fomit-frame-pointer portable
gcc -funroll-loops -O3 -fomit-frame-pointer portable
gcc -funroll-loops -O -fomit-frame-pointer portable
gcc -funroll-loops -Os -fomit-frame-pointer portable
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer portable
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer portable
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer portable
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer portable
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer portable
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer portable
gcc -funroll-loops -m64 -O -fomit-frame-pointer portable
gcc -funroll-loops -m64 -Os -fomit-frame-pointer portable
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer portable
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer portable
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer portable
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer portable
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer portable
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer portable
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer portable
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer portable
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer portable
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer portable
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer portable
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer portable
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer portable
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer portable
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer portable
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer portable
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer portable
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer portable
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer portable
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer portable
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer portable
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer portable
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer portable
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer portable
gcc -m64 -O2 -fomit-frame-pointer portable
gcc -m64 -O3 -fomit-frame-pointer portable
gcc -m64 -O -fomit-frame-pointer portable
gcc -m64 -Os -fomit-frame-pointer portable
gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer portable
gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer portable
gcc -m64 -march=core-avx-i -O -fomit-frame-pointer portable
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer portable
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer portable
gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer portable
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer portable
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer portable
gcc -m64 -march=core2 -O2 -fomit-frame-pointer portable
gcc -m64 -march=core2 -O3 -fomit-frame-pointer portable
gcc -m64 -march=core2 -O -fomit-frame-pointer portable
gcc -m64 -march=core2 -Os -fomit-frame-pointer portable
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer portable
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer portable
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer portable
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer portable
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer portable
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer portable
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer portable
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer portable
gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer portable
gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer portable
gcc -m64 -march=corei7-avx -O -fomit-frame-pointer portable
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer portable
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer portable
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer portable
gcc -m64 -march=corei7 -O -fomit-frame-pointer portable
gcc -m64 -march=corei7 -Os -fomit-frame-pointer portable
gcc -m64 -march=k8 -O2 -fomit-frame-pointer portable
gcc -m64 -march=k8 -O3 -fomit-frame-pointer portable
gcc -m64 -march=k8 -O -fomit-frame-pointer portable
gcc -m64 -march=k8 -Os -fomit-frame-pointer portable
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer portable
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer portable
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer portable
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer portable
gcc -m64 -march=nocona -O2 -fomit-frame-pointer portable
gcc -m64 -march=nocona -O3 -fomit-frame-pointer portable
gcc -m64 -march=nocona -O -fomit-frame-pointer portable
gcc -m64 -march=nocona -Os -fomit-frame-pointer portable
gcc -march=barcelona -O2 -fomit-frame-pointer portable
gcc -march=barcelona -O3 -fomit-frame-pointer portable
gcc -march=barcelona -O -fomit-frame-pointer portable
gcc -march=barcelona -Os -fomit-frame-pointer portable
gcc -march=k8 -O2 -fomit-frame-pointer portable
gcc -march=k8 -O3 -fomit-frame-pointer portable
gcc -march=k8 -O -fomit-frame-pointer portable
gcc -march=k8 -Os -fomit-frame-pointer portable
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv portable
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv portable
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv portable
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv portable
gcc -march=nocona -O2 -fomit-frame-pointer portable
gcc -march=nocona -O3 -fomit-frame-pointer portable
gcc -march=nocona -O -fomit-frame-pointer portable
gcc -march=nocona -Os -fomit-frame-pointer portable
gcc ref
gcc -O2 -fomit-frame-pointer ref
gcc -O3 -fomit-frame-pointer ref
gcc -O -fomit-frame-pointer ref
gcc -Os -fomit-frame-pointer ref
gcc -fno-schedule-insns -O2 -fomit-frame-pointer ref
gcc -fno-schedule-insns -O3 -fomit-frame-pointer ref
gcc -fno-schedule-insns -O -fomit-frame-pointer ref
gcc -fno-schedule-insns -Os -fomit-frame-pointer ref
gcc -funroll-loops ref
gcc -funroll-loops -O2 -fomit-frame-pointer ref
gcc -funroll-loops -O3 -fomit-frame-pointer ref
gcc -funroll-loops -O -fomit-frame-pointer ref
gcc -funroll-loops -Os -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer ref
gcc -m64 -O2 -fomit-frame-pointer ref
gcc -m64 -O3 -fomit-frame-pointer ref
gcc -m64 -O -fomit-frame-pointer ref
gcc -m64 -Os -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -O -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core2 -O3 -fomit-frame-pointer ref
gcc -m64 -march=core2 -O -fomit-frame-pointer ref
gcc -m64 -march=core2 -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -O -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer ref
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer ref
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer ref
gcc -m64 -march=corei7 -O -fomit-frame-pointer ref
gcc -m64 -march=corei7 -Os -fomit-frame-pointer ref
gcc -m64 -march=k8 -O2 -fomit-frame-pointer ref
gcc -m64 -march=k8 -O3 -fomit-frame-pointer ref
gcc -m64 -march=k8 -O -fomit-frame-pointer ref
gcc -m64 -march=k8 -Os -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer ref
gcc -m64 -march=nocona -O2 -fomit-frame-pointer ref
gcc -m64 -march=nocona -O3 -fomit-frame-pointer ref
gcc -m64 -march=nocona -O -fomit-frame-pointer ref
gcc -m64 -march=nocona -Os -fomit-frame-pointer ref
gcc -march=barcelona -O2 -fomit-frame-pointer ref
gcc -march=barcelona -O3 -fomit-frame-pointer ref
gcc -march=barcelona -O -fomit-frame-pointer ref
gcc -march=barcelona -Os -fomit-frame-pointer ref
gcc -march=k8 -O2 -fomit-frame-pointer ref
gcc -march=k8 -O3 -fomit-frame-pointer ref
gcc -march=k8 -O -fomit-frame-pointer ref
gcc -march=k8 -Os -fomit-frame-pointer ref
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv ref
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv ref
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv ref
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv ref
gcc -march=nocona -O2 -fomit-frame-pointer ref
gcc -march=nocona -O3 -fomit-frame-pointer ref
gcc -march=nocona -O -fomit-frame-pointer ref
gcc -march=nocona -Os -fomit-frame-pointer ref

Compiler output

Implementation: avx2
Security model: unknown
Compiler: gcc -m64 -march=core2 -O2 -fomit-frame-pointer
blas.c: In file included from blas.h:17,
blas.c: from blas.c:1:
blas.c: blas_avx2.h: In function '_gf31v_u8_to_u16_avx2':
blas.c: blas_avx2.h:17:1: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
blas.c: __m256i _gf31v_u8_to_u16_avx2( __m128i a ) {
blas.c: ^~~~~~~
rainbow.c: In file included from blas.h:17,
rainbow.c: from rainbow.h:7,
rainbow.c: from rainbow.c:4:
rainbow.c: blas_avx2.h: In function '_gf31v_u8_to_u16_avx2':
rainbow.c: blas_avx2.h:17:1: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
rainbow.c: __m256i _gf31v_u8_to_u16_avx2( __m128i a ) {
rainbow.c: ^~~~~~~
rainbow.c: blas_avx2.h: In function '_gf31v_reduce_u16_avx2':
rainbow.c: blas_avx2.h:110:9: note: The ABI for passing parameters with 32-byte alignment has changed in GCC 4.6
rainbow.c: __m256i _gf31v_reduce_u16_avx2( __m256i a ){
rainbow.c: ^~~~~~~~~~~~~~~~~~~~~~
rainbow.c: In file included from /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:41,
rainbow.c: from blas_avx2.h:8,
rainbow.c: from blas.h:17,
rainbow.c: from rainbow.h:7,
rainbow.c: from rainbow.c:4:
rainbow.c: blas_avx2.h: In function '_gf31v_u8_to_u16_avx2':
rainbow.c: /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/avxintrin.h:767:1: error: inlining failed in call to always_inline '_mm256_insertf128_si256': target specific option mismatch
rainbow.c: _mm256_insertf128_si256 (__m256i __X, __m128i __Y, const int __O)
rainbow.c: ^~~~~~~~~~~~~~~~~~~~~~~
rainbow.c: In file included from blas.h:17,
rainbow.c: from rainbow.h:7,
rainbow.c: from rainbow.c:4:
rainbow.c: blas_avx2.h:22:9: note: called from here
rainbow.c: return _mm256_insertf128_si256 ( _mm256_castsi128_si256(a0) , a1 , 1 );
rainbow.c: ...

Number of similar (compiler,implementation) pairs: 16, namely:
CompilerImplementations
gcc -m64 -march=core2 -O2 -fomit-frame-pointer avx2
gcc -m64 -march=core2 -O3 -fomit-frame-pointer avx2
gcc -m64 -march=core2 -O -fomit-frame-pointer avx2
gcc -m64 -march=core2 -Os -fomit-frame-pointer avx2
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer avx2
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer avx2
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer avx2
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer avx2
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer avx2
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer avx2
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer avx2
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer avx2
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer avx2
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer avx2
gcc -m64 -march=corei7 -O -fomit-frame-pointer avx2
gcc -m64 -march=corei7 -Os -fomit-frame-pointer avx2

Compiler output

Implementation: portable
Security model: unknown
Compiler: cc
gf31_convert.c: gf31_convert.c: In function 'gf31_sanity_check':
gf31_convert.c: gf31_convert.c:7:2: error: 'for' loop initial declarations are only allowed in C99 mode
gf31_convert.c: for(unsigned i=0;i<n;i++) {
gf31_convert.c: ^
gf31_convert.c: gf31_convert.c:7:2: note: use option -std=c99 or -std=gnu99 to compile your code
gf31_convert.c: gf31_convert.c: In function 'gf31_from_digest':
gf31_convert.c: gf31_convert.c:93:3: error: 'for' loop initial declarations are only allowed in C99 mode
gf31_convert.c: for(unsigned i=0;i<4;i++) {
gf31_convert.c: ^

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
cc portable ref

Compiler output

Implementation: portable
Security model: unknown
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
try.c: /scratch_lustre_DDN7k/bdolbeaur/supercop-20180818/supercop-data/genji291/amd64/lib/knownrandombytes.o: In function `randombytes':
try.c: knownrandombytes.c:(.text+0x...): undefined reference to `_intel_fast_memcpy'
try.c: knownrandombytes.c:(.text+0x...): undefined reference to `_intel_fast_memset'
try.c: /scratch_lustre_DDN7k/bdolbeaur/supercop-20180818/supercop-data/genji291/amd64/lib/libsupercop.a(crypto_stream_chacha20_dolbeau_amd64_avx2-api.o): In function `crypto_stream_chacha20_dolbeau_amd64_avx2':
try.c: api.c:(.text+0x...): undefined reference to `__intel_mic_avx512f_memset'
try.c: /scratch_lustre_DDN7k/bdolbeaur/supercop-20180818/supercop-data/genji291/amd64/lib/libsupercop.a(crypto_stream_chacha20_dolbeau_amd64_avx2-chacha.o): In function `crypto_stream_chacha20_dolbeau_amd64_avx2_ECRYPT_keystream_bytes':
try.c: chacha.c:(.text+0x...): undefined reference to `__intel_mic_avx512f_memset'
try.c: collect2: error: ld returned 1 exit status
try.c: /scratch_lustre_DDN7k/bdolbeaur/supercop-20180818/supercop-data/genji291/amd64/lib/knownrandombytes.o: In function `randombytes':
try.c: knownrandombytes.c:(.text+0x...): undefined reference to `_intel_fast_memcpy'
try.c: knownrandombytes.c:(.text+0x...): undefined reference to `_intel_fast_memset'
try.c: /scratch_lustre_DDN7k/bdolbeaur/supercop-20180818/supercop-data/genji291/amd64/lib/libsupercop.a(crypto_stream_chacha20_dolbeau_amd64_avx2-api.o): In function `crypto_stream_chacha20_dolbeau_amd64_avx2':
try.c: api.c:(.text+0x...): undefined reference to `__intel_mic_avx512f_memset'
try.c: /scratch_lustre_DDN7k/bdolbeaur/supercop-20180818/supercop-data/genji291/amd64/lib/libsupercop.a(crypto_stream_chacha20_dolbeau_amd64_avx2-chacha.o): In function `crypto_stream_chacha20_dolbeau_amd64_avx2_ECRYPT_keystream_bytes':
try.c: chacha.c:(.text+0x...): undefined reference to `__intel_mic_avx512f_memset'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer portable
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer portable
gcc -m64 -march=barcelona -O -fomit-frame-pointer portable
gcc -m64 -march=barcelona -Os -fomit-frame-pointer portable
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer ref
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer ref
gcc -m64 -march=barcelona -O -fomit-frame-pointer ref
gcc -m64 -march=barcelona -Os -fomit-frame-pointer ref