Implementation notes: armeabi, berry2, crypto_aead/isapk128v20

Computer: berry2
Microarchitecture: armeabi; Cortex-A7 (410fc075)
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20240107
Operation: crypto_aead
Primitive: isapk128v20
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
40742726956 0 020008 396 816T:opt_32_armv7mgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012620240107
40743215896 0 017163 392 816T:opt_32_armv7mgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012620240107
40803045792 0 016480 384 816T:opt_32_armv7mgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012620240107
40804025936 0 017419 392 816T:opt_32_armv7mgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012620240107
4662670279336 0 0289893 384 816T:opt_64gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012620240107
5049498380452 0 0403735 384 832T:opt_64clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012620240107
53289223518 0 026818 384 832T:opt_32_armv6mclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012620240107
53314424544 0 017580 396 816T:opt_32_armv6mgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012620240107
53317713484 0 014655 392 816T:opt_32_armv6mgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012620240107
53378713380 0 013956 384 816T:opt_32_armv6mgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012620240107
53381913524 0 015007 392 816T:opt_32_armv6mgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012620240107
5511817278232 0 0289699 392 816T:opt_64gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012620240107
56114524898 0 028150 388 832T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012620240107
5652223391120 0 0402271 392 816T:opt_64gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012620240107
6355569391848 0 0404868 396 816T:opt_64gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012620240107
73471454990 0 018064 400 816T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012620240107
305226193466 0 014720 400 816T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012620240107
368491203166 0 013882 392 816T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012620240107
803173523726 0 015296 400 816T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012620240107

Compiler output

Implementation: T:opt_32_armv7m
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:310:5: error: invalid instruction, any one of the following would fix this:
KeccakP-400-armv7m-le-gcc.s: str r3, [r0], #4
KeccakP-400-armv7m-le-gcc.s: ^
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:310:5: note: instruction requires: arm-mode
KeccakP-400-armv7m-le-gcc.s: str r3, [r0], #4
KeccakP-400-armv7m-le-gcc.s: ^
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:310:5: note: instruction requires: thumb2
KeccakP-400-armv7m-le-gcc.s: str r3, [r0], #4
KeccakP-400-armv7m-le-gcc.s: ^
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:310:23: note: too many operands for instruction
KeccakP-400-armv7m-le-gcc.s: str r3, [r0], #4
KeccakP-400-armv7m-le-gcc.s: ^
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:314:5: error: invalid instruction, any one of the following would fix this:
KeccakP-400-armv7m-le-gcc.s: ands r1, #3
KeccakP-400-armv7m-le-gcc.s: ^
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:314:5: note: instruction requires: thumb2
KeccakP-400-armv7m-le-gcc.s: ands r1, #3
KeccakP-400-armv7m-le-gcc.s: ^
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:314:17: note: operand must be a register in range [r0, r7]
KeccakP-400-armv7m-le-gcc.s: ands r1, #3
KeccakP-400-armv7m-le-gcc.s: ^
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:317:5: error: invalid instruction, any one of the following would fix this:
KeccakP-400-armv7m-le-gcc.s: strb r3, [r0], #1
KeccakP-400-armv7m-le-gcc.s: ^
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:317:5: note: instruction requires: arm-mode
KeccakP-400-armv7m-le-gcc.s: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:opt_32_armv7m

Namespace violations

Implementation: T:opt_32_armv6m
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
KeccakP-400-armv6m-le-gcc.o KeccakP400_AddByte T
KeccakP-400-armv6m-le-gcc.o KeccakP400_AddBytes T
KeccakP-400-armv6m-le-gcc.o KeccakP400_ExtractAndAddBytes T
KeccakP-400-armv6m-le-gcc.o KeccakP400_ExtractBytes T
KeccakP-400-armv6m-le-gcc.o KeccakP400_Initialize T
KeccakP-400-armv6m-le-gcc.o KeccakP400_OverwriteBytes T
KeccakP-400-armv6m-le-gcc.o KeccakP400_OverwriteWithZeroes T
KeccakP-400-armv6m-le-gcc.o KeccakP400_Permute_20rounds T
KeccakP-400-armv6m-le-gcc.o KeccakP400_Permute_Nrounds T
KeccakP-400-armv6m-le-gcc.o KeccakP400_StaticInitialize T
KeccakP-400-armv6m-le-gcc.o _ba a
KeccakP-400-armv6m-le-gcc.o _be a
KeccakP-400-armv6m-le-gcc.o _bi a
KeccakP-400-armv6m-le-gcc.o _bo a
KeccakP-400-armv6m-le-gcc.o _bu a
KeccakP-400-armv6m-le-gcc.o _ga a
KeccakP-400-armv6m-le-gcc.o _ge a
KeccakP-400-armv6m-le-gcc.o _gi a
KeccakP-400-armv6m-le-gcc.o _go a
KeccakP-400-armv6m-le-gcc.o _gu a
KeccakP-400-armv6m-le-gcc.o _ka a
KeccakP-400-armv6m-le-gcc.o _ke a
KeccakP-400-armv6m-le-gcc.o _ki a
KeccakP-400-armv6m-le-gcc.o _ko a
KeccakP-400-armv6m-le-gcc.o _ku a
KeccakP-400-armv6m-le-gcc.o _ma a
KeccakP-400-armv6m-le-gcc.o _me a
KeccakP-400-armv6m-le-gcc.o _mi a
KeccakP-400-armv6m-le-gcc.o _mo a
KeccakP-400-armv6m-le-gcc.o _mu a
KeccakP-400-armv6m-le-gcc.o _sa a
KeccakP-400-armv6m-le-gcc.o _se a
KeccakP-400-armv6m-le-gcc.o _si a
KeccakP-400-armv6m-le-gcc.o _so a
KeccakP-400-armv6m-le-gcc.o _su a
isap.o ISAP_IV1 R
isap.o ISAP_IV2 R
isap.o ISAP_IV3 R
isap.o isap_enc T
isap.o isap_mac T
isap.o isap_rk T

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

