Implementation notes: amd64, ryzen, crypto_aead/riverkeyakv1

Computer: ryzen
Architecture: amd64
CPU ID: AuthenticAMD-00800f11-178bfbff
SUPERCOP version: 20170904
Operation: crypto_aead
Primitive: riverkeyakv1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
167700? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2017091220170904
167970? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2017091220170904
168000? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2017091220170904
168030? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2017091220170904
168690? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2017091220170904
168810? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017091220170904
168930? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2017091220170904
169350? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2017091220170904
169380? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2017091220170904
189750? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2017091220170904
189990? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2017091220170904
194010? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2017091220170904
197370? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2017091220170904
197490? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2017091220170904
198420? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2017091220170904
198720? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2017091220170904
199020? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2017091220170904
199110? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2017091220170904
199110? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2017091220170904
199320? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2017091220170904
199680? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2017091220170904
199710? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017091220170904
199860? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2017091220170904
199920? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2017091220170904
200010? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2017091220170904
200040? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2017091220170904
200040? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2017091220170904
201060? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2017091220170904
201060? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2017091220170904
201210? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2017091220170904
201390? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017091220170904
201450? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2017091220170904
201990? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2017091220170904
202020? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2017091220170904
219180? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2017091220170904
238050? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2017091220170904
238470? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017091220170904
238860? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017091220170904
240660? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017091220170904
259080? ? ?? ? ?refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017091220170904
259230? ? ?? ? ?refclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2017091220170904
261420? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2017091220170904
261870? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017091220170904
262290? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2017091220170904
262950? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017091220170904
274710? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2017091220170904
275400? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2017091220170904
276090? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2017091220170904
286590? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2017091220170904
298950? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2017091220170904
298950? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2017091220170904
303930? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2017091220170904
314490? ? ?? ? ?reficc_-no-vec2017091220170904
320910? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2017091220170904
322290? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2017091220170904
503070? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2017091220170904
623520? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017091220170904
624300? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2017091220170904
666000? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2017091220170904
666030? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2017091220170904
666420? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2017091220170904
670470? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2017091220170904
671130? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2017091220170904
683430? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2017091220170904
691440? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2017091220170904
691830? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2017091220170904
694020? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2017091220170904
698790? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2017091220170904
701490? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2017091220170904
705450? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2017091220170904
712680? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2017091220170904
717900? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2017091220170904
770130? ? ?? ? ?reficc2017091220170904
942900? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2017091220170904
972600? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2017091220170904
1111170? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2017091220170904
1120350? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2017091220170904
1136070? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017091220170904
1136130? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2017091220170904
1136190? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2017091220170904
1136370? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2017091220170904
1138650? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2017091220170904
1142340? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2017091220170904
1142580? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2017091220170904
1224300? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2017091220170904
1226100? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2017091220170904
1226700? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2017091220170904
1231200? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2017091220170904
1232160? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2017091220170904
1453410? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2017091220170904
1453500? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2017091220170904
1492290? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2017091220170904
1493760? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2017091220170904
1494030? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2017091220170904
1494990? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2017091220170904
1495110? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2017091220170904
1495170? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2017091220170904
1498200? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2017091220170904
1498740? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2017091220170904
1500810? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2017091220170904
1500960? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2017091220170904
1501770? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2017091220170904
1508970? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2017091220170904
1509690? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2017091220170904
1512690? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017091220170904
1515090? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2017091220170904
1515270? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2017091220170904
1516680? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2017091220170904
1516710? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017091220170904
1517280? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2017091220170904
1517400? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2017091220170904
1517400? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2017091220170904
1517430? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2017091220170904
1517490? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2017091220170904
1722480? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2017091220170904
1734600? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2017091220170904
2800980? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2017091220170904
3072990? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2017091220170904
3735930? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2017091220170904
3774840? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2017091220170904
4133700? ? ?? ? ?refgcc2017091220170904
4141500? ? ?? ? ?refcc2017091220170904
4161720? ? ?? ? ?refgcc_-funroll-loops2017091220170904

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'; did you mean 'KeccakF800_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'; did you mean 'KeccakF800_StateXORPermuteExtract'? [-Wimplicit-function-declaration]
KeccakDuplex.c: #define KeccakF_StateXORPermuteExtract KeccakP800_12_StateXORPermuteExtract
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakF-interface.h:73:40: note: in definition of macro 'KeccakF_StateXORPermuteExtract'
KeccakDuplex.c: #define KeccakF_StateXORPermuteExtract KeccakP800_12_StateXORPermuteExtract
KeccakDuplex.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

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

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: 10, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments ref
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref

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'; did you mean 'KeccakF800_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'; did you mean 'KeccakF800_StateXORPermuteExtract'? [-Wimplicit-function-declaration]
KeccakDuplex.c: #define KeccakF_StateXORPermuteExtract KeccakP800_12_StateXORPermuteExtract
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakF-interface.h:73:40: note: in definition of macro 'KeccakF_StateXORPermuteExtract'
KeccakDuplex.c: #define KeccakF_StateXORPermuteExtract KeccakP800_12_StateXORPermuteExtract
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'; did you mean 'KeccakF800_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'; did you mean 'KeccakF800_StateXORPermuteExtract'? [-Wimplicit-function-declaration]
KeccakDuplex.c: #define KeccakF_StateXORPermuteExtract KeccakP800_12_StateXORPermuteExtract
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakF-interface.h:73:40: note: in definition of macro 'KeccakF_StateXORPermuteExtract'
KeccakDuplex.c: #define KeccakF_StateXORPermuteExtract KeccakP800_12_StateXORPermuteExtract
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

