Implementation notes: aarch64, jetsontx1, crypto_aead/omdsha512k256n256tau256v2

Computer: jetsontx1
Architecture: aarch64
CPU ID: unknown CPU ID
SUPERCOP version: 20191017
Operation: crypto_aead
Primitive: omdsha512k256n256tau256v2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
15837316976 0 031991 816 864refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101720190910
1804338116 0 023481 760 856refclang_-mcpu=native_-march=armv8a+crypto_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019101720190910
1817707732 0 021897 760 840refclang_-mcpu=native_-march=armv8a+crypto_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019101720190910
1821677732 0 021897 760 840refclang_-mcpu=native_-march=armv8a+crypto_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019101720190910
1827059440 0 026183 808 856refarmclang_-march=armv8a+crypto_-mcpu=cortex-a57_-mtune=cortex-a57_-O3_-fPIC_-fPIE2019101720190910
1849989052 0 024679 808 840refarmclang_-march=armv8a+crypto_-mcpu=cortex-a57_-mtune=cortex-a57_-O2_-fPIC_-fPIE2019101720190910
1864784496 0 016751 752 840refclang_-mcpu=native_-march=armv8a+crypto_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019101720190910
2037344620 0 017203 800 840refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101720190910
2110015744 0 019567 816 848refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101720190910
2236345568 0 019287 816 848refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101720190910

Compiler output

Implementation: avx1
Security model: unknown
Compiler: armclang -march=armv8a+crypto -mcpu=cortex-a57 -mtune=cortex-a57 -O2 -fPIC -fPIE
encrypt.c: <inline asm>:1:1: error: unknown directive
encrypt.c: .intel_syntax noprefix
encrypt.c: ^
encrypt.c: <inline asm>:4:5: error: invalid operand for instruction
encrypt.c: cmp rdx, 0
encrypt.c: ^
encrypt.c: <inline asm>:5:1: error: unrecognized instruction mnemonic
encrypt.c: je .nowork
encrypt.c: ^
encrypt.c: <inline asm>:6:5: error: invalid operand for instruction
encrypt.c: sub rsp, 696
encrypt.c: ^
encrypt.c: <inline asm>:7:23: error: unexpected token in argument list
encrypt.c: mov [rsp + 656 + 8 * 0], rbx
encrypt.c: ^
encrypt.c: <inline asm>:8:23: error: unexpected token in argument list
encrypt.c: mov [rsp + 656 + 8 * 1], r12
encrypt.c: ^
encrypt.c: <inline asm>:9:23: error: unexpected token in argument list
encrypt.c: mov [rsp + 656 + 8 * 2], r13
encrypt.c: ^
encrypt.c: <inline asm>:10:23: error: unexpected token in argument list
encrypt.c: mov [rsp + 656 + 8 * 3], r14
encrypt.c: ^
encrypt.c: <inline asm>:11:23: error: unexpected token in argument list
encrypt.c: ...

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

Compiler output

Implementation: avx1
Security model: unknown
Compiler: clang -mcpu=native -march=armv8a+crypto -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
encrypt.c: <inline asm>:1:1: error: unknown directive
encrypt.c: .intel_syntax noprefix
encrypt.c: ^
encrypt.c: <inline asm>:4:5: error: invalid operand for instruction
encrypt.c: cmp rdx, 0
encrypt.c: ^
encrypt.c: <inline asm>:5:1: error: unrecognized instruction mnemonic
encrypt.c: je .nowork
encrypt.c: ^
encrypt.c: <inline asm>:6:5: error: invalid operand for instruction
encrypt.c: sub rsp, 696
encrypt.c: ^
encrypt.c: <inline asm>:7:5: error: invalid operand for instruction
encrypt.c: mov [rsp + 656 + 8 * 0], rbx
encrypt.c: ^
encrypt.c: <inline asm>:8:5: error: invalid operand for instruction
encrypt.c: mov [rsp + 656 + 8 * 1], r12
encrypt.c: ^
encrypt.c: <inline asm>:9:5: error: invalid operand for instruction
encrypt.c: mov [rsp + 656 + 8 * 2], r13
encrypt.c: ^
encrypt.c: <inline asm>:10:5: error: invalid operand for instruction
encrypt.c: mov [rsp + 656 + 8 * 3], r14
encrypt.c: ^
encrypt.c: <inline asm>:11:5: error: invalid operand for instruction
encrypt.c: ...

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

Compiler output

