Implementation notes: amd64, rumba5, crypto_hash/sha3384

Computer: rumba5
Architecture: amd64
CPU ID: AuthenticAMD-00800f11-178bfbff
SUPERCOP version: 20171218
Operation: crypto_hash
Primitive: sha3384
TimeImplementationCompilerBenchmark dateSUPERCOP version
19328oncore32bitsgcc -O3 -fomit-frame-pointer2018051620171218
19328oncore32bitsgcc -m64 -O3 -fomit-frame-pointer2018051620171218
19360oncore32bitsgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2018051620171218
19360oncore32bitsgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2018051620171218
19360oncore32bitsgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2018051620171218
19360oncore32bitsgcc -m64 -march=core2 -O3 -fomit-frame-pointer2018051620171218
19360oncore32bitsgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2018051620171218
19392oncore32bitsgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2018051620171218
19392oncore32bitsgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2018051620171218
19392oncore32bitsgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2018051620171218
19392oncore32bitsgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2018051620171218
19392oncore32bitsgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2018051620171218
19392oncore32bitsgcc -m64 -march=k8 -O3 -fomit-frame-pointer2018051620171218
19424oncore32bitsgcc -fno-schedule-insns -O3 -fomit-frame-pointer2018051620171218
19424oncore32bitsgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2018051620171218
19424oncore32bitsgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2018051620171218
19424oncore32bitsgcc -march=barcelona -O3 -fomit-frame-pointer2018051620171218
19424oncore32bitsgcc -march=k8 -O3 -fomit-frame-pointer2018051620171218
19424oncore32bitsgcc -march=nocona -O3 -fomit-frame-pointer2018051620171218
19456oncore32bitsgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2018051620171218
19488oncore32bitsgcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2018051620171218
19488oncore32bitsgcc -m64 -march=nocona -O3 -fomit-frame-pointer2018051620171218
19520oncore32bitsgcc -funroll-loops -O3 -fomit-frame-pointer2018051620171218
19616oncore32bitsclang -O3 -fomit-frame-pointer -Qunused-arguments2018051620171218
19872oncore32bitsgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2018051620171218
19872oncore32bitsgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2018051620171218
20672oncore32bitsgcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2018051620171218
21184oncore32bitsgcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2018051620171218
21568oncore32bitsclang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments2018051620171218
21568oncore32bitsclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2018051620171218
21568oncore32bitsclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018051620171218
21600oncore32bitsclang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2018051620171218
21600oncore32bitsclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018051620171218
21632oncore32bitsclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2018051620171218
21632oncore32bitsclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018051620171218
21696oncore32bitsclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2018051620171218
21696oncore32bitsclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018051620171218
21760oncore32bitsgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2018051620171218
21888oncore32bitsgcc -funroll-loops -O2 -fomit-frame-pointer2018051620171218
21888oncore32bitsgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2018051620171218
21888oncore32bitsgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2018051620171218
21888oncore32bitsgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2018051620171218
21888oncore32bitsgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2018051620171218
21920oncore32bitsgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2018051620171218
21952oncore32bitsgcc -funroll-loops -Os -fomit-frame-pointer2018051620171218
21952oncore32bitsgcc -funroll-loops -m64 -Os -fomit-frame-pointer2018051620171218
21984oncore32bitsgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2018051620171218
22016oncore32bitsgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2018051620171218
22016oncore32bitsgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2018051620171218
22016oncore32bitsgcc -m64 -march=k8 -O2 -fomit-frame-pointer2018051620171218
22016oncore32bitsgcc -march=k8 -O2 -fomit-frame-pointer2018051620171218
22048oncore32bitsgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2018051620171218
22048oncore32bitsgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2018051620171218
22048oncore32bitsgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2018051620171218
22080oncore32bitsgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2018051620171218
22080oncore32bitsgcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2018051620171218
22080oncore32bitsgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2018051620171218
22112oncore32bitsgcc -O2 -fomit-frame-pointer2018051620171218
22112oncore32bitsgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2018051620171218
22112oncore32bitsgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2018051620171218
22112oncore32bitsgcc -m64 -march=barcelona -Os -fomit-frame-pointer2018051620171218
22112oncore32bitsgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2018051620171218
22112oncore32bitsgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2018051620171218
22112oncore32bitsgcc -march=nocona -O -fomit-frame-pointer2018051620171218
22144oncore32bitsgcc -Os -fomit-frame-pointer2018051620171218
22144oncore32bitsgcc -m64 -march=barcelona -O -fomit-frame-pointer2018051620171218
22144oncore32bitsgcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2018051620171218
22144oncore32bitsgcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2018051620171218
22144oncore32bitsgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2018051620171218
22144oncore32bitsgcc -m64 -march=k8 -Os -fomit-frame-pointer2018051620171218
22144oncore32bitsgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2018051620171218
22144oncore32bitsgcc -m64 -march=nocona -O -fomit-frame-pointer2018051620171218
22144oncore32bitsgcc -march=barcelona -Os -fomit-frame-pointer2018051620171218
22176oncore32bitsgcc -O -fomit-frame-pointer2018051620171218
22176oncore32bitsgcc -fno-schedule-insns -Os -fomit-frame-pointer2018051620171218
22176oncore32bitsgcc -funroll-loops -O -fomit-frame-pointer2018051620171218
22176oncore32bitsgcc -funroll-loops -m64 -O -fomit-frame-pointer2018051620171218
22176oncore32bitsgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2018051620171218
22176oncore32bitsgcc -m64 -march=core2 -O2 -fomit-frame-pointer2018051620171218
22208oncore32bitsgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2018051620171218
22208oncore32bitsgcc -m64 -O2 -fomit-frame-pointer2018051620171218
22208oncore32bitsgcc -m64 -Os -fomit-frame-pointer2018051620171218
22208oncore32bitsgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2018051620171218
22208oncore32bitsgcc -m64 -march=core-avx-i -O -fomit-frame-pointer2018051620171218
22208oncore32bitsgcc -m64 -march=core2 -Os -fomit-frame-pointer2018051620171218
22208oncore32bitsgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2018051620171218
22208oncore32bitsgcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2018051620171218
22208oncore32bitsgcc -m64 -march=corei7 -O -fomit-frame-pointer2018051620171218
22208oncore32bitsgcc -march=barcelona -O2 -fomit-frame-pointer2018051620171218
22208oncore32bitsgcc -march=k8 -Os -fomit-frame-pointer2018051620171218
22240oncore32bitsgcc -fno-schedule-insns -O2 -fomit-frame-pointer2018051620171218
22240oncore32bitsgcc -fno-schedule-insns -O -fomit-frame-pointer2018051620171218
22240oncore32bitsgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2018051620171218
22240oncore32bitsgcc -m64 -O -fomit-frame-pointer2018051620171218
22240oncore32bitsgcc -m64 -march=core-avx2 -O -fomit-frame-pointer2018051620171218
22240oncore32bitsgcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2018051620171218
22240oncore32bitsgcc -m64 -march=core2 -O -fomit-frame-pointer2018051620171218
22240oncore32bitsgcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2018051620171218
22240oncore32bitsgcc -m64 -march=corei7-avx -O -fomit-frame-pointer2018051620171218
22240oncore32bitsgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2018051620171218
22240oncore32bitsgcc -m64 -march=k8 -O -fomit-frame-pointer2018051620171218
22240oncore32bitsgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2018051620171218
22240oncore32bitsgcc -march=barcelona -O -fomit-frame-pointer2018051620171218
22272oncore32bitsgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2018051620171218
22272oncore32bitsgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2018051620171218
22272oncore32bitsgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2018051620171218
22272oncore32bitsgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2018051620171218
22272oncore32bitsgcc -m64 -march=corei7 -Os -fomit-frame-pointer2018051620171218
22272oncore32bitsgcc -march=nocona -Os -fomit-frame-pointer2018051620171218
22304oncore32bitsgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2018051620171218
22304oncore32bitsgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2018051620171218
22304oncore32bitsgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2018051620171218
22304oncore32bitsgcc -march=k8 -O -fomit-frame-pointer2018051620171218
22304oncore32bitsgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2018051620171218
22304oncore32bitsgcc -march=nocona -O2 -fomit-frame-pointer2018051620171218
22400oncore32bitsgcc -m64 -march=nocona -O2 -fomit-frame-pointer2018051620171218
22528oncore32bitsgcc -m64 -march=nocona -Os -fomit-frame-pointer2018051620171218
23008oncore32bitsgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2018051620171218
35584oncore64bitsclang -O3 -fomit-frame-pointer -Qunused-arguments2018051620171218
35584oncore64bitsgcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2018051620171218
35584oncore64bitsgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2018051620171218
35584oncore64bitsgcc -march=nocona -O -fomit-frame-pointer2018051620171218
35616oncore64bitsgcc -O3 -fomit-frame-pointer2018051620171218
35616oncore64bitsgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2018051620171218
35616oncore64bitsgcc -m64 -O -fomit-frame-pointer2018051620171218
35616oncore64bitsgcc -m64 -march=core2 -O3 -fomit-frame-pointer2018051620171218
35616oncore64bitsgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2018051620171218
35616oncore64bitsgcc -march=barcelona -O3 -fomit-frame-pointer2018051620171218
35616oncore64bitsgcc -march=k8 -O3 -fomit-frame-pointer2018051620171218
35648oncore64bitsclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018051620171218
35648oncore64bitsgcc -funroll-loops -O -fomit-frame-pointer2018051620171218
35648oncore64bitsgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2018051620171218
35648oncore64bitsgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2018051620171218
35648oncore64bitsgcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2018051620171218
35648oncore64bitsgcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2018051620171218
35648oncore64bitsgcc -m64 -march=k8 -O2 -fomit-frame-pointer2018051620171218
35648oncore64bitsgcc -m64 -march=nocona -O -fomit-frame-pointer2018051620171218
35680oncore64bitsclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018051620171218
35680oncore64bitsgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2018051620171218
35680oncore64bitsgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2018051620171218
35680oncore64bitsgcc -m64 -march=core-avx2 -O -fomit-frame-pointer2018051620171218
35680oncore64bitsgcc -m64 -march=core2 -O2 -fomit-frame-pointer2018051620171218
35680oncore64bitsgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2018051620171218
35680oncore64bitsgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2018051620171218
35680oncore64bitsgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2018051620171218
35712oncore64bitsgcc -O2 -fomit-frame-pointer2018051620171218
35712oncore64bitsgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2018051620171218
35712oncore64bitsgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2018051620171218
35712oncore64bitsgcc -m64 -O2 -fomit-frame-pointer2018051620171218
35712oncore64bitsgcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2018051620171218
35712oncore64bitsgcc -m64 -march=core-avx-i -O -fomit-frame-pointer2018051620171218
35712oncore64bitsgcc -m64 -march=core2 -O -fomit-frame-pointer2018051620171218
35712oncore64bitsgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2018051620171218
35712oncore64bitsgcc -m64 -march=k8 -O -fomit-frame-pointer2018051620171218
35712oncore64bitsgcc -march=k8 -O2 -fomit-frame-pointer2018051620171218
35712oncore64bitsgcc -march=k8 -O -fomit-frame-pointer2018051620171218
35744oncore64bitsclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2018051620171218
35744oncore64bitsgcc -O -fomit-frame-pointer2018051620171218
35744oncore64bitsgcc -funroll-loops -Os -fomit-frame-pointer2018051620171218
35744oncore64bitsgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2018051620171218
35744oncore64bitsgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2018051620171218
35744oncore64bitsgcc -m64 -march=barcelona -O -fomit-frame-pointer2018051620171218
35744oncore64bitsgcc -m64 -march=barcelona -Os -fomit-frame-pointer2018051620171218
35744oncore64bitsgcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2018051620171218
35744oncore64bitsgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2018051620171218
35744oncore64bitsgcc -m64 -march=corei7 -Os -fomit-frame-pointer2018051620171218
35744oncore64bitsgcc -m64 -march=k8 -O3 -fomit-frame-pointer2018051620171218
35744oncore64bitsgcc -m64 -march=k8 -Os -fomit-frame-pointer2018051620171218
35744oncore64bitsgcc -march=barcelona -Os -fomit-frame-pointer2018051620171218
35744oncore64bitsgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2018051620171218
35776oncore64bitsclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2018051620171218
35776oncore64bitsclang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2018051620171218
35776oncore64bitsgcc -fno-schedule-insns -Os -fomit-frame-pointer2018051620171218
35776oncore64bitsgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2018051620171218
35776oncore64bitsgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2018051620171218
35776oncore64bitsgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2018051620171218
35776oncore64bitsgcc -m64 -march=nocona -O3 -fomit-frame-pointer2018051620171218
35776oncore64bitsgcc -march=k8 -Os -fomit-frame-pointer2018051620171218
35808oncore64bitsgcc -Os -fomit-frame-pointer2018051620171218
35808oncore64bitsgcc -funroll-loops -m64 -Os -fomit-frame-pointer2018051620171218
35808oncore64bitsgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2018051620171218
35808oncore64bitsgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2018051620171218
35808oncore64bitsgcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2018051620171218
35808oncore64bitsgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2018051620171218
35840oncore64bitsclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2018051620171218
35840oncore64bitsgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2018051620171218
35840oncore64bitsgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2018051620171218
35840oncore64bitsgcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2018051620171218
35840oncore64bitsgcc -march=barcelona -O -fomit-frame-pointer2018051620171218
35840oncore64bitsgcc -march=nocona -O2 -fomit-frame-pointer2018051620171218
35872oncore32bitscc2018051620171218
35872oncore32bitsgcc2018051620171218
35872oncore32bitsgcc -funroll-loops2018051620171218
35872oncore64bitsgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2018051620171218
35872oncore64bitsgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2018051620171218
35872oncore64bitsgcc -m64 -O3 -fomit-frame-pointer2018051620171218
35872oncore64bitsgcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2018051620171218
35872oncore64bitsgcc -m64 -march=corei7-avx -O -fomit-frame-pointer2018051620171218
35872oncore64bitsgcc -m64 -march=nocona -O2 -fomit-frame-pointer2018051620171218
35872oncore64bitsgcc -march=nocona -O3 -fomit-frame-pointer2018051620171218
35904oncore64bitsclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018051620171218
35904oncore64bitsgcc -funroll-loops -O3 -fomit-frame-pointer2018051620171218
35904oncore64bitsgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2018051620171218
35904oncore64bitsgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2018051620171218
35904oncore64bitsgcc -m64 -march=corei7 -O -fomit-frame-pointer2018051620171218
35904oncore64bitsgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2018051620171218
35936oncore64bitsgcc -fno-schedule-insns -O2 -fomit-frame-pointer2018051620171218
35936oncore64bitsgcc -funroll-loops -m64 -O -fomit-frame-pointer2018051620171218
35936oncore64bitsgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2018051620171218
35936oncore64bitsgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2018051620171218
35936oncore64bitsgcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2018051620171218
35936oncore64bitsgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2018051620171218
35968oncore64bitsclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018051620171218
35968oncore64bitsgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2018051620171218
35968oncore64bitsgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2018051620171218
35968oncore64bitsgcc -m64 -march=core2 -Os -fomit-frame-pointer2018051620171218
36000oncore64bitsgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2018051620171218
36000oncore64bitsgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2018051620171218
36000oncore64bitsgcc -march=nocona -Os -fomit-frame-pointer2018051620171218
36032oncore64bitsgcc -fno-schedule-insns -O -fomit-frame-pointer2018051620171218
36032oncore64bitsgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2018051620171218
36032oncore64bitsgcc -m64 -march=nocona -Os -fomit-frame-pointer2018051620171218
36064oncore64bitsgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2018051620171218
36064oncore64bitsgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2018051620171218
36064oncore64bitsgcc -m64 -Os -fomit-frame-pointer2018051620171218
36064oncore64bitsgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2018051620171218
36064oncore64bitsgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2018051620171218
36096oncore64bitsgcc -march=barcelona -O2 -fomit-frame-pointer2018051620171218
36128oncore64bitsclang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments2018051620171218
36128oncore64bitsgcc -fno-schedule-insns -O3 -fomit-frame-pointer2018051620171218
36128oncore64bitsgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2018051620171218
36128oncore64bitsgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2018051620171218
36160oncore64bitsgcc -funroll-loops -O2 -fomit-frame-pointer2018051620171218
36192oncore64bitsgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2018051620171218
36192oncore64bitsgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2018051620171218
36192oncore64bitsgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2018051620171218
36256oncore64bitsgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2018051620171218
36320oncore64bitsgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2018051620171218
36896oncore64bitsgcc2018051620171218
36896oncore64bitsgcc -funroll-loops2018051620171218
37088oncore64bitscc2018051620171218
40320oncore64bitsgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2018051620171218