Compiler output

Implementation: crypto_aead/riverkeyakv1/ref
Compiler: icc
KeccakDuplex.c: KeccakDuplex.c(63): warning #266: function "KeccakP800_12_StatePermute" declared implicitly
KeccakDuplex.c: KeccakF_StatePermute(instance->state);
KeccakDuplex.c: ^
KeccakDuplex.c:
KeccakDuplex.c: KeccakDuplex.c(85): warning #266: function "KeccakP800_12_StateXORPermuteExtract" declared implicitly
KeccakDuplex.c: KeccakF_StateXORPermuteExtract(instance->state, sigmaBegin, sigmaBeginByteLen/KeccakF_laneInBytes,
KeccakDuplex.c: ^
KeccakDuplex.c:

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
icc ref
icc -no-vec ref

Compiler output

Implementation: crypto_aead/riverkeyakv1/ref
Compiler: icc -O1 -static
KeccakDuplex.c: KeccakDuplex.c(63): warning #266: function "KeccakP800_12_StatePermute" declared implicitly
KeccakDuplex.c: KeccakF_StatePermute(instance->state);
KeccakDuplex.c: ^
KeccakDuplex.c:
KeccakDuplex.c: KeccakDuplex.c(85): warning #266: function "KeccakP800_12_StateXORPermuteExtract" declared implicitly
KeccakDuplex.c: KeccakF_StateXORPermuteExtract(instance->state, sigmaBegin, sigmaBeginByteLen/KeccakF_laneInBytes,
KeccakDuplex.c: ^
KeccakDuplex.c:
try.c: ld: cannot find -lcrypto

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

Compiler output

Implementation: crypto_aead/riverkeyakv1/ref
Compiler: icc -O1 -xB -static
KeccakDuplex.c: icc: command line warning #10131: extension 'B' not supported ignored in option '-x'
KeccakDuplex.c: KeccakDuplex.c(63): warning #266: function "KeccakP800_12_StatePermute" declared implicitly
KeccakDuplex.c: KeccakF_StatePermute(instance->state);
KeccakDuplex.c: ^
KeccakDuplex.c:
KeccakDuplex.c: KeccakDuplex.c(85): warning #266: function "KeccakP800_12_StateXORPermuteExtract" declared implicitly
KeccakDuplex.c: KeccakF_StateXORPermuteExtract(instance->state, sigmaBegin, sigmaBeginByteLen/KeccakF_laneInBytes,
KeccakDuplex.c: ^
KeccakDuplex.c:
KeccakF-800-reference.c: icc: command line warning #10131: extension 'B' not supported ignored in option '-x'
KeccakP-800-12-reference.c: icc: command line warning #10131: extension 'B' not supported ignored in option '-x'
Keyak.c: icc: command line warning #10131: extension 'B' not supported ignored in option '-x'
displayIntermediateValues.c: icc: command line warning #10131: extension 'B' not supported ignored in option '-x'
encrypt.c: icc: command line warning #10131: extension 'B' not supported ignored in option '-x'
try.c: icc: command line warning #10131: extension 'B' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

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

Compiler output

Implementation: crypto_aead/riverkeyakv1/ref
Compiler: icc -O1 -xK -static
KeccakDuplex.c: icc: command line warning #10131: extension 'K' not supported ignored in option '-x'
KeccakDuplex.c: KeccakDuplex.c(63): warning #266: function "KeccakP800_12_StatePermute" declared implicitly
KeccakDuplex.c: KeccakF_StatePermute(instance->state);
KeccakDuplex.c: ^
KeccakDuplex.c:
KeccakDuplex.c: KeccakDuplex.c(85): warning #266: function "KeccakP800_12_StateXORPermuteExtract" declared implicitly
KeccakDuplex.c: KeccakF_StateXORPermuteExtract(instance->state, sigmaBegin, sigmaBeginByteLen/KeccakF_laneInBytes,
KeccakDuplex.c: ^
KeccakDuplex.c:
KeccakF-800-reference.c: icc: command line warning #10131: extension 'K' not supported ignored in option '-x'
KeccakP-800-12-reference.c: icc: command line warning #10131: extension 'K' not supported ignored in option '-x'
Keyak.c: icc: command line warning #10131: extension 'K' not supported ignored in option '-x'
displayIntermediateValues.c: icc: command line warning #10131: extension 'K' not supported ignored in option '-x'
encrypt.c: icc: command line warning #10131: extension 'K' not supported ignored in option '-x'
try.c: icc: command line warning #10131: extension 'K' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

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

Compiler output

Implementation: crypto_aead/riverkeyakv1/ref
Compiler: icc -O1 -xN -static
KeccakDuplex.c: icc: command line warning #10131: extension 'N' not supported ignored in option '-x'
KeccakDuplex.c: KeccakDuplex.c(63): warning #266: function "KeccakP800_12_StatePermute" declared implicitly
KeccakDuplex.c: KeccakF_StatePermute(instance->state);
KeccakDuplex.c: ^
KeccakDuplex.c:
KeccakDuplex.c: KeccakDuplex.c(85): warning #266: function "KeccakP800_12_StateXORPermuteExtract" declared implicitly
KeccakDuplex.c: KeccakF_StateXORPermuteExtract(instance->state, sigmaBegin, sigmaBeginByteLen/KeccakF_laneInBytes,
KeccakDuplex.c: ^
KeccakDuplex.c:
KeccakF-800-reference.c: icc: command line warning #10131: extension 'N' not supported ignored in option '-x'
KeccakP-800-12-reference.c: icc: command line warning #10131: extension 'N' not supported ignored in option '-x'
Keyak.c: icc: command line warning #10131: extension 'N' not supported ignored in option '-x'
displayIntermediateValues.c: icc: command line warning #10131: extension 'N' not supported ignored in option '-x'
encrypt.c: icc: command line warning #10131: extension 'N' not supported ignored in option '-x'
try.c: icc: command line warning #10131: extension 'N' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

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

Compiler output

Implementation: crypto_aead/riverkeyakv1/ref
Compiler: icc -O1 -xW -static
KeccakDuplex.c: icc: command line warning #10131: extension 'W' not supported ignored in option '-x'
KeccakDuplex.c: KeccakDuplex.c(63): warning #266: function "KeccakP800_12_StatePermute" declared implicitly
KeccakDuplex.c: KeccakF_StatePermute(instance->state);
KeccakDuplex.c: ^
KeccakDuplex.c:
KeccakDuplex.c: KeccakDuplex.c(85): warning #266: function "KeccakP800_12_StateXORPermuteExtract" declared implicitly
KeccakDuplex.c: KeccakF_StateXORPermuteExtract(instance->state, sigmaBegin, sigmaBeginByteLen/KeccakF_laneInBytes,
KeccakDuplex.c: ^
KeccakDuplex.c:
KeccakF-800-reference.c: icc: command line warning #10131: extension 'W' not supported ignored in option '-x'
KeccakP-800-12-reference.c: icc: command line warning #10131: extension 'W' not supported ignored in option '-x'
Keyak.c: icc: command line warning #10131: extension 'W' not supported ignored in option '-x'
displayIntermediateValues.c: icc: command line warning #10131: extension 'W' not supported ignored in option '-x'
encrypt.c: icc: command line warning #10131: extension 'W' not supported ignored in option '-x'
try.c: icc: command line warning #10131: extension 'W' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

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

Compiler output

Implementation: crypto_aead/riverkeyakv1/ref
Compiler: icc -fast
KeccakDuplex.c: KeccakDuplex.c(63): warning #266: function "KeccakP800_12_StatePermute" declared implicitly
KeccakDuplex.c: KeccakF_StatePermute(instance->state);
KeccakDuplex.c: ^
KeccakDuplex.c:
KeccakDuplex.c: KeccakDuplex.c(85): warning #266: function "KeccakP800_12_StateXORPermuteExtract" declared implicitly
KeccakDuplex.c: KeccakF_StateXORPermuteExtract(instance->state, sigmaBegin, sigmaBeginByteLen/KeccakF_laneInBytes,
KeccakDuplex.c: ^
KeccakDuplex.c:
try.c: ipo: warning #11003: no IR in object file /root/supercop-20170904/supercop-data/ryzen/amd64/lib/kernelrandombytes.o; was the source file compiled with -ipo
try.c: ipo: warning #11003: no IR in object file /root/supercop-20170904/supercop-data/ryzen/amd64/lib/cpucycles.o; was the source file compiled with -ipo
try.c: ld: cannot find -lcrypto

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

Compiler output

Implementation: crypto_aead/riverkeyakv1/ref
Compiler: icc -m64 -xHost -vec-report0 -static
KeccakDuplex.c: icc: command line remark #10148: option '-vec-report0' not supported
KeccakDuplex.c: KeccakDuplex.c(63): warning #266: function "KeccakP800_12_StatePermute" declared implicitly
KeccakDuplex.c: KeccakF_StatePermute(instance->state);
KeccakDuplex.c: ^
KeccakDuplex.c:
KeccakDuplex.c: KeccakDuplex.c(85): warning #266: function "KeccakP800_12_StateXORPermuteExtract" declared implicitly
KeccakDuplex.c: KeccakF_StateXORPermuteExtract(instance->state, sigmaBegin, sigmaBeginByteLen/KeccakF_laneInBytes,
KeccakDuplex.c: ^
KeccakDuplex.c:
KeccakF-800-reference.c: icc: command line remark #10148: option '-vec-report0' not supported
KeccakP-800-12-reference.c: icc: command line remark #10148: option '-vec-report0' not supported
Keyak.c: icc: command line remark #10148: option '-vec-report0' not supported
displayIntermediateValues.c: icc: command line remark #10148: option '-vec-report0' not supported
encrypt.c: icc: command line remark #10148: option '-vec-report0' not supported
try.c: icc: command line remark #10148: option '-vec-report0' not supported
try.c: ld: cannot find -lcrypto

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