Implementation notes: armeabi, bblack, crypto_aead/drygascon128k32

Computer: bblack
Microarchitecture: armeabi; Cortex-A8 (413fc082)
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20240107
Operation: crypto_aead
Primitive: drygascon128k32
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
65047212860 268 3224062 728 808T:opt_arm_cortex-mgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023122120231212
7018485876 268 3216058 728 808T:opt_arm_cortex-mgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023122120231212
87750411401 268 3226655 680 816T:opt_arm_cortex-mclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023122120231212
87833611389 268 3227591 680 808T:opt_arm_cortex-mclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023122120231212
87834011389 268 3227591 680 808T:opt_arm_cortex-mclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023122120231212
9479167497 268 3222029 676 808T:opt_arm_cortex-mclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023122120231212
9730805361 268 3215246 720 808T:opt_arm_cortex-mgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023122120231212
10458324645 0 020147 416 784T:le32clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023122120231212
10495764265 0 020707 416 776T:le32clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023122120231212
10496644265 0 020707 416 776T:le32clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023122120231212
11358686136 268 3216410 728 808T:opt_arm_cortex-mgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023122120231212
17942564139 0 015234 464 776T:le32gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023122120231212
18797924733 0 028995 416 792T:le32clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023122120231212
20645725849 0 030095 416 792T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023122120231212
20714565901 0 021383 416 784T:refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023122120231212
20903285885 0 022311 416 776T:refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023122120231212
20905765885 0 022311 416 776T:refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023122120231212
26073487089 0 018182 464 776T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023122120231212
262050814229 268 3238247 680 824T:opt_arm_cortex-mclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023122120231212
36543803329 0 018109 412 776T:le32clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023122120231212
42539843359 0 013430 464 776T:le32gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023122120231212
46612563487 0 013654 464 776T:le32gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023122120231212
87447042302 0 013390 456 776T:le32gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023122120231212
104280602037 0 012106 464 776T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023122120231212
114530523085 0 017853 412 776T:refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023122120231212
121622362481 0 012642 464 776T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023122120231212
128063801998 0 013090 456 776T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023122120231212

Compiler output

Implementation: T:opt_v6m-cortex-m0
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
drygascon128_arm-v6m.S: drygascon128_arm-v6m.S:7:1: warning: new target does not support arm mode, switching to thumb mode
drygascon128_arm-v6m.S: .cpu cortex-m0
drygascon128_arm-v6m.S: ^
drygascon128_arm-v6m.S: drygascon128_arm-v6m.S:461:5: error: invalid instruction, any one of the following would fix this:
drygascon128_arm-v6m.S: lsrs r1,r6,#0
drygascon128_arm-v6m.S: ^
drygascon128_arm-v6m.S: drygascon128_arm-v6m.S:461:16: note: operand must be an immediate in the range [1,32]
drygascon128_arm-v6m.S: lsrs r1,r6,#0
drygascon128_arm-v6m.S: ^
drygascon128_arm-v6m.S: drygascon128_arm-v6m.S:461:16: note: too many operands for instruction
drygascon128_arm-v6m.S: lsrs r1,r6,#0
drygascon128_arm-v6m.S: ^

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

Compiler output

Implementation: T:opt_v6m-cortex-m0
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.c: /usr/bin/ld: error: libcrypto_aead_drygascon128k32.a(drygascon128_arm-v6m.o): conflicting architecture profiles M/A
try.c: /usr/bin/ld: failed to merge target specific data of file libcrypto_aead_drygascon128k32.a(drygascon128_arm-v6m.o)
try.c: collect2: error: ld returned 1 exit status

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

Compiler output

Implementation: T:opt_v7m-cortex-m3
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
drygascon128_arm-v7m.S: drygascon128_arm-v7m.S:25:1: warning: new target does not support arm mode, switching to thumb mode
drygascon128_arm-v7m.S: .cpu cortex-m3
drygascon128_arm-v7m.S: ^
drygascon128_arm-v7m.S: drygascon128_arm-v7m.S:314:5: error: invalid instruction, any one of the following would fix this:
drygascon128_arm-v7m.S: lsrs r11,r14,#0
drygascon128_arm-v7m.S: ^
drygascon128_arm-v7m.S: drygascon128_arm-v7m.S:314:18: note: operand must be an immediate in the range [1,32]
drygascon128_arm-v7m.S: lsrs r11,r14,#0
drygascon128_arm-v7m.S: ^
drygascon128_arm-v7m.S: drygascon128_arm-v7m.S:314:18: note: operand must be a register in range [r0, r12] or r14
drygascon128_arm-v7m.S: lsrs r11,r14,#0
drygascon128_arm-v7m.S: ^
drygascon128_arm-v7m.S: drygascon128_arm-v7m.S:314:18: note: too many operands for instruction
drygascon128_arm-v7m.S: lsrs r11,r14,#0
drygascon128_arm-v7m.S: ^

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

