Implementation notes: armeabi, novena, crypto_aead/romulust

Computer: novena
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20220506
Operation: crypto_aead
Primitive: romulust
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
208616913388 0 036413 424 792aadomn/armv7aclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060620220506
40179259648 0 019963 420 776aadomn/armv7mgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060620220506
406273011308 0 022883 420 776aadomn/armv7mgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060620220506
411153422240 640 033819 1060 776aadomn/opt32gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060620220506
418553925176 640 039561 1064 784aadomn/opt32clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060620220506
420674223988 640 040673 1064 776aadomn/opt32clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060620220506
445356126728 640 049569 1116 792aadomn/opt32clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060620220506
45543689650 0 019690 416 776aadomn/armv7mgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060620220506
580687112592 640 022151 1052 776aadomn/opt32gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060620220506
590807914288 640 024603 1060 776aadomn/opt32gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060620220506
625010719452 640 034387 1060 776aadomn/opt32clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060620220506
709337513130 640 023215 1060 776aadomn/opt32gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022060620220506
733339418700 640 033843 1060 776aadomn/opt32clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022060620220506

Compiler output

Implementation: aadomn/armv7a
Security model: constbranchindex
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
skinny128.S: skinny128.S:215:2: error: invalid instruction
skinny128.S: vld1.8 {q0}, [r1]
skinny128.S: ^
skinny128.S: skinny128.S:216:2: error: invalid instruction
skinny128.S: vld1.8 {q3}, [r2]
skinny128.S: ^
skinny128.S: skinny128.S:217:2: error: invalid instruction
skinny128.S: vld1.8 {q4}, [r3]
skinny128.S: ^
skinny128.S: skinny128.S:218:2: error: invalid instruction
skinny128.S: vld1.8 {q5}, [r4]
skinny128.S: ^
skinny128.S: <instantiation>:42:2: error: instruction requires: NEON
skinny128.S: vmov.i8 d12, #0x0f
skinny128.S: ^
skinny128.S: skinny128.S:219:2: note: while in macro instantiation
skinny128.S: load_vtbl
skinny128.S: ^
skinny128.S: <instantiation>:3:2: error: instruction requires: NEON
skinny128.S: vand d2, d0, d12
skinny128.S: ^
skinny128.S: <instantiation>:1:1: note: while in macro instantiation
skinny128.S: sbox_ark d6, d7, d8, d9, d10, d11
skinny128.S: ^
skinny128.S: skinny128.S:225:2: note: while in macro instantiation
skinny128.S: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE aadomn/armv7a
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE aadomn/armv7a
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE aadomn/armv7a
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE aadomn/armv7a

Compiler output

Implementation: aadomn/armv7a
Security model: constbranchindex
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
skinny128.S: skinny128.S: Assembler messages:
skinny128.S: skinny128.S:219: Error: selected FPU does not support instruction -- `vmov.i8 d12,#0x0f'
skinny128.S: skinny128.S:225: Error: selected FPU does not support instruction -- `vand d2,d0,d12'
skinny128.S: skinny128.S:225: Error: selected FPU does not support instruction -- `vand d3,d1,d12'
skinny128.S: skinny128.S:225: Error: selected FPU does not support instruction -- `vshr.u8 d4,d0,#4'
skinny128.S: skinny128.S:225: Error: selected FPU does not support instruction -- `vshr.u8 d5,d1,#4'
skinny128.S: skinny128.S:225: Error: selected processor does not support `vtbl.8 d0,{d26,d27},d2' in Thumb mode
skinny128.S: skinny128.S:225: Error: selected processor does not support `vtbl.8 d1,{d26,d27},d3' in Thumb mode
skinny128.S: skinny128.S:225: Error: selected processor does not support `vtbl.8 d4,{d24,d25},d4' in Thumb mode
skinny128.S: skinny128.S:225: Error: selected processor does not support `vtbl.8 d5,{d24,d25},d5' in Thumb mode
skinny128.S: skinny128.S:225: Error: selected FPU does not support instruction -- `veor d0,d0,d4'
skinny128.S: skinny128.S:225: Error: selected FPU does not support instruction -- `veor d1,d1,d5'
skinny128.S: skinny128.S:225: Error: selected FPU does not support instruction -- `veor d16,d6,d8'
skinny128.S: skinny128.S:225: Error: selected FPU does not support instruction -- `vshr.u8 d4,d0,#4'
skinny128.S: skinny128.S:225: Error: selected FPU does not support instruction -- `vshr.u8 d5,d1,#4'
skinny128.S: skinny128.S:225: Error: selected FPU does not support instruction -- `veor d18,d18,d10'
skinny128.S: skinny128.S:225: Error: selected FPU does not support instruction -- `vand d2,d0,d12'
skinny128.S: skinny128.S:225: Error: selected FPU does not support instruction -- `vand d3,d1,d12'
skinny128.S: skinny128.S:225: Error: selected FPU does not support instruction -- `vshr.u8 d0,d0,#7'
skinny128.S: skinny128.S:225: Error: selected FPU does not support instruction -- `vshr.u8 d1,d1,#7'
skinny128.S: skinny128.S:225: Error: selected FPU does not support instruction -- `veor d18,d18,d16'
skinny128.S: skinny128.S:225: Error: selected processor does not support `vtbl.8 d4,{d28,d29},d4' in Thumb mode
skinny128.S: skinny128.S:225: Error: selected processor does not support `vtbl.8 d5,{d28,d29},d5' in Thumb mode
skinny128.S: skinny128.S:225: Error: selected processor does not support `vtbl.8 d2,{d30,d31},d2' in Thumb mode
skinny128.S: skinny128.S:225: Error: selected processor does not support `vtbl.8 d3,{d30,d31},d3' in Thumb mode
skinny128.S: ...

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