Implementation: avx1
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
encrypt.c: /tmp/ccK9Vqbc.s: Assembler messages:
encrypt.c: /tmp/ccK9Vqbc.s:5: Error: unknown pseudo-op: `.intel_syntax'
encrypt.c: /tmp/ccK9Vqbc.s:9: Error: operand 1 must be an integer or stack pointer register -- `cmp rdx,0'
encrypt.c: /tmp/ccK9Vqbc.s:10: Error: unknown mnemonic `je' -- `je .nowork'
encrypt.c: /tmp/ccK9Vqbc.s:11: Error: operand 1 must be an integer or stack pointer register -- `sub rsp,696'
encrypt.c: /tmp/ccK9Vqbc.s:12: Error: operand 1 must be an integer register -- `mov [rsp+656+8*0],rbx'
encrypt.c: /tmp/ccK9Vqbc.s:13: Error: operand 1 must be an integer register -- `mov [rsp+656+8*1],r12'
encrypt.c: /tmp/ccK9Vqbc.s:14: Error: operand 1 must be an integer register -- `mov [rsp+656+8*2],r13'
encrypt.c: /tmp/ccK9Vqbc.s:15: Error: operand 1 must be an integer register -- `mov [rsp+656+8*3],r14'
encrypt.c: /tmp/ccK9Vqbc.s:16: Error: operand 1 must be an integer register -- `mov [rsp+656+8*4],r15'
encrypt.c: /tmp/ccK9Vqbc.s:18: Error: operand 1 must be an integer register -- `mov r9,[rsi+8*(0)]'
encrypt.c: /tmp/ccK9Vqbc.s:19: Error: operand 1 must be an integer register -- `mov r10,[rsi+8*(1)]'
encrypt.c: /tmp/ccK9Vqbc.s:20: Error: operand 1 must be an integer register -- `mov r11,[rsi+8*(2)]'
encrypt.c: /tmp/ccK9Vqbc.s:21: Error: operand 1 must be an integer register -- `mov r12,[rsi+8*(3)]'
encrypt.c: /tmp/ccK9Vqbc.s:22: Error: operand 1 must be an integer register -- `mov r13,[rsi+8*(4)]'
encrypt.c: /tmp/ccK9Vqbc.s:23: Error: operand 1 must be an integer register -- `mov r14,[rsi+8*(5)]'
encrypt.c: /tmp/ccK9Vqbc.s:24: Error: operand 1 must be an integer register -- `mov r15,[rsi+8*(6)]'
encrypt.c: /tmp/ccK9Vqbc.s:25: Error: operand 1 must be an integer register -- `mov rbx,[rsi+8*(7)]'
encrypt.c: /tmp/ccK9Vqbc.s:26: Error: unknown mnemonic `vmovdqa' -- `vmovdqa xmm1,XMMWORD PTR[XMM_QWORD_BSWAP+rip]'
encrypt.c: /tmp/ccK9Vqbc.s:27: Error: unknown mnemonic `vmovdqu' -- `vmovdqu xmm0,[rdi+8*(0)]'
encrypt.c: /tmp/ccK9Vqbc.s:28: Error: unknown mnemonic `vpshufb' -- `vpshufb xmm0,xmm0,xmm1'
encrypt.c: /tmp/ccK9Vqbc.s:29: Error: unknown mnemonic `vmovdqa' -- `vmovdqa [rsp+0+8*(0)],xmm0'
encrypt.c: /tmp/ccK9Vqbc.s:30: Error: unknown mnemonic `vpaddq' -- `vpaddq xmm0,xmm0,XMMWORD PTR[K512+8*(0)+rip]'
encrypt.c: /tmp/ccK9Vqbc.s:31: Error: unknown mnemonic `vmovdqa' -- `vmovdqa [rsp+640+8*(0)],xmm0'
encrypt.c: /tmp/ccK9Vqbc.s:32: Error: unknown mnemonic `vmovdqu' -- `vmovdqu xmm0,[rdi+8*(2)]'
encrypt.c: ...

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

Compiler output

