Implementation notes: amd64, cryptothinkx, crypto_hash/bash256

Computer: cryptothinkx
Architecture: amd64
CPU ID: GenuineIntel-00040651-bfebfbff
SUPERCOP version: 20170105
Operation: crypto_hash
Primitive: bash256
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
8682? ? ?? ? ?avx2clang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2017013020170105
8961? ? ?? ? ?avx2clang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017013020170105
8964? ? ?? ? ?avx2clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017013020170105
8967? ? ?? ? ?avx2clang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2017013020170105
9852? ? ?? ? ?avx2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2017013020170105
9852? ? ?? ? ?avx2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2017013020170105
9867? ? ?? ? ?avx2gcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2017013020170105
10116? ? ?? ? ?avx2gcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2017013020170105
10134? ? ?? ? ?avx2gcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2017013020170105
10137? ? ?? ? ?avx2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2017013020170105
10140? ? ?? ? ?avx2gcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2017013020170105
10185? ? ?? ? ?avx2gcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2017013020170105
10206? ? ?? ? ?avx2gcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2017013020170105
10386? ? ?? ? ?avx2gcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2017013020170105
10413? ? ?? ? ?avx2gcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2017013020170105
10443? ? ?? ? ?avx2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2017013020170105
15273? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2017013020170105
15444? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2017013020170105
15462? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2017013020170105
15750? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2017013020170105
15753? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2017013020170105
15756? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2017013020170105
15765? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2017013020170105
15981? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2017013020170105
16836? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2017013020170105
16848? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2017013020170105
16899? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2017013020170105
16905? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2017013020170105
17022? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2017013020170105
17028? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2017013020170105
17040? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2017013020170105
17040? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2017013020170105
17064? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2017013020170105
17070? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2017013020170105
17079? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2017013020170105
17097? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017013020170105
17115? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2017013020170105
17118? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2017013020170105
17118? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2017013020170105
17133? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2017013020170105
17139? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017013020170105
17142? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2017013020170105
17259? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2017013020170105
17262? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2017013020170105
17268? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2017013020170105
17274? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2017013020170105
17274? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2017013020170105
17277? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2017013020170105
17280? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2017013020170105
17286? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2017013020170105
17289? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2017013020170105
17295? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2017013020170105
17298? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2017013020170105
17301? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2017013020170105
17319? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2017013020170105
17370? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2017013020170105
17373? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2017013020170105
17388? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2017013020170105
17481? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017013020170105
17538? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017013020170105
17544? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017013020170105
17550? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017013020170105
17553? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2017013020170105
17568? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2017013020170105
17568? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2017013020170105
17571? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2017013020170105
17592? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017013020170105
17604? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2017013020170105
17604? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2017013020170105
17607? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2017013020170105
17706? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2017013020170105
17754? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2017013020170105
17766? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2017013020170105
17778? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2017013020170105
17781? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2017013020170105
17784? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2017013020170105
17784? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2017013020170105
17790? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2017013020170105
17796? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2017013020170105
17799? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2017013020170105
17802? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2017013020170105
17808? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2017013020170105
17817? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2017013020170105
17817? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2017013020170105
17820? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2017013020170105
17820? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2017013020170105
17823? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2017013020170105
17844? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2017013020170105
17853? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2017013020170105
17859? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2017013020170105
17871? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2017013020170105
17880? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2017013020170105
17886? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2017013020170105
17886? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2017013020170105
17904? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2017013020170105
17910? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017013020170105
17913? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017013020170105
17916? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017013020170105
17928? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2017013020170105
17937? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2017013020170105
18327? ? ?? ? ?refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017013020170105
18399? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2017013020170105
18441? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017013020170105
18492? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2017013020170105
18513? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017013020170105
18543? ? ?? ? ?refclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2017013020170105
18573? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2017013020170105
18603? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017013020170105
24840? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2017013020170105
26679? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2017013020170105

Checksum failure