Compiler output

Implementation: crypto_hash/sha3384/kcp/optimized1600AVX512
Compiler: cc
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c: In function 'KeccakP1600_AddBytes':
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:216:37: warning: AVX512F vector return without AVX512F enabled changes the ABI [-Wpsabi]
KeccakP-1600-AVX512.c: #define STORE_Lanes(a,m,v) _mm512_mask_storeu_epi64(a,m,v)
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:219:37: note: in expansion of macro 'STORE_Lanes'
KeccakP-1600-AVX512.c: #define STORE_8Lanes(a,v) STORE_Lanes(a,0xFF,v)
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:238:9: note: in expansion of macro 'STORE_8Lanes'
KeccakP-1600-AVX512.c: STORE_8Lanes( stateAsLanes, XOR(LOAD_8Lanes(stateAsLanes), LOAD_8Lanes((const UINT64*)data)));
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:45:0,
KeccakP-1600-AVX512.c: from KeccakP-1600-AVX512.c:26:
KeccakP-1600-AVX512.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx512fintrin.h:5781:1: error: inlining failed in call to always_inline '_mm512_mask_storeu_epi64': target specific option mismatch
KeccakP-1600-AVX512.c: _mm512_mask_storeu_epi64 (void *__P, __mmask8 __U, __m512i __A)
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:216:37: error: called from here
KeccakP-1600-AVX512.c: #define STORE_Lanes(a,m,v) _mm512_mask_storeu_epi64(a,m,v)
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:219:37: note: in expansion of macro 'STORE_Lanes'
KeccakP-1600-AVX512.c: #define STORE_8Lanes(a,v) STORE_Lanes(a,0xFF,v)
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:238:9: note: in expansion of macro 'STORE_8Lanes'
KeccakP-1600-AVX512.c: STORE_8Lanes( stateAsLanes, XOR(LOAD_8Lanes(stateAsLanes), LOAD_8Lanes((const UINT64*)data)));
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:45:0,
KeccakP-1600-AVX512.c: ...

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

Compiler output

