Implementation notes: amd64, morningstar, crypto_aead/seakeyakv1

Computer: morningstar
Architecture: amd64
CPU ID: AuthenticAMD-00100f42-178bfbff
SUPERCOP version: 20170904
Operation: crypto_aead
Primitive: seakeyakv1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
166609? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2017072920170718
166787? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2017072920170718
177269? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2017072920170718
178920? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2017072920170718
187612? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017072920170718
187691? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2017072920170718
188177? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2017072920170718
190296? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2017072920170718
190384? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2017072920170718
190944? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2017072920170718
192120? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2017072920170718
196276? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2017072920170718
197026? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017072920170718
199381? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2017072920170718
199879? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2017072920170718
200372? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2017072920170718
200378? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2017072920170718
200501? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2017072920170718
200520? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2017072920170718
200808? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2017072920170718
200955? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017072920170718
201004? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2017072920170718
201136? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2017072920170718
201643? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2017072920170718
204709? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2017072920170718
204712? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2017072920170718
204720? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2017072920170718
211642? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2017072920170718
212323? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2017072920170718
212416? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2017072920170718
212770? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2017072920170718
214018? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2017072920170718
216126? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2017072920170718
220282? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2017072920170718
221802? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2017072920170718
222168? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2017072920170718
240696? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2017072920170718
250296? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2017072920170718
304064? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017090720170904
304424? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2017090720170904
304467? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017090720170904
306416? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017090720170904
307414? ? ?? ? ?refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017090720170904
309986? ? ?? ? ?refclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2017090720170904
712819? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2017072920170718
712971? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2017072920170718
713392? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2017072920170718
718655? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2017072920170718
718744? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017072920170718
719152? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2017072920170718
720433? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2017072920170718
731688? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2017072920170718
739128? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2017072920170718
739981? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2017072920170718
739997? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2017072920170718
744923? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2017072920170718
789360? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2017072920170718
970811? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2017072920170718
973205? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2017072920170718
1099945? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2017072920170718
1100616? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2017072920170718
1101657? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2017072920170718
1102848? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2017072920170718
1106123? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2017072920170718
1109824? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2017072920170718
1110896? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017072920170718
1112379? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2017072920170718
1113890? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2017072920170718
1114040? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2017072920170718
1118354? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2017072920170718
1129694? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2017072920170718
1130492? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2017072920170718
1394117? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2017072920170718
1397798? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2017072920170718
1398858? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2017072920170718
1422987? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2017072920170718
1423952? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2017072920170718
1424669? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2017072920170718
1429725? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2017072920170718
1432013? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2017072920170718
1432416? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2017072920170718
1432661? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2017072920170718
1432722? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017072920170718
1433643? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2017072920170718
1434000? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2017072920170718
1434056? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2017072920170718
1434587? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2017072920170718
1436749? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2017072920170718
1437734? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2017072920170718
1439811? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2017072920170718
1442674? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2017072920170718
1443256? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2017072920170718
1456018? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2017072920170718
1463910? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2017072920170718
1464816? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017072920170718
1464816? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2017072920170718
1929912? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2017072920170718
1930088? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2017072920170718
4920517? ? ?? ? ?refcc2017072920170718
4928246? ? ?? ? ?refgcc2017072920170718
4940190? ? ?? ? ?refgcc_-funroll-loops2017072920170718

Test failure

Implementation: crypto_aead/seakeyakv1/ref
Compiler: gcc -m64 -march=core2 -O3 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -m64 -march=core2 -O3 -fomit-frame-pointer ref

Compiler output

