Implementation notes: amd64, ryzen, crypto_hash/bash384

Computer: ryzen
Architecture: amd64
CPU ID: AuthenticAMD-00800f11-178bfbff
SUPERCOP version: 20170904
Operation: crypto_hash
Primitive: bash384
TimeImplementationCompilerBenchmark dateSUPERCOP version
30570avx2clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2017091120170904
30600avx2clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017091120170904
30810avx2clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2017091120170904
30810avx2clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2017091120170904
30960avx2gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2017091120170904
30990avx2gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2017091120170904
31020avx2gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2017091120170904
31080avx2gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2017091120170904
31110avx2gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2017091120170904
31200avx2gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2017091120170904
31620avx2gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2017091120170904
31770avx2gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2017091120170904
31800avx2gcc -m64 -march=core-avx2 -O -fomit-frame-pointer2017091120170904
31890avx2gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2017091120170904
32160avx2gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2017091120170904
81240avx2gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2017091120170904

Checksum failure

Implementation: crypto_hash/bash384/ref
Compiler: cc
5375eb5598e0761cfb8ba51fe71d22966f54da0039becf495a65d0f5ccc08558
Number of similar (compiler,implementation) pairs: 119, namely:
CompilerImplementations
cc ref
clang -O3 -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments ref
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
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
icc ref
icc -no-vec ref

Checksum failure

Implementation: crypto_hash/bash384/ref
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
5375eb5598e0761cfb8ba51fe71d22966f54da0039becf495a65d0f5ccc08558 5375eb5598e0761cfb8ba51fe71d22966f54da0039becf495a65d0f5ccc08558
Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
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

Compiler output

Implementation: crypto_hash/bash384/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'; did you mean 'm25'?
bash_avx2.c: u256 S1,S2,T0,T1,T2,U0,U1,U2;
bash_avx2.c: ^~~~
bash_avx2.c: m25
bash_avx2.c: bash_avx2.c:272:5: error: unknown type name 'u256'; did you mean 'm25'?
bash_avx2.c: u256 W0 = LOADW( S + 0 );
bash_avx2.c: ^~~~
bash_avx2.c: m25
bash_avx2.c: bash_avx2.c:272:15: warning: implicit declaration of function 'LOADW' [-Wimplicit-function-declaration]
bash_avx2.c: u256 W0 = LOADW( S + 0 );
bash_avx2.c: ^~~~~
bash_avx2.c: bash_avx2.c:273:5: error: unknown type name 'u256'; did you mean 'm25'?
bash_avx2.c: u256 W1 = LOADW( S + 4 );
bash_avx2.c: ^~~~
bash_avx2.c: m25
bash_avx2.c: bash_avx2.c:274:5: error: unknown type name 'u256'; did you mean 'm25'?
bash_avx2.c: u256 W2 = LOADW( S + 8 );
bash_avx2.c: ^~~~
bash_avx2.c: m25
bash_avx2.c: bash_avx2.c:275:5: error: unknown type name 'u256'; did you mean 'm25'?
bash_avx2.c: u256 W3 = LOADW( S + 12 );
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/bash384/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: u256 W1 = LOADW( S + 4 );
bash_avx2.c: ^
bash_avx2.c: bash_avx2.c:274:5: error: use of undeclared identifier 'u256'
bash_avx2.c: u256 W2 = LOADW( S + 8 );
bash_avx2.c: ^
bash_avx2.c: bash_avx2.c:275:5: error: use of undeclared identifier 'u256'
bash_avx2.c: u256 W3 = LOADW( S + 12 );
bash_avx2.c: ^
bash_avx2.c: bash_avx2.c:276:5: error: use of undeclared identifier 'u256'
bash_avx2.c: u256 W4 = LOADW( S + 16 );
bash_avx2.c: ^
bash_avx2.c: bash_avx2.c:277:5: error: use of undeclared identifier 'u256'
bash_avx2.c: u256 W5 = LOADW( S + 20 );
bash_avx2.c: ^
bash_avx2.c: bash_avx2.c:279:34: error: use of undeclared identifier 'S2'
bash_avx2.c: ...

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/bash384/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'; did you mean 'm25'?
bash_avx2.c: u256 S1,S2,T0,T1,T2,U0,U1,U2;
bash_avx2.c: ^~~~
bash_avx2.c: m25
bash_avx2.c: bash_avx2.c:272:5: error: unknown type name 'u256'; did you mean 'm25'?
bash_avx2.c: u256 W0 = LOADW( S + 0 );
bash_avx2.c: ^~~~
bash_avx2.c: m25
bash_avx2.c: bash_avx2.c:272:15: warning: implicit declaration of function 'LOADW' [-Wimplicit-function-declaration]
bash_avx2.c: u256 W0 = LOADW( S + 0 );
bash_avx2.c: ^~~~~
bash_avx2.c: bash_avx2.c:273:5: error: unknown type name 'u256'; did you mean 'm25'?
bash_avx2.c: u256 W1 = LOADW( S + 4 );
bash_avx2.c: ^~~~
bash_avx2.c: m25
bash_avx2.c: bash_avx2.c:274:5: error: unknown type name 'u256'; did you mean 'm25'?
bash_avx2.c: u256 W2 = LOADW( S + 8 );
bash_avx2.c: ^~~~
bash_avx2.c: m25
bash_avx2.c: bash_avx2.c:275:5: error: unknown type name 'u256'; did you mean 'm25'?
bash_avx2.c: u256 W3 = LOADW( S + 12 );
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'; did you mean 'm25'?
bash_avx2.c: u256 S1,S2,T0,T1,T2,U0,U1,U2;
bash_avx2.c: ^~~~
bash_avx2.c: m25
bash_avx2.c: bash_avx2.c:272:5: error: unknown type name 'u256'; did you mean 'm25'?
bash_avx2.c: u256 W0 = LOADW( S + 0 );
bash_avx2.c: ^~~~
bash_avx2.c: m25
bash_avx2.c: bash_avx2.c:272:15: warning: implicit declaration of function 'LOADW' [-Wimplicit-function-declaration]
bash_avx2.c: u256 W0 = LOADW( S + 0 );
bash_avx2.c: ^~~~~
bash_avx2.c: bash_avx2.c:273:5: error: unknown type name 'u256'; did you mean 'm25'?
bash_avx2.c: u256 W1 = LOADW( S + 4 );
bash_avx2.c: ^~~~
bash_avx2.c: m25
bash_avx2.c: bash_avx2.c:274:5: error: unknown type name 'u256'; did you mean 'm25'?
bash_avx2.c: u256 W2 = LOADW( S + 8 );
bash_avx2.c: ^~~~
bash_avx2.c: m25
bash_avx2.c: bash_avx2.c:275:5: error: unknown type name 'u256'; did you mean 'm25'?
bash_avx2.c: u256 W3 = LOADW( S + 12 );
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