Implementation: crypto_hash/sha3384/kcp/optimized1600ARMv7A
Compiler: cc
keccak.s: keccak.s: Assembler messages:
keccak.s: keccak.s:1: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:2: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:3: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:4: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:5: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:6: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:7: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:8: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:9: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:10: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:11: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:12: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:13: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:14: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:16: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:17: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:18: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:23: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:24: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:26: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:53: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:269: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:270: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:271: Error: junk at end of line, first unrecognized character is `@'
keccak.s: ...

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

Compiler output

Implementation: crypto_hash/sha3384/kcp/optimized1600ARMv8A
Compiler: cc
keccak.s: keccak.s: Assembler messages:
keccak.s: keccak.s:258: Error: no such instruction: `movi v0.2d,'
keccak.s: keccak.s:259: Error: no such instruction: `movi v1.2d,'
keccak.s: keccak.s:260: Error: no such instruction: `movi v2.2d,'
keccak.s: keccak.s:261: Error: no such instruction: `movi v3.2d,'
keccak.s: keccak.s:262: Error: no such instruction: `st4 { v0.2d,v1.2d,v2.2d,v3.2d},[x0],'
keccak.s: keccak.s:263: Error: no such instruction: `st4 { v0.2d,v1.2d,v2.2d,v3.2d},[x0],'
keccak.s: keccak.s:264: Error: no such instruction: `st4 { v0.2d,v1.2d,v2.2d,v3.2d},[x0],'
keccak.s: keccak.s:265: Error: no such instruction: `st1 { v0.d}[0],[x0],'
keccak.s: keccak.s:276: Error: no such instruction: `ldrb w3,[x0,x2]'
keccak.s: keccak.s:277: Error: no such instruction: `eor w3,w3,w1'
keccak.s: keccak.s:278: Error: invalid char '[' beginning operand 2 `[x0'
keccak.s: keccak.s:289: Error: too many memory references for `add'
keccak.s: keccak.s:290: Error: too many memory references for `sub'
keccak.s: keccak.s:291: Error: no such instruction: `b.cc KeccakP1600_AddBytes_Exit//length 0,move along'
keccak.s: keccak.s:293: Error: too many memory references for `sub'
keccak.s: keccak.s:294: Error: no such instruction: `b.cc KeccakP1600_AddBytes_Lanes//Jump if length is negative'
keccak.s: keccak.s:295: Error: no such instruction: `ld4 { v0.2d,v1.2d,v2.2d,v3.2d},[x0]'
keccak.s: keccak.s:296: Error: no such instruction: `ld4 { v4.2d,v5.2d,v6.2d,v7.2d},[x1],'
keccak.s: keccak.s:297: Error: no such instruction: `eor v0.16b,v0.16b,v4.16b'
keccak.s: keccak.s:298: Error: no such instruction: `eor v1.16b,v1.16b,v5.16b'
keccak.s: keccak.s:299: Error: no such instruction: `eor v2.16b,v2.16b,v6.16b'
keccak.s: keccak.s:300: Error: no such instruction: `eor v3.16b,v3.16b,v7.16b'
keccak.s: keccak.s:301: Error: no such instruction: `st4 { v0.2d,v1.2d,v2.2d,v3.2d},[x0],'
keccak.s: keccak.s:302: Error: no such instruction: `b KeccakP1600_AddBytes_8LanesLoop'
keccak.s: ...

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

Compiler output

Implementation: crypto_hash/sha3384/kcp/optimized1600AVR8
Compiler: cc
keccak.s: keccak.s: Assembler messages:
keccak.s: keccak.s:2: Error: no such instruction: `implementation by the Keccak,Keyak and Ketje Teams,namely,Guido Bertoni,'
keccak.s: keccak.s:3: Error: no such instruction: `joan Daemen,Michaël Peeters,Gilles Van Assche and Ronny Van Keer,hereby'
keccak.s: keccak.s:4: Error: no such instruction: `denoted as "the implementer".'
keccak.s: keccak.s:6: Error: no such instruction: `for more information,feedback or questions,please refer to our websites:'
keccak.s: keccak.s:11: Error: no such instruction: `to the extent possible under law,the implementer has waived all copyright'
keccak.s: keccak.s:12: Error: junk `or neighboring rights to the source code in this file.' after expression
keccak.s: keccak.s:12: Error: number of operands mismatch for `and'
keccak.s: keccak.s:16: Error: no such instruction: `tested on ATmega1280 simulator'
keccak.s: keccak.s:18: Error: no such instruction: `registers used in all routines'
keccak.s: keccak.s:26: Error: junk at end of line, first unrecognized character is `-'
keccak.s: keccak.s:28: Error: no such instruction: `void KeccakP1600_StaticInitialize( void)'
keccak.s: keccak.s:32: Error: junk at end of line, first unrecognized character is `-'
keccak.s: keccak.s:34: Error: no such instruction: `void KeccakP1600_Initialize(void *state)'
keccak.s: keccak.s:36: Error: no such instruction: `argument state is passed in r24:r25'
keccak.s: keccak.s:40: Error: too many memory references for `mov'
keccak.s: keccak.s:41: Error: no such instruction: `ldi r23,5*5'
keccak.s: keccak.s:41: Error: no such instruction: `clear state (8 bytes/1 lane per iteration)'
keccak.s: keccak.s:43: Error: no such instruction: `st z+,zero'
keccak.s: keccak.s:44: Error: no such instruction: `st z+,zero'
keccak.s: keccak.s:45: Error: no such instruction: `st z+,zero'
keccak.s: keccak.s:46: Error: no such instruction: `st z+,zero'
keccak.s: keccak.s:47: Error: no such instruction: `st z+,zero'
keccak.s: keccak.s:48: Error: no such instruction: `st z+,zero'
keccak.s: keccak.s:49: Error: no such instruction: `st z+,zero'
keccak.s: ...

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

Compiler output

Implementation: crypto_hash/sha3384/kcp/compact1600AVR8
Compiler: cc
keccak.s: keccak.s: Assembler messages:
keccak.s: keccak.s:2: Error: no such instruction: `implementation by the Keccak,Keyak and Ketje Teams,namely,Guido Bertoni,'
keccak.s: keccak.s:3: Error: no such instruction: `joan Daemen,Michaël Peeters,Gilles Van Assche and Ronny Van Keer,hereby'
keccak.s: keccak.s:4: Error: no such instruction: `denoted as "the implementer".'
keccak.s: keccak.s:6: Error: no such instruction: `for more information,feedback or questions,please refer to our websites:'
keccak.s: keccak.s:11: Error: no such instruction: `to the extent possible under law,the implementer has waived all copyright'
keccak.s: keccak.s:12: Error: junk `or neighboring rights to the source code in this file.' after expression
keccak.s: keccak.s:12: Error: number of operands mismatch for `and'
keccak.s: keccak.s:16: Error: no such instruction: `tested on ATmega1280 simulator'
keccak.s: keccak.s:18: Error: no such instruction: `registers used in all routines'
keccak.s: keccak.s:26: Error: junk at end of line, first unrecognized character is `-'
keccak.s: keccak.s:28: Error: no such instruction: `void KeccakP1600_StaticInitialize( void)'
keccak.s: keccak.s:32: Error: junk at end of line, first unrecognized character is `-'
keccak.s: keccak.s:34: Error: no such instruction: `void KeccakP1600_Initialize(void *state)'
keccak.s: keccak.s:36: Error: no such instruction: `argument state is passed in r24:r25'
keccak.s: keccak.s:40: Error: too many memory references for `mov'
keccak.s: keccak.s:41: Error: no such instruction: `ldi r23,5*5*8'
keccak.s: keccak.s:43: Error: no such instruction: `st z+,zero'
keccak.s: keccak.s:44: Error: no instruction mnemonic suffix given and no register operands; can't size instruction
keccak.s: keccak.s:45: Error: no such instruction: `brne KeccakP1600_Initialize_Loop'
keccak.s: keccak.s:49: Error: junk at end of line, first unrecognized character is `-'
keccak.s: keccak.s:51: Error: no such instruction: `void KeccakP1600_AddByte(void *state,unsigned char data,unsigned int offset)'
keccak.s: keccak.s:53: Error: no such instruction: `argument state is passed in r24:r25'
keccak.s: keccak.s:54: Error: no such instruction: `argument data is passed in r22:r23,only LSB (r22)is used'
keccak.s: keccak.s:55: Error: no such instruction: `argument offset is passed in r20:r21,only LSB (r20)is used'
keccak.s: ...

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

Compiler output

Implementation: crypto_hash/sha3384/kcp/optimized1600AVX2
Compiler: clang++ -O3 -fomit-frame-pointer -Qunused-arguments
KeccakSpongeWidth1600.c: clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated
SHA3-384.c: clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:506:12: error: always_inline function '_mm256_loadu_si256' requires target feature 'sse4.2', but would be inlined into function 'KeccakP1600_AddBytes' that is compiled without support for 'sse4.2'
KeccakP-1600-AVX2.cpp: s.a0 = LOAD(t + 0*5);
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:60:41: note: expanded from macro 'LOAD'
KeccakP-1600-AVX2.cpp: #define LOAD(p) _mm256_loadu_si256((const __m256i *)(p))
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:507:12: error: always_inline function '_mm256_loadu_si256' requires target feature 'sse4.2', but would be inlined into function 'KeccakP1600_AddBytes' that is compiled without support for 'sse4.2'
KeccakP-1600-AVX2.cpp: s.a1 = LOAD(t + 1*5);
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:60:41: note: expanded from macro 'LOAD'
KeccakP-1600-AVX2.cpp: #define LOAD(p) _mm256_loadu_si256((const __m256i *)(p))
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:508:12: error: always_inline function '_mm256_loadu_si256' requires target feature 'sse4.2', but would be inlined into function 'KeccakP1600_AddBytes' that is compiled without support for 'sse4.2'
KeccakP-1600-AVX2.cpp: s.a2 = LOAD(t + 2*5);
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:60:41: note: expanded from macro 'LOAD'
KeccakP-1600-AVX2.cpp: #define LOAD(p) _mm256_loadu_si256((const __m256i *)(p))
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:509:12: error: always_inline function '_mm256_loadu_si256' requires target feature 'sse4.2', but would be inlined into function 'KeccakP1600_AddBytes' that is compiled without support for 'sse4.2'
KeccakP-1600-AVX2.cpp: s.a3 = LOAD(t + 3*5);
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:60:41: note: expanded from macro 'LOAD'
KeccakP-1600-AVX2.cpp: #define LOAD(p) _mm256_loadu_si256((const __m256i *)(p))
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:510:12: error: always_inline function '_mm256_loadu_si256' requires target feature 'sse4.2', but would be inlined into function 'KeccakP1600_AddBytes' that is compiled without support for 'sse4.2'
KeccakP-1600-AVX2.cpp: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang++ -O3 -fomit-frame-pointer -Qunused-arguments kcp/optimized1600AVX2
clang++ -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments kcp/optimized1600AVX2
clang++ -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments kcp/optimized1600AVX2
clang++ -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments kcp/optimized1600AVX2

Compiler output

Implementation: crypto_hash/sha3384/kcp/optimized1600AVX2
Compiler: clang++ -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments
KeccakSpongeWidth1600.c: clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated
SHA3-384.c: clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated
try.cpp: crypto_hash_sha3384.a(KeccakSpongeWidth1600.o): In function `KeccakWidth1600_Sponge(unsigned int, unsigned int, unsigned char const*, unsigned long, unsigned char, unsigned char*, unsigned long)':
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_StaticInitialize()'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Initialize(void*)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakF1600_FastLoop_Absorb(void*, unsigned int, unsigned char const*, unsigned long)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddByte(void*, unsigned char, unsigned int)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddByte(void*, unsigned char, unsigned int)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_ExtractBytes(void const*, unsigned char*, unsigned int, unsigned int)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_ExtractBytes(void const*, unsigned char*, unsigned int, unsigned int)'
try.cpp: crypto_hash_sha3384.a(KeccakSpongeWidth1600.o): In function `KeccakWidth1600_SpongeInitialize(KeccakWidth1600_SpongeInstanceStruct*, unsigned int, unsigned int)':
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_StaticInitialize()'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Initialize(void*)'
try.cpp: crypto_hash_sha3384.a(KeccakSpongeWidth1600.o): In function `KeccakWidth1600_SpongeAbsorb(KeccakWidth1600_SpongeInstanceStruct*, unsigned char const*, unsigned long)':
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakF1600_FastLoop_Absorb(void*, unsigned int, unsigned char const*, unsigned long)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang++ -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments kcp/optimized1600AVX2
clang++ -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments kcp/optimized1600AVX2
clang++ -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments kcp/optimized1600AVX2
clang++ -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments kcp/optimized1600AVX2

Compiler output

Implementation: crypto_hash/sha3384/kcp/optimized1600AVX2
Compiler: clang++ -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments
KeccakSpongeWidth1600.c: clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated
SHA3-384.c: clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:641:5: error: always_inline function '_mm256_xor_si256' requires target feature 'avx2', but would be inlined into function 'KeccakP1600_Permute_Nrounds' that is compiled without support for 'avx2'
KeccakP-1600-AVX2.cpp: KECCAK_PERMUTE_LOOP(, nrounds)
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:162:14: note: expanded from macro 'KECCAK_PERMUTE_LOOP'
KeccakP-1600-AVX2.cpp: r0 = XOR(a0, a1); \
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:52:41: note: expanded from macro 'XOR'
KeccakP-1600-AVX2.cpp: #define XOR(a, b) _mm256_xor_si256(a, b)
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:641:5: error: always_inline function '_mm256_xor_si256' requires target feature 'avx2', but would be inlined into function 'KeccakP1600_Permute_Nrounds' that is compiled without support for 'avx2'
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:163:14: note: expanded from macro 'KECCAK_PERMUTE_LOOP'
KeccakP-1600-AVX2.cpp: r0 = XOR(r0, a2); \
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:52:41: note: expanded from macro 'XOR'
KeccakP-1600-AVX2.cpp: #define XOR(a, b) _mm256_xor_si256(a, b)
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:641:5: error: always_inline function '_mm256_xor_si256' requires target feature 'avx2', but would be inlined into function 'KeccakP1600_Permute_Nrounds' that is compiled without support for 'avx2'
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:164:14: note: expanded from macro 'KECCAK_PERMUTE_LOOP'
KeccakP-1600-AVX2.cpp: r0 = XOR(r0, a3); \
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:52:41: note: expanded from macro 'XOR'
KeccakP-1600-AVX2.cpp: #define XOR(a, b) _mm256_xor_si256(a, b)
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:641:5: error: always_inline function '_mm256_xor_si256' requires target feature 'avx2', but would be inlined into function 'KeccakP1600_Permute_Nrounds' that is compiled without support for 'avx2'
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:165:14: note: expanded from macro 'KECCAK_PERMUTE_LOOP'
KeccakP-1600-AVX2.cpp: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang++ -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments kcp/optimized1600AVX2
clang++ -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments kcp/optimized1600AVX2

Compiler output

Implementation: crypto_hash/sha3384/kcp/optimized1600AVX512
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:238:9: error: always_inline function '_mm512_mask_storeu_epi64' requires target feature 'avx2', but would be inlined into function 'KeccakP1600_AddBytes' that is compiled without support for 'avx2'
KeccakP-1600-AVX512.c: STORE_8Lanes( stateAsLanes, XOR(LOAD_8Lanes(stateAsLanes), LOAD_8Lanes((const UINT64*)data)));
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:219:37: note: expanded from macro 'STORE_8Lanes'
KeccakP-1600-AVX512.c: #define STORE_8Lanes(a,v) STORE_Lanes(a,0xFF,v)
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:216:37: note: expanded from macro 'STORE_Lanes'
KeccakP-1600-AVX512.c: #define STORE_Lanes(a,m,v) _mm512_mask_storeu_epi64(a,m,v)
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:238:37: error: always_inline function '_mm512_xor_si512' requires target feature 'avx2', but would be inlined into function 'KeccakP1600_AddBytes' that is compiled without support for 'avx2'
KeccakP-1600-AVX512.c: STORE_8Lanes( stateAsLanes, XOR(LOAD_8Lanes(stateAsLanes), LOAD_8Lanes((const UINT64*)data)));
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:206:37: note: expanded from macro 'XOR'
KeccakP-1600-AVX512.c: #define XOR(a,b) _mm512_xor_si512(a,b)
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:238:41: error: always_inline function '_mm512_maskz_loadu_epi64' requires target feature 'avx2', but would be inlined into function 'KeccakP1600_AddBytes' that is compiled without support for 'avx2'
KeccakP-1600-AVX512.c: STORE_8Lanes( stateAsLanes, XOR(LOAD_8Lanes(stateAsLanes), LOAD_8Lanes((const UINT64*)data)));
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:215:37: note: expanded from macro 'LOAD_8Lanes'
KeccakP-1600-AVX512.c: #define LOAD_8Lanes(a) LOAD_Lanes(0xFF,a)
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:212:37: note: expanded from macro 'LOAD_Lanes'
KeccakP-1600-AVX512.c: #define LOAD_Lanes(m,a) _mm512_maskz_loadu_epi64(m,a)
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:238:68: error: always_inline function '_mm512_maskz_loadu_epi64' requires target feature 'avx2', but would be inlined into function 'KeccakP1600_AddBytes' that is compiled without support for 'avx2'
KeccakP-1600-AVX512.c: ...

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

Compiler output

Implementation: crypto_hash/sha3384/kcp/optimized1600ARMv7A
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
keccak.s: keccak.s:1:2: error: unexpected token at start of statement
keccak.s: @
keccak.s: ^
keccak.s: keccak.s:2:3: error: unexpected token at start of statement
keccak.s: @ Implementation by the Keccak, Keyak and Ketje Teams, namely, Guido Bertoni,
keccak.s: ^
keccak.s: keccak.s:3:3: error: unexpected token at start of statement
keccak.s: @ Joan Daemen, Michaël Peeters, Gilles Van Assche and Ronny Van Keer, hereby
keccak.s: keccak.s:3:21: error: invalid character in input
keccak.s: @ Joan Daemen, Michaël Peeters, Gilles Van Assche and Ronny Van Keer, hereby
keccak.s: keccak.s:3:22: error: invalid character in input
keccak.s: @ Joan Daemen, Michaël Peeters, Gilles Van Assche and Ronny Van Keer, hereby
keccak.s: keccak.s:4:3: error: unexpected token at start of statement
keccak.s: @ denoted as "the implementer".
keccak.s: ^
keccak.s: keccak.s:5:2: error: unexpected token at start of statement
keccak.s: @
keccak.s: ^
keccak.s: keccak.s:6:3: error: unexpected token at start of statement
keccak.s: @ For more information, feedback or questions, please refer to our websites:
keccak.s: ^
keccak.s: keccak.s:7:3: error: unexpected token at start of statement
keccak.s: @ http://keccak.noekeon.org/
keccak.s: ^
keccak.s: keccak.s:8:3: error: unexpected token at start of statement
keccak.s: ...

Number of similar (compiler,implementation) pairs: 10, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments kcp/optimized1600ARMv7A
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments kcp/optimized1600ARMv7A
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments kcp/optimized1600ARMv7A
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments kcp/optimized1600ARMv7A
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments kcp/optimized1600ARMv7A
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments kcp/optimized1600ARMv7A
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments kcp/optimized1600ARMv7A
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments kcp/optimized1600ARMv7A
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments kcp/optimized1600ARMv7A
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments kcp/optimized1600ARMv7A

Compiler output

Implementation: crypto_hash/sha3384/kcp/optimized1600ARMv8A
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
keccak.s: keccak.s:258:20: error: unknown token in expression
keccak.s: movi v0.2d, #0
keccak.s: ^
keccak.s: keccak.s:259:20: error: unknown token in expression
keccak.s: movi v1.2d, #0
keccak.s: ^
keccak.s: keccak.s:260:20: error: unknown token in expression
keccak.s: movi v2.2d, #0
keccak.s: ^
keccak.s: keccak.s:261:20: error: unknown token in expression
keccak.s: movi v3.2d, #0
keccak.s: ^
keccak.s: keccak.s:262:13: error: unknown token in expression
keccak.s: st4 { v0.2d, v1.2d, v2.2d, v3.2d }, [x0], #64 // Clear 8lanes=64 bytes at a time
keccak.s: ^
keccak.s: keccak.s:263:13: error: unknown token in expression
keccak.s: st4 { v0.2d, v1.2d, v2.2d, v3.2d }, [x0], #64
keccak.s: ^
keccak.s: keccak.s:264:13: error: unknown token in expression
keccak.s: st4 { v0.2d, v1.2d, v2.2d, v3.2d }, [x0], #64
keccak.s: ^
keccak.s: keccak.s:265:13: error: unknown token in expression
keccak.s: st1 { v0.d }[0], [x0], #8
keccak.s: ^
keccak.s: keccak.s:276:20: error: expected ']' in brackets expression
keccak.s: ...

Number of similar (compiler,implementation) pairs: 10, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments kcp/optimized1600ARMv8A
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments kcp/optimized1600ARMv8A
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments kcp/optimized1600ARMv8A
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments kcp/optimized1600ARMv8A
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments kcp/optimized1600ARMv8A
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments kcp/optimized1600ARMv8A
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments kcp/optimized1600ARMv8A
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments kcp/optimized1600ARMv8A
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments kcp/optimized1600ARMv8A
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments kcp/optimized1600ARMv8A

Compiler output

Implementation: crypto_hash/sha3384/kcp/compact1600AVR8
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
keccak.s: keccak.s:2:21: error: unexpected token in argument list
keccak.s: ; Implementation by the Keccak, Keyak and Ketje Teams, namely, Guido Bertoni,
keccak.s: ^
keccak.s: keccak.s:3:21: error: invalid character in input
keccak.s: ; Joan Daemen, Michaël Peeters, Gilles Van Assche and Ronny Van Keer, hereby
keccak.s: keccak.s:3:22: error: invalid character in input
keccak.s: ; Joan Daemen, Michaël Peeters, Gilles Van Assche and Ronny Van Keer, hereby
keccak.s: keccak.s:3:21: error: unexpected token in argument list
keccak.s: ; Joan Daemen, Michaël Peeters, Gilles Van Assche and Ronny Van Keer, hereby
keccak.s: keccak.s:4:14: error: unexpected token in argument list
keccak.s: ; denoted as "the implementer".
keccak.s: ^
keccak.s: keccak.s:6:12: error: unexpected token in argument list
keccak.s: ; For more information, feedback or questions, please refer to our websites:
keccak.s: ^
keccak.s: keccak.s:8:3: error: invalid symbol redefinition
keccak.s: ; http://keyak.noekeon.org/
keccak.s: ^
keccak.s: keccak.s:9:3: error: invalid symbol redefinition
keccak.s: ; http://ketje.noekeon.org/
keccak.s: ^
keccak.s: keccak.s:11:10: error: unexpected token in argument list
keccak.s: ; To the extent possible under law, the implementer has waived all copyright
keccak.s: ^
keccak.s: keccak.s:12:15: error: unexpected token in argument list
keccak.s: ...

Number of similar (compiler,implementation) pairs: 20, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments kcp/compact1600AVR8 kcp/optimized1600AVR8
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments kcp/compact1600AVR8 kcp/optimized1600AVR8
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments kcp/compact1600AVR8 kcp/optimized1600AVR8
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments kcp/compact1600AVR8 kcp/optimized1600AVR8
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments kcp/compact1600AVR8 kcp/optimized1600AVR8
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments kcp/compact1600AVR8 kcp/optimized1600AVR8
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments kcp/compact1600AVR8 kcp/optimized1600AVR8
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments kcp/compact1600AVR8 kcp/optimized1600AVR8
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments kcp/compact1600AVR8 kcp/optimized1600AVR8
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments kcp/compact1600AVR8 kcp/optimized1600AVR8

Compiler output

Implementation: crypto_hash/sha3384/kcp/optimized1600AVX512
Compiler: clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:238:9: error: always_inline function '_mm512_mask_storeu_epi64' requires target feature 'avx512f', but would be inlined into function 'KeccakP1600_AddBytes' that is compiled without support for 'avx512f'
KeccakP-1600-AVX512.c: STORE_8Lanes( stateAsLanes, XOR(LOAD_8Lanes(stateAsLanes), LOAD_8Lanes((const UINT64*)data)));
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:219:37: note: expanded from macro 'STORE_8Lanes'
KeccakP-1600-AVX512.c: #define STORE_8Lanes(a,v) STORE_Lanes(a,0xFF,v)
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:216:37: note: expanded from macro 'STORE_Lanes'
KeccakP-1600-AVX512.c: #define STORE_Lanes(a,m,v) _mm512_mask_storeu_epi64(a,m,v)
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:238:37: error: always_inline function '_mm512_xor_si512' requires target feature 'avx512f', but would be inlined into function 'KeccakP1600_AddBytes' that is compiled without support for 'avx512f'
KeccakP-1600-AVX512.c: STORE_8Lanes( stateAsLanes, XOR(LOAD_8Lanes(stateAsLanes), LOAD_8Lanes((const UINT64*)data)));
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:206:37: note: expanded from macro 'XOR'
KeccakP-1600-AVX512.c: #define XOR(a,b) _mm512_xor_si512(a,b)
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:238:41: error: always_inline function '_mm512_maskz_loadu_epi64' requires target feature 'avx512f', but would be inlined into function 'KeccakP1600_AddBytes' that is compiled without support for 'avx512f'
KeccakP-1600-AVX512.c: STORE_8Lanes( stateAsLanes, XOR(LOAD_8Lanes(stateAsLanes), LOAD_8Lanes((const UINT64*)data)));
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:215:37: note: expanded from macro 'LOAD_8Lanes'
KeccakP-1600-AVX512.c: #define LOAD_8Lanes(a) LOAD_Lanes(0xFF,a)
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:212:37: note: expanded from macro 'LOAD_Lanes'
KeccakP-1600-AVX512.c: #define LOAD_Lanes(m,a) _mm512_maskz_loadu_epi64(m,a)
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:238:68: error: always_inline function '_mm512_maskz_loadu_epi64' requires target feature 'avx512f', but would be inlined into function 'KeccakP1600_AddBytes' that is compiled without support for 'avx512f'
KeccakP-1600-AVX512.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments kcp/optimized1600AVX512
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments kcp/optimized1600AVX512
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments kcp/optimized1600AVX512
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments kcp/optimized1600AVX512

Compiler output

Implementation: crypto_hash/sha3384/kcp/optimized1600AVX2
Compiler: g++
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp: In function 'void KeccakP1600_AddBytes(void*, const UINT8*, size_t, size_t)':
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:506:25: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
KeccakP-1600-AVX2.cpp: s.a0 = LOAD(t + 0*5);
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:41:0,
KeccakP-1600-AVX2.cpp: from /usr/lib/gcc/x86_64-linux-gnu/5/include/x86intrin.h:46,
KeccakP-1600-AVX2.cpp: from KeccakP-1600-AVX2.cpp:18:
KeccakP-1600-AVX2.cpp: /usr/lib/gcc/x86_64-linux-gnu/5/include/avxintrin.h: In function 'void KeccakP1600_ExtractBytes(const void*, UINT8*, size_t, size_t)':
KeccakP-1600-AVX2.cpp: /usr/lib/gcc/x86_64-linux-gnu/5/include/avxintrin.h:900:1: error: inlining failed in call to always_inline 'void _mm256_storeu_si256(__m256i*, __m256i)': target specific option mismatch
KeccakP-1600-AVX2.cpp: _mm256_storeu_si256 (__m256i *__P, __m256i __A)
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:585:25: error: called from here
KeccakP-1600-AVX2.cpp: STORE(d + 0*5, s.a0);
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:41:0,
KeccakP-1600-AVX2.cpp: from /usr/lib/gcc/x86_64-linux-gnu/5/include/x86intrin.h:46,
KeccakP-1600-AVX2.cpp: from KeccakP-1600-AVX2.cpp:18:
KeccakP-1600-AVX2.cpp: /usr/lib/gcc/x86_64-linux-gnu/5/include/avxintrin.h:900:1: error: inlining failed in call to always_inline 'void _mm256_storeu_si256(__m256i*, __m256i)': target specific option mismatch
KeccakP-1600-AVX2.cpp: _mm256_storeu_si256 (__m256i *__P, __m256i __A)
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:586:25: error: called from here
KeccakP-1600-AVX2.cpp: STORE(d + 1*5, s.a1);
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:41:0,
KeccakP-1600-AVX2.cpp: from /usr/lib/gcc/x86_64-linux-gnu/5/include/x86intrin.h:46,
KeccakP-1600-AVX2.cpp: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
g++ kcp/optimized1600AVX2

Compiler output

Implementation: crypto_hash/sha3384/kcp/optimized1600AVX2
Compiler: g++ -O2 -fomit-frame-pointer
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp: In function 'void KeccakP1600_AddBytes(void*, const UINT8*, size_t, size_t)':
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:506:25: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
KeccakP-1600-AVX2.cpp: s.a0 = LOAD(t + 0*5);
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:41:0,
KeccakP-1600-AVX2.cpp: from /usr/lib/gcc/x86_64-linux-gnu/5/include/x86intrin.h:46,
KeccakP-1600-AVX2.cpp: from KeccakP-1600-AVX2.cpp:18:
KeccakP-1600-AVX2.cpp: /usr/lib/gcc/x86_64-linux-gnu/5/include/avxintrin.h: In function 'void __static_initialization_and_destruction_0(int, int)':
KeccakP-1600-AVX2.cpp: /usr/lib/gcc/x86_64-linux-gnu/5/include/avxintrin.h:1377:1: error: inlining failed in call to always_inline '__m256i _mm256_setr_epi64x(long long int, long long int, long long int, long long int)': target specific option mismatch
KeccakP-1600-AVX2.cpp: _mm256_setr_epi64x (long long __A, long long __B, long long __C,
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:51:59: error: called from here
KeccakP-1600-AVX2.cpp: #define SET(i0, i1, i2, i3) _mm256_setr_epi64x(i0, i1, i2, i3)
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:84:30: note: in expansion of macro 'SET'
KeccakP-1600-AVX2.cpp: _ROLV_TYPE SRLV##name = SET(64 - i0, 64 - i1, 64 - i2, 64 - i3);
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:100:1: note: in expansion of macro '_ROLV_CONST'
KeccakP-1600-AVX2.cpp: _ROLV_CONST(_C4, 27, 20, 39, 8)
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:41:0,
KeccakP-1600-AVX2.cpp: from /usr/lib/gcc/x86_64-linux-gnu/5/include/x86intrin.h:46,
KeccakP-1600-AVX2.cpp: from KeccakP-1600-AVX2.cpp:18:
KeccakP-1600-AVX2.cpp: /usr/lib/gcc/x86_64-linux-gnu/5/include/avxintrin.h:1377:1: error: inlining failed in call to always_inline '__m256i _mm256_setr_epi64x(long long int, long long int, long long int, long long int)': target specific option mismatch
KeccakP-1600-AVX2.cpp: _mm256_setr_epi64x (long long __A, long long __B, long long __C,
KeccakP-1600-AVX2.cpp: ...

Number of similar (compiler,implementation) pairs: 52, namely:
CompilerImplementations
g++ -O2 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -O3 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -O -fomit-frame-pointer kcp/optimized1600AVX2
g++ -Os -fomit-frame-pointer kcp/optimized1600AVX2
g++ -fno-schedule-insns -O2 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -fno-schedule-insns -O3 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -fno-schedule-insns -O -fomit-frame-pointer kcp/optimized1600AVX2
g++ -fno-schedule-insns -Os -fomit-frame-pointer kcp/optimized1600AVX2
g++ -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer kcp/optimized1600AVX2
g++ -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -O2 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -O3 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -O -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -Os -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=core2 -O2 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=core2 -O3 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=core2 -O -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=core2 -Os -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=core2 -msse4 -O -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=core2 -msse4 -Os -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=corei7 -O2 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=corei7 -O3 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=corei7 -O -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=corei7 -Os -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=k8 -O2 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=k8 -O3 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=k8 -O -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=k8 -Os -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=nocona -O2 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=nocona -O3 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=nocona -O -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=nocona -Os -fomit-frame-pointer kcp/optimized1600AVX2
g++ -march=barcelona -O2 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -march=barcelona -O3 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -march=barcelona -O -fomit-frame-pointer kcp/optimized1600AVX2
g++ -march=barcelona -Os -fomit-frame-pointer kcp/optimized1600AVX2
g++ -march=k8 -O2 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -march=k8 -O3 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -march=k8 -O -fomit-frame-pointer kcp/optimized1600AVX2
g++ -march=k8 -Os -fomit-frame-pointer kcp/optimized1600AVX2
g++ -march=nocona -O2 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -march=nocona -O3 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -march=nocona -O -fomit-frame-pointer kcp/optimized1600AVX2
g++ -march=nocona -Os -fomit-frame-pointer kcp/optimized1600AVX2

Compiler output

Implementation: crypto_hash/sha3384/kcp/optimized1600AVX2
Compiler: g++ -m64 -march=barcelona -O2 -fomit-frame-pointer
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp: In function 'void KeccakP1600_AddBytes(void*, const UINT8*, size_t, size_t)':
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:506:25: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
KeccakP-1600-AVX2.cpp: s.a0 = LOAD(t + 0*5);
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:41:0,
KeccakP-1600-AVX2.cpp: from /usr/lib/gcc/x86_64-linux-gnu/5/include/x86intrin.h:46,
KeccakP-1600-AVX2.cpp: from KeccakP-1600-AVX2.cpp:18:
KeccakP-1600-AVX2.cpp: /usr/lib/gcc/x86_64-linux-gnu/5/include/avxintrin.h: In function 'void __static_initialization_and_destruction_0(int, int)':
KeccakP-1600-AVX2.cpp: /usr/lib/gcc/x86_64-linux-gnu/5/include/avxintrin.h:1377:1: error: inlining failed in call to always_inline '__m256i _mm256_setr_epi64x(long long int, long long int, long long int, long long int)': target specific option mismatch
KeccakP-1600-AVX2.cpp: _mm256_setr_epi64x (long long __A, long long __B, long long __C,
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:51:59: error: called from here
KeccakP-1600-AVX2.cpp: #define SET(i0, i1, i2, i3) _mm256_setr_epi64x(i0, i1, i2, i3)
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:84:30: note: in expansion of macro 'SET'
KeccakP-1600-AVX2.cpp: _ROLV_TYPE SRLV##name = SET(64 - i0, 64 - i1, 64 - i2, 64 - i3);
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:100:1: note: in expansion of macro '_ROLV_CONST'
KeccakP-1600-AVX2.cpp: _ROLV_CONST(_C4, 27, 20, 39, 8)
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:41:0,
KeccakP-1600-AVX2.cpp: from /usr/lib/gcc/x86_64-linux-gnu/5/include/x86intrin.h:46,
KeccakP-1600-AVX2.cpp: from KeccakP-1600-AVX2.cpp:18:
KeccakP-1600-AVX2.cpp: /usr/lib/gcc/x86_64-linux-gnu/5/include/avxintrin.h:1377:1: error: inlining failed in call to always_inline '__m256i _mm256_setr_epi64x(long long int, long long int, long long int, long long int)': target specific option mismatch
KeccakP-1600-AVX2.cpp: _mm256_setr_epi64x (long long __A, long long __B, long long __C,
KeccakP-1600-AVX2.cpp: ...
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp: In function 'void KeccakP1600_AddBytes(void*, const UINT8*, size_t, size_t)':
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:506:25: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
KeccakP-1600-AVX2.cpp: s.a0 = LOAD(t + 0*5);
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:41:0,
KeccakP-1600-AVX2.cpp: from /usr/lib/gcc/x86_64-linux-gnu/5/include/x86intrin.h:46,
KeccakP-1600-AVX2.cpp: from KeccakP-1600-AVX2.cpp:18:
KeccakP-1600-AVX2.cpp: /usr/lib/gcc/x86_64-linux-gnu/5/include/avxintrin.h: In function 'void __static_initialization_and_destruction_0(int, int)':
KeccakP-1600-AVX2.cpp: /usr/lib/gcc/x86_64-linux-gnu/5/include/avxintrin.h:1377:1: error: inlining failed in call to always_inline '__m256i _mm256_setr_epi64x(long long int, long long int, long long int, long long int)': target specific option mismatch
KeccakP-1600-AVX2.cpp: _mm256_setr_epi64x (long long __A, long long __B, long long __C,
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:51:59: error: called from here
KeccakP-1600-AVX2.cpp: #define SET(i0, i1, i2, i3) _mm256_setr_epi64x(i0, i1, i2, i3)
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:84:30: note: in expansion of macro 'SET'
KeccakP-1600-AVX2.cpp: _ROLV_TYPE SRLV##name = SET(64 - i0, 64 - i1, 64 - i2, 64 - i3);
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:100:1: note: in expansion of macro '_ROLV_CONST'
KeccakP-1600-AVX2.cpp: _ROLV_CONST(_C4, 27, 20, 39, 8)
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:41:0,
KeccakP-1600-AVX2.cpp: from /usr/lib/gcc/x86_64-linux-gnu/5/include/x86intrin.h:46,
KeccakP-1600-AVX2.cpp: from KeccakP-1600-AVX2.cpp:18:
KeccakP-1600-AVX2.cpp: /usr/lib/gcc/x86_64-linux-gnu/5/include/avxintrin.h:1377:1: error: inlining failed in call to always_inline '__m256i _mm256_setr_epi64x(long long int, long long int, long long int, long long int)': target specific option mismatch
KeccakP-1600-AVX2.cpp: _mm256_setr_epi64x (long long __A, long long __B, long long __C,
KeccakP-1600-AVX2.cpp: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
g++ -m64 -march=barcelona -O2 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=barcelona -O3 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=barcelona -O -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=barcelona -Os -fomit-frame-pointer kcp/optimized1600AVX2

Compiler output

Implementation: crypto_hash/sha3384/kcp/optimized1600AVX2
Compiler: g++ -m64 -march=core-avx-i -O2 -fomit-frame-pointer
KeccakP-1600-AVX2.cpp: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
KeccakP-1600-AVX2.cpp: from /usr/lib/gcc/x86_64-linux-gnu/5/include/x86intrin.h:46,
KeccakP-1600-AVX2.cpp: from KeccakP-1600-AVX2.cpp:18:
KeccakP-1600-AVX2.cpp: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h: In function 'void KeccakP1600_Permute_Nrounds(void*, unsigned int)':
KeccakP-1600-AVX2.cpp: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:1081:1: error: inlining failed in call to always_inline '__m256i _mm256_permute2x128_si256(__m256i, __m256i, int)': target specific option mismatch
KeccakP-1600-AVX2.cpp: _mm256_permute2x128_si256 (__m256i __X, __m256i __Y, const int __M)
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:269:53: error: called from here
KeccakP-1600-AVX2.cpp: a4 = _mm256_permute2x128_si256(r0, r1, 0x20); \
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:641:5: note: in expansion of macro 'KECCAK_PERMUTE_LOOP'
KeccakP-1600-AVX2.cpp: KECCAK_PERMUTE_LOOP(, nrounds)
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
KeccakP-1600-AVX2.cpp: from /usr/lib/gcc/x86_64-linux-gnu/5/include/x86intrin.h:46,
KeccakP-1600-AVX2.cpp: from KeccakP-1600-AVX2.cpp:18:
KeccakP-1600-AVX2.cpp: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:906:1: error: inlining failed in call to always_inline '__m256i _mm256_unpacklo_epi64(__m256i, __m256i)': target specific option mismatch
KeccakP-1600-AVX2.cpp: _mm256_unpacklo_epi64 (__m256i __A, __m256i __B)
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:268:45: error: called from here
KeccakP-1600-AVX2.cpp: r1 = _mm256_unpacklo_epi64(a24, a34); \
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:641:5: note: in expansion of macro 'KECCAK_PERMUTE_LOOP'
KeccakP-1600-AVX2.cpp: KECCAK_PERMUTE_LOOP(, nrounds)
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: ...

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

Compiler output

Implementation: crypto_hash/sha3384/kcp/optimized1600AVX2
Compiler: g++ -m64 -march=core-avx2 -O2 -fomit-frame-pointer
try.cpp: crypto_hash_sha3384.a(KeccakSpongeWidth1600.o): In function `KeccakWidth1600_Sponge(unsigned int, unsigned int, unsigned char const*, unsigned long, unsigned char, unsigned char*, unsigned long)':
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_StaticInitialize()'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Initialize(void*)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddByte(void*, unsigned char, unsigned int)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddByte(void*, unsigned char, unsigned int)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_ExtractBytes(void const*, unsigned char*, unsigned int, unsigned int)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_ExtractBytes(void const*, unsigned char*, unsigned int, unsigned int)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakF1600_FastLoop_Absorb(void*, unsigned int, unsigned char const*, unsigned long)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: crypto_hash_sha3384.a(KeccakSpongeWidth1600.o): In function `KeccakWidth1600_SpongeInitialize(KeccakWidth1600_SpongeInstanceStruct*, unsigned int, unsigned int)':
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_StaticInitialize()'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Initialize(void*)'
try.cpp: crypto_hash_sha3384.a(KeccakSpongeWidth1600.o): In function `KeccakWidth1600_SpongeAbsorb(KeccakWidth1600_SpongeInstanceStruct*, unsigned char const*, unsigned long)':
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakF1600_FastLoop_Absorb(void*, unsigned int, unsigned char const*, unsigned long)'
try.cpp: crypto_hash_sha3384.a(KeccakSpongeWidth1600.o): In function `KeccakWidth1600_SpongeAbsorbLastFewBits(KeccakWidth1600_SpongeInstanceStruct*, unsigned char)':
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddByte(void*, unsigned char, unsigned int)'
try.cpp: ...

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
g++ -m64 -march=core-avx2 -O2 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=core-avx2 -O3 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=native -mtune=native -O2 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=native -mtune=native -O3 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv kcp/optimized1600AVX2
g++ -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv kcp/optimized1600AVX2

Compiler output

Implementation: crypto_hash/sha3384/kcp/optimized1600AVX2
Compiler: g++ -m64 -march=core-avx2 -O -fomit-frame-pointer
try.cpp: crypto_hash_sha3384.a(KeccakSpongeWidth1600.o): In function `KeccakWidth1600_Sponge(unsigned int, unsigned int, unsigned char const*, unsigned long, unsigned char, unsigned char*, unsigned long)':
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_StaticInitialize()'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Initialize(void*)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakF1600_FastLoop_Absorb(void*, unsigned int, unsigned char const*, unsigned long)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddByte(void*, unsigned char, unsigned int)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddByte(void*, unsigned char, unsigned int)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_ExtractBytes(void const*, unsigned char*, unsigned int, unsigned int)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_ExtractBytes(void const*, unsigned char*, unsigned int, unsigned int)'
try.cpp: crypto_hash_sha3384.a(KeccakSpongeWidth1600.o): In function `KeccakWidth1600_SpongeInitialize(KeccakWidth1600_SpongeInstanceStruct*, unsigned int, unsigned int)':
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_StaticInitialize()'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Initialize(void*)'
try.cpp: crypto_hash_sha3384.a(KeccakSpongeWidth1600.o): In function `KeccakWidth1600_SpongeAbsorb(KeccakWidth1600_SpongeInstanceStruct*, unsigned char const*, unsigned long)':
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakF1600_FastLoop_Absorb(void*, unsigned int, unsigned char const*, unsigned long)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddBytes(void*, unsigned char const*, unsigned int, unsigned int)'
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_Permute_24rounds(void*)'
try.cpp: crypto_hash_sha3384.a(KeccakSpongeWidth1600.o): In function `KeccakWidth1600_SpongeAbsorbLastFewBits(KeccakWidth1600_SpongeInstanceStruct*, unsigned char)':
try.cpp: KeccakSpongeWidth1600.c:(.text+0x...): undefined reference to `KeccakP1600_AddByte(void*, unsigned char, unsigned int)'
try.cpp: ...

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
g++ -m64 -march=core-avx2 -O -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=core-avx2 -Os -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=native -mtune=native -O -fomit-frame-pointer kcp/optimized1600AVX2
g++ -m64 -march=native -mtune=native -Os -fomit-frame-pointer kcp/optimized1600AVX2
g++ -march=native -mtune=native -O -fomit-frame-pointer -fwrapv kcp/optimized1600AVX2
g++ -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv kcp/optimized1600AVX2

Compiler output

Implementation: crypto_hash/sha3384/kcp/optimized1600AVX512
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c: In function 'KeccakP1600_AddBytes':
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:216:37: warning: AVX512F vector return without AVX512F enabled changes the ABI [-Wpsabi]
KeccakP-1600-AVX512.c: #define STORE_Lanes(a,m,v) _mm512_mask_storeu_epi64(a,m,v)
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:219:37: note: in expansion of macro 'STORE_Lanes'
KeccakP-1600-AVX512.c: #define STORE_8Lanes(a,v) STORE_Lanes(a,0xFF,v)
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:238:9: note: in expansion of macro 'STORE_8Lanes'
KeccakP-1600-AVX512.c: STORE_8Lanes( stateAsLanes, XOR(LOAD_8Lanes(stateAsLanes), LOAD_8Lanes((const UINT64*)data)));
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:45:0,
KeccakP-1600-AVX512.c: from KeccakP-1600-AVX512.c:26:
KeccakP-1600-AVX512.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx512fintrin.h:5781:1: error: inlining failed in call to always_inline '_mm512_mask_storeu_epi64': target specific option mismatch
KeccakP-1600-AVX512.c: _mm512_mask_storeu_epi64 (void *__P, __mmask8 __U, __m512i __A)
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:216:37: error: called from here
KeccakP-1600-AVX512.c: #define STORE_Lanes(a,m,v) _mm512_mask_storeu_epi64(a,m,v)
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:219:37: note: in expansion of macro 'STORE_Lanes'
KeccakP-1600-AVX512.c: #define STORE_8Lanes(a,v) STORE_Lanes(a,0xFF,v)
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:238:9: note: in expansion of macro 'STORE_8Lanes'
KeccakP-1600-AVX512.c: STORE_8Lanes( stateAsLanes, XOR(LOAD_8Lanes(stateAsLanes), LOAD_8Lanes((const UINT64*)data)));
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:45:0,
KeccakP-1600-AVX512.c: ...
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c: In function 'KeccakP1600_AddBytes':
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:216:37: warning: AVX512F vector return without AVX512F enabled changes the ABI [-Wpsabi]
KeccakP-1600-AVX512.c: #define STORE_Lanes(a,m,v) _mm512_mask_storeu_epi64(a,m,v)
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:219:37: note: in expansion of macro 'STORE_Lanes'
KeccakP-1600-AVX512.c: #define STORE_8Lanes(a,v) STORE_Lanes(a,0xFF,v)
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:238:9: note: in expansion of macro 'STORE_8Lanes'
KeccakP-1600-AVX512.c: STORE_8Lanes( stateAsLanes, XOR(LOAD_8Lanes(stateAsLanes), LOAD_8Lanes((const UINT64*)data)));
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:45:0,
KeccakP-1600-AVX512.c: from KeccakP-1600-AVX512.c:26:
KeccakP-1600-AVX512.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx512fintrin.h:5781:1: error: inlining failed in call to always_inline '_mm512_mask_storeu_epi64': target specific option mismatch
KeccakP-1600-AVX512.c: _mm512_mask_storeu_epi64 (void *__P, __mmask8 __U, __m512i __A)
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:216:37: error: called from here
KeccakP-1600-AVX512.c: #define STORE_Lanes(a,m,v) _mm512_mask_storeu_epi64(a,m,v)
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:219:37: note: in expansion of macro 'STORE_Lanes'
KeccakP-1600-AVX512.c: #define STORE_8Lanes(a,v) STORE_Lanes(a,0xFF,v)
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:238:9: note: in expansion of macro 'STORE_8Lanes'
KeccakP-1600-AVX512.c: STORE_8Lanes( stateAsLanes, XOR(LOAD_8Lanes(stateAsLanes), LOAD_8Lanes((const UINT64*)data)));
KeccakP-1600-AVX512.c: ^
KeccakP-1600-AVX512.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:45:0,
KeccakP-1600-AVX512.c: ...

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

Compiler output

Implementation: crypto_hash/sha3384/kcp/optimized1600ARMv7A
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
keccak.s: keccak.s: Assembler messages:
keccak.s: keccak.s:1: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:2: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:3: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:4: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:5: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:6: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:7: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:8: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:9: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:10: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:11: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:12: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:13: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:14: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:16: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:17: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:18: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:23: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:24: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:26: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:53: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:269: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:270: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:271: Error: junk at end of line, first unrecognized character is `@'
keccak.s: ...
keccak.s: keccak.s: Assembler messages:
keccak.s: keccak.s:1: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:2: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:3: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:4: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:5: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:6: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:7: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:8: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:9: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:10: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:11: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:12: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:13: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:14: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:16: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:17: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:18: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:23: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:24: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:26: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:53: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:269: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:270: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:271: Error: junk at end of line, first unrecognized character is `@'
keccak.s: ...

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

Compiler output

Implementation: crypto_hash/sha3384/kcp/optimized1600ARMv8A
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
keccak.s: keccak.s: Assembler messages:
keccak.s: keccak.s:258: Error: no such instruction: `movi v0.2d,'
keccak.s: keccak.s:259: Error: no such instruction: `movi v1.2d,'
keccak.s: keccak.s:260: Error: no such instruction: `movi v2.2d,'
keccak.s: keccak.s:261: Error: no such instruction: `movi v3.2d,'
keccak.s: keccak.s:262: Error: no such instruction: `st4 { v0.2d,v1.2d,v2.2d,v3.2d},[x0],'
keccak.s: keccak.s:263: Error: no such instruction: `st4 { v0.2d,v1.2d,v2.2d,v3.2d},[x0],'
keccak.s: keccak.s:264: Error: no such instruction: `st4 { v0.2d,v1.2d,v2.2d,v3.2d},[x0],'
keccak.s: keccak.s:265: Error: no such instruction: `st1 { v0.d}[0],[x0],'
keccak.s: keccak.s:276: Error: no such instruction: `ldrb w3,[x0,x2]'
keccak.s: keccak.s:277: Error: no such instruction: `eor w3,w3,w1'
keccak.s: keccak.s:278: Error: invalid char '[' beginning operand 2 `[x0'
keccak.s: keccak.s:289: Error: too many memory references for `add'
keccak.s: keccak.s:290: Error: too many memory references for `sub'
keccak.s: keccak.s:291: Error: no such instruction: `b.cc KeccakP1600_AddBytes_Exit//length 0,move along'
keccak.s: keccak.s:293: Error: too many memory references for `sub'
keccak.s: keccak.s:294: Error: no such instruction: `b.cc KeccakP1600_AddBytes_Lanes//Jump if length is negative'
keccak.s: keccak.s:295: Error: no such instruction: `ld4 { v0.2d,v1.2d,v2.2d,v3.2d},[x0]'
keccak.s: keccak.s:296: Error: no such instruction: `ld4 { v4.2d,v5.2d,v6.2d,v7.2d},[x1],'
keccak.s: keccak.s:297: Error: no such instruction: `eor v0.16b,v0.16b,v4.16b'
keccak.s: keccak.s:298: Error: no such instruction: `eor v1.16b,v1.16b,v5.16b'
keccak.s: keccak.s:299: Error: no such instruction: `eor v2.16b,v2.16b,v6.16b'
keccak.s: keccak.s:300: Error: no such instruction: `eor v3.16b,v3.16b,v7.16b'
keccak.s: keccak.s:301: Error: no such instruction: `st4 { v0.2d,v1.2d,v2.2d,v3.2d},[x0],'
keccak.s: keccak.s:302: Error: no such instruction: `b KeccakP1600_AddBytes_8LanesLoop'
keccak.s: ...
keccak.s: keccak.s: Assembler messages:
keccak.s: keccak.s:258: Error: no such instruction: `movi v0.2d,'
keccak.s: keccak.s:259: Error: no such instruction: `movi v1.2d,'
keccak.s: keccak.s:260: Error: no such instruction: `movi v2.2d,'
keccak.s: keccak.s:261: Error: no such instruction: `movi v3.2d,'
keccak.s: keccak.s:262: Error: no such instruction: `st4 { v0.2d,v1.2d,v2.2d,v3.2d},[x0],'
keccak.s: keccak.s:263: Error: no such instruction: `st4 { v0.2d,v1.2d,v2.2d,v3.2d},[x0],'
keccak.s: keccak.s:264: Error: no such instruction: `st4 { v0.2d,v1.2d,v2.2d,v3.2d},[x0],'
keccak.s: keccak.s:265: Error: no such instruction: `st1 { v0.d}[0],[x0],'
keccak.s: keccak.s:276: Error: no such instruction: `ldrb w3,[x0,x2]'
keccak.s: keccak.s:277: Error: no such instruction: `eor w3,w3,w1'
keccak.s: keccak.s:278: Error: invalid char '[' beginning operand 2 `[x0'
keccak.s: keccak.s:289: Error: too many memory references for `add'
keccak.s: keccak.s:290: Error: too many memory references for `sub'
keccak.s: keccak.s:291: Error: no such instruction: `b.cc KeccakP1600_AddBytes_Exit//length 0,move along'
keccak.s: keccak.s:293: Error: too many memory references for `sub'
keccak.s: keccak.s:294: Error: no such instruction: `b.cc KeccakP1600_AddBytes_Lanes//Jump if length is negative'
keccak.s: keccak.s:295: Error: no such instruction: `ld4 { v0.2d,v1.2d,v2.2d,v3.2d},[x0]'
keccak.s: keccak.s:296: Error: no such instruction: `ld4 { v4.2d,v5.2d,v6.2d,v7.2d},[x1],'
keccak.s: keccak.s:297: Error: no such instruction: `eor v0.16b,v0.16b,v4.16b'
keccak.s: keccak.s:298: Error: no such instruction: `eor v1.16b,v1.16b,v5.16b'
keccak.s: keccak.s:299: Error: no such instruction: `eor v2.16b,v2.16b,v6.16b'
keccak.s: keccak.s:300: Error: no such instruction: `eor v3.16b,v3.16b,v7.16b'
keccak.s: keccak.s:301: Error: no such instruction: `st4 { v0.2d,v1.2d,v2.2d,v3.2d},[x0],'
keccak.s: keccak.s:302: Error: no such instruction: `b KeccakP1600_AddBytes_8LanesLoop'
keccak.s: ...

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

Compiler output

Implementation: crypto_hash/sha3384/kcp/optimized1600AVR8
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
keccak.s: keccak.s: Assembler messages:
keccak.s: keccak.s:2: Error: no such instruction: `implementation by the Keccak,Keyak and Ketje Teams,namely,Guido Bertoni,'
keccak.s: keccak.s:3: Error: no such instruction: `joan Daemen,Michaël Peeters,Gilles Van Assche and Ronny Van Keer,hereby'
keccak.s: keccak.s:4: Error: no such instruction: `denoted as "the implementer".'
keccak.s: keccak.s:6: Error: no such instruction: `for more information,feedback or questions,please refer to our websites:'
keccak.s: keccak.s:11: Error: no such instruction: `to the extent possible under law,the implementer has waived all copyright'
keccak.s: keccak.s:12: Error: junk `or neighboring rights to the source code in this file.' after expression
keccak.s: keccak.s:12: Error: number of operands mismatch for `and'
keccak.s: keccak.s:16: Error: no such instruction: `tested on ATmega1280 simulator'
keccak.s: keccak.s:18: Error: no such instruction: `registers used in all routines'
keccak.s: keccak.s:26: Error: junk at end of line, first unrecognized character is `-'
keccak.s: keccak.s:28: Error: no such instruction: `void KeccakP1600_StaticInitialize( void)'
keccak.s: keccak.s:32: Error: junk at end of line, first unrecognized character is `-'
keccak.s: keccak.s:34: Error: no such instruction: `void KeccakP1600_Initialize(void *state)'
keccak.s: keccak.s:36: Error: no such instruction: `argument state is passed in r24:r25'
keccak.s: keccak.s:40: Error: too many memory references for `mov'
keccak.s: keccak.s:41: Error: no such instruction: `ldi r23,5*5'
keccak.s: keccak.s:41: Error: no such instruction: `clear state (8 bytes/1 lane per iteration)'
keccak.s: keccak.s:43: Error: no such instruction: `st z+,zero'
keccak.s: keccak.s:44: Error: no such instruction: `st z+,zero'
keccak.s: keccak.s:45: Error: no such instruction: `st z+,zero'
keccak.s: keccak.s:46: Error: no such instruction: `st z+,zero'
keccak.s: keccak.s:47: Error: no such instruction: `st z+,zero'
keccak.s: keccak.s:48: Error: no such instruction: `st z+,zero'
keccak.s: keccak.s:49: Error: no such instruction: `st z+,zero'
keccak.s: ...
keccak.s: keccak.s: Assembler messages:
keccak.s: keccak.s:2: Error: no such instruction: `implementation by the Keccak,Keyak and Ketje Teams,namely,Guido Bertoni,'
keccak.s: keccak.s:3: Error: no such instruction: `joan Daemen,Michaël Peeters,Gilles Van Assche and Ronny Van Keer,hereby'
keccak.s: keccak.s:4: Error: no such instruction: `denoted as "the implementer".'
keccak.s: keccak.s:6: Error: no such instruction: `for more information,feedback or questions,please refer to our websites:'
keccak.s: keccak.s:11: Error: no such instruction: `to the extent possible under law,the implementer has waived all copyright'
keccak.s: keccak.s:12: Error: junk `or neighboring rights to the source code in this file.' after expression
keccak.s: keccak.s:12: Error: number of operands mismatch for `and'
keccak.s: keccak.s:16: Error: no such instruction: `tested on ATmega1280 simulator'
keccak.s: keccak.s:18: Error: no such instruction: `registers used in all routines'
keccak.s: keccak.s:26: Error: junk at end of line, first unrecognized character is `-'
keccak.s: keccak.s:28: Error: no such instruction: `void KeccakP1600_StaticInitialize( void)'
keccak.s: keccak.s:32: Error: junk at end of line, first unrecognized character is `-'
keccak.s: keccak.s:34: Error: no such instruction: `void KeccakP1600_Initialize(void *state)'
keccak.s: keccak.s:36: Error: no such instruction: `argument state is passed in r24:r25'
keccak.s: keccak.s:40: Error: too many memory references for `mov'
keccak.s: keccak.s:41: Error: no such instruction: `ldi r23,5*5'
keccak.s: keccak.s:41: Error: no such instruction: `clear state (8 bytes/1 lane per iteration)'
keccak.s: keccak.s:43: Error: no such instruction: `st z+,zero'
keccak.s: keccak.s:44: Error: no such instruction: `st z+,zero'
keccak.s: keccak.s:45: Error: no such instruction: `st z+,zero'
keccak.s: keccak.s:46: Error: no such instruction: `st z+,zero'
keccak.s: keccak.s:47: Error: no such instruction: `st z+,zero'
keccak.s: keccak.s:48: Error: no such instruction: `st z+,zero'
keccak.s: keccak.s:49: Error: no such instruction: `st z+,zero'
keccak.s: ...

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

Compiler output

Implementation: crypto_hash/sha3384/kcp/compact1600AVR8
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
keccak.s: keccak.s: Assembler messages:
keccak.s: keccak.s:2: Error: no such instruction: `implementation by the Keccak,Keyak and Ketje Teams,namely,Guido Bertoni,'
keccak.s: keccak.s:3: Error: no such instruction: `joan Daemen,Michaël Peeters,Gilles Van Assche and Ronny Van Keer,hereby'
keccak.s: keccak.s:4: Error: no such instruction: `denoted as "the implementer".'
keccak.s: keccak.s:6: Error: no such instruction: `for more information,feedback or questions,please refer to our websites:'
keccak.s: keccak.s:11: Error: no such instruction: `to the extent possible under law,the implementer has waived all copyright'
keccak.s: keccak.s:12: Error: junk `or neighboring rights to the source code in this file.' after expression
keccak.s: keccak.s:12: Error: number of operands mismatch for `and'
keccak.s: keccak.s:16: Error: no such instruction: `tested on ATmega1280 simulator'
keccak.s: keccak.s:18: Error: no such instruction: `registers used in all routines'
keccak.s: keccak.s:26: Error: junk at end of line, first unrecognized character is `-'
keccak.s: keccak.s:28: Error: no such instruction: `void KeccakP1600_StaticInitialize( void)'
keccak.s: keccak.s:32: Error: junk at end of line, first unrecognized character is `-'
keccak.s: keccak.s:34: Error: no such instruction: `void KeccakP1600_Initialize(void *state)'
keccak.s: keccak.s:36: Error: no such instruction: `argument state is passed in r24:r25'
keccak.s: keccak.s:40: Error: too many memory references for `mov'
keccak.s: keccak.s:41: Error: no such instruction: `ldi r23,5*5*8'
keccak.s: keccak.s:43: Error: no such instruction: `st z+,zero'
keccak.s: keccak.s:44: Error: no instruction mnemonic suffix given and no register operands; can't size instruction
keccak.s: keccak.s:45: Error: no such instruction: `brne KeccakP1600_Initialize_Loop'
keccak.s: keccak.s:49: Error: junk at end of line, first unrecognized character is `-'
keccak.s: keccak.s:51: Error: no such instruction: `void KeccakP1600_AddByte(void *state,unsigned char data,unsigned int offset)'
keccak.s: keccak.s:53: Error: no such instruction: `argument state is passed in r24:r25'
keccak.s: keccak.s:54: Error: no such instruction: `argument data is passed in r22:r23,only LSB (r22)is used'
keccak.s: keccak.s:55: Error: no such instruction: `argument offset is passed in r20:r21,only LSB (r20)is used'
keccak.s: ...
keccak.s: keccak.s: Assembler messages:
keccak.s: keccak.s:2: Error: no such instruction: `implementation by the Keccak,Keyak and Ketje Teams,namely,Guido Bertoni,'
keccak.s: keccak.s:3: Error: no such instruction: `joan Daemen,Michaël Peeters,Gilles Van Assche and Ronny Van Keer,hereby'
keccak.s: keccak.s:4: Error: no such instruction: `denoted as "the implementer".'
keccak.s: keccak.s:6: Error: no such instruction: `for more information,feedback or questions,please refer to our websites:'
keccak.s: keccak.s:11: Error: no such instruction: `to the extent possible under law,the implementer has waived all copyright'
keccak.s: keccak.s:12: Error: junk `or neighboring rights to the source code in this file.' after expression
keccak.s: keccak.s:12: Error: number of operands mismatch for `and'
keccak.s: keccak.s:16: Error: no such instruction: `tested on ATmega1280 simulator'
keccak.s: keccak.s:18: Error: no such instruction: `registers used in all routines'
keccak.s: keccak.s:26: Error: junk at end of line, first unrecognized character is `-'
keccak.s: keccak.s:28: Error: no such instruction: `void KeccakP1600_StaticInitialize( void)'
keccak.s: keccak.s:32: Error: junk at end of line, first unrecognized character is `-'
keccak.s: keccak.s:34: Error: no such instruction: `void KeccakP1600_Initialize(void *state)'
keccak.s: keccak.s:36: Error: no such instruction: `argument state is passed in r24:r25'
keccak.s: keccak.s:40: Error: too many memory references for `mov'
keccak.s: keccak.s:41: Error: no such instruction: `ldi r23,5*5*8'
keccak.s: keccak.s:43: Error: no such instruction: `st z+,zero'
keccak.s: keccak.s:44: Error: no instruction mnemonic suffix given and no register operands; can't size instruction
keccak.s: keccak.s:45: Error: no such instruction: `brne KeccakP1600_Initialize_Loop'
keccak.s: keccak.s:49: Error: junk at end of line, first unrecognized character is `-'
keccak.s: keccak.s:51: Error: no such instruction: `void KeccakP1600_AddByte(void *state,unsigned char data,unsigned int offset)'
keccak.s: keccak.s:53: Error: no such instruction: `argument state is passed in r24:r25'
keccak.s: keccak.s:54: Error: no such instruction: `argument data is passed in r22:r23,only LSB (r22)is used'
keccak.s: keccak.s:55: Error: no such instruction: `argument offset is passed in r20:r21,only LSB (r20)is used'
keccak.s: ...

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