Compiler output

Implementation: aadomn/armv7m
Security model: constbranchindex
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
skinny128_core.s: <instantiation>:4:19: error: too many operands for instruction
skinny128_core.s: ldr.w r8, [r1], #16
skinny128_core.s: ^
skinny128_core.s: skinny128_core.s:93:2: note: while in macro instantiation
skinny128_core.s: rtk
skinny128_core.s: ^
skinny128_core.s: <instantiation>:12:19: error: too many operands for instruction
skinny128_core.s: ldr.w r8, [r0], #16
skinny128_core.s: ^
skinny128_core.s: skinny128_core.s:93:2: note: while in macro instantiation
skinny128_core.s: rtk
skinny128_core.s: ^
skinny128_core.s: <instantiation>:4:19: error: too many operands for instruction
skinny128_core.s: ldr.w r8, [r1], #16
skinny128_core.s: ^
skinny128_core.s: skinny128_core.s:96:2: note: while in macro instantiation
skinny128_core.s: rtk
skinny128_core.s: ^
skinny128_core.s: <instantiation>:12:19: error: too many operands for instruction
skinny128_core.s: ldr.w r8, [r0], #16
skinny128_core.s: ^
skinny128_core.s: skinny128_core.s:96:2: note: while in macro instantiation
skinny128_core.s: rtk
skinny128_core.s: ^
skinny128_core.s: <instantiation>:4:19: error: too many operands for instruction
skinny128_core.s: ...

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

Compiler output

