Implementation notes: amd64, cryptothinkx, crypto_hash/bash512

Computer: cryptothinkx
Architecture: amd64
CPU ID: GenuineIntel-00040651-bfebfbff
SUPERCOP version: 20170105
Operation: crypto_hash
Primitive: bash512
TimeImplementationCompilerBenchmark dateSUPERCOP version
17109avx2clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2017013020170105
17118avx2clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2017013020170105
17154avx2clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2017013020170105
17178avx2clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017013020170105
18711avx2gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2017013020170105
18747avx2gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2017013020170105
19158avx2gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2017013020170105
19194avx2gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2017013020170105
19242avx2gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2017013020170105
19251avx2gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2017013020170105
19368avx2gcc -m64 -march=core-avx2 -O -fomit-frame-pointer2017013020170105
19404avx2gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2017013020170105
19809avx2gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2017013020170105
19845avx2gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2017013020170105
19845avx2gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2017013020170105
19884avx2gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2017013020170105
29127refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2017013020170105
29145refgcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2017013020170105
30141refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2017013020170105
30150refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2017013020170105
30159refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2017013020170105
30165refgcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2017013020170105
30507refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2017013020170105
30507refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2017013020170105
30513refgcc -m64 -march=core-avx2 -O -fomit-frame-pointer2017013020170105
32148refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2017013020170105
32196refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2017013020170105
32202refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2017013020170105
32508refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2017013020170105
32553refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2017013020170105
32559refgcc -funroll-loops -O -fomit-frame-pointer2017013020170105
32565refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2017013020170105
32643refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2017013020170105
32676refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2017013020170105
32679refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2017013020170105
32688refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2017013020170105
32697refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2017013020170105
32697refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2017013020170105
32703refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2017013020170105
32715refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2017013020170105
32727refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2017013020170105
32742refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2017013020170105
32754refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2017013020170105
32757refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2017013020170105
32982refgcc -march=k8 -O -fomit-frame-pointer2017013020170105
32988refgcc -m64 -march=k8 -O -fomit-frame-pointer2017013020170105
32991refgcc -march=nocona -O -fomit-frame-pointer2017013020170105
33012refgcc -funroll-loops -O2 -fomit-frame-pointer2017013020170105
33012refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2017013020170105
33015refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2017013020170105
33027refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2017013020170105
33030refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2017013020170105
33039refgcc -m64 -march=core-avx-i -O -fomit-frame-pointer2017013020170105
33042refgcc -funroll-loops -O3 -fomit-frame-pointer2017013020170105
33057refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2017013020170105
33063refgcc -m64 -march=corei7 -O -fomit-frame-pointer2017013020170105
33180refgcc -O -fomit-frame-pointer2017013020170105
33180refgcc -m64 -O -fomit-frame-pointer2017013020170105
33222refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2017013020170105
33543refclang -O3 -fomit-frame-pointer -Qunused-arguments2017013020170105
33549refclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017013020170105
33552refgcc -march=nocona -O2 -fomit-frame-pointer2017013020170105
33555refclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017013020170105
33555refgcc -m64 -march=barcelona -O -fomit-frame-pointer2017013020170105
33573refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2017013020170105
33582refgcc -m64 -march=barcelona -O -fomit-frame-pointer2017013020170105
33594refclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017013020170105
33600refgcc -funroll-loops -m64 -O -fomit-frame-pointer2017013020170105
33924refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2017013020170105
33945refgcc -m64 -O3 -fomit-frame-pointer2017013020170105
33951refgcc -O3 -fomit-frame-pointer2017013020170105
33972refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2017013020170105
33990refgcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2017013020170105
34002refgcc -O2 -fomit-frame-pointer2017013020170105
34005refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2017013020170105
34008refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2017013020170105
34011refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017013020170105
34011refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2017013020170105
34023refgcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2017013020170105
34032refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2017013020170105
34035refgcc -m64 -O2 -fomit-frame-pointer2017013020170105
34041refgcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2017013020170105
34077refgcc -m64 -march=nocona -O -fomit-frame-pointer2017013020170105
34143refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2017013020170105
34146refgcc -m64 -march=core2 -O -fomit-frame-pointer2017013020170105
34194refgcc -march=k8 -O2 -fomit-frame-pointer2017013020170105
34209refgcc -march=k8 -O3 -fomit-frame-pointer2017013020170105
34215refgcc -march=barcelona -O2 -fomit-frame-pointer2017013020170105
34230refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2017013020170105
34230refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2017013020170105
34239refgcc -march=barcelona -O3 -fomit-frame-pointer2017013020170105
34242refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2017013020170105
34257refgcc -fno-schedule-insns -O -fomit-frame-pointer2017013020170105
34293refclang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments2017013020170105
34455refclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2017013020170105
34653refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2017013020170105
34686refgcc -march=nocona -O3 -fomit-frame-pointer2017013020170105
34695refgcc -march=barcelona -O -fomit-frame-pointer2017013020170105
35055refclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2017013020170105
35079refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2017013020170105
35085refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017013020170105
35151refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2017013020170105
35163refgcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2017013020170105
35202refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2017013020170105
35319refgcc -m64 -march=corei7-avx -O -fomit-frame-pointer2017013020170105
35334refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2017013020170105
35340refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2017013020170105
35352refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2017013020170105
35493refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2017013020170105
36039refclang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2017013020170105

Checksum failure

Implementation: crypto_hash/bash512/ref
Compiler: cc
a397472ba7599635360cf4397e77b42145d47322e3ee531180b21ebf8e99930d
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/bash512/ref
Compiler: gcc -m64 -march=barcelona -Os -fomit-frame-pointer
a397472ba7599635360cf4397e77b42145d47322e3ee531180b21ebf8e99930d a397472ba7599635360cf4397e77b42145d47322e3ee531180b21ebf8e99930d
Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -m64 -march=barcelona -Os -fomit-frame-pointer ref

Compiler output

Implementation: crypto_hash/bash512/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/bash512/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/bash512/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