Implementation notes: aarch64, supercoplxc, crypto_aead/riverkeyakv1

Computer: supercoplxc
Architecture: aarch64
CPU ID: 410fd034
SUPERCOP version: 20190816
Operation: crypto_aead
Primitive: riverkeyakv1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
65888023526 0 1242196 952 1088refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019092320190816
65976023634 0 1242332 952 1088refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019092320190816
66432018398 0 1235724 952 1088refgcc_-O3_-fomit-frame-pointer2019092320190816
67416018562 0 1235932 952 1088refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019092320190816
69184015022 0 1233204 952 1072refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019092320190816
70712012100 0 1229625 816 1096refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019092320190816
70712012100 0 1229673 816 1096refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019092320190816
70712012100 0 1229673 816 1096refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019092320190816
70744012100 0 1229673 816 1096refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019092320190816
71048014994 0 1233316 952 1072refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019092320190816
73712012208 0 1229793 816 1096refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019092320190816
110104014182 0 1233644 952 1072refgcc_-funroll-loops_-O_-fomit-frame-pointer2019092320190816
110120014182 0 1233644 952 1072refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019092320190816
258672010910 0 1227044 952 1072refgcc_-O2_-fomit-frame-pointer2019092320190816
27180009632 0 1224801 936 1064refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019092320190816
27188009632 0 1224801 936 1064refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019092320190816
287488010882 0 1227012 952 1072refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019092320190816
29760809672 0 1224801 936 1064refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019092320190816
29776809672 0 1224801 936 1064refgcc_-Os_-fomit-frame-pointer2019092320190816
600560011090 0 1227348 952 1072refgcc_-O_-fomit-frame-pointer2019092320190816
600760011090 0 1227348 952 1072refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019092320190816
2778240016071 0 1242881 936 1072refcc2019092320190816
2779312016071 0 1242881 936 1072refgcc2019092320190816
2795528016071 0 1242881 936 1072refgcc_-funroll-loops2019092320190816

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: 19, 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

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