Compiler output

Implementation: crypto_hash/bash384/avx2
Compiler: icc
bash_avx2.c: bash_avx2.c(70): error: #error directive: "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: bash_avx2.c(271): error: identifier "u256" is undefined
bash_avx2.c: u256 S1,S2,T0,T1,T2,U0,U1,U2;
bash_avx2.c: ^
bash_avx2.c:
bash_avx2.c: bash_avx2.c(272): error: identifier "u256" is undefined
bash_avx2.c: u256 W0 = LOADW( S + 0 );
bash_avx2.c: ^
bash_avx2.c:
bash_avx2.c: bash_avx2.c(272): warning #266: function "LOADW" declared implicitly
bash_avx2.c: u256 W0 = LOADW( S + 0 );
bash_avx2.c: ^
bash_avx2.c:
bash_avx2.c: bash_avx2.c(273): error: identifier "u256" is undefined
bash_avx2.c: u256 W1 = LOADW( S + 4 );
bash_avx2.c: ^
bash_avx2.c:
bash_avx2.c: bash_avx2.c(274): error: identifier "u256" is undefined
bash_avx2.c: u256 W2 = LOADW( S + 8 );
bash_avx2.c: ^
bash_avx2.c:
bash_avx2.c: bash_avx2.c(275): error: identifier "u256" is undefined
bash_avx2.c: ...