Implementation: avx1
Security model: unknown
Compiler: gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE
encrypt.c: /tmp/ccXi8vLh.s: Assembler messages:
encrypt.c: /tmp/ccXi8vLh.s:5: Error: unknown pseudo-op: `.intel_syntax'
encrypt.c: /tmp/ccXi8vLh.s:9: Error: operand 1 must be an integer or stack pointer register -- `cmp rdx,0'
encrypt.c: /tmp/ccXi8vLh.s:10: Error: unknown mnemonic `je' -- `je .nowork'
encrypt.c: /tmp/ccXi8vLh.s:11: Error: operand 1 must be an integer or stack pointer register -- `sub rsp,696'
encrypt.c: /tmp/ccXi8vLh.s:12: Error: operand 1 must be an integer register -- `mov [rsp+656+8*0],rbx'
encrypt.c: /tmp/ccXi8vLh.s:13: Error: operand 1 must be an integer register -- `mov [rsp+656+8*1],r12'
encrypt.c: /tmp/ccXi8vLh.s:14: Error: operand 1 must be an integer register -- `mov [rsp+656+8*2],r13'
encrypt.c: /tmp/ccXi8vLh.s:15: Error: operand 1 must be an integer register -- `mov [rsp+656+8*3],r14'
encrypt.c: /tmp/ccXi8vLh.s:16: Error: operand 1 must be an integer register -- `mov [rsp+656+8*4],r15'
encrypt.c: /tmp/ccXi8vLh.s:18: Error: operand 1 must be an integer register -- `mov r9,[rsi+8*(0)]'
encrypt.c: /tmp/ccXi8vLh.s:19: Error: operand 1 must be an integer register -- `mov r10,[rsi+8*(1)]'
encrypt.c: /tmp/ccXi8vLh.s:20: Error: operand 1 must be an integer register -- `mov r11,[rsi+8*(2)]'
encrypt.c: /tmp/ccXi8vLh.s:21: Error: operand 1 must be an integer register -- `mov r12,[rsi+8*(3)]'
encrypt.c: /tmp/ccXi8vLh.s:22: Error: operand 1 must be an integer register -- `mov r13,[rsi+8*(4)]'
encrypt.c: /tmp/ccXi8vLh.s:23: Error: operand 1 must be an integer register -- `mov r14,[rsi+8*(5)]'
encrypt.c: /tmp/ccXi8vLh.s:24: Error: operand 1 must be an integer register -- `mov r15,[rsi+8*(6)]'
encrypt.c: /tmp/ccXi8vLh.s:25: Error: operand 1 must be an integer register -- `mov rbx,[rsi+8*(7)]'
encrypt.c: /tmp/ccXi8vLh.s:26: Error: unknown mnemonic `vmovdqa' -- `vmovdqa xmm1,XMMWORD PTR[XMM_QWORD_BSWAP+rip]'
encrypt.c: /tmp/ccXi8vLh.s:27: Error: unknown mnemonic `vmovdqu' -- `vmovdqu xmm0,[rdi+8*(0)]'
encrypt.c: /tmp/ccXi8vLh.s:28: Error: unknown mnemonic `vpshufb' -- `vpshufb xmm0,xmm0,xmm1'
encrypt.c: /tmp/ccXi8vLh.s:29: Error: unknown mnemonic `vmovdqa' -- `vmovdqa [rsp+0+8*(0)],xmm0'
encrypt.c: /tmp/ccXi8vLh.s:30: Error: unknown mnemonic `vpaddq' -- `vpaddq xmm0,xmm0,XMMWORD PTR[K512+8*(0)+rip]'
encrypt.c: /tmp/ccXi8vLh.s:31: Error: unknown mnemonic `vmovdqa' -- `vmovdqa [rsp+640+8*(0)],xmm0'
encrypt.c: /tmp/ccXi8vLh.s:32: Error: unknown mnemonic `vmovdqu' -- `vmovdqu xmm0,[rdi+8*(2)]'
encrypt.c: ...

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

Compiler output

Implementation: avx1
Security model: unknown
Compiler: gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE
encrypt.c: /tmp/ccooUXws.s: Assembler messages:
encrypt.c: /tmp/ccooUXws.s:5: Error: unknown pseudo-op: `.intel_syntax'
encrypt.c: /tmp/ccooUXws.s:9: Error: operand 1 must be an integer or stack pointer register -- `cmp rdx,0'
encrypt.c: /tmp/ccooUXws.s:10: Error: unknown mnemonic `je' -- `je .nowork'
encrypt.c: /tmp/ccooUXws.s:11: Error: operand 1 must be an integer or stack pointer register -- `sub rsp,696'
encrypt.c: /tmp/ccooUXws.s:12: Error: operand 1 must be an integer register -- `mov [rsp+656+8*0],rbx'
encrypt.c: /tmp/ccooUXws.s:13: Error: operand 1 must be an integer register -- `mov [rsp+656+8*1],r12'
encrypt.c: /tmp/ccooUXws.s:14: Error: operand 1 must be an integer register -- `mov [rsp+656+8*2],r13'
encrypt.c: /tmp/ccooUXws.s:15: Error: operand 1 must be an integer register -- `mov [rsp+656+8*3],r14'
encrypt.c: /tmp/ccooUXws.s:16: Error: operand 1 must be an integer register -- `mov [rsp+656+8*4],r15'
encrypt.c: /tmp/ccooUXws.s:18: Error: operand 1 must be an integer register -- `mov r9,[rsi+8*(0)]'
encrypt.c: /tmp/ccooUXws.s:19: Error: operand 1 must be an integer register -- `mov r10,[rsi+8*(1)]'
encrypt.c: /tmp/ccooUXws.s:20: Error: operand 1 must be an integer register -- `mov r11,[rsi+8*(2)]'
encrypt.c: /tmp/ccooUXws.s:21: Error: operand 1 must be an integer register -- `mov r12,[rsi+8*(3)]'
encrypt.c: /tmp/ccooUXws.s:22: Error: operand 1 must be an integer register -- `mov r13,[rsi+8*(4)]'
encrypt.c: /tmp/ccooUXws.s:23: Error: operand 1 must be an integer register -- `mov r14,[rsi+8*(5)]'
encrypt.c: /tmp/ccooUXws.s:24: Error: operand 1 must be an integer register -- `mov r15,[rsi+8*(6)]'
encrypt.c: /tmp/ccooUXws.s:25: Error: operand 1 must be an integer register -- `mov rbx,[rsi+8*(7)]'
encrypt.c: /tmp/ccooUXws.s:26: Error: unknown mnemonic `vmovdqa' -- `vmovdqa xmm1,XMMWORD PTR[XMM_QWORD_BSWAP+rip]'
encrypt.c: /tmp/ccooUXws.s:27: Error: unknown mnemonic `vmovdqu' -- `vmovdqu xmm0,[rdi+8*(0)]'
encrypt.c: /tmp/ccooUXws.s:28: Error: unknown mnemonic `vpshufb' -- `vpshufb xmm0,xmm0,xmm1'
encrypt.c: /tmp/ccooUXws.s:29: Error: unknown mnemonic `vmovdqa' -- `vmovdqa [rsp+0+8*(0)],xmm0'
encrypt.c: /tmp/ccooUXws.s:30: Error: unknown mnemonic `vpaddq' -- `vpaddq xmm0,xmm0,XMMWORD PTR[K512+8*(0)+rip]'
encrypt.c: /tmp/ccooUXws.s:31: Error: unknown mnemonic `vmovdqa' -- `vmovdqa [rsp+640+8*(0)],xmm0'
encrypt.c: /tmp/ccooUXws.s:32: Error: unknown mnemonic `vmovdqu' -- `vmovdqu xmm0,[rdi+8*(2)]'
encrypt.c: ...

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