Compiler output

Implementation: T:opt_v7m-cortex-m3
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.c: /usr/bin/ld: error: libcrypto_aead_drygascon128k32.a(drygascon128_arm-v7m.o): conflicting architecture profiles M/A
try.c: /usr/bin/ld: failed to merge target specific data of file libcrypto_aead_drygascon128k32.a(drygascon128_arm-v7m.o)
try.c: collect2: error: ld returned 1 exit status

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

Compiler output

Implementation: T:opt_v7m_fpu-cortex-m4
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
drygascon128_arm-v7m_fpu.S: drygascon128_arm-v7m_fpu.S:23:1: warning: new target does not support arm mode, switching to thumb mode
drygascon128_arm-v7m_fpu.S: .cpu cortex-m4
drygascon128_arm-v7m_fpu.S: ^
drygascon128_arm-v7m_fpu.S: drygascon128_arm-v7m_fpu.S:316:5: error: invalid instruction, any one of the following would fix this:
drygascon128_arm-v7m_fpu.S: lsrs r11,r14,#0
drygascon128_arm-v7m_fpu.S: ^
drygascon128_arm-v7m_fpu.S: drygascon128_arm-v7m_fpu.S:316:18: note: operand must be an immediate in the range [1,32]
drygascon128_arm-v7m_fpu.S: lsrs r11,r14,#0
drygascon128_arm-v7m_fpu.S: ^
drygascon128_arm-v7m_fpu.S: drygascon128_arm-v7m_fpu.S:316:18: note: operand must be a register in range [r0, r12] or r14
drygascon128_arm-v7m_fpu.S: lsrs r11,r14,#0
drygascon128_arm-v7m_fpu.S: ^
drygascon128_arm-v7m_fpu.S: drygascon128_arm-v7m_fpu.S:316:18: note: too many operands for instruction
drygascon128_arm-v7m_fpu.S: lsrs r11,r14,#0
drygascon128_arm-v7m_fpu.S: ^

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

Compiler output

Implementation: T:opt_v7m_fpu-cortex-m4
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.c: /usr/bin/ld: error: libcrypto_aead_drygascon128k32.a(drygascon128_arm-v7m_fpu.o): conflicting architecture profiles M/A
try.c: /usr/bin/ld: failed to merge target specific data of file libcrypto_aead_drygascon128k32.a(drygascon128_arm-v7m_fpu.o)
try.c: collect2: error: ld returned 1 exit status

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

Namespace violations

Implementation: T:opt_arm_cortex-m
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
aead-common.o aead_check_tag T
aead-common.o aead_check_tag_precheck T
drygascon.o drygascon128_aead_decrypt_core T
drygascon.o drygascon128_aead_encrypt_core T
drygascon.o drygascon128_cipher D
drygascon.o drygascon128_hash T
drygascon.o drygascon128_hash_algorithm D
drygascon.o drygascon128k16_aead_decrypt T
drygascon.o drygascon128k16_aead_encrypt T
drygascon.o drygascon128k16_cipher D
drygascon.o drygascon128k16_expected D
drygascon.o drygascon128k32_aead_decrypt T
drygascon.o drygascon128k32_aead_encrypt T
drygascon.o drygascon128k32_cipher D
drygascon.o drygascon128k32_expected D
drygascon.o drygascon128k56_aead_decrypt T
drygascon.o drygascon128k56_aead_encrypt T
drygascon.o drygascon128k56_cipher D
drygascon.o drygascon128k56_expected D
drygascon.o drygascon256_aead_decrypt T
drygascon.o drygascon256_aead_encrypt T
drygascon.o drygascon256_cipher D
drygascon.o drygascon256_expected B
drygascon.o drygascon256_hash T
drygascon.o drygascon256_hash_algorithm D
internal-drysponge.o drygascon128_f_impl T
internal-drysponge.o drygascon128_f_wrap T
internal-drysponge.o drysponge128_g T
internal-drysponge.o drysponge128_g_core T
internal-drysponge.o drysponge128_safe_alignement T
internal-drysponge.o drysponge128_setup T
internal-drysponge.o drysponge256_f_absorb T
internal-drysponge.o drysponge256_g T
internal-drysponge.o drysponge256_g_core T
internal-drysponge.o drysponge256_setup T
internal-drysponge.o gascon128_core_round T
internal-drysponge.o gascon256_core_round T

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