Implementation: aadomn/armv7m
Security model: constbranchindex
Compiler: gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.c: /usr/bin/ld: libcrypto_aead_romulust.a(romulus_t.o): in function `hirose_128_128_256':
try.c: romulus_t.c:(.text+0x...): undefined reference to `tk_schedule_123'
try.c: /usr/bin/ld: libcrypto_aead_romulust.a(romulus_t.o): in function `romulust_kdf':
try.c: romulus_t.c:(.text+0x...): undefined reference to `tk_schedule_13'
try.c: /usr/bin/ld: libcrypto_aead_romulust.a(romulus_t.o): in function `romulust_process_msg':
try.c: romulus_t.c:(.text+0x...): undefined reference to `tk_schedule_13'
try.c: /usr/bin/ld: romulus_t.c:(.text+0x...): undefined reference to `tk_schedule_13'
try.c: /usr/bin/ld: libcrypto_aead_romulust.a(romulus_t.o): in function `romulust_generate_tag':
try.c: romulus_t.c:(.text+0x...): undefined reference to `tk_schedule_123'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE aadomn/armv7m

Compiler output

Implementation: aadomn/armv8a/onthefly
Security model: constbranchindex
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
skinny128.S: skinny128.S:230:11: error: register expected
skinny128.S: ldr q0, [x1]
skinny128.S: ^
skinny128.S: skinny128.S:231:11: error: register expected
skinny128.S: ldr q4, [x2]
skinny128.S: ^
skinny128.S: skinny128.S:232:11: error: register expected
skinny128.S: ldr q5, [x3]
skinny128.S: ^
skinny128.S: skinny128.S:233:11: error: register expected
skinny128.S: ldr q6, [x4]
skinny128.S: ^
skinny128.S: skinny128.S:234:6: error: operand must be a register in range [r0, r15]
skinny128.S: adr x1, rconst
skinny128.S: ^
skinny128.S: <instantiation>:1:11: error: literal value out of range for directive
skinny128.S: ldr q20, =0x0b0c0e0a0d080f090304060205000701
skinny128.S: ^
skinny128.S: skinny128.S:235:2: note: while in macro instantiation
skinny128.S: prepare_encrypt
skinny128.S: ^
skinny128.S: <instantiation>:2:12: error: literal value out of range for directive
skinny128.S: ldr q21, =0x00000000000000020000000000000000
skinny128.S: ^
skinny128.S: skinny128.S:235:2: note: while in macro instantiation
skinny128.S: ...

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

Compiler output

Implementation: aadomn/armv8a/onthefly
Security model: constbranchindex
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
skinny128.S: skinny128.S: Assembler messages:
skinny128.S: skinny128.S:230: Error: ARM register expected -- `ldr q0,[x1]'
skinny128.S: skinny128.S:231: Error: ARM register expected -- `ldr q4,[x2]'
skinny128.S: skinny128.S:232: Error: ARM register expected -- `ldr q5,[x3]'
skinny128.S: skinny128.S:233: Error: ARM register expected -- `ldr q6,[x4]'
skinny128.S: skinny128.S:234: Error: ARM register expected -- `adr x1,rconst'
skinny128.S: skinny128.S:235: Error: ARM register expected -- `ldr q20,=0x0b0c0e0a0d080f090304060205000701'
skinny128.S: skinny128.S:235: Error: ARM register expected -- `ldr q21,=0x00000000000000020000000000000000'
skinny128.S: skinny128.S:235: Error: ARM register expected -- `ldr q22,=0x00000000000000000000000000000000'
skinny128.S: skinny128.S:235: Error: ARM register expected -- `ldr q23,=0x09080b0a06050407030201000c0f0e0d'
skinny128.S: skinny128.S:235: Error: ARM register expected -- `ldr q24,=0x0302010009080b0a1010101009080b0a'
skinny128.S: skinny128.S:235: Error: ARM register expected -- `ldr q25,=0x000000000000000000000000ffffffff'
skinny128.S: skinny128.S:235: Error: ARM register expected -- `ldr q26,=0x0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f'
skinny128.S: skinny128.S:235: Error: ARM register expected -- `ldr q27,=0x2e0e26062c0c34142a02220a00281830'
skinny128.S: skinny128.S:235: Error: ARM register expected -- `ldr q28,=0xd1915111c1814101d090501080c00040'
skinny128.S: skinny128.S:235: Error: ARM register expected -- `ldr q29,=0x1a181b190a080b091310121103000201'
skinny128.S: skinny128.S:235: Error: ARM register expected -- `ldr q30,=0x65646363454443433534333385848180'
skinny128.S: skinny128.S:235: Error: ARM register expected -- `ldr q31,=0xe5e4e1e0c5c4c1c0a5a4a1a015141313'
skinny128.S: skinny128.S:236: Error: bad arguments to instruction -- `and v1.16b,v0.16b,v26.16b'
skinny128.S: skinny128.S:236: Error: bad instruction `ushr v2.16b,v0.16b,#4'
skinny128.S: skinny128.S:236: Error: bad instruction `tbl v0.16b,{v27.16b},v1.16b'
skinny128.S: skinny128.S:236: Error: bad instruction `tbl v2.16b,{v28.16b},v2.16b'
skinny128.S: skinny128.S:236: Error: ARM register expected -- `ldr d16,[x1],#8'
skinny128.S: skinny128.S:236: Error: bad arguments to instruction -- `eor v7.8b,v5.8b,v6.8b'
skinny128.S: skinny128.S:236: Error: bad arguments to instruction -- `eor v7.8b,v7.8b,v4.8b'
skinny128.S: ...

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

Compiler output

Implementation: aadomn/armv8a/precalculate
Security model: constbranchindex
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
skinny128.S: skinny128.S:93:11: error: register expected
skinny128.S: ldr q0, [x1]
skinny128.S: ^
skinny128.S: skinny128.S:94:11: error: register expected
skinny128.S: ldr d3, [x2]
skinny128.S: ^
skinny128.S: skinny128.S:95:11: error: register expected
skinny128.S: ldr d4, [x2, #8]
skinny128.S: ^
skinny128.S: <instantiation>:1:11: error: literal value out of range for directive
skinny128.S: ldr q21, =0x00000000000000020000000000000000
skinny128.S: ^
skinny128.S: skinny128.S:96:2: note: while in macro instantiation
skinny128.S: prepare_encrypt
skinny128.S: ^
skinny128.S: <instantiation>:2:12: error: literal value out of range for directive
skinny128.S: ldr q22, =0x0f0e0d0c0a0b09080304060205000701
skinny128.S: ^
skinny128.S: skinny128.S:96:2: note: while in macro instantiation
skinny128.S: prepare_encrypt
skinny128.S: ^
skinny128.S: <instantiation>:3:12: error: literal value out of range for directive
skinny128.S: ldr q23, =0x09080b0a06050407030201000c0f0e0d
skinny128.S: ^
skinny128.S: skinny128.S:96:2: note: while in macro instantiation
skinny128.S: ...

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

Compiler output

Implementation: aadomn/armv8a/precalculate
Security model: constbranchindex
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
skinny128.S: skinny128.S: Assembler messages:
skinny128.S: skinny128.S:93: Error: ARM register expected -- `ldr q0,[x1]'
skinny128.S: skinny128.S:94: Error: ARM register expected -- `ldr d3,[x2]'
skinny128.S: skinny128.S:95: Error: ARM register expected -- `ldr d4,[x2,#8]'
skinny128.S: skinny128.S:96: Error: ARM register expected -- `ldr q21,=0x00000000000000020000000000000000'
skinny128.S: skinny128.S:96: Error: ARM register expected -- `ldr q22,=0x0f0e0d0c0a0b09080304060205000701'
skinny128.S: skinny128.S:96: Error: ARM register expected -- `ldr q23,=0x09080b0a06050407030201000c0f0e0d'
skinny128.S: skinny128.S:96: Error: ARM register expected -- `ldr q24,=0x0302010009080b0a1010101009080b0a'
skinny128.S: skinny128.S:96: Error: ARM register expected -- `ldr q25,=0x000000000000000000000000ffffffff'
skinny128.S: skinny128.S:96: Error: ARM register expected -- `ldr q26,=0x0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f'
skinny128.S: skinny128.S:96: Error: ARM register expected -- `ldr q27,=0x2e0e26062c0c34142a02220a00281830'
skinny128.S: skinny128.S:96: Error: ARM register expected -- `ldr q28,=0xd1915111c1814101d090501080c00040'
skinny128.S: skinny128.S:96: Error: ARM register expected -- `ldr q29,=0x1a181b190a080b091310121103000201'
skinny128.S: skinny128.S:96: Error: ARM register expected -- `ldr q30,=0x65646363454443433534333385848180'
skinny128.S: skinny128.S:96: Error: ARM register expected -- `ldr q31,=0xe5e4e1e0c5c4c1c0a5a4a1a015141313'
skinny128.S: skinny128.S:97: Error: bad arguments to instruction -- `and v1.16b,v0.16b,v26.16b'
skinny128.S: skinny128.S:97: Error: bad instruction `ushr v2.16b,v0.16b,#4'
skinny128.S: skinny128.S:97: Error: bad instruction `tbl v0.16b,{v27.16b},v1.16b'
skinny128.S: skinny128.S:97: Error: bad instruction `tbl v2.16b,{v28.16b},v2.16b'
skinny128.S: skinny128.S:97: Error: ARM register expected -- `ldr d5,[x3],#8'
skinny128.S: skinny128.S:97: Error: ARM register expected -- `eor v0.16b,v0.16b,v2.16b'
skinny128.S: skinny128.S:97: Error: bad arguments to instruction -- `eor v5.16b,v5.16b,v3.16b'
skinny128.S: skinny128.S:97: Error: bad instruction `ushr v2.16b,v0.16b,#3'
skinny128.S: skinny128.S:97: Error: bad arguments to instruction -- `and v1.16b,v0.16b,v26.16b'
skinny128.S: skinny128.S:97: Error: bad instruction `tbl v2.16b,{v30.16b-v31.16b},v2.16b'
skinny128.S: ...

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