Compiler output

Implementation: avx1
Security model: unknown
Compiler: gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE
encrypt.c: /tmp/ccrcz7sc.s: Assembler messages:
encrypt.c: /tmp/ccrcz7sc.s:5: Error: unknown pseudo-op: `.intel_syntax'
encrypt.c: /tmp/ccrcz7sc.s:9: Error: operand 1 must be an integer or stack pointer register -- `cmp rdx,0'
encrypt.c: /tmp/ccrcz7sc.s:10: Error: unknown mnemonic `je' -- `je .nowork'
encrypt.c: /tmp/ccrcz7sc.s:11: Error: operand 1 must be an integer or stack pointer register -- `sub rsp,696'
encrypt.c: /tmp/ccrcz7sc.s:12: Error: operand 1 must be an integer register -- `mov [rsp+656+8*0],rbx'
encrypt.c: /tmp/ccrcz7sc.s:13: Error: operand 1 must be an integer register -- `mov [rsp+656+8*1],r12'
encrypt.c: /tmp/ccrcz7sc.s:14: Error: operand 1 must be an integer register -- `mov [rsp+656+8*2],r13'
encrypt.c: /tmp/ccrcz7sc.s:15: Error: operand 1 must be an integer register -- `mov [rsp+656+8*3],r14'
encrypt.c: /tmp/ccrcz7sc.s:16: Error: operand 1 must be an integer register -- `mov [rsp+656+8*4],r15'
encrypt.c: /tmp/ccrcz7sc.s:18: Error: operand 1 must be an integer register -- `mov r9,[rsi+8*(0)]'
encrypt.c: /tmp/ccrcz7sc.s:19: Error: operand 1 must be an integer register -- `mov r10,[rsi+8*(1)]'
encrypt.c: /tmp/ccrcz7sc.s:20: Error: operand 1 must be an integer register -- `mov r11,[rsi+8*(2)]'
encrypt.c: /tmp/ccrcz7sc.s:21: Error: operand 1 must be an integer register -- `mov r12,[rsi+8*(3)]'
encrypt.c: /tmp/ccrcz7sc.s:22: Error: operand 1 must be an integer register -- `mov r13,[rsi+8*(4)]'
encrypt.c: /tmp/ccrcz7sc.s:23: Error: operand 1 must be an integer register -- `mov r14,[rsi+8*(5)]'
encrypt.c: /tmp/ccrcz7sc.s:24: Error: operand 1 must be an integer register -- `mov r15,[rsi+8*(6)]'
encrypt.c: /tmp/ccrcz7sc.s:25: Error: operand 1 must be an integer register -- `mov rbx,[rsi+8*(7)]'
encrypt.c: /tmp/ccrcz7sc.s:26: Error: unknown mnemonic `vmovdqa' -- `vmovdqa xmm1,XMMWORD PTR[XMM_QWORD_BSWAP+rip]'
encrypt.c: /tmp/ccrcz7sc.s:27: Error: unknown mnemonic `vmovdqu' -- `vmovdqu xmm0,[rdi+8*(0)]'
encrypt.c: /tmp/ccrcz7sc.s:28: Error: unknown mnemonic `vpshufb' -- `vpshufb xmm0,xmm0,xmm1'
encrypt.c: /tmp/ccrcz7sc.s:29: Error: unknown mnemonic `vmovdqa' -- `vmovdqa [rsp+0+8*(0)],xmm0'
encrypt.c: /tmp/ccrcz7sc.s:30: Error: unknown mnemonic `vpaddq' -- `vpaddq xmm0,xmm0,XMMWORD PTR[K512+8*(0)+rip]'
encrypt.c: /tmp/ccrcz7sc.s:31: Error: unknown mnemonic `vmovdqa' -- `vmovdqa [rsp+640+8*(0)],xmm0'
encrypt.c: /tmp/ccrcz7sc.s:32: Error: unknown mnemonic `vmovdqu' -- `vmovdqu xmm0,[rdi+8*(2)]'
encrypt.c: ...

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