Number of similar (compiler,implementation) pairs: 19, namely:
CompilerImplementations
icc avx2
icc -O1 -static avx2
icc -O1 -static -no-vec avx2
icc -O2 -static avx2
icc -O2 -static -no-vec avx2
icc -O3 -static avx2
icc -O3 -static -no-vec avx2
icc -Os -static avx2
icc -Os -static -no-vec avx2
icc -fast avx2
icc -m64 -O1 -static avx2
icc -m64 -O1 -static -no-vec avx2
icc -m64 -O2 -static avx2
icc -m64 -O2 -static -no-vec avx2
icc -m64 -O3 -static avx2
icc -m64 -O3 -static -no-vec avx2
icc -m64 -Os -static avx2
icc -m64 -Os -static -no-vec avx2
icc -no-vec avx2

Compiler output

Implementation: crypto_hash/bash384/ref
Compiler: icc -O1 -static
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 16, namely:
CompilerImplementations
icc -O1 -static ref
icc -O1 -static -no-vec ref
icc -O2 -static ref
icc -O2 -static -no-vec ref
icc -O3 -static ref
icc -O3 -static -no-vec ref
icc -Os -static ref
icc -Os -static -no-vec ref
icc -m64 -O1 -static ref
icc -m64 -O1 -static -no-vec ref
icc -m64 -O2 -static ref
icc -m64 -O2 -static -no-vec ref
icc -m64 -O3 -static ref
icc -m64 -O3 -static -no-vec ref
icc -m64 -Os -static ref
icc -m64 -Os -static -no-vec ref

Compiler output

Implementation: crypto_hash/bash384/ref
Compiler: icc -O1 -xB -static
bash.c: icc: command line warning #10131: extension 'B' not supported ignored in option '-x'
hash.c: icc: command line warning #10131: extension 'B' not supported ignored in option '-x'
try.c: icc: command line warning #10131: extension 'B' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xB -static ref
icc -O1 -xB -static -no-vec ref
icc -O2 -xB -static ref
icc -O2 -xB -static -no-vec ref
icc -O3 -xB -static ref
icc -O3 -xB -static -no-vec ref
icc -Os -xB -static ref
icc -Os -xB -static -no-vec ref

Compiler output

Implementation: crypto_hash/bash384/avx2
Compiler: icc -O1 -xB -static
bash_avx2.c: icc: command line warning #10131: extension 'B' not supported ignored in option '-x'
bash_avx2.c: bash_avx2.c(70): error: #error directive: "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: bash_avx2.c(271): error: identifier "u256" is undefined
bash_avx2.c: u256 S1,S2,T0,T1,T2,U0,U1,U2;
bash_avx2.c: ^
bash_avx2.c:
bash_avx2.c: bash_avx2.c(272): error: identifier "u256" is undefined
bash_avx2.c: u256 W0 = LOADW( S + 0 );
bash_avx2.c: ^
bash_avx2.c:
bash_avx2.c: bash_avx2.c(272): warning #266: function "LOADW" declared implicitly
bash_avx2.c: u256 W0 = LOADW( S + 0 );
bash_avx2.c: ^
bash_avx2.c:
bash_avx2.c: bash_avx2.c(273): error: identifier "u256" is undefined
bash_avx2.c: u256 W1 = LOADW( S + 4 );
bash_avx2.c: ^
bash_avx2.c:
bash_avx2.c: bash_avx2.c(274): error: identifier "u256" is undefined
bash_avx2.c: u256 W2 = LOADW( S + 8 );
bash_avx2.c: ^
bash_avx2.c:
bash_avx2.c: ...

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xB -static avx2
icc -O1 -xB -static -no-vec avx2
icc -O2 -xB -static avx2
icc -O2 -xB -static -no-vec avx2
icc -O3 -xB -static avx2
icc -O3 -xB -static -no-vec avx2
icc -Os -xB -static avx2
icc -Os -xB -static -no-vec avx2

Compiler output

Implementation: crypto_hash/bash384/ref
Compiler: icc -O1 -xK -static
bash.c: icc: command line warning #10131: extension 'K' not supported ignored in option '-x'
hash.c: icc: command line warning #10131: extension 'K' not supported ignored in option '-x'
try.c: icc: command line warning #10131: extension 'K' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xK -static ref
icc -O1 -xK -static -no-vec ref
icc -O2 -xK -static ref
icc -O2 -xK -static -no-vec ref
icc -O3 -xK -static ref
icc -O3 -xK -static -no-vec ref
icc -Os -xK -static ref
icc -Os -xK -static -no-vec ref

Compiler output

