Implementation notes: aarch64, pi3bplus, crypto_aead/isapk128v20

Computer: pi3bplus
Microarchitecture: aarch64; Cortex-A53 (410fd034)
Architecture: aarch64
CPU ID: 410fd034
SUPERCOP version: 20230530
Operation: crypto_aead
Primitive: isapk128v20
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1956625230908 0 0244382 896 856T:opt_64gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023060520230530
2131125233860 0 0249936 824 872T:opt_64clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060520230530
2159500261320 0 0276895 920 880T:opt_64gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023060520230530
2164500260548 0 0274838 912 864T:opt_64gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023060520230530
30911254442 0 020604 832 872T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060520230530
32520005122 0 020863 928 880T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023060520230530
3499875240184 0 0254670 912 864T:opt_64gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023060520230530
273480004154 0 018647 928 864T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023060520230530
328123753690 0 017383 912 856T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023060520230530
678803754438 0 019135 928 864T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023060520230530

Compiler output

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.s: KeccakP-400-armv6m-le-gcc.s:1:1: error: unexpected token at start of statement
KeccakP-400-armv6m-le-gcc.s: @
KeccakP-400-armv6m-le-gcc.s: ^
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:2:1: error: unexpected token at start of statement
KeccakP-400-armv6m-le-gcc.s: @ Implementation by Ronny Van Keer, hereby denoted as "the implementer".
KeccakP-400-armv6m-le-gcc.s: ^
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:3:1: error: unexpected token at start of statement
KeccakP-400-armv6m-le-gcc.s: @
KeccakP-400-armv6m-le-gcc.s: ^
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:4:1: error: unexpected token at start of statement
KeccakP-400-armv6m-le-gcc.s: @ For more information, feedback or questions, please refer to our website:
KeccakP-400-armv6m-le-gcc.s: ^
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:5:1: error: unexpected token at start of statement
KeccakP-400-armv6m-le-gcc.s: @ https://keccak.team/
KeccakP-400-armv6m-le-gcc.s: ^
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:6:1: error: unexpected token at start of statement
KeccakP-400-armv6m-le-gcc.s: @
KeccakP-400-armv6m-le-gcc.s: ^
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:7:1: error: unexpected token at start of statement
KeccakP-400-armv6m-le-gcc.s: @ To the extent possible under law, the implementer has waived all copyright
KeccakP-400-armv6m-le-gcc.s: ^
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:8:1: error: unexpected token at start of statement
KeccakP-400-armv6m-le-gcc.s: @ and related or neighboring rights to the source code in this file.
KeccakP-400-armv6m-le-gcc.s: ^
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:9:1: error: unexpected token at start of statement
KeccakP-400-armv6m-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_armv6m

Compiler output

Implementation: T:opt_32_armv6m
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s: Assembler messages:
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:1: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:2: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:3: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:4: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:5: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:6: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:7: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:8: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:9: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:10: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:11: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:12: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:13: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:14: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:15: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:16: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:17: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:18: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:20: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:23: Error: unknown pseudo-op: `.thumb'
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:24: Error: unknown pseudo-op: `.syntax'
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:199: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:200: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv6m-le-gcc.s: KeccakP-400-armv6m-le-gcc.s:201: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv6m-le-gcc.s: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
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

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:1:1: error: unexpected token at start of statement
KeccakP-400-armv7m-le-gcc.s: @
KeccakP-400-armv7m-le-gcc.s: ^
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:2:1: error: unexpected token at start of statement
KeccakP-400-armv7m-le-gcc.s: @ Implementation by Ronny Van Keer, hereby denoted as "the implementer".
KeccakP-400-armv7m-le-gcc.s: ^
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:3:1: error: unexpected token at start of statement
KeccakP-400-armv7m-le-gcc.s: @
KeccakP-400-armv7m-le-gcc.s: ^
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:4:1: error: unexpected token at start of statement
KeccakP-400-armv7m-le-gcc.s: @ For more information, feedback or questions, please refer to our website:
KeccakP-400-armv7m-le-gcc.s: ^
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:5:1: error: unexpected token at start of statement
KeccakP-400-armv7m-le-gcc.s: @ https://keccak.team/
KeccakP-400-armv7m-le-gcc.s: ^
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:6:1: error: unexpected token at start of statement
KeccakP-400-armv7m-le-gcc.s: @
KeccakP-400-armv7m-le-gcc.s: ^
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:7:1: error: unexpected token at start of statement
KeccakP-400-armv7m-le-gcc.s: @ To the extent possible under law, the implementer has waived all copyright
KeccakP-400-armv7m-le-gcc.s: ^
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:8:1: error: unexpected token at start of statement
KeccakP-400-armv7m-le-gcc.s: @ and related or neighboring rights to the source code in this file.
KeccakP-400-armv7m-le-gcc.s: ^
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:9:1: error: unexpected token at start of statement
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

Compiler output

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.s: KeccakP-400-armv7m-le-gcc.s: Assembler messages:
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:1: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:2: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:3: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:4: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:5: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:6: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:7: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:8: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:9: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:10: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:11: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:12: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:13: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:14: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:15: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:16: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:17: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:18: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:20: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:23: Error: unknown pseudo-op: `.thumb'
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:24: Error: unknown pseudo-op: `.syntax'
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:27: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:209: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv7m-le-gcc.s: KeccakP-400-armv7m-le-gcc.s:210: Error: junk at end of line, first unrecognized character is `@'
KeccakP-400-armv7m-le-gcc.s: ...

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