Implementation: crypto_hash/bash256/ref
Compiler: cc
e8496f7c0a80f87022012d0e76a2ba92f75dbac914504b74b4def5f0e9ec0be8
Number of similar (compiler,implementation) pairs: 29, namely:
CompilerImplementations
cc ref
gcc ref
gcc -Os -fomit-frame-pointer ref
gcc -fno-schedule-insns -Os -fomit-frame-pointer ref
gcc -funroll-loops ref
gcc -funroll-loops -Os -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer ref
gcc -m64 -Os -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer ref
gcc -m64 -march=corei7 -Os -fomit-frame-pointer ref
gcc -m64 -march=k8 -Os -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer ref
gcc -m64 -march=nocona -Os -fomit-frame-pointer ref
gcc -march=barcelona -Os -fomit-frame-pointer ref
gcc -march=k8 -Os -fomit-frame-pointer ref
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv ref
gcc -march=nocona -Os -fomit-frame-pointer ref

Checksum failure

Implementation: crypto_hash/bash256/ref
Compiler: gcc -m64 -march=barcelona -Os -fomit-frame-pointer
e8496f7c0a80f87022012d0e76a2ba92f75dbac914504b74b4def5f0e9ec0be8 e8496f7c0a80f87022012d0e76a2ba92f75dbac914504b74b4def5f0e9ec0be8
Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -m64 -march=barcelona -Os -fomit-frame-pointer ref

Compiler output

Implementation: crypto_hash/bash256/avx2
Compiler: cc
bash_avx2.c: bash_avx2.c:70:2: error: #error "The compiler does not support AVX2 intrinsics."
bash_avx2.c: #error "The compiler does not support AVX2 intrinsics."
bash_avx2.c: ^
bash_avx2.c: bash_avx2.c: In function ‘bashavx2_F0’:
bash_avx2.c: bash_avx2.c:271:5: error: unknown type name ‘u256’
bash_avx2.c: u256 S1,S2,T0,T1,T2,U0,U1,U2;
bash_avx2.c: ^
bash_avx2.c: bash_avx2.c:272:5: error: unknown type name ‘u256’
bash_avx2.c: u256 W0 = LOADW( S + 0 );
bash_avx2.c: ^
bash_avx2.c: ...
bash_avx2.c: ^
bash_avx2.c: bash_avx2.c:265:9: note: in expansion of macro ‘bashR1’
bash_avx2.c: bashR1(W0,W1,W2,W3,W4,W5,C23 ,S1,S2,T0,T1,T2,U0,U1,U2);
bash_avx2.c: ^
bash_avx2.c: bash_avx2.c:279:5: note: in expansion of macro ‘bashFP’
bash_avx2.c: bashFP(W0,W1,W2,W3,W4,W5 ,S1,S2,T0,T1,T2,U0,U1,U2);
bash_avx2.c: ^
bash_avx2.c: bash_avx2.c:281:5: warning: implicit declaration of function ‘STOREW’ [-Wimplicit-function-declaration]
bash_avx2.c: STOREW( S + 0, W0 );
bash_avx2.c: ^

Number of similar (compiler,implementation) pairs: 95, namely:
CompilerImplementations
cc avx2
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=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=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-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
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
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: crypto_hash/bash256/avx2
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
bash_avx2.c: bash_avx2.c:70:2: error: "The compiler does not support AVX2 intrinsics."
bash_avx2.c: #error "The compiler does not support AVX2 intrinsics."
bash_avx2.c: ^
bash_avx2.c: bash_avx2.c:271:5: error: use of undeclared identifier 'u256'
bash_avx2.c: u256 S1,S2,T0,T1,T2,U0,U1,U2;
bash_avx2.c: ^
bash_avx2.c: bash_avx2.c:272:5: error: use of undeclared identifier 'u256'
bash_avx2.c: u256 W0 = LOADW( S + 0 );
bash_avx2.c: ^
bash_avx2.c: bash_avx2.c:273:5: error: use of undeclared identifier 'u256'
bash_avx2.c: ...
bash_avx2.c: bashFP(W0,W1,W2,W3,W4,W5 ,S1,S2,T0,T1,T2,U0,U1,U2);
bash_avx2.c: ^
bash_avx2.c: bash_avx2.c:279:52: error: use of undeclared identifier 'U2'
bash_avx2.c: bashFP(W0,W1,W2,W3,W4,W5 ,S1,S2,T0,T1,T2,U0,U1,U2);
bash_avx2.c: ^
bash_avx2.c: bash_avx2.c:279:24: error: use of undeclared identifier 'W4'
bash_avx2.c: bashFP(W0,W1,W2,W3,W4,W5 ,S1,S2,T0,T1,T2,U0,U1,U2);
bash_avx2.c: ^
bash_avx2.c: fatal error: too many errors emitted, stopping now [-ferror-limit=]
bash_avx2.c: 2 warnings and 20 errors generated.

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments avx2
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments avx2
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments avx2
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx2
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx2
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx2

