Implementation notes: aarch64, pmnod145, crypto_kem/sikep503

Computer: pmnod145
Architecture: aarch64
CPU ID: 431f0af1
SUPERCOP version: 20191017
Operation: crypto_kem
Primitive: sikep503
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
50903525046608 0 075147 872 1584optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101820191017
51246765081800 0 0113192 896 1568optarmclang_-march=armv8a+crypto_-mcpu=thunderx2t99_-mtune=thunderx2t99_-O3_-fPIC_-fPIE2019101820191017
51648637574976 0 0105616 896 1568optarmclang_-march=armv8a+crypto_-mcpu=thunderx2t99_-mtune=thunderx2t99_-O2_-fPIC_-fPIE2019101820191017
60364505028224 0 055667 872 1568optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101820191017
62279180025804 0 053195 872 1568optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101820191017
89483230021640 0 048175 856 1552optgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101820191017
757531357534055 768 0228176 1776 1560refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101820191017
757734172553391 768 0253141 1816 1576refarmclang_-march=armv8a+crypto_-mcpu=thunderx2t99_-mtune=thunderx2t99_-O3_-fPIC_-fPIE2019101820191017
760106050053239 768 0252245 1816 1576refarmclang_-march=armv8a+crypto_-mcpu=thunderx2t99_-mtune=thunderx2t99_-O2_-fPIC_-fPIE2019101820191017
762265232536421 768 0231484 1792 1576refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101820191017
766791445040761 768 0236900 1792 1592refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101820191017
766840130035701 768 0230684 1792 1576refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101820191017

Compiler output

Implementation: crypto_kem/sikep503/x64
Compiler: armclang -march=armv8a+crypto -mcpu=thunderx2t99 -mtune=thunderx2t99 -O2 -fPIC -fPIE
fp_x64_asm.S: fp_x64_asm.S:7:1: error: unknown directive
fp_x64_asm.S: .intel_syntax noprefix
fp_x64_asm.S: ^
fp_x64_asm.S: fp_x64_asm.S:37:3: error: unrecognized instruction mnemonic, did you mean: ushl, ushr?
fp_x64_asm.S: push r12
fp_x64_asm.S: ^
fp_x64_asm.S: fp_x64_asm.S:38:3: error: unrecognized instruction mnemonic, did you mean: ushl, ushr?
fp_x64_asm.S: push r13
fp_x64_asm.S: ^
fp_x64_asm.S: fp_x64_asm.S:39:3: error: unrecognized instruction mnemonic, did you mean: ushl, ushr?
fp_x64_asm.S: push r14
fp_x64_asm.S: ^
fp_x64_asm.S: fp_x64_asm.S:40:3: error: unrecognized instruction mnemonic, did you mean: ushl, ushr?
fp_x64_asm.S: push r15
fp_x64_asm.S: ^
fp_x64_asm.S: fp_x64_asm.S:42:3: error: unrecognized instruction mnemonic, did you mean: eor, orn, orr, ror?
fp_x64_asm.S: xor rax, rax
fp_x64_asm.S: ^
fp_x64_asm.S: fp_x64_asm.S:43:7: error: invalid operand for instruction
fp_x64_asm.S: mov r8, [rdi]
fp_x64_asm.S: ^
fp_x64_asm.S: fp_x64_asm.S:44:7: error: invalid operand for instruction
fp_x64_asm.S: mov r9, [rdi+8]
fp_x64_asm.S: ^
fp_x64_asm.S: fp_x64_asm.S:45:7: error: invalid operand for instruction
fp_x64_asm.S: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
armclang -march=armv8a+crypto -mcpu=thunderx2t99 -mtune=thunderx2t99 -O2 -fPIC -fPIE x64
armclang -march=armv8a+crypto -mcpu=thunderx2t99 -mtune=thunderx2t99 -O3 -fPIC -fPIE x64

Compiler output