Compiler output

Implementation: ref
Security model: unknown
Compiler: armclang -march=armv8a+crypto -mcpu=cortex-a57 -mtune=cortex-a57 -O2 -fPIC -fPIE
sha512.c: sha512.c:206:18: warning: incompatible pointer types initializing 'const uint64_t *' (aka 'const unsigned long *') with an expression of type 'const unsigned char *' [-Wincompatible-pointer-types]
sha512.c: const uint64_t *W=in;
sha512.c: ^ ~~
sha512.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 6, 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

Compiler output

Implementation: ref
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
sha512.c: sha512.c: In function 'sha512_comp':
sha512.c: sha512.c:206:20: warning: initialization of 'const uint64_t *' {aka 'const long unsigned int *'} from incompatible pointer type 'const unsigned char *' [-Wincompatible-pointer-types]
sha512.c: const uint64_t *W=in;
sha512.c: ^~

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
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

Compiler output

Implementation: sse4
Security model: unknown
Compiler: armclang -march=armv8a+crypto -mcpu=cortex-a57 -mtune=cortex-a57 -O2 -fPIC -fPIE
encrypt.c: <inline asm>:1:1: error: unknown directive
encrypt.c: .intel_syntax noprefix
encrypt.c: ^
encrypt.c: <inline asm>:4:5: error: invalid operand for instruction
encrypt.c: cmp rdx, 0
encrypt.c: ^
encrypt.c: <inline asm>:5:2: error: unrecognized instruction mnemonic
encrypt.c: je .nowork
encrypt.c: ^
encrypt.c: <inline asm>:6:6: error: invalid operand for instruction
encrypt.c: sub rsp, 696
encrypt.c: ^
encrypt.c: <inline asm>:7:24: error: unexpected token in argument list
encrypt.c: mov [rsp + 656 + 8 * 0], rbx
encrypt.c: ^
encrypt.c: <inline asm>:8:24: error: unexpected token in argument list
encrypt.c: mov [rsp + 656 + 8 * 1], r12
encrypt.c: ^
encrypt.c: <inline asm>:9:24: error: unexpected token in argument list
encrypt.c: mov [rsp + 656 + 8 * 2], r13
encrypt.c: ^
encrypt.c: <inline asm>:10:24: error: unexpected token in argument list
encrypt.c: mov [rsp + 656 + 8 * 3], r14
encrypt.c: ^
encrypt.c: <inline asm>:11:24: error: unexpected token in argument list
encrypt.c: ...

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

Compiler output

Implementation: sse4
Security model: unknown
Compiler: clang -mcpu=native -march=armv8a+crypto -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
encrypt.c: <inline asm>:1:1: error: unknown directive
encrypt.c: .intel_syntax noprefix
encrypt.c: ^
encrypt.c: <inline asm>:4:5: error: invalid operand for instruction
encrypt.c: cmp rdx, 0
encrypt.c: ^
encrypt.c: <inline asm>:5:2: error: unrecognized instruction mnemonic
encrypt.c: je .nowork
encrypt.c: ^
encrypt.c: <inline asm>:6:6: error: invalid operand for instruction
encrypt.c: sub rsp, 696
encrypt.c: ^
encrypt.c: <inline asm>:7:6: error: invalid operand for instruction
encrypt.c: mov [rsp + 656 + 8 * 0], rbx
encrypt.c: ^
encrypt.c: <inline asm>:8:6: error: invalid operand for instruction
encrypt.c: mov [rsp + 656 + 8 * 1], r12
encrypt.c: ^
encrypt.c: <inline asm>:9:6: error: invalid operand for instruction
encrypt.c: mov [rsp + 656 + 8 * 2], r13
encrypt.c: ^
encrypt.c: <inline asm>:10:6: error: invalid operand for instruction
encrypt.c: mov [rsp + 656 + 8 * 3], r14
encrypt.c: ^
encrypt.c: <inline asm>:11:6: error: invalid operand for instruction
encrypt.c: ...

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

Compiler output