Compiler output

Implementation: crypto_hash/bash256/avx2
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
bash_avx2.c: bash_avx2.c:70:2: error: #error "The compiler does not support AVX2 intrinsics."
bash_avx2.c: #error "The compiler does not support AVX2 intrinsics."
bash_avx2.c: ^
bash_avx2.c: bash_avx2.c: In function ‘bashavx2_F0’:
bash_avx2.c: bash_avx2.c:271:5: error: unknown type name ‘u256’
bash_avx2.c: u256 S1,S2,T0,T1,T2,U0,U1,U2;
bash_avx2.c: ^
bash_avx2.c: bash_avx2.c:272:5: error: unknown type name ‘u256’
bash_avx2.c: u256 W0 = LOADW( S + 0 );
bash_avx2.c: ^
bash_avx2.c: ...
bash_avx2.c: ^
bash_avx2.c: bash_avx2.c:265:9: note: in expansion of macro ‘bashR1’
bash_avx2.c: bashR1(W0,W1,W2,W3,W4,W5,C23 ,S1,S2,T0,T1,T2,U0,U1,U2);
bash_avx2.c: ^
bash_avx2.c: bash_avx2.c:279:5: note: in expansion of macro ‘bashFP’
bash_avx2.c: bashFP(W0,W1,W2,W3,W4,W5 ,S1,S2,T0,T1,T2,U0,U1,U2);
bash_avx2.c: ^
bash_avx2.c: bash_avx2.c:281:5: warning: implicit declaration of function ‘STOREW’ [-Wimplicit-function-declaration]
bash_avx2.c: STOREW( S + 0, W0 );
bash_avx2.c: ^
bash_avx2.c: bash_avx2.c:70:2: error: #error "The compiler does not support AVX2 intrinsics."
bash_avx2.c: #error "The compiler does not support AVX2 intrinsics."
bash_avx2.c: ^
bash_avx2.c: bash_avx2.c: In function ‘bashavx2_F0’:
bash_avx2.c: bash_avx2.c:271:5: error: unknown type name ‘u256’
bash_avx2.c: u256 S1,S2,T0,T1,T2,U0,U1,U2;
bash_avx2.c: ^
bash_avx2.c: bash_avx2.c:272:5: error: unknown type name ‘u256’
bash_avx2.c: u256 W0 = LOADW( S + 0 );
bash_avx2.c: ^
bash_avx2.c: ...
bash_avx2.c: ^
bash_avx2.c: bash_avx2.c:265:9: note: in expansion of macro ‘bashR1’
bash_avx2.c: bashR1(W0,W1,W2,W3,W4,W5,C23 ,S1,S2,T0,T1,T2,U0,U1,U2);
bash_avx2.c: ^
bash_avx2.c: bash_avx2.c:279:5: note: in expansion of macro ‘bashFP’
bash_avx2.c: bashFP(W0,W1,W2,W3,W4,W5 ,S1,S2,T0,T1,T2,U0,U1,U2);
bash_avx2.c: ^
bash_avx2.c: bash_avx2.c:281:5: warning: implicit declaration of function ‘STOREW’ [-Wimplicit-function-declaration]
bash_avx2.c: STOREW( S + 0, W0 );
bash_avx2.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