Implementation: crypto_hash/bash384/avx2
Compiler: icc -O1 -xK -static
bash_avx2.c: icc: command line warning #10131: extension 'K' not supported ignored in option '-x'
bash_avx2.c: bash_avx2.c(70): error: #error directive: "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: bash_avx2.c(271): error: identifier "u256" is undefined
bash_avx2.c: u256 S1,S2,T0,T1,T2,U0,U1,U2;
bash_avx2.c: ^
bash_avx2.c:
bash_avx2.c: bash_avx2.c(272): error: identifier "u256" is undefined
bash_avx2.c: u256 W0 = LOADW( S + 0 );
bash_avx2.c: ^
bash_avx2.c:
bash_avx2.c: bash_avx2.c(272): warning #266: function "LOADW" declared implicitly
bash_avx2.c: u256 W0 = LOADW( S + 0 );
bash_avx2.c: ^
bash_avx2.c:
bash_avx2.c: bash_avx2.c(273): error: identifier "u256" is undefined
bash_avx2.c: u256 W1 = LOADW( S + 4 );
bash_avx2.c: ^
bash_avx2.c:
bash_avx2.c: bash_avx2.c(274): error: identifier "u256" is undefined
bash_avx2.c: u256 W2 = LOADW( S + 8 );
bash_avx2.c: ^
bash_avx2.c:
bash_avx2.c: ...

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xK -static avx2
icc -O1 -xK -static -no-vec avx2
icc -O2 -xK -static avx2
icc -O2 -xK -static -no-vec avx2
icc -O3 -xK -static avx2
icc -O3 -xK -static -no-vec avx2
icc -Os -xK -static avx2
icc -Os -xK -static -no-vec avx2

Compiler output

Implementation: crypto_hash/bash384/ref
Compiler: icc -O1 -xN -static
bash.c: icc: command line warning #10131: extension 'N' not supported ignored in option '-x'
hash.c: icc: command line warning #10131: extension 'N' not supported ignored in option '-x'
try.c: icc: command line warning #10131: extension 'N' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xN -static ref
icc -O1 -xN -static -no-vec ref
icc -O2 -xN -static ref
icc -O2 -xN -static -no-vec ref
icc -O3 -xN -static ref
icc -O3 -xN -static -no-vec ref
icc -Os -xN -static ref
icc -Os -xN -static -no-vec ref

Compiler output

Implementation: crypto_hash/bash384/avx2
Compiler: icc -O1 -xN -static
bash_avx2.c: icc: command line warning #10131: extension 'N' not supported ignored in option '-x'
bash_avx2.c: bash_avx2.c(70): error: #error directive: "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: bash_avx2.c(271): error: identifier "u256" is undefined
bash_avx2.c: u256 S1,S2,T0,T1,T2,U0,U1,U2;
bash_avx2.c: ^
bash_avx2.c:
bash_avx2.c: bash_avx2.c(272): error: identifier "u256" is undefined
bash_avx2.c: u256 W0 = LOADW( S + 0 );
bash_avx2.c: ^
bash_avx2.c:
bash_avx2.c: bash_avx2.c(272): warning #266: function "LOADW" declared implicitly
bash_avx2.c: u256 W0 = LOADW( S + 0 );
bash_avx2.c: ^
bash_avx2.c:
bash_avx2.c: bash_avx2.c(273): error: identifier "u256" is undefined
bash_avx2.c: u256 W1 = LOADW( S + 4 );
bash_avx2.c: ^
bash_avx2.c:
bash_avx2.c: bash_avx2.c(274): error: identifier "u256" is undefined
bash_avx2.c: u256 W2 = LOADW( S + 8 );
bash_avx2.c: ^
bash_avx2.c:
bash_avx2.c: ...

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xN -static avx2
icc -O1 -xN -static -no-vec avx2
icc -O2 -xN -static avx2
icc -O2 -xN -static -no-vec avx2
icc -O3 -xN -static avx2
icc -O3 -xN -static -no-vec avx2
icc -Os -xN -static avx2
icc -Os -xN -static -no-vec avx2

Compiler output

Implementation: crypto_hash/bash384/ref
Compiler: icc -O1 -xW -static
bash.c: icc: command line warning #10131: extension 'W' not supported ignored in option '-x'
hash.c: icc: command line warning #10131: extension 'W' not supported ignored in option '-x'
try.c: icc: command line warning #10131: extension 'W' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xW -static ref
icc -O1 -xW -static -no-vec ref
icc -O2 -xW -static ref
icc -O2 -xW -static -no-vec ref
icc -O3 -xW -static ref
icc -O3 -xW -static -no-vec ref
icc -Os -xW -static ref
icc -Os -xW -static -no-vec ref

