Implementation notes: armeabi, bblack, crypto_kem/hila5

Computer: bblack
Microarchitecture: armeabi; Cortex-A8 (413fc082)
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20240107
Operation: crypto_kem
Primitive: hila5
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
166330425205 0 041523 432 1496T:optclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012520231212
166968022241 0 038811 432 1488T:optclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012520231212
167142822241 0 038811 432 1488T:optclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012520231212
167792820201 0 035793 428 1488T:optclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012520231212
180246416269 0 028754 456 1488T:optgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520231212
190454028169 0 053291 432 1496T:optclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012520231212
208032419861 0 033150 464 1488T:optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520231212
212782418385 0 031342 464 1488T:optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520231212
214478016951 0 029886 464 1488T:optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520231212
9583368811361 0 819627979 424 9688T:refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012520231212
9583476811361 0 819627979 424 9688T:refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012520231212
9607496814433 0 819639603 424 9696T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012520231212
9634554012805 0 819629171 424 9696T:refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012520231212
967440646633 0 819622257 420 9680T:refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012520231212
995886448657 0 819621926 456 9688T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520231212
1006705205241 0 819618182 456 9688T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520231212
1102869764817 0 819617734 456 9688T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520231212
3298765564545 0 819617642 448 9680T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520231212

Compiler output

Implementation: T:avx2
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
ms_x64_ntt.S: ms_x64_ntt.S:18:1: error: unknown directive
ms_x64_ntt.S: .intel_syntax noprefix
ms_x64_ntt.S: ^
ms_x64_ntt.S: ms_x64_ntt.S:37:12: error: invalid alignment value
ms_x64_ntt.S: .align 32
ms_x64_ntt.S: ^
ms_x64_ntt.S: ms_x64_ntt.S:68:8: error: invalid operand for instruction
ms_x64_ntt.S: push r12
ms_x64_ntt.S: ^
ms_x64_ntt.S: ms_x64_ntt.S:69:8: error: invalid operand for instruction
ms_x64_ntt.S: push r13
ms_x64_ntt.S: ^
ms_x64_ntt.S: ms_x64_ntt.S:70:8: error: invalid operand for instruction
ms_x64_ntt.S: push r14
ms_x64_ntt.S: ^
ms_x64_ntt.S: ms_x64_ntt.S:74:7: error: operand must be a register in range [r0, r15]
ms_x64_ntt.S: mov rax, rdx
ms_x64_ntt.S: ^
ms_x64_ntt.S: ms_x64_ntt.S:75:12: error: immediate expression for mov requires :lower16: or :upper16
ms_x64_ntt.S: mov r12, rdx
ms_x64_ntt.S: ^
ms_x64_ntt.S: ms_x64_ntt.S:76:3: error: invalid instruction, did you mean: asr, lsr, msr, str?
ms_x64_ntt.S: shr r12, 4
ms_x64_ntt.S: ^
ms_x64_ntt.S: ms_x64_ntt.S:77:19: error: register expected
ms_x64_ntt.S: ...

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

Compiler output

Implementation: T:avx2
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
ms_x64_ntt.S: ms_x64_ntt.S:18:1: error: unknown directive
ms_x64_ntt.S: .intel_syntax noprefix
ms_x64_ntt.S: ^
ms_x64_ntt.S: ms_x64_ntt.S:37:12: error: invalid alignment value
ms_x64_ntt.S: .align 32
ms_x64_ntt.S: ^
ms_x64_ntt.S: ms_x64_ntt.S:68:8: error: invalid operand for instruction
ms_x64_ntt.S: push r12
ms_x64_ntt.S: ^
ms_x64_ntt.S: ms_x64_ntt.S:69:8: error: invalid operand for instruction
ms_x64_ntt.S: push r13
ms_x64_ntt.S: ^
ms_x64_ntt.S: ms_x64_ntt.S:70:8: error: invalid operand for instruction
ms_x64_ntt.S: push r14
ms_x64_ntt.S: ^
ms_x64_ntt.S: ms_x64_ntt.S:74:7: error: operand must be a register in range [r0, r15]
ms_x64_ntt.S: mov rax, rdx
ms_x64_ntt.S: ^
ms_x64_ntt.S: ms_x64_ntt.S:75:12: error: immediate expression for mov requires :lower16: or :upper16
ms_x64_ntt.S: mov r12, rdx
ms_x64_ntt.S: ^
ms_x64_ntt.S: ms_x64_ntt.S:76:3: error: invalid instruction, did you mean: asr, lsr, msr, str, vrshr, vshr, vshrn?
ms_x64_ntt.S: shr r12, 4
ms_x64_ntt.S: ^
ms_x64_ntt.S: ms_x64_ntt.S:77:19: error: register expected
ms_x64_ntt.S: ...

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

