Implementation notes: amd64, hobbes, crypto_aead/riverkeyakv1

Computer: hobbes
Architecture: amd64
CPU ID: AuthenticAMD-00600f20-178bfbff
SUPERCOP version: 20171218
Operation: crypto_aead
Primitive: riverkeyakv1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
283678? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2017082420170725
283806? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2017082420170725
284040? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2017082420170725
290006? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2017082420170725
292337? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017082420170725
292833? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2017082420170725
293059? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2017082420170725
304611? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2017082420170725
308698? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2017082420170725
311056? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2017082420170725
311363? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2017082420170725
311839? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2017082420170725
314314? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2017082420170725
316769? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2017082420170725
320929? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2017082420170725
321022? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2017082420170725
322674? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2017082420170725
323047? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017082420170725
323228? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2017082420170725
323757? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2017082420170725
326129? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2017082420170725
326459? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2017082420170725
326500? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2017082420170725
326857? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2017082420170725
327168? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2017082420170725
327219? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017082420170725
327726? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2017082420170725
329369? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2017082420170725
330155? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2017082420170725
330292? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2017082420170725
332338? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2017082420170725
333499? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2017082420170725
333963? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2017082420170725
335080? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2017082420170725
342997? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2017082420170725
420066? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2017082420170725
420999? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2017082420170725
425604? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2017082420170725
425969? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2017082420170725
432181? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2017082420170725
433596? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2017082420170725
435144? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2017082420170725
473326? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2017082420170725
474637? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2017082420170725
539153? ? ?? ? ?refclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2017082420170725
540994? ? ?? ? ?refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017082420170725
544933? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017082420170725
545732? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2017082420170725
547135? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2017082420170725
547514? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017082420170725
547552? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017082420170725
551771? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017082420170725
1348017? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2017082420170725
1355576? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2017082420170725
1373427? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2017082420170725
1373497? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2017082420170725
1374117? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2017082420170725
1375394? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2017082420170725
1377033? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2017082420170725
1377930? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2017082420170725
1378202? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2017082420170725
1378986? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2017082420170725
1380560? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2017082420170725
1381831? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017082420170725
1516959? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2017082420170725
1517997? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2017082420170725
1518861? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2017082420170725
1763106? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2017082420170725
1765680? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2017082420170725
1993506? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2017082420170725
2003012? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2017082420170725
2003537? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2017082420170725
2006385? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2017082420170725
2014394? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2017082420170725
2026962? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2017082420170725
2028347? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2017082420170725
2064556? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2017082420170725
2065755? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2017082420170725
2068424? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2017082420170725
2070091? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2017082420170725
2070314? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2017082420170725
2072109? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2017082420170725
2076317? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017082420170725
2076639? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2017082420170725
2076933? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2017082420170725
2080430? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2017082420170725
2080755? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2017082420170725
2086266? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2017082420170725
2087361? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2017082420170725
2087430? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2017082420170725
2087473? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2017082420170725
2087616? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2017082420170725
2087752? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2017082420170725
2087839? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017082420170725
2088035? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2017082420170725
2136640? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2017082420170725
2154739? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2017082420170725
2219256? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2017082420170725
2220040? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2017082420170725
2221566? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2017082420170725
2224172? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2017082420170725
2230735? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2017082420170725
2230847? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2017082420170725
2236076? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2017082420170725
2246829? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2017082420170725
2247152? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2017082420170725
2249441? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017082420170725
2250532? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2017082420170725
2277756? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2017082420170725
2278519? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2017082420170725
3597431? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2017082420170725
3604086? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2017082420170725
9052312? ? ?? ? ?refcc2017082420170725
9074645? ? ?? ? ?refgcc_-funroll-loops2017082420170725
9208102? ? ?? ? ?refgcc2017082420170725

Test failure

Implementation: crypto_aead/riverkeyakv1/ref
Compiler: gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer
error 111

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

Compiler output

Implementation: crypto_aead/riverkeyakv1/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 'KeccakP800_12_StatePermute' [-Wimplicit-function-declaration]
KeccakDuplex.c: #define KeccakF_StatePermute KeccakP800_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 'KeccakP800_12_StateXORPermuteExtract' [-Wimplicit-function-declaration]
KeccakDuplex.c: #define KeccakF_StateXORPermuteExtract KeccakP800_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: ^

Number of similar (compiler,implementation) pairs: 106, 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=core-avx-i -O2 -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -O -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core2 -O3 -fomit-frame-pointer ref
gcc -m64 -march=core2 -O -fomit-frame-pointer ref
gcc -m64 -march=core2 -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -O -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer ref
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer ref
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer ref
gcc -m64 -march=corei7 -O -fomit-frame-pointer ref
gcc -m64 -march=corei7 -Os -fomit-frame-pointer ref
gcc -m64 -march=k8 -O2 -fomit-frame-pointer ref
gcc -m64 -march=k8 -O3 -fomit-frame-pointer ref
gcc -m64 -march=k8 -O -fomit-frame-pointer ref
gcc -m64 -march=k8 -Os -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer ref
gcc -m64 -march=nocona -O2 -fomit-frame-pointer ref
gcc -m64 -march=nocona -O3 -fomit-frame-pointer ref
gcc -m64 -march=nocona -O -fomit-frame-pointer ref
gcc -m64 -march=nocona -Os -fomit-frame-pointer ref
gcc -march=barcelona -O2 -fomit-frame-pointer ref
gcc -march=barcelona -O3 -fomit-frame-pointer ref
gcc -march=barcelona -O -fomit-frame-pointer ref
gcc -march=barcelona -Os -fomit-frame-pointer ref
gcc -march=k8 -O2 -fomit-frame-pointer ref
gcc -march=k8 -O3 -fomit-frame-pointer ref
gcc -march=k8 -O -fomit-frame-pointer ref
gcc -march=k8 -Os -fomit-frame-pointer ref
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv ref
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv ref
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv ref
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv ref
gcc -march=nocona -O2 -fomit-frame-pointer ref
gcc -march=nocona -O3 -fomit-frame-pointer ref
gcc -march=nocona -O -fomit-frame-pointer ref
gcc -march=nocona -Os -fomit-frame-pointer ref

Compiler output

Implementation: crypto_aead/riverkeyakv1/ref
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
KeccakDuplex.c: KeccakDuplex.c:63:9: warning: implicit declaration of function 'KeccakP800_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 KeccakP800_12_StatePermute
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakDuplex.c:85:9: warning: implicit declaration of function 'KeccakP800_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 KeccakP800_12_StateXORPermuteExtract
KeccakDuplex.c: ^
KeccakDuplex.c: 2 warnings generated.

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

Compiler output

Implementation: crypto_aead/riverkeyakv1/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 'KeccakP800_12_StatePermute' [-Wimplicit-function-declaration]
KeccakDuplex.c: #define KeccakF_StatePermute KeccakP800_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 'KeccakP800_12_StateXORPermuteExtract' [-Wimplicit-function-declaration]
KeccakDuplex.c: #define KeccakF_StateXORPermuteExtract KeccakP800_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: ^
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 'KeccakP800_12_StatePermute' [-Wimplicit-function-declaration]
KeccakDuplex.c: #define KeccakF_StatePermute KeccakP800_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 'KeccakP800_12_StateXORPermuteExtract' [-Wimplicit-function-declaration]
KeccakDuplex.c: #define KeccakF_StateXORPermuteExtract KeccakP800_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: ^

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