Implementation: crypto_kem/sikep503/ms
Compiler: armclang -march=armv8a+crypto -mcpu=thunderx2t99 -mtune=thunderx2t99 -O2 -fPIC -fPIE
fp_x64_asm.S: fp_x64_asm.S:7:1: error: unknown directive
fp_x64_asm.S: .intel_syntax noprefix
fp_x64_asm.S: ^
fp_x64_asm.S: fp_x64_asm.S:63:3: error: unrecognized instruction mnemonic, did you mean: ushl, ushr?
fp_x64_asm.S: push r12
fp_x64_asm.S: ^
fp_x64_asm.S: fp_x64_asm.S:64:3: error: unrecognized instruction mnemonic, did you mean: ushl, ushr?
fp_x64_asm.S: push r13
fp_x64_asm.S: ^
fp_x64_asm.S: fp_x64_asm.S:65:3: error: unrecognized instruction mnemonic, did you mean: ushl, ushr?
fp_x64_asm.S: push r14
fp_x64_asm.S: ^
fp_x64_asm.S: fp_x64_asm.S:66:3: error: unrecognized instruction mnemonic, did you mean: ushl, ushr?
fp_x64_asm.S: push r15
fp_x64_asm.S: ^
fp_x64_asm.S: fp_x64_asm.S:68:3: error: unrecognized instruction mnemonic, did you mean: eor, orn, orr, ror?
fp_x64_asm.S: xor rax, rax
fp_x64_asm.S: ^
fp_x64_asm.S: fp_x64_asm.S:69:7: error: invalid operand for instruction
fp_x64_asm.S: mov r8, [rdi]
fp_x64_asm.S: ^
fp_x64_asm.S: fp_x64_asm.S:70:7: error: invalid operand for instruction
fp_x64_asm.S: mov r9, [rdi+8]
fp_x64_asm.S: ^
fp_x64_asm.S: fp_x64_asm.S:71:7: error: invalid operand for instruction
fp_x64_asm.S: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
armclang -march=armv8a+crypto -mcpu=thunderx2t99 -mtune=thunderx2t99 -O2 -fPIC -fPIE ms
armclang -march=armv8a+crypto -mcpu=thunderx2t99 -mtune=thunderx2t99 -O3 -fPIC -fPIE ms

Compiler output

Implementation: crypto_kem/sikep503/x64
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
fp_x64_asm.S: fp_x64_asm.S: Assembler messages:
fp_x64_asm.S: fp_x64_asm.S:7: Error: unknown pseudo-op: `.intel_syntax'
fp_x64_asm.S: fp_x64_asm.S:37: Error: unknown mnemonic `push' -- `push r12'
fp_x64_asm.S: fp_x64_asm.S:38: Error: unknown mnemonic `push' -- `push r13'
fp_x64_asm.S: fp_x64_asm.S:39: Error: unknown mnemonic `push' -- `push r14'
fp_x64_asm.S: fp_x64_asm.S:40: Error: unknown mnemonic `push' -- `push r15'
fp_x64_asm.S: fp_x64_asm.S:42: Error: unknown mnemonic `xor' -- `xor rax,rax'
fp_x64_asm.S: fp_x64_asm.S:43: Error: operand 1 must be an integer register -- `mov r8,[rdi]'
fp_x64_asm.S: fp_x64_asm.S:44: Error: operand 1 must be an integer register -- `mov r9,[rdi+8]'
fp_x64_asm.S: fp_x64_asm.S:45: Error: operand 1 must be an integer register -- `mov r10,[rdi+16]'
fp_x64_asm.S: fp_x64_asm.S:46: Error: operand 1 must be an integer register -- `mov r11,[rdi+24]'
fp_x64_asm.S: fp_x64_asm.S:47: Error: operand 1 must be an integer register -- `mov r12,[rdi+32]'
fp_x64_asm.S: fp_x64_asm.S:48: Error: operand 1 must be an integer register -- `mov r13,[rdi+40]'
fp_x64_asm.S: fp_x64_asm.S:49: Error: operand 1 must be an integer register -- `mov r14,[rdi+48]'
fp_x64_asm.S: fp_x64_asm.S:50: Error: operand 1 must be an integer register -- `mov r15,[rdi+56]'
fp_x64_asm.S: fp_x64_asm.S:51: Error: operand 1 must be an integer or stack pointer register -- `add r8,[rsi]'
fp_x64_asm.S: fp_x64_asm.S:52: Error: operand 1 must be an integer register -- `adc r9,[rsi+8]'
fp_x64_asm.S: fp_x64_asm.S:53: Error: operand 1 must be an integer register -- `adc r10,[rsi+16]'
fp_x64_asm.S: fp_x64_asm.S:54: Error: operand 1 must be an integer register -- `adc r11,[rsi+24]'
fp_x64_asm.S: fp_x64_asm.S:55: Error: operand 1 must be an integer register -- `adc r12,[rsi+32]'
fp_x64_asm.S: fp_x64_asm.S:56: Error: operand 1 must be an integer register -- `adc r13,[rsi+40]'
fp_x64_asm.S: fp_x64_asm.S:57: Error: operand 1 must be an integer register -- `adc r14,[rsi+48]'
fp_x64_asm.S: fp_x64_asm.S:58: Error: operand 1 must be an integer register -- `adc r15,[rsi+56]'
fp_x64_asm.S: fp_x64_asm.S:60: Error: operand 1 must be an integer register -- `mov rcx,0xFFFFFFFFFFFFFFFE'
fp_x64_asm.S: fp_x64_asm.S:61: Error: operand 1 must be an integer or stack pointer register -- `sub r8,rcx'
fp_x64_asm.S: ...

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

