Implementation notes: aarch64, jetsontx1, crypto_kem/hila5

Computer: jetsontx1
Architecture: aarch64
CPU ID: unknown CPU ID
SUPERCOP version: 20191017
Operation: crypto_kem
Primitive: hila5
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
58590422029 0 039431 832 1552optarmclang_-march=armv8a+crypto_-mcpu=cortex-a57_-mtune=cortex-a57_-O3_-fPIC_-fPIE2019102120190910
59573015545 0 029647 808 1552optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102120190910
60309119161 0 034415 808 1568optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102120190910
60403218969 0 033121 784 1536optclang_-mcpu=native_-march=armv8a+crypto_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102120190910
60536214597 0 026871 776 1536optclang_-mcpu=native_-march=armv8a+crypto_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102120190910
61407821225 0 037249 784 1552optclang_-mcpu=native_-march=armv8a+crypto_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102120190910
61530818969 0 033121 784 1536optclang_-mcpu=native_-march=armv8a+crypto_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102120190910
63013819817 0 035375 832 1536optarmclang_-march=armv8a+crypto_-mcpu=cortex-a57_-mtune=cortex-a57_-O2_-fPIC_-fPIE2019102120190910
71951116101 0 030047 808 1552optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102120190910
72943015165 0 028219 792 1536optgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102120190910
2900924812405 0 819629783 816 9760refarmclang_-march=armv8a+crypto_-mcpu=cortex-a57_-mtune=cortex-a57_-O3_-fPIC_-fPIE2019102120190910
2902051911985 0 819628017 768 9760refclang_-mcpu=native_-march=armv8a+crypto_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102120190910
2913779811745 0 819625905 768 9744refclang_-mcpu=native_-march=armv8a+crypto_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102120190910
2939192511745 0 819625905 768 9744refclang_-mcpu=native_-march=armv8a+crypto_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102120190910
2958844812289 0 819627815 816 9744refarmclang_-march=armv8a+crypto_-mcpu=cortex-a57_-mtune=cortex-a57_-O2_-fPIC_-fPIE2019102120190910
313254385689 0 819617959 760 9744refclang_-mcpu=native_-march=armv8a+crypto_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102120190910
363014036357 0 820020439 792 9744refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102120190910
364128156261 0 820020215 792 9744refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102120190910
373035227993 0 820823247 792 9776refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102120190910
516611995597 0 819618651 776 9728refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102120190910

Compiler output

Implementation: avx2
Security model: unknown
Compiler: armclang -march=armv8a+crypto -mcpu=cortex-a57 -mtune=cortex-a57 -O2 -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:3: error: unrecognized instruction mnemonic, did you mean: ushl, ushr?
ms_x64_ntt.S: push r12
ms_x64_ntt.S: ^
ms_x64_ntt.S: ms_x64_ntt.S:69:3: error: unrecognized instruction mnemonic, did you mean: ushl, ushr?
ms_x64_ntt.S: push r13
ms_x64_ntt.S: ^
ms_x64_ntt.S: ms_x64_ntt.S:70:3: error: unrecognized instruction mnemonic, did you mean: ushl, ushr?
ms_x64_ntt.S: push r14
ms_x64_ntt.S: ^
ms_x64_ntt.S: ms_x64_ntt.S:73:7: error: invalid operand for instruction
ms_x64_ntt.S: mov r9, 1
ms_x64_ntt.S: ^
ms_x64_ntt.S: ms_x64_ntt.S:74:7: error: invalid operand for instruction
ms_x64_ntt.S: mov rax, rdx
ms_x64_ntt.S: ^
ms_x64_ntt.S: ms_x64_ntt.S:75:7: error: invalid operand for instruction
ms_x64_ntt.S: mov r12, rdx
ms_x64_ntt.S: ^
ms_x64_ntt.S: ms_x64_ntt.S:76:3: error: unrecognized instruction mnemonic, did you mean: asr, lsr, msr, rshrn, shl, shrn, shrn2, sri, srshr, sshr, str, urshr, ushr?
ms_x64_ntt.S: ...

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
armclang -march=armv8a+crypto -mcpu=cortex-a57 -mtune=cortex-a57 -O2 -fPIC -fPIE avx2
armclang -march=armv8a+crypto -mcpu=cortex-a57 -mtune=cortex-a57 -O3 -fPIC -fPIE avx2
clang -mcpu=native -march=armv8a+crypto -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE avx2
clang -mcpu=native -march=armv8a+crypto -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE avx2
clang -mcpu=native -march=armv8a+crypto -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE avx2
clang -mcpu=native -march=armv8a+crypto -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE avx2

Compiler output