Implementation: sse4
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
encrypt.c: /tmp/ccJb1QLW.s: Assembler messages:
encrypt.c: /tmp/ccJb1QLW.s:5: Error: unknown pseudo-op: `.intel_syntax'
encrypt.c: /tmp/ccJb1QLW.s:8: Error: operand 1 must be an integer or stack pointer register -- `cmp rdx,0'
encrypt.c: /tmp/ccJb1QLW.s:9: Error: unknown mnemonic `je' -- `je .nowork'
encrypt.c: /tmp/ccJb1QLW.s:10: Error: operand 1 must be an integer or stack pointer register -- `sub rsp,696'
encrypt.c: /tmp/ccJb1QLW.s:11: Error: operand 1 must be an integer register -- `mov [rsp+656+8*0],rbx'
encrypt.c: /tmp/ccJb1QLW.s:12: Error: operand 1 must be an integer register -- `mov [rsp+656+8*1],r12'
encrypt.c: /tmp/ccJb1QLW.s:13: Error: operand 1 must be an integer register -- `mov [rsp+656+8*2],r13'
encrypt.c: /tmp/ccJb1QLW.s:14: Error: operand 1 must be an integer register -- `mov [rsp+656+8*3],r14'
encrypt.c: /tmp/ccJb1QLW.s:15: Error: operand 1 must be an integer register -- `mov [rsp+656+8*4],r15'
encrypt.c: /tmp/ccJb1QLW.s:17: Error: operand 1 must be an integer register -- `mov r9,[rsi+8*(0)]'
encrypt.c: /tmp/ccJb1QLW.s:18: Error: operand 1 must be an integer register -- `mov r10,[rsi+8*(1)]'
encrypt.c: /tmp/ccJb1QLW.s:19: Error: operand 1 must be an integer register -- `mov r11,[rsi+8*(2)]'
encrypt.c: /tmp/ccJb1QLW.s:20: Error: operand 1 must be an integer register -- `mov r12,[rsi+8*(3)]'
encrypt.c: /tmp/ccJb1QLW.s:21: Error: operand 1 must be an integer register -- `mov r13,[rsi+8*(4)]'
encrypt.c: /tmp/ccJb1QLW.s:22: Error: operand 1 must be an integer register -- `mov r14,[rsi+8*(5)]'
encrypt.c: /tmp/ccJb1QLW.s:23: Error: operand 1 must be an integer register -- `mov r15,[rsi+8*(6)]'
encrypt.c: /tmp/ccJb1QLW.s:24: Error: operand 1 must be an integer register -- `mov rbx,[rsi+8*(7)]'
encrypt.c: /tmp/ccJb1QLW.s:25: Error: unknown mnemonic `movdqa' -- `movdqa xmm1,XMMWORD PTR[XMM_QWORD_BSWAP+rip]'
encrypt.c: /tmp/ccJb1QLW.s:26: Error: unknown mnemonic `movdqu' -- `movdqu xmm0,[rdi+8*(0)]'
encrypt.c: /tmp/ccJb1QLW.s:27: Error: unknown mnemonic `pshufb' -- `pshufb xmm0,xmm1'
encrypt.c: /tmp/ccJb1QLW.s:28: Error: unknown mnemonic `movdqa' -- `movdqa [rsp+0+8*(0)],xmm0'
encrypt.c: /tmp/ccJb1QLW.s:29: Error: unknown mnemonic `paddq' -- `paddq xmm0,XMMWORD PTR[K512+8*(0)+rip]'
encrypt.c: /tmp/ccJb1QLW.s:30: Error: unknown mnemonic `movdqa' -- `movdqa [rsp+640+8*(0)],xmm0'
encrypt.c: /tmp/ccJb1QLW.s:31: Error: unknown mnemonic `movdqu' -- `movdqu xmm0,[rdi+8*(2)]'
encrypt.c: ...

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

Compiler output

Implementation: sse4
Security model: unknown
Compiler: gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE
encrypt.c: /tmp/ccofRE2i.s: Assembler messages:
encrypt.c: /tmp/ccofRE2i.s:5: Error: unknown pseudo-op: `.intel_syntax'
encrypt.c: /tmp/ccofRE2i.s:8: Error: operand 1 must be an integer or stack pointer register -- `cmp rdx,0'
encrypt.c: /tmp/ccofRE2i.s:9: Error: unknown mnemonic `je' -- `je .nowork'
encrypt.c: /tmp/ccofRE2i.s:10: Error: operand 1 must be an integer or stack pointer register -- `sub rsp,696'
encrypt.c: /tmp/ccofRE2i.s:11: Error: operand 1 must be an integer register -- `mov [rsp+656+8*0],rbx'
encrypt.c: /tmp/ccofRE2i.s:12: Error: operand 1 must be an integer register -- `mov [rsp+656+8*1],r12'
encrypt.c: /tmp/ccofRE2i.s:13: Error: operand 1 must be an integer register -- `mov [rsp+656+8*2],r13'
encrypt.c: /tmp/ccofRE2i.s:14: Error: operand 1 must be an integer register -- `mov [rsp+656+8*3],r14'
encrypt.c: /tmp/ccofRE2i.s:15: Error: operand 1 must be an integer register -- `mov [rsp+656+8*4],r15'
encrypt.c: /tmp/ccofRE2i.s:17: Error: operand 1 must be an integer register -- `mov r9,[rsi+8*(0)]'
encrypt.c: /tmp/ccofRE2i.s:18: Error: operand 1 must be an integer register -- `mov r10,[rsi+8*(1)]'
encrypt.c: /tmp/ccofRE2i.s:19: Error: operand 1 must be an integer register -- `mov r11,[rsi+8*(2)]'
encrypt.c: /tmp/ccofRE2i.s:20: Error: operand 1 must be an integer register -- `mov r12,[rsi+8*(3)]'
encrypt.c: /tmp/ccofRE2i.s:21: Error: operand 1 must be an integer register -- `mov r13,[rsi+8*(4)]'
encrypt.c: /tmp/ccofRE2i.s:22: Error: operand 1 must be an integer register -- `mov r14,[rsi+8*(5)]'
encrypt.c: /tmp/ccofRE2i.s:23: Error: operand 1 must be an integer register -- `mov r15,[rsi+8*(6)]'
encrypt.c: /tmp/ccofRE2i.s:24: Error: operand 1 must be an integer register -- `mov rbx,[rsi+8*(7)]'
encrypt.c: /tmp/ccofRE2i.s:25: Error: unknown mnemonic `movdqa' -- `movdqa xmm1,XMMWORD PTR[XMM_QWORD_BSWAP+rip]'
encrypt.c: /tmp/ccofRE2i.s:26: Error: unknown mnemonic `movdqu' -- `movdqu xmm0,[rdi+8*(0)]'
encrypt.c: /tmp/ccofRE2i.s:27: Error: unknown mnemonic `pshufb' -- `pshufb xmm0,xmm1'
encrypt.c: /tmp/ccofRE2i.s:28: Error: unknown mnemonic `movdqa' -- `movdqa [rsp+0+8*(0)],xmm0'
encrypt.c: /tmp/ccofRE2i.s:29: Error: unknown mnemonic `paddq' -- `paddq xmm0,XMMWORD PTR[K512+8*(0)+rip]'
encrypt.c: /tmp/ccofRE2i.s:30: Error: unknown mnemonic `movdqa' -- `movdqa [rsp+640+8*(0)],xmm0'
encrypt.c: /tmp/ccofRE2i.s:31: Error: unknown mnemonic `movdqu' -- `movdqu xmm0,[rdi+8*(2)]'
encrypt.c: ...

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