Compiler output

Implementation: crypto_hash/bash384/avx2
Compiler: icc -O1 -xW -static
bash_avx2.c: icc: command line warning #10131: extension 'W' not supported ignored in option '-x'
bash_avx2.c: bash_avx2.c(70): error: #error directive: "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: bash_avx2.c(271): error: identifier "u256" is undefined
bash_avx2.c: u256 S1,S2,T0,T1,T2,U0,U1,U2;
bash_avx2.c: ^
bash_avx2.c:
bash_avx2.c: bash_avx2.c(272): error: identifier "u256" is undefined
bash_avx2.c: u256 W0 = LOADW( S + 0 );
bash_avx2.c: ^
bash_avx2.c:
bash_avx2.c: bash_avx2.c(272): warning #266: function "LOADW" declared implicitly
bash_avx2.c: u256 W0 = LOADW( S + 0 );
bash_avx2.c: ^
bash_avx2.c:
bash_avx2.c: bash_avx2.c(273): error: identifier "u256" is undefined
bash_avx2.c: u256 W1 = LOADW( S + 4 );
bash_avx2.c: ^
bash_avx2.c:
bash_avx2.c: bash_avx2.c(274): error: identifier "u256" is undefined
bash_avx2.c: u256 W2 = LOADW( S + 8 );
bash_avx2.c: ^
bash_avx2.c:
bash_avx2.c: ...

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xW -static avx2
icc -O1 -xW -static -no-vec avx2
icc -O2 -xW -static avx2
icc -O2 -xW -static -no-vec avx2
icc -O3 -xW -static avx2
icc -O3 -xW -static -no-vec avx2
icc -Os -xW -static avx2
icc -Os -xW -static -no-vec avx2

Compiler output

Implementation: crypto_hash/bash384/ref
Compiler: icc -fast
try.c: ipo: warning #11003: no IR in object file /root/supercop-20170904/supercop-data/ryzen/amd64/lib/kernelrandombytes.o; was the source file compiled with -ipo
try.c: ipo: warning #11003: no IR in object file /root/supercop-20170904/supercop-data/ryzen/amd64/lib/cpucycles.o; was the source file compiled with -ipo
try.c: ld: cannot find -lcrypto

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

Compiler output

Implementation: crypto_hash/bash384/ref
Compiler: icc -m64 -xHost -vec-report0 -static
bash.c: icc: command line remark #10148: option '-vec-report0' not supported
hash.c: icc: command line remark #10148: option '-vec-report0' not supported
try.c: icc: command line remark #10148: option '-vec-report0' not supported
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -m64 -xHost -vec-report0 -static ref

Compiler output

Implementation: crypto_hash/bash384/avx2
Compiler: icc -m64 -xHost -vec-report0 -static
bash_avx2.c: icc: command line remark #10148: option '-vec-report0' not supported
bash_avx2.c: bash_avx2.c(70): error: #error directive: "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: bash_avx2.c(271): error: identifier "u256" is undefined
bash_avx2.c: u256 S1,S2,T0,T1,T2,U0,U1,U2;
bash_avx2.c: ^
bash_avx2.c:
bash_avx2.c: bash_avx2.c(272): error: identifier "u256" is undefined
bash_avx2.c: u256 W0 = LOADW( S + 0 );
bash_avx2.c: ^
bash_avx2.c:
bash_avx2.c: bash_avx2.c(272): warning #266: function "LOADW" declared implicitly
bash_avx2.c: u256 W0 = LOADW( S + 0 );
bash_avx2.c: ^
bash_avx2.c:
bash_avx2.c: bash_avx2.c(273): error: identifier "u256" is undefined
bash_avx2.c: u256 W1 = LOADW( S + 4 );
bash_avx2.c: ^
bash_avx2.c:
bash_avx2.c: bash_avx2.c(274): error: identifier "u256" is undefined
bash_avx2.c: u256 W2 = LOADW( S + 8 );
bash_avx2.c: ^
bash_avx2.c:
bash_avx2.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -m64 -xHost -vec-report0 -static avx2