Compiler output

Implementation: T:avx2
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
ms_x64_ntt.S: ms_x64_ntt.S: Assembler messages:
ms_x64_ntt.S: ms_x64_ntt.S:18: Error: unknown pseudo-op: `.intel_syntax'
ms_x64_ntt.S: ms_x64_ntt.S:37: Warning: alignment too large: 31 assumed
ms_x64_ntt.S: ms_x64_ntt.S:68: Error: expression too complex -- `push r12'
ms_x64_ntt.S: ms_x64_ntt.S:69: Error: expression too complex -- `push r13'
ms_x64_ntt.S: ms_x64_ntt.S:70: Error: expression too complex -- `push r14'
ms_x64_ntt.S: ms_x64_ntt.S:73: Error: immediate expression requires a # prefix -- `mov r9,1'
ms_x64_ntt.S: ms_x64_ntt.S:74: Error: ARM register expected -- `mov rax,rdx'
ms_x64_ntt.S: ms_x64_ntt.S:75: Error: immediate expression requires a # prefix -- `mov r12,rdx'
ms_x64_ntt.S: ms_x64_ntt.S:76: Error: bad instruction `shr r12,4'
ms_x64_ntt.S: ms_x64_ntt.S:77: Error: bad instruction `vmovdqu ymm14,[rip+MASK12x8]'
ms_x64_ntt.S: ms_x64_ntt.S:78: Error: bad instruction `vmovdqu ymm12,[rip+PERM0246]'
ms_x64_ntt.S: ms_x64_ntt.S:79: Error: immediate expression requires a # prefix -- `mov r14,16'
ms_x64_ntt.S: ms_x64_ntt.S:80: Error: ARM register expected -- `mov rcx,11'
ms_x64_ntt.S: ms_x64_ntt.S:82: Error: bad instruction `shr rax,1'
ms_x64_ntt.S: ms_x64_ntt.S:83: Error: bad instruction `dec rcx'
ms_x64_ntt.S: ms_x64_ntt.S:84: Error: bad instruction `xor rdx,rdx'
ms_x64_ntt.S: ms_x64_ntt.S:86: Error: immediate expression requires a # prefix -- `mov r10,rdx'
ms_x64_ntt.S: ms_x64_ntt.S:87: Error: immediate expression requires a # prefix -- `mov r11,rax'
ms_x64_ntt.S: ms_x64_ntt.S:88: Error: bad instruction `dec r11'
ms_x64_ntt.S: ms_x64_ntt.S:89: Error: bad instruction `shl r10,cl'
ms_x64_ntt.S: ms_x64_ntt.S:92: Error: immediate expression requires a # prefix -- `add r13,rdx'
ms_x64_ntt.S: ms_x64_ntt.S:93: Error: bad instruction `vbroadcastss ymm11,DWORD PTR [rsi+4*r13]'
ms_x64_ntt.S: ms_x64_ntt.S:97: Error: immediate expression requires a # prefix -- `add r13,rax'
ms_x64_ntt.S: ms_x64_ntt.S:98: Error: bad instruction `vpmovsxdq ymm1,XMMWORD PTR [rdi+4*r13]'
ms_x64_ntt.S: ...

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

Namespace violations

Implementation: T:opt
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
hila5_sha3_opt.o hila5_sha3 T
hila5_sha3_opt.o hila5_sha3_final T
hila5_sha3_opt.o hila5_sha3_init T
hila5_sha3_opt.o hila5_sha3_update T
hila5_sha3_opt.o hila5_shake_out T
hila5_sha3_opt.o hila5_shake_xof T
ms_ntt.o mslc_correction T
ms_ntt.o mslc_intt T
ms_ntt.o mslc_ntt T
ms_ntt.o mslc_pmul T
ms_ntt.o mslc_pmuladd T
ms_ntt.o mslc_smul T
ms_ntt.o mslc_two_reduce12289 T
ms_ntt_const.o mslc_inv_rev_ntt1024 R
ms_ntt_const.o mslc_psi_rev_ntt1024 R

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

Namespace violations

Implementation: T:ref
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
hila5_sha3_ref.o hila5_sha3 T
hila5_sha3_ref.o hila5_sha3_final T
hila5_sha3_ref.o hila5_sha3_init T
hila5_sha3_ref.o hila5_sha3_keccakf T
hila5_sha3_ref.o hila5_sha3_update T
hila5_sha3_ref.o hila5_shake_out T
hila5_sha3_ref.o hila5_shake_xof T
kem.o slow_rmul T

Number of similar (compiler,implementation) pairs: 9, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref
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