Compiler output

Implementation: sse4
Security model: unknown
Compiler: gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE
encrypt.c: /tmp/ccqrldPe.s: Assembler messages:
encrypt.c: /tmp/ccqrldPe.s:5: Error: unknown pseudo-op: `.intel_syntax'
encrypt.c: /tmp/ccqrldPe.s:8: Error: operand 1 must be an integer or stack pointer register -- `cmp rdx,0'
encrypt.c: /tmp/ccqrldPe.s:9: Error: unknown mnemonic `je' -- `je .nowork'
encrypt.c: /tmp/ccqrldPe.s:10: Error: operand 1 must be an integer or stack pointer register -- `sub rsp,696'
encrypt.c: /tmp/ccqrldPe.s:11: Error: operand 1 must be an integer register -- `mov [rsp+656+8*0],rbx'
encrypt.c: /tmp/ccqrldPe.s:12: Error: operand 1 must be an integer register -- `mov [rsp+656+8*1],r12'
encrypt.c: /tmp/ccqrldPe.s:13: Error: operand 1 must be an integer register -- `mov [rsp+656+8*2],r13'
encrypt.c: /tmp/ccqrldPe.s:14: Error: operand 1 must be an integer register -- `mov [rsp+656+8*3],r14'
encrypt.c: /tmp/ccqrldPe.s:15: Error: operand 1 must be an integer register -- `mov [rsp+656+8*4],r15'
encrypt.c: /tmp/ccqrldPe.s:17: Error: operand 1 must be an integer register -- `mov r9,[rsi+8*(0)]'
encrypt.c: /tmp/ccqrldPe.s:18: Error: operand 1 must be an integer register -- `mov r10,[rsi+8*(1)]'
encrypt.c: /tmp/ccqrldPe.s:19: Error: operand 1 must be an integer register -- `mov r11,[rsi+8*(2)]'
encrypt.c: /tmp/ccqrldPe.s:20: Error: operand 1 must be an integer register -- `mov r12,[rsi+8*(3)]'
encrypt.c: /tmp/ccqrldPe.s:21: Error: operand 1 must be an integer register -- `mov r13,[rsi+8*(4)]'
encrypt.c: /tmp/ccqrldPe.s:22: Error: operand 1 must be an integer register -- `mov r14,[rsi+8*(5)]'
encrypt.c: /tmp/ccqrldPe.s:23: Error: operand 1 must be an integer register -- `mov r15,[rsi+8*(6)]'
encrypt.c: /tmp/ccqrldPe.s:24: Error: operand 1 must be an integer register -- `mov rbx,[rsi+8*(7)]'
encrypt.c: /tmp/ccqrldPe.s:25: Error: unknown mnemonic `movdqa' -- `movdqa xmm1,XMMWORD PTR[XMM_QWORD_BSWAP+rip]'
encrypt.c: /tmp/ccqrldPe.s:26: Error: unknown mnemonic `movdqu' -- `movdqu xmm0,[rdi+8*(0)]'
encrypt.c: /tmp/ccqrldPe.s:27: Error: unknown mnemonic `pshufb' -- `pshufb xmm0,xmm1'
encrypt.c: /tmp/ccqrldPe.s:28: Error: unknown mnemonic `movdqa' -- `movdqa [rsp+0+8*(0)],xmm0'
encrypt.c: /tmp/ccqrldPe.s:29: Error: unknown mnemonic `paddq' -- `paddq xmm0,XMMWORD PTR[K512+8*(0)+rip]'
encrypt.c: /tmp/ccqrldPe.s:30: Error: unknown mnemonic `movdqa' -- `movdqa [rsp+640+8*(0)],xmm0'
encrypt.c: /tmp/ccqrldPe.s:31: Error: unknown mnemonic `movdqu' -- `movdqu xmm0,[rdi+8*(2)]'
encrypt.c: ...

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

