Implementation notes: armeabi, berry0, crypto_aead/ketjejrv2

Computer: berry0
Microarchitecture: armeabi; ARM1176 (410fb767)
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20240107
Operation: crypto_aead
Primitive: ketjejrv2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
24045434943 0 029238 384 816T:compactclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012820240107
24048804943 0 029238 384 816T:compactclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012820240107
25937455043 0 026622 384 824T:compactclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012820240107
26920824975 0 026606 384 824T:compactclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012820240107
32779405823 0 024529 396 816T:compactgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
43656894178 0 021149 396 816T:compactgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
43970544107 0 026669 380 816T:compactclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012820240107
51043713839 0 020129 388 816T:compactgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
59342234234 0 021989 396 816T:compactgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
21368111555787 564 3475921 968 856T:refclang++_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012820240107
22666542055787 564 3475921 968 856T:refclang++_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012820240107
23749119461823 564 3076662 972 856T:refclang++_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012820240107
26842977168865 564 2780114 1036 856T:refg++_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
33819127443362 564 3461231 960 848T:refclang++_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012820240107
35673835047813 564 2760912 1036 856T:refg++_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107
45986219947948 564 2761116 1028 856T:refg++_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012820240107

Test failure

Implementation: T:ref
Security model: timingleaks
Compiler: g++ -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE
error 142
Alarm clock

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
g++ -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref

Compiler output

Implementation: T:ARMv6M
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
KeccakP-200-armv6m-le-gcc.s: KeccakP-200-armv6m-le-gcc.s:351:5: error: out of range pc-relative fixup value
KeccakP-200-armv6m-le-gcc.s: beq KeccakP200_Permute_RoundLoop
KeccakP-200-armv6m-le-gcc.s: ^

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ARMv6M
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ARMv6M
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ARMv6M
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ARMv6M
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ARMv6M

Compiler output

Implementation: T:ARMv6M
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
KeccakP-200-armv6m-le-gcc.s: KeccakP-200-armv6m-le-gcc.s: Assembler messages:
KeccakP-200-armv6m-le-gcc.s: KeccakP-200-armv6m-le-gcc.s:351: Error: branch out of range

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ARMv6M
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ARMv6M
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ARMv6M
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ARMv6M

Compiler output

Implementation: T:ARMv7M
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
KetjeJr.c: In file included from KetjeJr.c:20:
KetjeJr.c: ./KetJr.h:22:14: fatal error: 'KeccakP-200-SnP.h' file not found
KetjeJr.c: #include "KeccakP-200-SnP.h"
KetjeJr.c: ^~~~~~~~~~~~~~~~~~~
KetjeJr.c: 1 error generated.

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ARMv7M
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ARMv7M
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ARMv7M
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ARMv7M
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ARMv7M

Compiler output

Implementation: T:ARMv7M
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
KetjeJr.c: In file included from KetjeJr.c:20:
KetjeJr.c: KetJr.h:22:14: fatal error: KeccakP-200-SnP.h: No such file or directory
KetjeJr.c: #include "KeccakP-200-SnP.h"
KetjeJr.c: ^~~~~~~~~~~~~~~~~~~
KetjeJr.c: compilation terminated.

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ARMv7M
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ARMv7M
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ARMv7M
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ARMv7M

Compiler output

Implementation: T:compact
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
KeccakP-200-compact.c: KeccakP-200-compact.c:20:36: warning: '/*' within block comment [-Wcomment]
KeccakP-200-compact.c: /* #define DIVISION_INSTRUCTION /* comment if no division instruction or more compact when not using division */
KeccakP-200-compact.c: ^
KeccakP-200-compact.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:compact
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:compact
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:compact
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:compact
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:compact

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: g++ -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE
Keccak-f.cpp: In file included from /usr/include/c++/8/vector:69,
Keccak-f.cpp: from Keccak-f.h:21,
Keccak-f.cpp: from Keccak-f.cpp:17:
Keccak-f.cpp: /usr/include/c++/8/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {long long unsigned int}; _Tp = long long unsigned int; _Alloc = std::allocator<long long unsigned int>]':
Keccak-f.cpp: /usr/include/c++/8/bits/vector.tcc:413:7: note: parameter passing for argument of type 'std::vector<long long unsigned int>::iterator' {aka '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >'} changed in GCC 7.1
Keccak-f.cpp: vector<_Tp, _Alloc>::
Keccak-f.cpp: ^~~~~~~~~~~~~~~~~~~
Keccak-f.cpp: /usr/include/c++/8/bits/vector.tcc: In member function 'void KeccakF::initializeRoundConstants()':
Keccak-f.cpp: /usr/include/c++/8/bits/vector.tcc:109:4: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
Keccak-f.cpp: _M_realloc_insert(end(), std::forward<_Args>(__args)...);
Keccak-f.cpp: ^~~~~~~~~~~~~~~~~

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
g++ -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref

Namespace violations

Implementation: T:compact
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
KeccakP-200-compact.o KeccakF200_RoundConstants R
KeccakP-200-compact.o KeccakP200_AddByte T
KeccakP-200-compact.o KeccakP200_AddBytes T
KeccakP-200-compact.o KeccakP200_ExtractAndAddBytes T
KeccakP-200-compact.o KeccakP200_ExtractBytes T
KeccakP-200-compact.o KeccakP200_Initialize T
KeccakP-200-compact.o KeccakP200_Mod5 R
KeccakP-200-compact.o KeccakP200_OverwriteBytes T
KeccakP-200-compact.o KeccakP200_OverwriteWithZeroes T
KeccakP-200-compact.o KeccakP200_Permute_18rounds T
KeccakP-200-compact.o KeccakP200_Permute_Nrounds T
KeccakP-200-compact.o KeccakP200_PiLane R
KeccakP-200-compact.o KeccakP200_RotationConstants R
KetJr.o KetJr_FeedAssociatedDataBlocks T
KetJr.o KetJr_StateAddByte T
KetJr.o KetJr_StateExtractByte T
KetJr.o KetJr_StateOverwrite T
KetJr.o KetJr_StateTwistIndexes R
KetJr.o KetJr_Step T
KetJr.o KetJr_UnwrapBlocks T
KetJr.o KetJr_WrapBlocks T
KetjeJr.o KetjeJr_FeedAssociatedData T
KetjeJr.o KetjeJr_GetTag T
KetjeJr.o KetjeJr_Initialize T
KetjeJr.o KetjeJr_UnwrapCiphertext T
KetjeJr.o KetjeJr_WrapPlaintext T

Number of similar (compiler,implementation) pairs: 9, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:compact
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:compact
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:compact
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:compact
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:compact
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:compact
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:compact
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:compact
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:compact