Namespace violations

Implementation: T:opt_32_armv7m
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
KeccakP-400-armv7m-le-gcc.o KeccakP400_AddByte T
KeccakP-400-armv7m-le-gcc.o KeccakP400_AddBytes T
KeccakP-400-armv7m-le-gcc.o KeccakP400_ExtractAndAddBytes T
KeccakP-400-armv7m-le-gcc.o KeccakP400_ExtractBytes T
KeccakP-400-armv7m-le-gcc.o KeccakP400_Initialize T
KeccakP-400-armv7m-le-gcc.o KeccakP400_OverwriteBytes T
KeccakP-400-armv7m-le-gcc.o KeccakP400_OverwriteWithZeroes T
KeccakP-400-armv7m-le-gcc.o KeccakP400_Permute_20rounds T
KeccakP-400-armv7m-le-gcc.o KeccakP400_Permute_Nrounds T
KeccakP-400-armv7m-le-gcc.o KeccakP400_StaticInitialize T
KeccakP-400-armv7m-le-gcc.o _ba a
KeccakP-400-armv7m-le-gcc.o _be a
KeccakP-400-armv7m-le-gcc.o _bi a
KeccakP-400-armv7m-le-gcc.o _bo a
KeccakP-400-armv7m-le-gcc.o _bu a
KeccakP-400-armv7m-le-gcc.o _ga a
KeccakP-400-armv7m-le-gcc.o _ge a
KeccakP-400-armv7m-le-gcc.o _gi a
KeccakP-400-armv7m-le-gcc.o _go a
KeccakP-400-armv7m-le-gcc.o _gu a
KeccakP-400-armv7m-le-gcc.o _ka a
KeccakP-400-armv7m-le-gcc.o _ke a
KeccakP-400-armv7m-le-gcc.o _ki a
KeccakP-400-armv7m-le-gcc.o _ko a
KeccakP-400-armv7m-le-gcc.o _ku a
KeccakP-400-armv7m-le-gcc.o _ma a
KeccakP-400-armv7m-le-gcc.o _me a
KeccakP-400-armv7m-le-gcc.o _mi a
KeccakP-400-armv7m-le-gcc.o _mo a
KeccakP-400-armv7m-le-gcc.o _mu a
KeccakP-400-armv7m-le-gcc.o _sa a
KeccakP-400-armv7m-le-gcc.o _se a
KeccakP-400-armv7m-le-gcc.o _si a
KeccakP-400-armv7m-le-gcc.o _so a
KeccakP-400-armv7m-le-gcc.o _su a
isap.o ISAP_IV1 R
isap.o ISAP_IV2 R
isap.o ISAP_IV3 R
isap.o isap_enc T
isap.o isap_mac T
isap.o isap_rk T

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

Namespace violations

Implementation: T:opt_64
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
isap.o ISAP_IV1 R
isap.o ISAP_IV2 R
isap.o ISAP_IV3 R
isap.o isap_enc T
isap.o isap_mac T
isap.o isap_rk T

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

Namespace violations

Implementation: T:ref
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
KeccakP-400-reference.o KeccakP400OnWords T
KeccakP-400-reference.o KeccakP400Round T
KeccakP-400-reference.o KeccakP400_AddByte T
KeccakP-400-reference.o KeccakP400_AddBytes T
KeccakP-400-reference.o KeccakP400_ExtractAndAddBytes T
KeccakP-400-reference.o KeccakP400_ExtractBytes T
KeccakP-400-reference.o KeccakP400_Initialize T
KeccakP-400-reference.o KeccakP400_OverwriteBytes T
KeccakP-400-reference.o KeccakP400_OverwriteWithZeroes T
KeccakP-400-reference.o KeccakP400_Permute_20rounds T
KeccakP-400-reference.o KeccakP400_Permute_Nrounds T
isap.o ISAP_IV_A R
isap.o ISAP_IV_KA R
isap.o ISAP_IV_KE R
isap.o isap_enc T
isap.o isap_mac T
isap.o isap_rk T

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