Compiler output

Implementation: sse4
Security model: unknown
Compiler: gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE
encrypt.c: /tmp/ccRzKuVA.s: Assembler messages:
encrypt.c: /tmp/ccRzKuVA.s:5: Error: unknown pseudo-op: `.intel_syntax'
encrypt.c: /tmp/ccRzKuVA.s:8: Error: operand 1 must be an integer or stack pointer register -- `cmp rdx,0'
encrypt.c: /tmp/ccRzKuVA.s:9: Error: unknown mnemonic `je' -- `je .nowork'
encrypt.c: /tmp/ccRzKuVA.s:10: Error: operand 1 must be an integer or stack pointer register -- `sub rsp,696'
encrypt.c: /tmp/ccRzKuVA.s:11: Error: operand 1 must be an integer register -- `mov [rsp+656+8*0],rbx'
encrypt.c: /tmp/ccRzKuVA.s:12: Error: operand 1 must be an integer register -- `mov [rsp+656+8*1],r12'
encrypt.c: /tmp/ccRzKuVA.s:13: Error: operand 1 must be an integer register -- `mov [rsp+656+8*2],r13'
encrypt.c: /tmp/ccRzKuVA.s:14: Error: operand 1 must be an integer register -- `mov [rsp+656+8*3],r14'
encrypt.c: /tmp/ccRzKuVA.s:15: Error: operand 1 must be an integer register -- `mov [rsp+656+8*4],r15'
encrypt.c: /tmp/ccRzKuVA.s:17: Error: operand 1 must be an integer register -- `mov r9,[rsi+8*(0)]'
encrypt.c: /tmp/ccRzKuVA.s:18: Error: operand 1 must be an integer register -- `mov r10,[rsi+8*(1)]'
encrypt.c: /tmp/ccRzKuVA.s:19: Error: operand 1 must be an integer register -- `mov r11,[rsi+8*(2)]'
encrypt.c: /tmp/ccRzKuVA.s:20: Error: operand 1 must be an integer register -- `mov r12,[rsi+8*(3)]'
encrypt.c: /tmp/ccRzKuVA.s:21: Error: operand 1 must be an integer register -- `mov r13,[rsi+8*(4)]'
encrypt.c: /tmp/ccRzKuVA.s:22: Error: operand 1 must be an integer register -- `mov r14,[rsi+8*(5)]'
encrypt.c: /tmp/ccRzKuVA.s:23: Error: operand 1 must be an integer register -- `mov r15,[rsi+8*(6)]'
encrypt.c: /tmp/ccRzKuVA.s:24: Error: operand 1 must be an integer register -- `mov rbx,[rsi+8*(7)]'
encrypt.c: /tmp/ccRzKuVA.s:25: Error: unknown mnemonic `movdqa' -- `movdqa xmm1,XMMWORD PTR[XMM_QWORD_BSWAP+rip]'
encrypt.c: /tmp/ccRzKuVA.s:26: Error: unknown mnemonic `movdqu' -- `movdqu xmm0,[rdi+8*(0)]'
encrypt.c: /tmp/ccRzKuVA.s:27: Error: unknown mnemonic `pshufb' -- `pshufb xmm0,xmm1'
encrypt.c: /tmp/ccRzKuVA.s:28: Error: unknown mnemonic `movdqa' -- `movdqa [rsp+0+8*(0)],xmm0'
encrypt.c: /tmp/ccRzKuVA.s:29: Error: unknown mnemonic `paddq' -- `paddq xmm0,XMMWORD PTR[K512+8*(0)+rip]'
encrypt.c: /tmp/ccRzKuVA.s:30: Error: unknown mnemonic `movdqa' -- `movdqa [rsp+640+8*(0)],xmm0'
encrypt.c: /tmp/ccRzKuVA.s:31: Error: unknown mnemonic `movdqu' -- `movdqu xmm0,[rdi+8*(2)]'
encrypt.c: ...

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

Namespace violations

Implementation: ref
Security model: unknown
Compiler: armclang -march=armv8a+crypto -mcpu=cortex-a57 -mtune=cortex-a57 -O2 -fPIC -fPIE
omdsha512.o calc_L_i T
omdsha512.o double_block T
omdsha512.o final_masking_associated_data T
omdsha512.o final_masking_message T
omdsha512.o hash T
omdsha512.o increment_masking_associated_data T
omdsha512.o increment_masking_message T
omdsha512.o key_func T
omdsha512.o l2b T
omdsha512.o ntz T
omdsha512.o omdsha512_process T
omdsha512.o triple_block T
omdsha512.o xor_block T
sha512.o sha512_comp 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