Compiler output

Implementation: crypto_kem/sikep503/ms
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
fp_x64_asm.S: fp_x64_asm.S: Assembler messages:
fp_x64_asm.S: fp_x64_asm.S:7: Error: unknown pseudo-op: `.intel_syntax'
fp_x64_asm.S: fp_x64_asm.S:63: Error: unknown mnemonic `push' -- `push r12'
fp_x64_asm.S: fp_x64_asm.S:64: Error: unknown mnemonic `push' -- `push r13'
fp_x64_asm.S: fp_x64_asm.S:65: Error: unknown mnemonic `push' -- `push r14'
fp_x64_asm.S: fp_x64_asm.S:66: Error: unknown mnemonic `push' -- `push r15'
fp_x64_asm.S: fp_x64_asm.S:68: Error: unknown mnemonic `xor' -- `xor rax,rax'
fp_x64_asm.S: fp_x64_asm.S:69: Error: operand 1 must be an integer register -- `mov r8,[rdi]'
fp_x64_asm.S: fp_x64_asm.S:70: Error: operand 1 must be an integer register -- `mov r9,[rdi+8]'
fp_x64_asm.S: fp_x64_asm.S:71: Error: operand 1 must be an integer register -- `mov r10,[rdi+16]'
fp_x64_asm.S: fp_x64_asm.S:72: Error: operand 1 must be an integer register -- `mov r11,[rdi+24]'
fp_x64_asm.S: fp_x64_asm.S:73: Error: operand 1 must be an integer register -- `mov r12,[rdi+32]'
fp_x64_asm.S: fp_x64_asm.S:74: Error: operand 1 must be an integer register -- `mov r13,[rdi+40]'
fp_x64_asm.S: fp_x64_asm.S:75: Error: operand 1 must be an integer register -- `mov r14,[rdi+48]'
fp_x64_asm.S: fp_x64_asm.S:76: Error: operand 1 must be an integer register -- `mov r15,[rdi+56]'
fp_x64_asm.S: fp_x64_asm.S:77: Error: operand 1 must be an integer or stack pointer register -- `add r8,[rsi]'
fp_x64_asm.S: fp_x64_asm.S:78: Error: operand 1 must be an integer register -- `adc r9,[rsi+8]'
fp_x64_asm.S: fp_x64_asm.S:79: Error: operand 1 must be an integer register -- `adc r10,[rsi+16]'
fp_x64_asm.S: fp_x64_asm.S:80: Error: operand 1 must be an integer register -- `adc r11,[rsi+24]'
fp_x64_asm.S: fp_x64_asm.S:81: Error: operand 1 must be an integer register -- `adc r12,[rsi+32]'
fp_x64_asm.S: fp_x64_asm.S:82: Error: operand 1 must be an integer register -- `adc r13,[rsi+40]'
fp_x64_asm.S: fp_x64_asm.S:83: Error: operand 1 must be an integer register -- `adc r14,[rsi+48]'
fp_x64_asm.S: fp_x64_asm.S:84: Error: operand 1 must be an integer register -- `adc r15,[rsi+56]'
fp_x64_asm.S: fp_x64_asm.S:86: Error: operand 1 must be an integer register -- `mov rcx,0xFFFFFFFFFFFFFFFE'
fp_x64_asm.S: fp_x64_asm.S:87: Error: operand 1 must be an integer or stack pointer register -- `sub r8,rcx'
fp_x64_asm.S: ...

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