Implementation: avx2
Security model: unknown
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:68: Error: unknown mnemonic `push' -- `push r12'
ms_x64_ntt.S: ms_x64_ntt.S:69: Error: unknown mnemonic `push' -- `push r13'
ms_x64_ntt.S: ms_x64_ntt.S:70: Error: unknown mnemonic `push' -- `push r14'
ms_x64_ntt.S: ms_x64_ntt.S:73: Error: operand 1 must be an integer register -- `mov r9,1'
ms_x64_ntt.S: ms_x64_ntt.S:74: Error: operand 1 must be an integer register -- `mov rax,rdx'
ms_x64_ntt.S: ms_x64_ntt.S:75: Error: operand 1 must be an integer register -- `mov r12,rdx'
ms_x64_ntt.S: ms_x64_ntt.S:76: Error: unknown mnemonic `shr' -- `shr r12,4'
ms_x64_ntt.S: ms_x64_ntt.S:77: Error: unknown mnemonic `vmovdqu' -- `vmovdqu ymm14,MASK12x8'
ms_x64_ntt.S: ms_x64_ntt.S:78: Error: unknown mnemonic `vmovdqu' -- `vmovdqu ymm12,PERM0246'
ms_x64_ntt.S: ms_x64_ntt.S:79: Error: operand 1 must be an integer register -- `mov r14,16'
ms_x64_ntt.S: ms_x64_ntt.S:80: Error: operand 1 must be an integer register -- `mov rcx,11'
ms_x64_ntt.S: ms_x64_ntt.S:82: Error: unknown mnemonic `shr' -- `shr rax,1'
ms_x64_ntt.S: ms_x64_ntt.S:83: Error: unknown mnemonic `dec' -- `dec rcx'
ms_x64_ntt.S: ms_x64_ntt.S:84: Error: unknown mnemonic `xor' -- `xor rdx,rdx'
ms_x64_ntt.S: ms_x64_ntt.S:86: Error: operand 1 must be an integer register -- `mov r10,rdx'
ms_x64_ntt.S: ms_x64_ntt.S:87: Error: operand 1 must be an integer register -- `mov r11,rax'
ms_x64_ntt.S: ms_x64_ntt.S:88: Error: unknown mnemonic `dec' -- `dec r11'
ms_x64_ntt.S: ms_x64_ntt.S:89: Error: operand 1 must be a SIMD scalar register -- `shl r10,cl'
ms_x64_ntt.S: ms_x64_ntt.S:90: Error: operand 1 must be an integer or stack pointer register -- `add r11,r10'
ms_x64_ntt.S: ms_x64_ntt.S:91: Error: operand 1 must be an integer register -- `mov r13,r9'
ms_x64_ntt.S: ms_x64_ntt.S:92: Error: operand 1 must be an integer or stack pointer register -- `add r13,rdx'
ms_x64_ntt.S: ms_x64_ntt.S:93: Error: unknown mnemonic `vbroadcastss' -- `vbroadcastss ymm11,DWORD PTR[rsi+4*r13]'
ms_x64_ntt.S: ms_x64_ntt.S:96: Error: operand 1 must be an integer register -- `mov r13,r10'
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 avx2
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE avx2
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE avx2
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE avx2

Namespace violations

Implementation: opt
Security model: unknown
Compiler: armclang -march=armv8a+crypto -mcpu=cortex-a57 -mtune=cortex-a57 -O2 -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: 10, namely:
CompilerImplementations
armclang -march=armv8a+crypto -mcpu=cortex-a57 -mtune=cortex-a57 -O2 -fPIC -fPIE opt
armclang -march=armv8a+crypto -mcpu=cortex-a57 -mtune=cortex-a57 -O3 -fPIC -fPIE opt
clang -mcpu=native -march=armv8a+crypto -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE opt
clang -mcpu=native -march=armv8a+crypto -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE opt
clang -mcpu=native -march=armv8a+crypto -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE opt
clang -mcpu=native -march=armv8a+crypto -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE opt
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE opt
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE opt
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE opt
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE opt

Namespace violations

Implementation: ref
Security model: unknown
Compiler: armclang -march=armv8a+crypto -mcpu=cortex-a57 -mtune=cortex-a57 -O2 -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: 10, namely:
CompilerImplementations
armclang -march=armv8a+crypto -mcpu=cortex-a57 -mtune=cortex-a57 -O2 -fPIC -fPIE ref
armclang -march=armv8a+crypto -mcpu=cortex-a57 -mtune=cortex-a57 -O3 -fPIC -fPIE ref
clang -mcpu=native -march=armv8a+crypto -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
clang -mcpu=native -march=armv8a+crypto -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
clang -mcpu=native -march=armv8a+crypto -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
clang -mcpu=native -march=armv8a+crypto -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE ref
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE ref
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE ref
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE ref