Implementation notes: aarch64, pi3aplus, crypto_aead/omdsha512k128n128tau128v2

Computer: pi3aplus
Microarchitecture: aarch64; Cortex-A53 (410fd034)
Architecture: aarch64
CPU ID: 410fd034
SUPERCOP version: 20240425
Operation: crypto_aead
Primitive: omdsha512k128n128tau128v2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
20522618260 0 036224 864 864T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042720240425
2782637572 0 025573 768 856T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024042720240425
3433855636 0 022376 864 848T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042720240425
3744944592 0 020312 848 840T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042720240425
4623475188 0 022112 864 848T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042720240425

Compiler output

Implementation: T:avx1
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -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: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: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:avx1

Compiler output

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

Compiler output

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

Compiler output

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

Compiler output

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

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -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: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref

Compiler output

Implementation: T:ref
Security model: timingleaks
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 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

Compiler output

Implementation: T:sse4
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -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: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: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:sse4

Compiler output

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

Compiler output

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

Compiler output

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

Compiler output

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

Namespace violations

Implementation: T:ref
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -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: 5, namely:
CompilerImplementations
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