Implementation: crypto_aead/seakeyakv1/ref
Compiler: cc
KeccakDuplex.c: In file included from KeccakDuplex.h:17:0,
KeccakDuplex.c: from KeccakDuplex.c:15:
KeccakDuplex.c: KeccakDuplex.c: In function 'Keccak_Duplexing':
KeccakDuplex.c: KeccakF-interface.h:53:30: warning: implicit declaration of function 'KeccakP1600_12_StatePermute' [-Wimplicit-function-declaration]
KeccakDuplex.c: #define KeccakF_StatePermute KeccakP1600_12_StatePermute
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakDuplex.c:63:9: note: in expansion of macro 'KeccakF_StatePermute'
KeccakDuplex.c: KeccakF_StatePermute(instance->state);
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakF-interface.h:73:40: warning: implicit declaration of function 'KeccakP1600_12_StateXORPermuteExtract' [-Wimplicit-function-declaration]
KeccakDuplex.c: #define KeccakF_StateXORPermuteExtract KeccakP1600_12_StateXORPermuteExtract
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakDuplex.c:85:9: note: in expansion of macro 'KeccakF_StateXORPermuteExtract'
KeccakDuplex.c: KeccakF_StateXORPermuteExtract(instance->state, sigmaBegin, sigmaBeginByteLen/KeccakF_laneInBytes,
KeccakDuplex.c: ^
SerialFallback.c: In file included from ParallelKeccakFs.h:17:0,
SerialFallback.c: from SerialFallback.c:14:
SerialFallback.c: SerialFallback.c: In function 'KeccakF_ParallelStatePermute':
SerialFallback.c: KeccakF-interface.h:53:30: warning: implicit declaration of function 'KeccakP1600_12_StatePermute' [-Wimplicit-function-declaration]
SerialFallback.c: #define KeccakF_StatePermute KeccakP1600_12_StatePermute
SerialFallback.c: ^
SerialFallback.c: SerialFallback.c:93:5: note: in expansion of macro 'KeccakF_StatePermute'
SerialFallback.c: KeccakF_StatePermute(stateWithIndex(instanceIndex));
SerialFallback.c: ^

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

Compiler output

Implementation: crypto_aead/seakeyakv1/ref
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
KeccakDuplex.c: KeccakDuplex.c:63:9: warning: implicit declaration of function 'KeccakP1600_12_StatePermute' is invalid in C99 [-Wimplicit-function-declaration]
KeccakDuplex.c: KeccakF_StatePermute(instance->state);
KeccakDuplex.c: ^
KeccakDuplex.c: ./KeccakF-interface.h:53:30: note: expanded from macro 'KeccakF_StatePermute'
KeccakDuplex.c: #define KeccakF_StatePermute KeccakP1600_12_StatePermute
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakDuplex.c:85:9: warning: implicit declaration of function 'KeccakP1600_12_StateXORPermuteExtract' is invalid in C99 [-Wimplicit-function-declaration]
KeccakDuplex.c: KeccakF_StateXORPermuteExtract(instance->state, sigmaBegin, sigmaBeginByteLen/KeccakF_laneInBytes,
KeccakDuplex.c: ^
KeccakDuplex.c: ./KeccakF-interface.h:73:40: note: expanded from macro 'KeccakF_StateXORPermuteExtract'
KeccakDuplex.c: #define KeccakF_StateXORPermuteExtract KeccakP1600_12_StateXORPermuteExtract
KeccakDuplex.c: ^
KeccakDuplex.c: 2 warnings generated.
SerialFallback.c: SerialFallback.c:93:5: warning: implicit declaration of function 'KeccakP1600_12_StatePermute' is invalid in C99 [-Wimplicit-function-declaration]
SerialFallback.c: KeccakF_StatePermute(stateWithIndex(instanceIndex));
SerialFallback.c: ^
SerialFallback.c: ./KeccakF-interface.h:53:30: note: expanded from macro 'KeccakF_StatePermute'
SerialFallback.c: #define KeccakF_StatePermute KeccakP1600_12_StatePermute
SerialFallback.c: ^
SerialFallback.c: 1 warning generated.

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

Compiler output

Implementation: crypto_aead/seakeyakv1/ref
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
KeccakDuplex.c: In file included from KeccakDuplex.h:17:0,
KeccakDuplex.c: from KeccakDuplex.c:15:
KeccakDuplex.c: KeccakDuplex.c: In function 'Keccak_Duplexing':
KeccakDuplex.c: KeccakF-interface.h:53:30: warning: implicit declaration of function 'KeccakP1600_12_StatePermute' [-Wimplicit-function-declaration]
KeccakDuplex.c: #define KeccakF_StatePermute KeccakP1600_12_StatePermute
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakDuplex.c:63:9: note: in expansion of macro 'KeccakF_StatePermute'
KeccakDuplex.c: KeccakF_StatePermute(instance->state);
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakF-interface.h:73:40: warning: implicit declaration of function 'KeccakP1600_12_StateXORPermuteExtract' [-Wimplicit-function-declaration]
KeccakDuplex.c: #define KeccakF_StateXORPermuteExtract KeccakP1600_12_StateXORPermuteExtract
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakDuplex.c:85:9: note: in expansion of macro 'KeccakF_StateXORPermuteExtract'
KeccakDuplex.c: KeccakF_StateXORPermuteExtract(instance->state, sigmaBegin, sigmaBeginByteLen/KeccakF_laneInBytes,
KeccakDuplex.c: ^
SerialFallback.c: In file included from ParallelKeccakFs.h:17:0,
SerialFallback.c: from SerialFallback.c:14:
SerialFallback.c: SerialFallback.c: In function 'KeccakF_ParallelStatePermute':
SerialFallback.c: KeccakF-interface.h:53:30: warning: implicit declaration of function 'KeccakP1600_12_StatePermute' [-Wimplicit-function-declaration]
SerialFallback.c: #define KeccakF_StatePermute KeccakP1600_12_StatePermute
SerialFallback.c: ^
SerialFallback.c: SerialFallback.c:93:5: note: in expansion of macro 'KeccakF_StatePermute'
SerialFallback.c: KeccakF_StatePermute(stateWithIndex(instanceIndex));
SerialFallback.c: ^
KeccakDuplex.c: In file included from KeccakDuplex.h:17:0,
KeccakDuplex.c: from KeccakDuplex.c:15:
KeccakDuplex.c: KeccakDuplex.c: In function 'Keccak_Duplexing':
KeccakDuplex.c: KeccakF-interface.h:53:30: warning: implicit declaration of function 'KeccakP1600_12_StatePermute' [-Wimplicit-function-declaration]
KeccakDuplex.c: #define KeccakF_StatePermute KeccakP1600_12_StatePermute
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakDuplex.c:63:9: note: in expansion of macro 'KeccakF_StatePermute'
KeccakDuplex.c: KeccakF_StatePermute(instance->state);
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakF-interface.h:73:40: warning: implicit declaration of function 'KeccakP1600_12_StateXORPermuteExtract' [-Wimplicit-function-declaration]
KeccakDuplex.c: #define KeccakF_StateXORPermuteExtract KeccakP1600_12_StateXORPermuteExtract
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakDuplex.c:85:9: note: in expansion of macro 'KeccakF_StateXORPermuteExtract'
KeccakDuplex.c: KeccakF_StateXORPermuteExtract(instance->state, sigmaBegin, sigmaBeginByteLen/KeccakF_laneInBytes,
KeccakDuplex.c: ^
SerialFallback.c: In file included from ParallelKeccakFs.h:17:0,
SerialFallback.c: from SerialFallback.c:14:
SerialFallback.c: SerialFallback.c: In function 'KeccakF_ParallelStatePermute':
SerialFallback.c: KeccakF-interface.h:53:30: warning: implicit declaration of function 'KeccakP1600_12_StatePermute' [-Wimplicit-function-declaration]
SerialFallback.c: #define KeccakF_StatePermute KeccakP1600_12_StatePermute
SerialFallback.c: ^
SerialFallback.c: SerialFallback.c:93:5: note: in expansion of macro 'KeccakF_StatePermute'
SerialFallback.c: KeccakF_StatePermute(stateWithIndex(instanceIndex));
SerialFallback.c: ^

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