Implementation notes: amd64, h8bobcat, crypto_aead/oceankeyakv1

Computer: h8bobcat
Architecture: amd64
CPU ID: AuthenticAMD-00500f20-178bfbff
SUPERCOP version: 20171218
Operation: crypto_aead
Primitive: oceankeyakv1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
249242? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2017081320170718
249413? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2017081320170718
254206? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2017081320170718
254476? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017081320170718
256723? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2017081320170718
256723? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2017081320170718
256833? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2017081320170718
258994? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2017081320170718
265435? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2017081320170718
276141? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2017081320170718
278165? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2017081320170718
278925? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2017081320170718
282326? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2017081320170718
290491? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2017081320170718
291854? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2017081320170718
291868? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2017081320170718
293094? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2017081320170718
293797? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2017081320170718
295369? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2017081320170718
296533? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2017081320170718
297074? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2017081320170718
297297? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2017081320170718
300171? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2017081320170718
301236? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2017081320170718
302803? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017081320170718
303853? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2017081320170718
304750? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2017081320170718
305634? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017081320170718
305663? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2017081320170718
307738? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2017081320170718
346945? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2017081320170718
346992? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2017081320170718
347073? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2017081320170718
347638? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2017081320170718
348223? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2017081320170718
349562? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2017081320170718
352778? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2017081320170718
374006? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2017081320170718
374134? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2017081320170718
537064? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017081320170718
541790? ? ?? ? ?refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017081320170718
542051? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2017081320170718
545005? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017081320170718
546298? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017081320170718
559854? ? ?? ? ?refclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2017081320170718
1035338? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2017081320170718
1035405? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2017081320170718
1035481? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2017081320170718
1036146? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2017081320170718
1036811? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2017081320170718
1036897? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2017081320170718
1036925? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2017081320170718
1039528? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2017081320170718
1039595? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017081320170718
1059521? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2017081320170718
1060604? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2017081320170718
1062105? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2017081320170718
1063715? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2017081320170718
1341110? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2017081320170718
1350795? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2017081320170718
1622614? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2017081320170718
1623089? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2017081320170718
1624514? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2017081320170718
1626923? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2017081320170718
1628509? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2017081320170718
1628770? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2017081320170718
1635938? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2017081320170718
1636432? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2017081320170718
1642170? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2017081320170718
1644930? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2017081320170718
1647680? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017081320170718
1648463? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2017081320170718
1659565? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2017081320170718
2794777? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2017081320170718
2794980? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2017081320170718
3681767? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2017081320170718
3682703? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2017081320170718
3695832? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2017081320170718
3696189? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2017081320170718
3697006? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2017081320170718
3697623? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2017081320170718
3699899? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2017081320170718
3703627? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2017081320170718
3705062? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2017081320170718
3714153? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017081320170718
3717017? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2017081320170718
3718585? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017081320170718
3718808? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2017081320170718
3719065? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2017081320170718
3719174? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2017081320170718
3719302? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2017081320170718
3719540? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2017081320170718
3719554? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2017081320170718
3719578? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2017081320170718
3720324? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2017081320170718
3720519? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2017081320170718
3721159? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2017081320170718
3723663? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2017081320170718
3723953? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2017081320170718
6505724? ? ?? ? ?refgcc2017081320170718
6509814? ? ?? ? ?refcc2017081320170718
6571260? ? ?? ? ?refgcc_-funroll-loops2017081320170718

Compiler output

Implementation: crypto_aead/oceankeyakv1/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/oceankeyakv1/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/oceankeyakv1/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