Implementation notes: aarch64, jetsontx1, crypto_aead/omdsha512k512n256tau256v2

Computer: jetsontx1
Architecture: aarch64
CPU ID: unknown CPU ID
SUPERCOP version: 20191017
Operation: crypto_aead
Primitive: omdsha512k512n256tau256v2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
15852616984 0 032039 816 864refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101720190910
1799798116 0 023513 760 856refclang_-mcpu=native_-march=armv8a+crypto_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019101720190910
1821027732 0 021929 760 840refclang_-mcpu=native_-march=armv8a+crypto_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019101720190910
1821867732 0 021929 760 840refclang_-mcpu=native_-march=armv8a+crypto_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019101720190910
1825439440 0 026215 808 856refarmclang_-march=armv8a+crypto_-mcpu=cortex-a57_-mtune=cortex-a57_-O3_-fPIC_-fPIE2019101720190910
1845459052 0 024711 808 840refarmclang_-march=armv8a+crypto_-mcpu=cortex-a57_-mtune=cortex-a57_-O2_-fPIC_-fPIE2019101720190910
1861254496 0 016783 752 840refclang_-mcpu=native_-march=armv8a+crypto_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019101720190910
2110025752 0 019631 816 848refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101720190910
2128854628 0 017267 800 840refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101720190910
2237095576 0 019295 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/cct4OgHQ.s: Assembler messages:
encrypt.c: /tmp/cct4OgHQ.s:5: Error: unknown pseudo-op: `.intel_syntax'
encrypt.c: /tmp/cct4OgHQ.s:9: Error: operand 1 must be an integer or stack pointer register -- `cmp rdx,0'
encrypt.c: /tmp/cct4OgHQ.s:10: Error: unknown mnemonic `je' -- `je .nowork'
encrypt.c: /tmp/cct4OgHQ.s:11: Error: operand 1 must be an integer or stack pointer register -- `sub rsp,696'
encrypt.c: /tmp/cct4OgHQ.s:12: Error: operand 1 must be an integer register -- `mov [rsp+656+8*0],rbx'
encrypt.c: /tmp/cct4OgHQ.s:13: Error: operand 1 must be an integer register -- `mov [rsp+656+8*1],r12'
encrypt.c: /tmp/cct4OgHQ.s:14: Error: operand 1 must be an integer register -- `mov [rsp+656+8*2],r13'
encrypt.c: /tmp/cct4OgHQ.s:15: Error: operand 1 must be an integer register -- `mov [rsp+656+8*3],r14'
encrypt.c: /tmp/cct4OgHQ.s:16: Error: operand 1 must be an integer register -- `mov [rsp+656+8*4],r15'
encrypt.c: /tmp/cct4OgHQ.s:18: Error: operand 1 must be an integer register -- `mov r9,[rsi+8*(0)]'
encrypt.c: /tmp/cct4OgHQ.s:19: Error: operand 1 must be an integer register -- `mov r10,[rsi+8*(1)]'
encrypt.c: /tmp/cct4OgHQ.s:20: Error: operand 1 must be an integer register -- `mov r11,[rsi+8*(2)]'
encrypt.c: /tmp/cct4OgHQ.s:21: Error: operand 1 must be an integer register -- `mov r12,[rsi+8*(3)]'
encrypt.c: /tmp/cct4OgHQ.s:22: Error: operand 1 must be an integer register -- `mov r13,[rsi+8*(4)]'
encrypt.c: /tmp/cct4OgHQ.s:23: Error: operand 1 must be an integer register -- `mov r14,[rsi+8*(5)]'
encrypt.c: /tmp/cct4OgHQ.s:24: Error: operand 1 must be an integer register -- `mov r15,[rsi+8*(6)]'
encrypt.c: /tmp/cct4OgHQ.s:25: Error: operand 1 must be an integer register -- `mov rbx,[rsi+8*(7)]'
encrypt.c: /tmp/cct4OgHQ.s:26: Error: unknown mnemonic `vmovdqa' -- `vmovdqa xmm1,XMMWORD PTR[XMM_QWORD_BSWAP+rip]'
encrypt.c: /tmp/cct4OgHQ.s:27: Error: unknown mnemonic `vmovdqu' -- `vmovdqu xmm0,[rdi+8*(0)]'
encrypt.c: /tmp/cct4OgHQ.s:28: Error: unknown mnemonic `vpshufb' -- `vpshufb xmm0,xmm0,xmm1'
encrypt.c: /tmp/cct4OgHQ.s:29: Error: unknown mnemonic `vmovdqa' -- `vmovdqa [rsp+0+8*(0)],xmm0'
encrypt.c: /tmp/cct4OgHQ.s:30: Error: unknown mnemonic `vpaddq' -- `vpaddq xmm0,xmm0,XMMWORD PTR[K512+8*(0)+rip]'
encrypt.c: /tmp/cct4OgHQ.s:31: Error: unknown mnemonic `vmovdqa' -- `vmovdqa [rsp+640+8*(0)],xmm0'
encrypt.c: /tmp/cct4OgHQ.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/ccS3lsON.s: Assembler messages:
encrypt.c: /tmp/ccS3lsON.s:5: Error: unknown pseudo-op: `.intel_syntax'
encrypt.c: /tmp/ccS3lsON.s:9: Error: operand 1 must be an integer or stack pointer register -- `cmp rdx,0'
encrypt.c: /tmp/ccS3lsON.s:10: Error: unknown mnemonic `je' -- `je .nowork'
encrypt.c: /tmp/ccS3lsON.s:11: Error: operand 1 must be an integer or stack pointer register -- `sub rsp,696'
encrypt.c: /tmp/ccS3lsON.s:12: Error: operand 1 must be an integer register -- `mov [rsp+656+8*0],rbx'
encrypt.c: /tmp/ccS3lsON.s:13: Error: operand 1 must be an integer register -- `mov [rsp+656+8*1],r12'
encrypt.c: /tmp/ccS3lsON.s:14: Error: operand 1 must be an integer register -- `mov [rsp+656+8*2],r13'
encrypt.c: /tmp/ccS3lsON.s:15: Error: operand 1 must be an integer register -- `mov [rsp+656+8*3],r14'
encrypt.c: /tmp/ccS3lsON.s:16: Error: operand 1 must be an integer register -- `mov [rsp+656+8*4],r15'
encrypt.c: /tmp/ccS3lsON.s:18: Error: operand 1 must be an integer register -- `mov r9,[rsi+8*(0)]'
encrypt.c: /tmp/ccS3lsON.s:19: Error: operand 1 must be an integer register -- `mov r10,[rsi+8*(1)]'
encrypt.c: /tmp/ccS3lsON.s:20: Error: operand 1 must be an integer register -- `mov r11,[rsi+8*(2)]'
encrypt.c: /tmp/ccS3lsON.s:21: Error: operand 1 must be an integer register -- `mov r12,[rsi+8*(3)]'
encrypt.c: /tmp/ccS3lsON.s:22: Error: operand 1 must be an integer register -- `mov r13,[rsi+8*(4)]'
encrypt.c: /tmp/ccS3lsON.s:23: Error: operand 1 must be an integer register -- `mov r14,[rsi+8*(5)]'
encrypt.c: /tmp/ccS3lsON.s:24: Error: operand 1 must be an integer register -- `mov r15,[rsi+8*(6)]'
encrypt.c: /tmp/ccS3lsON.s:25: Error: operand 1 must be an integer register -- `mov rbx,[rsi+8*(7)]'
encrypt.c: /tmp/ccS3lsON.s:26: Error: unknown mnemonic `vmovdqa' -- `vmovdqa xmm1,XMMWORD PTR[XMM_QWORD_BSWAP+rip]'
encrypt.c: /tmp/ccS3lsON.s:27: Error: unknown mnemonic `vmovdqu' -- `vmovdqu xmm0,[rdi+8*(0)]'
encrypt.c: /tmp/ccS3lsON.s:28: Error: unknown mnemonic `vpshufb' -- `vpshufb xmm0,xmm0,xmm1'
encrypt.c: /tmp/ccS3lsON.s:29: Error: unknown mnemonic `vmovdqa' -- `vmovdqa [rsp+0+8*(0)],xmm0'
encrypt.c: /tmp/ccS3lsON.s:30: Error: unknown mnemonic `vpaddq' -- `vpaddq xmm0,xmm0,XMMWORD PTR[K512+8*(0)+rip]'
encrypt.c: /tmp/ccS3lsON.s:31: Error: unknown mnemonic `vmovdqa' -- `vmovdqa [rsp+640+8*(0)],xmm0'
encrypt.c: /tmp/ccS3lsON.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/ccgeHpg8.s: Assembler messages:
encrypt.c: /tmp/ccgeHpg8.s:5: Error: unknown pseudo-op: `.intel_syntax'
encrypt.c: /tmp/ccgeHpg8.s:9: Error: operand 1 must be an integer or stack pointer register -- `cmp rdx,0'
encrypt.c: /tmp/ccgeHpg8.s:10: Error: unknown mnemonic `je' -- `je .nowork'
encrypt.c: /tmp/ccgeHpg8.s:11: Error: operand 1 must be an integer or stack pointer register -- `sub rsp,696'
encrypt.c: /tmp/ccgeHpg8.s:12: Error: operand 1 must be an integer register -- `mov [rsp+656+8*0],rbx'
encrypt.c: /tmp/ccgeHpg8.s:13: Error: operand 1 must be an integer register -- `mov [rsp+656+8*1],r12'
encrypt.c: /tmp/ccgeHpg8.s:14: Error: operand 1 must be an integer register -- `mov [rsp+656+8*2],r13'
encrypt.c: /tmp/ccgeHpg8.s:15: Error: operand 1 must be an integer register -- `mov [rsp+656+8*3],r14'
encrypt.c: /tmp/ccgeHpg8.s:16: Error: operand 1 must be an integer register -- `mov [rsp+656+8*4],r15'
encrypt.c: /tmp/ccgeHpg8.s:18: Error: operand 1 must be an integer register -- `mov r9,[rsi+8*(0)]'
encrypt.c: /tmp/ccgeHpg8.s:19: Error: operand 1 must be an integer register -- `mov r10,[rsi+8*(1)]'
encrypt.c: /tmp/ccgeHpg8.s:20: Error: operand 1 must be an integer register -- `mov r11,[rsi+8*(2)]'
encrypt.c: /tmp/ccgeHpg8.s:21: Error: operand 1 must be an integer register -- `mov r12,[rsi+8*(3)]'
encrypt.c: /tmp/ccgeHpg8.s:22: Error: operand 1 must be an integer register -- `mov r13,[rsi+8*(4)]'
encrypt.c: /tmp/ccgeHpg8.s:23: Error: operand 1 must be an integer register -- `mov r14,[rsi+8*(5)]'
encrypt.c: /tmp/ccgeHpg8.s:24: Error: operand 1 must be an integer register -- `mov r15,[rsi+8*(6)]'
encrypt.c: /tmp/ccgeHpg8.s:25: Error: operand 1 must be an integer register -- `mov rbx,[rsi+8*(7)]'
encrypt.c: /tmp/ccgeHpg8.s:26: Error: unknown mnemonic `vmovdqa' -- `vmovdqa xmm1,XMMWORD PTR[XMM_QWORD_BSWAP+rip]'
encrypt.c: /tmp/ccgeHpg8.s:27: Error: unknown mnemonic `vmovdqu' -- `vmovdqu xmm0,[rdi+8*(0)]'
encrypt.c: /tmp/ccgeHpg8.s:28: Error: unknown mnemonic `vpshufb' -- `vpshufb xmm0,xmm0,xmm1'
encrypt.c: /tmp/ccgeHpg8.s:29: Error: unknown mnemonic `vmovdqa' -- `vmovdqa [rsp+0+8*(0)],xmm0'
encrypt.c: /tmp/ccgeHpg8.s:30: Error: unknown mnemonic `vpaddq' -- `vpaddq xmm0,xmm0,XMMWORD PTR[K512+8*(0)+rip]'
encrypt.c: /tmp/ccgeHpg8.s:31: Error: unknown mnemonic `vmovdqa' -- `vmovdqa [rsp+640+8*(0)],xmm0'
encrypt.c: /tmp/ccgeHpg8.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/ccYfa2bO.s: Assembler messages:
encrypt.c: /tmp/ccYfa2bO.s:5: Error: unknown pseudo-op: `.intel_syntax'
encrypt.c: /tmp/ccYfa2bO.s:9: Error: operand 1 must be an integer or stack pointer register -- `cmp rdx,0'
encrypt.c: /tmp/ccYfa2bO.s:10: Error: unknown mnemonic `je' -- `je .nowork'
encrypt.c: /tmp/ccYfa2bO.s:11: Error: operand 1 must be an integer or stack pointer register -- `sub rsp,696'
encrypt.c: /tmp/ccYfa2bO.s:12: Error: operand 1 must be an integer register -- `mov [rsp+656+8*0],rbx'
encrypt.c: /tmp/ccYfa2bO.s:13: Error: operand 1 must be an integer register -- `mov [rsp+656+8*1],r12'
encrypt.c: /tmp/ccYfa2bO.s:14: Error: operand 1 must be an integer register -- `mov [rsp+656+8*2],r13'
encrypt.c: /tmp/ccYfa2bO.s:15: Error: operand 1 must be an integer register -- `mov [rsp+656+8*3],r14'
encrypt.c: /tmp/ccYfa2bO.s:16: Error: operand 1 must be an integer register -- `mov [rsp+656+8*4],r15'
encrypt.c: /tmp/ccYfa2bO.s:18: Error: operand 1 must be an integer register -- `mov r9,[rsi+8*(0)]'
encrypt.c: /tmp/ccYfa2bO.s:19: Error: operand 1 must be an integer register -- `mov r10,[rsi+8*(1)]'
encrypt.c: /tmp/ccYfa2bO.s:20: Error: operand 1 must be an integer register -- `mov r11,[rsi+8*(2)]'
encrypt.c: /tmp/ccYfa2bO.s:21: Error: operand 1 must be an integer register -- `mov r12,[rsi+8*(3)]'
encrypt.c: /tmp/ccYfa2bO.s:22: Error: operand 1 must be an integer register -- `mov r13,[rsi+8*(4)]'
encrypt.c: /tmp/ccYfa2bO.s:23: Error: operand 1 must be an integer register -- `mov r14,[rsi+8*(5)]'
encrypt.c: /tmp/ccYfa2bO.s:24: Error: operand 1 must be an integer register -- `mov r15,[rsi+8*(6)]'
encrypt.c: /tmp/ccYfa2bO.s:25: Error: operand 1 must be an integer register -- `mov rbx,[rsi+8*(7)]'
encrypt.c: /tmp/ccYfa2bO.s:26: Error: unknown mnemonic `vmovdqa' -- `vmovdqa xmm1,XMMWORD PTR[XMM_QWORD_BSWAP+rip]'
encrypt.c: /tmp/ccYfa2bO.s:27: Error: unknown mnemonic `vmovdqu' -- `vmovdqu xmm0,[rdi+8*(0)]'
encrypt.c: /tmp/ccYfa2bO.s:28: Error: unknown mnemonic `vpshufb' -- `vpshufb xmm0,xmm0,xmm1'
encrypt.c: /tmp/ccYfa2bO.s:29: Error: unknown mnemonic `vmovdqa' -- `vmovdqa [rsp+0+8*(0)],xmm0'
encrypt.c: /tmp/ccYfa2bO.s:30: Error: unknown mnemonic `vpaddq' -- `vpaddq xmm0,xmm0,XMMWORD PTR[K512+8*(0)+rip]'
encrypt.c: /tmp/ccYfa2bO.s:31: Error: unknown mnemonic `vmovdqa' -- `vmovdqa [rsp+640+8*(0)],xmm0'
encrypt.c: /tmp/ccYfa2bO.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/ccJqwBVq.s: Assembler messages:
encrypt.c: /tmp/ccJqwBVq.s:5: Error: unknown pseudo-op: `.intel_syntax'
encrypt.c: /tmp/ccJqwBVq.s:8: Error: operand 1 must be an integer or stack pointer register -- `cmp rdx,0'
encrypt.c: /tmp/ccJqwBVq.s:9: Error: unknown mnemonic `je' -- `je .nowork'
encrypt.c: /tmp/ccJqwBVq.s:10: Error: operand 1 must be an integer or stack pointer register -- `sub rsp,696'
encrypt.c: /tmp/ccJqwBVq.s:11: Error: operand 1 must be an integer register -- `mov [rsp+656+8*0],rbx'
encrypt.c: /tmp/ccJqwBVq.s:12: Error: operand 1 must be an integer register -- `mov [rsp+656+8*1],r12'
encrypt.c: /tmp/ccJqwBVq.s:13: Error: operand 1 must be an integer register -- `mov [rsp+656+8*2],r13'
encrypt.c: /tmp/ccJqwBVq.s:14: Error: operand 1 must be an integer register -- `mov [rsp+656+8*3],r14'
encrypt.c: /tmp/ccJqwBVq.s:15: Error: operand 1 must be an integer register -- `mov [rsp+656+8*4],r15'
encrypt.c: /tmp/ccJqwBVq.s:17: Error: operand 1 must be an integer register -- `mov r9,[rsi+8*(0)]'
encrypt.c: /tmp/ccJqwBVq.s:18: Error: operand 1 must be an integer register -- `mov r10,[rsi+8*(1)]'
encrypt.c: /tmp/ccJqwBVq.s:19: Error: operand 1 must be an integer register -- `mov r11,[rsi+8*(2)]'
encrypt.c: /tmp/ccJqwBVq.s:20: Error: operand 1 must be an integer register -- `mov r12,[rsi+8*(3)]'
encrypt.c: /tmp/ccJqwBVq.s:21: Error: operand 1 must be an integer register -- `mov r13,[rsi+8*(4)]'
encrypt.c: /tmp/ccJqwBVq.s:22: Error: operand 1 must be an integer register -- `mov r14,[rsi+8*(5)]'
encrypt.c: /tmp/ccJqwBVq.s:23: Error: operand 1 must be an integer register -- `mov r15,[rsi+8*(6)]'
encrypt.c: /tmp/ccJqwBVq.s:24: Error: operand 1 must be an integer register -- `mov rbx,[rsi+8*(7)]'
encrypt.c: /tmp/ccJqwBVq.s:25: Error: unknown mnemonic `movdqa' -- `movdqa xmm1,XMMWORD PTR[XMM_QWORD_BSWAP+rip]'
encrypt.c: /tmp/ccJqwBVq.s:26: Error: unknown mnemonic `movdqu' -- `movdqu xmm0,[rdi+8*(0)]'
encrypt.c: /tmp/ccJqwBVq.s:27: Error: unknown mnemonic `pshufb' -- `pshufb xmm0,xmm1'
encrypt.c: /tmp/ccJqwBVq.s:28: Error: unknown mnemonic `movdqa' -- `movdqa [rsp+0+8*(0)],xmm0'
encrypt.c: /tmp/ccJqwBVq.s:29: Error: unknown mnemonic `paddq' -- `paddq xmm0,XMMWORD PTR[K512+8*(0)+rip]'
encrypt.c: /tmp/ccJqwBVq.s:30: Error: unknown mnemonic `movdqa' -- `movdqa [rsp+640+8*(0)],xmm0'
encrypt.c: /tmp/ccJqwBVq.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/cc1hC5pX.s: Assembler messages:
encrypt.c: /tmp/cc1hC5pX.s:5: Error: unknown pseudo-op: `.intel_syntax'
encrypt.c: /tmp/cc1hC5pX.s:8: Error: operand 1 must be an integer or stack pointer register -- `cmp rdx,0'
encrypt.c: /tmp/cc1hC5pX.s:9: Error: unknown mnemonic `je' -- `je .nowork'
encrypt.c: /tmp/cc1hC5pX.s:10: Error: operand 1 must be an integer or stack pointer register -- `sub rsp,696'
encrypt.c: /tmp/cc1hC5pX.s:11: Error: operand 1 must be an integer register -- `mov [rsp+656+8*0],rbx'
encrypt.c: /tmp/cc1hC5pX.s:12: Error: operand 1 must be an integer register -- `mov [rsp+656+8*1],r12'
encrypt.c: /tmp/cc1hC5pX.s:13: Error: operand 1 must be an integer register -- `mov [rsp+656+8*2],r13'
encrypt.c: /tmp/cc1hC5pX.s:14: Error: operand 1 must be an integer register -- `mov [rsp+656+8*3],r14'
encrypt.c: /tmp/cc1hC5pX.s:15: Error: operand 1 must be an integer register -- `mov [rsp+656+8*4],r15'
encrypt.c: /tmp/cc1hC5pX.s:17: Error: operand 1 must be an integer register -- `mov r9,[rsi+8*(0)]'
encrypt.c: /tmp/cc1hC5pX.s:18: Error: operand 1 must be an integer register -- `mov r10,[rsi+8*(1)]'
encrypt.c: /tmp/cc1hC5pX.s:19: Error: operand 1 must be an integer register -- `mov r11,[rsi+8*(2)]'
encrypt.c: /tmp/cc1hC5pX.s:20: Error: operand 1 must be an integer register -- `mov r12,[rsi+8*(3)]'
encrypt.c: /tmp/cc1hC5pX.s:21: Error: operand 1 must be an integer register -- `mov r13,[rsi+8*(4)]'
encrypt.c: /tmp/cc1hC5pX.s:22: Error: operand 1 must be an integer register -- `mov r14,[rsi+8*(5)]'
encrypt.c: /tmp/cc1hC5pX.s:23: Error: operand 1 must be an integer register -- `mov r15,[rsi+8*(6)]'
encrypt.c: /tmp/cc1hC5pX.s:24: Error: operand 1 must be an integer register -- `mov rbx,[rsi+8*(7)]'
encrypt.c: /tmp/cc1hC5pX.s:25: Error: unknown mnemonic `movdqa' -- `movdqa xmm1,XMMWORD PTR[XMM_QWORD_BSWAP+rip]'
encrypt.c: /tmp/cc1hC5pX.s:26: Error: unknown mnemonic `movdqu' -- `movdqu xmm0,[rdi+8*(0)]'
encrypt.c: /tmp/cc1hC5pX.s:27: Error: unknown mnemonic `pshufb' -- `pshufb xmm0,xmm1'
encrypt.c: /tmp/cc1hC5pX.s:28: Error: unknown mnemonic `movdqa' -- `movdqa [rsp+0+8*(0)],xmm0'
encrypt.c: /tmp/cc1hC5pX.s:29: Error: unknown mnemonic `paddq' -- `paddq xmm0,XMMWORD PTR[K512+8*(0)+rip]'
encrypt.c: /tmp/cc1hC5pX.s:30: Error: unknown mnemonic `movdqa' -- `movdqa [rsp+640+8*(0)],xmm0'
encrypt.c: /tmp/cc1hC5pX.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/ccr3MetN.s: Assembler messages:
encrypt.c: /tmp/ccr3MetN.s:5: Error: unknown pseudo-op: `.intel_syntax'
encrypt.c: /tmp/ccr3MetN.s:8: Error: operand 1 must be an integer or stack pointer register -- `cmp rdx,0'
encrypt.c: /tmp/ccr3MetN.s:9: Error: unknown mnemonic `je' -- `je .nowork'
encrypt.c: /tmp/ccr3MetN.s:10: Error: operand 1 must be an integer or stack pointer register -- `sub rsp,696'
encrypt.c: /tmp/ccr3MetN.s:11: Error: operand 1 must be an integer register -- `mov [rsp+656+8*0],rbx'
encrypt.c: /tmp/ccr3MetN.s:12: Error: operand 1 must be an integer register -- `mov [rsp+656+8*1],r12'
encrypt.c: /tmp/ccr3MetN.s:13: Error: operand 1 must be an integer register -- `mov [rsp+656+8*2],r13'
encrypt.c: /tmp/ccr3MetN.s:14: Error: operand 1 must be an integer register -- `mov [rsp+656+8*3],r14'
encrypt.c: /tmp/ccr3MetN.s:15: Error: operand 1 must be an integer register -- `mov [rsp+656+8*4],r15'
encrypt.c: /tmp/ccr3MetN.s:17: Error: operand 1 must be an integer register -- `mov r9,[rsi+8*(0)]'
encrypt.c: /tmp/ccr3MetN.s:18: Error: operand 1 must be an integer register -- `mov r10,[rsi+8*(1)]'
encrypt.c: /tmp/ccr3MetN.s:19: Error: operand 1 must be an integer register -- `mov r11,[rsi+8*(2)]'
encrypt.c: /tmp/ccr3MetN.s:20: Error: operand 1 must be an integer register -- `mov r12,[rsi+8*(3)]'
encrypt.c: /tmp/ccr3MetN.s:21: Error: operand 1 must be an integer register -- `mov r13,[rsi+8*(4)]'
encrypt.c: /tmp/ccr3MetN.s:22: Error: operand 1 must be an integer register -- `mov r14,[rsi+8*(5)]'
encrypt.c: /tmp/ccr3MetN.s:23: Error: operand 1 must be an integer register -- `mov r15,[rsi+8*(6)]'
encrypt.c: /tmp/ccr3MetN.s:24: Error: operand 1 must be an integer register -- `mov rbx,[rsi+8*(7)]'
encrypt.c: /tmp/ccr3MetN.s:25: Error: unknown mnemonic `movdqa' -- `movdqa xmm1,XMMWORD PTR[XMM_QWORD_BSWAP+rip]'
encrypt.c: /tmp/ccr3MetN.s:26: Error: unknown mnemonic `movdqu' -- `movdqu xmm0,[rdi+8*(0)]'
encrypt.c: /tmp/ccr3MetN.s:27: Error: unknown mnemonic `pshufb' -- `pshufb xmm0,xmm1'
encrypt.c: /tmp/ccr3MetN.s:28: Error: unknown mnemonic `movdqa' -- `movdqa [rsp+0+8*(0)],xmm0'
encrypt.c: /tmp/ccr3MetN.s:29: Error: unknown mnemonic `paddq' -- `paddq xmm0,XMMWORD PTR[K512+8*(0)+rip]'
encrypt.c: /tmp/ccr3MetN.s:30: Error: unknown mnemonic `movdqa' -- `movdqa [rsp+640+8*(0)],xmm0'
encrypt.c: /tmp/ccr3MetN.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/ccnx6m6j.s: Assembler messages:
encrypt.c: /tmp/ccnx6m6j.s:5: Error: unknown pseudo-op: `.intel_syntax'
encrypt.c: /tmp/ccnx6m6j.s:8: Error: operand 1 must be an integer or stack pointer register -- `cmp rdx,0'
encrypt.c: /tmp/ccnx6m6j.s:9: Error: unknown mnemonic `je' -- `je .nowork'
encrypt.c: /tmp/ccnx6m6j.s:10: Error: operand 1 must be an integer or stack pointer register -- `sub rsp,696'
encrypt.c: /tmp/ccnx6m6j.s:11: Error: operand 1 must be an integer register -- `mov [rsp+656+8*0],rbx'
encrypt.c: /tmp/ccnx6m6j.s:12: Error: operand 1 must be an integer register -- `mov [rsp+656+8*1],r12'
encrypt.c: /tmp/ccnx6m6j.s:13: Error: operand 1 must be an integer register -- `mov [rsp+656+8*2],r13'
encrypt.c: /tmp/ccnx6m6j.s:14: Error: operand 1 must be an integer register -- `mov [rsp+656+8*3],r14'
encrypt.c: /tmp/ccnx6m6j.s:15: Error: operand 1 must be an integer register -- `mov [rsp+656+8*4],r15'
encrypt.c: /tmp/ccnx6m6j.s:17: Error: operand 1 must be an integer register -- `mov r9,[rsi+8*(0)]'
encrypt.c: /tmp/ccnx6m6j.s:18: Error: operand 1 must be an integer register -- `mov r10,[rsi+8*(1)]'
encrypt.c: /tmp/ccnx6m6j.s:19: Error: operand 1 must be an integer register -- `mov r11,[rsi+8*(2)]'
encrypt.c: /tmp/ccnx6m6j.s:20: Error: operand 1 must be an integer register -- `mov r12,[rsi+8*(3)]'
encrypt.c: /tmp/ccnx6m6j.s:21: Error: operand 1 must be an integer register -- `mov r13,[rsi+8*(4)]'
encrypt.c: /tmp/ccnx6m6j.s:22: Error: operand 1 must be an integer register -- `mov r14,[rsi+8*(5)]'
encrypt.c: /tmp/ccnx6m6j.s:23: Error: operand 1 must be an integer register -- `mov r15,[rsi+8*(6)]'
encrypt.c: /tmp/ccnx6m6j.s:24: Error: operand 1 must be an integer register -- `mov rbx,[rsi+8*(7)]'
encrypt.c: /tmp/ccnx6m6j.s:25: Error: unknown mnemonic `movdqa' -- `movdqa xmm1,XMMWORD PTR[XMM_QWORD_BSWAP+rip]'
encrypt.c: /tmp/ccnx6m6j.s:26: Error: unknown mnemonic `movdqu' -- `movdqu xmm0,[rdi+8*(0)]'
encrypt.c: /tmp/ccnx6m6j.s:27: Error: unknown mnemonic `pshufb' -- `pshufb xmm0,xmm1'
encrypt.c: /tmp/ccnx6m6j.s:28: Error: unknown mnemonic `movdqa' -- `movdqa [rsp+0+8*(0)],xmm0'
encrypt.c: /tmp/ccnx6m6j.s:29: Error: unknown mnemonic `paddq' -- `paddq xmm0,XMMWORD PTR[K512+8*(0)+rip]'
encrypt.c: /tmp/ccnx6m6j.s:30: Error: unknown mnemonic `movdqa' -- `movdqa [rsp+640+8*(0)],xmm0'
encrypt.c: /tmp/ccnx6m6j.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