Implementation notes: aarch64, rockpi4, crypto_aead/riverkeyakv1

Computer: rockpi4
Architecture: aarch64
CPU ID: unknown CPU ID
SUPERCOP version: 20190816
Operation: crypto_aead
Primitive: riverkeyakv1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
28084015022 0 1233730 952 1072refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019091320190816
28868714994 0 1233842 952 1072refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091320190816
31305412100 0 1230191 816 1096refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019091320190816
31346712100 0 1230191 816 1096refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019091320190816
31346712100 0 1230191 816 1096refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019091320190816
31718412100 0 1230143 816 1096refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019091320190816
32255318398 0 1236250 952 1088refgcc_-O3_-fomit-frame-pointer2019091320190816
32585718562 0 1236450 952 1088refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091320190816
32709623526 0 1242722 952 1088refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019091320190816
32833518574 0 1236538 952 1088refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019091320190816
33205223634 0 1242850 952 1088refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091320190816
41423914182 0 1234170 952 1072refgcc_-funroll-loops_-O_-fomit-frame-pointer2019091320190816
41423914182 0 1234170 952 1072refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019091320190816
58769912208 0 1230319 816 1096refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019091320190816
106306211078 0 1227866 952 1072refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019091320190816
106471410882 0 1227538 952 1072refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091320190816
106554010910 0 1227562 952 1072refgcc_-O2_-fomit-frame-pointer2019091320190816
11448369632 0 1225319 936 1064refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019091320190816
151529711086 0 1227858 952 1072refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019091320190816
152149211090 0 1227874 952 1072refgcc_-O_-fomit-frame-pointer2019091320190816
152190511090 0 1227874 952 1072refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019091320190816
21657729632 0 1225319 936 1064refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091320190816
23652519668 0 1225319 936 1064refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019091320190816
23702079672 0 1225319 936 1064refgcc_-Os_-fomit-frame-pointer2019091320190816
23706209672 0 1225319 936 1064refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091320190816
1072643616071 0 1243399 936 1072refgcc_-funroll-loops2019091320190816
2213886516071 0 1243399 936 1072refgcc2019091320190816
2234206116071 0 1243399 936 1072refcc2019091320190816

Compiler output

Implementation: ref
Security model: unknown
Compiler: cc
KeccakDuplex.c: In file included from KeccakDuplex.h:17,
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: 23, 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 -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

Compiler output

Implementation: ref
Security model: unknown
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: 5, namely:
CompilerImplementations
clang -O3 -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 -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref