Implementation notes: amd64, h3neo, crypto_hash/luffa512

Computer: h3neo
Microarchitecture: amd64; K10 45nm (100f63)
Architecture: amd64
CPU ID: AuthenticAMD-00100f63-078bfbff
SUPERCOP version: 20240425
Operation: crypto_hash
Primitive: luffa512
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
6442926704 0 040261 804 960T:sphlibgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024043020240425
6613927152 0 039373 804 960T:sphlibgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024043020240425
6687521979 0 032320 780 928T:sphlibgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024043020240425
6978425759 0 037221 804 960T:sphlibgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024043020240425
7042217195 320 029539 1172 896T:opt32clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024043020240425
7201225840 0 038811 844 896T:sphlibclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024043020240425
7270519235 320 032035 1172 896T:opt32clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024043020240425
7331824783 0 034805 836 896T:sphlibclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024043020240425
7409925541 0 038059 844 896T:sphlibclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024043020240425
7416025681 0 036299 844 896T:sphlibclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024043020240425
7417325493 0 037075 844 896T:sphlibclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024043020240425
7965411296 0 54424003 844 1440T:sse2clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024043020240425
8014011398 0 54424877 804 1504T:sse2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024043020240425
8015910877 0 54423107 844 1440T:sse2clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024043020240425
8291110636 0 54421971 844 1440T:sse2clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024043020240425
8303916719 320 030285 1132 960T:opt32gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024043020240425
845829144 0 54419061 836 1440T:sse2clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024043020240425
8519810291 0 54422461 804 1504T:sse2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024043020240425
867758551 0 54418832 780 1472T:sse2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024043020240425
8711210737 0 54422052 796 1504T:sse2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024043020240425
8791115835 320 027419 1172 896T:opt32clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024043020240425
893499914 0 54420467 844 1440T:sse2clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024043020240425
999419425 320 019429 1164 896T:opt32clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024043020240425
11171011177 320 021819 1172 896T:opt32clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024043020240425
12053410771 320 023013 1132 960T:opt32gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024043020240425
1391159198 320 019536 1108 928T:opt32gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024043020240425
14255110480 320 021868 1124 960T:opt32gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024043020240425

Compiler output

Implementation: T:sse2_x64asm
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
luffa_x64asm.s: luffa_x64asm.s:780:13: error: unknown token in expression
luffa_x64asm.s: movaps %xmm0, [IV ]
luffa_x64asm.s: ^
luffa_x64asm.s: luffa_x64asm.s:781:13: error: unknown token in expression
luffa_x64asm.s: movaps %xmm1, [IV+16]
luffa_x64asm.s: ^
luffa_x64asm.s: luffa_x64asm.s:782:13: error: unknown token in expression
luffa_x64asm.s: movaps %xmm2, [IV+32]
luffa_x64asm.s: ^
luffa_x64asm.s: luffa_x64asm.s:783:13: error: unknown token in expression
luffa_x64asm.s: movaps %xmm3, [IV+48]
luffa_x64asm.s: ^
luffa_x64asm.s: luffa_x64asm.s:784:13: error: unknown token in expression
luffa_x64asm.s: movaps %xmm4, [IV+64]
luffa_x64asm.s: ^
luffa_x64asm.s: luffa_x64asm.s:785:13: error: unknown token in expression
luffa_x64asm.s: movaps %xmm5, [IV+80]
luffa_x64asm.s: ^
luffa_x64asm.s: luffa_x64asm.s:786:14: error: unknown token in expression
luffa_x64asm.s: movups [%rdi ], %xmm0
luffa_x64asm.s: ^
luffa_x64asm.s: luffa_x64asm.s:787:14: error: unknown token in expression
luffa_x64asm.s: movups [%rdi+16], %xmm1
luffa_x64asm.s: ^
luffa_x64asm.s: luffa_x64asm.s:788:14: error: unknown token in expression
luffa_x64asm.s: ...

Number of similar (compiler,implementation) pairs: 10, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:sse2_x64asm
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:sse2_x64asm
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:sse2_x64asm
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:sse2_x64asm
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:sse2_x64asm
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ssse3_x64asm
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ssse3_x64asm
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ssse3_x64asm
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ssse3_x64asm
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ssse3_x64asm

Compiler output

Implementation: T:sse2_x64asm
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.c: /usr/bin/ld: libcrypto_hash_luffa512.a(luffa_x64asm.o): relocation R_X86_64_32S against symbol `IV' can not be used when making a PIE object; recompile with -fPIE
try.c: /usr/bin/ld: failed to set dynamic section sizes: bad value
try.c: collect2: error: ld returned 1 exit status

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

Compiler output

Implementation: T:sse2_x64asm-2
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
luffa_x64asm.s: luffa_x64asm.s:780:13: error: unknown token in expression
luffa_x64asm.s: movdqa %xmm0, [IV ]
luffa_x64asm.s: ^
luffa_x64asm.s: luffa_x64asm.s:781:13: error: unknown token in expression
luffa_x64asm.s: movdqa %xmm1, [IV+16]
luffa_x64asm.s: ^
luffa_x64asm.s: luffa_x64asm.s:782:13: error: unknown token in expression
luffa_x64asm.s: movdqa %xmm2, [IV+32]
luffa_x64asm.s: ^
luffa_x64asm.s: luffa_x64asm.s:783:13: error: unknown token in expression
luffa_x64asm.s: movdqa %xmm3, [IV+48]
luffa_x64asm.s: ^
luffa_x64asm.s: luffa_x64asm.s:784:13: error: unknown token in expression
luffa_x64asm.s: movdqa %xmm4, [IV+64]
luffa_x64asm.s: ^
luffa_x64asm.s: luffa_x64asm.s:785:13: error: unknown token in expression
luffa_x64asm.s: movdqa %xmm5, [IV+80]
luffa_x64asm.s: ^
luffa_x64asm.s: luffa_x64asm.s:786:14: error: unknown token in expression
luffa_x64asm.s: movups [%rdi ], %xmm0
luffa_x64asm.s: ^
luffa_x64asm.s: luffa_x64asm.s:787:14: error: unknown token in expression
luffa_x64asm.s: movups [%rdi+16], %xmm1
luffa_x64asm.s: ^
luffa_x64asm.s: luffa_x64asm.s:788:14: error: unknown token in expression
luffa_x64asm.s: ...

Number of similar (compiler,implementation) pairs: 10, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:sse2_x64asm-2
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:sse2_x64asm-2
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:sse2_x64asm-2
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:sse2_x64asm-2
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:sse2_x64asm-2
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ssse3_x64asm-2
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ssse3_x64asm-2
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ssse3_x64asm-2
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ssse3_x64asm-2
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ssse3_x64asm-2

Compiler output

Implementation: T:ssse3_x64asm-PS
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
luffa256_x64asm.s: luffa256_x64asm.s:297:9: error: unknown token in expression
luffa256_x64asm.s: movaps %xmm0, [IV ]
luffa256_x64asm.s: ^
luffa256_x64asm.s: luffa256_x64asm.s:298:9: error: unknown token in expression
luffa256_x64asm.s: movaps %xmm1, [IV+16]
luffa256_x64asm.s: ^
luffa256_x64asm.s: luffa256_x64asm.s:299:9: error: unknown token in expression
luffa256_x64asm.s: movaps %xmm2, [IV+32]
luffa256_x64asm.s: ^
luffa256_x64asm.s: luffa256_x64asm.s:300:9: error: unknown token in expression
luffa256_x64asm.s: movaps %xmm3, [IV+48]
luffa256_x64asm.s: ^
luffa256_x64asm.s: luffa256_x64asm.s:301:9: error: unknown token in expression
luffa256_x64asm.s: movaps %xmm4, [IV+64]
luffa256_x64asm.s: ^
luffa256_x64asm.s: luffa256_x64asm.s:302:9: error: unknown token in expression
luffa256_x64asm.s: movaps %xmm5, [IV+80]
luffa256_x64asm.s: ^
luffa256_x64asm.s: luffa256_x64asm.s:303:10: error: unknown token in expression
luffa256_x64asm.s: movups [%rdi ], %xmm0
luffa256_x64asm.s: ^
luffa256_x64asm.s: luffa256_x64asm.s:304:10: error: unknown token in expression
luffa256_x64asm.s: movups [%rdi+16], %xmm1
luffa256_x64asm.s: ^
luffa256_x64asm.s: luffa256_x64asm.s:305:10: error: unknown token in expression
luffa256_x64asm.s: ...

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ssse3_x64asm-PS
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ssse3_x64asm-PS
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ssse3_x64asm-PS
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ssse3_x64asm-PS
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ssse3_x64asm-PS

Compiler output

Implementation: T:ssse3_x64asm-PS
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.c: /usr/bin/ld: libcrypto_hash_luffa512.a(luffa256_x64asm.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIE
try.c: /usr/bin/ld: failed to set dynamic section sizes: bad value
try.c: collect2: error: ld returned 1 exit status

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

Compiler output

Implementation: T:ssse3_x64asm-PS-2
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
luffa256_x64asm.s: luffa256_x64asm.s:297:9: error: unknown token in expression
luffa256_x64asm.s: movdqa %xmm0, [IV ]
luffa256_x64asm.s: ^
luffa256_x64asm.s: luffa256_x64asm.s:298:9: error: unknown token in expression
luffa256_x64asm.s: movdqa %xmm1, [IV+16]
luffa256_x64asm.s: ^
luffa256_x64asm.s: luffa256_x64asm.s:299:9: error: unknown token in expression
luffa256_x64asm.s: movdqa %xmm2, [IV+32]
luffa256_x64asm.s: ^
luffa256_x64asm.s: luffa256_x64asm.s:300:9: error: unknown token in expression
luffa256_x64asm.s: movdqa %xmm3, [IV+48]
luffa256_x64asm.s: ^
luffa256_x64asm.s: luffa256_x64asm.s:301:9: error: unknown token in expression
luffa256_x64asm.s: movdqa %xmm4, [IV+64]
luffa256_x64asm.s: ^
luffa256_x64asm.s: luffa256_x64asm.s:302:9: error: unknown token in expression
luffa256_x64asm.s: movdqa %xmm5, [IV+80]
luffa256_x64asm.s: ^
luffa256_x64asm.s: luffa256_x64asm.s:303:10: error: unknown token in expression
luffa256_x64asm.s: movdqu [%rdi ], %xmm0
luffa256_x64asm.s: ^
luffa256_x64asm.s: luffa256_x64asm.s:304:10: error: unknown token in expression
luffa256_x64asm.s: movdqu [%rdi+16], %xmm1
luffa256_x64asm.s: ^
luffa256_x64asm.s: luffa256_x64asm.s:305:10: error: unknown token in expression
luffa256_x64asm.s: ...

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ssse3_x64asm-PS-2
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ssse3_x64asm-PS-2
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ssse3_x64asm-PS-2
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ssse3_x64asm-PS-2
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ssse3_x64asm-PS-2

Compiler output

Implementation: T:thomaz/asm-PS
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
hash.c: hash.c:32:12: warning: passing 'const unsigned char *' to parameter of type 'unsigned char *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
hash.c: fLuffa512(in, out, inlen);
hash.c: ^~
hash.c: hash.c:29:31: note: passing argument to parameter 'input' here
hash.c: void fLuffa512(unsigned char *input, unsigned char *output, int len);
hash.c: ^
hash.c: 1 warning generated.
luffa_512.s: <instantiation>:1:8: error: unknown token in expression
luffa_512.s: pshufb %xmm10, maskShufLittleEndian
luffa_512.s: ^
luffa_512.s: <instantiation>:1:1: note: while in macro instantiation
luffa_512.s: mPSSTEPI %xmm10, %xmm11, maskShufLittleEndian
luffa_512.s: ^
luffa_512.s: luffa_512.s:303:2: note: while in macro instantiation
luffa_512.s: mPS %xmm10, %xmm11, %xmm12, %xmm13, %xmm14, %xmm15
luffa_512.s: ^
luffa_512.s: <instantiation>:2:9: error: unknown token in expression
luffa_512.s: pshufb %xmm11, maskShufLittleEndian
luffa_512.s: ^
luffa_512.s: <instantiation>:1:1: note: while in macro instantiation
luffa_512.s: mPSSTEPI %xmm10, %xmm11, maskShufLittleEndian
luffa_512.s: ^
luffa_512.s: luffa_512.s:303:2: note: while in macro instantiation
luffa_512.s: mPS %xmm10, %xmm11, %xmm12, %xmm13, %xmm14, %xmm15
luffa_512.s: ^
luffa_512.s: <instantiation>:1:8: error: unknown token in expression
luffa_512.s: movaps %xmm12, %xmm10
luffa_512.s: ^
luffa_512.s: <instantiation>:2:2: note: while in macro instantiation
luffa_512.s: mPSSTEPII %xmm10, %xmm11, %xmm12, %xmm13, %xmm14, %xmm15
luffa_512.s: ^
luffa_512.s: luffa_512.s:303:2: note: while in macro instantiation
luffa_512.s: ...

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:thomaz/asm-PS
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:thomaz/asm-PS
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:thomaz/asm-PS
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:thomaz/asm-PS
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:thomaz/asm-PS

Compiler output

Implementation: T:thomaz/asm-PS
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
hash.c: hash.c: In function 'crypto_hash_luffa512_thomaz_asm_PS_timingleaks':
hash.c: hash.c:32:19: warning: passing argument 1 of 'fLuffa512' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
hash.c: 32 | fLuffa512(in, out, inlen);
hash.c: | ^~
hash.c: hash.c:29:31: note: expected 'unsigned char *' but argument is of type 'const unsigned char *'
hash.c: 29 | void fLuffa512(unsigned char *input, unsigned char *output, int len);
hash.c: | ~~~~~~~~~~~~~~~^~~~~
try.c: /usr/bin/ld: libcrypto_hash_luffa512.a(luffa_512.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIE
try.c: /usr/bin/ld: failed to set dynamic section sizes: bad value
try.c: collect2: error: ld returned 1 exit status

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

Compiler output

Implementation: T:thomaz/asm-PS-v2-FP
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
hash.c: hash.c:32:12: warning: passing 'const unsigned char *' to parameter of type 'unsigned char *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
hash.c: fLuffa512(in, out, inlen);
hash.c: ^~
hash.c: hash.c:29:31: note: passing argument to parameter 'input' here
hash.c: void fLuffa512(unsigned char *input, unsigned char *output, int len);
hash.c: ^
hash.c: 1 warning generated.
luffa_512.s: <instantiation>:1:8: error: unknown token in expression
luffa_512.s: pshufb %xmm10, maskShufLittleEndian
luffa_512.s: ^
luffa_512.s: <instantiation>:1:1: note: while in macro instantiation
luffa_512.s: mPSSTEPI %xmm10, %xmm11, maskShufLittleEndian
luffa_512.s: ^
luffa_512.s: luffa_512.s:302:2: note: while in macro instantiation
luffa_512.s: mPS %xmm10, %xmm11, %xmm12, %xmm13, %xmm14, %xmm15
luffa_512.s: ^
luffa_512.s: <instantiation>:2:9: error: unknown token in expression
luffa_512.s: pshufb %xmm11, maskShufLittleEndian
luffa_512.s: ^
luffa_512.s: <instantiation>:1:1: note: while in macro instantiation
luffa_512.s: mPSSTEPI %xmm10, %xmm11, maskShufLittleEndian
luffa_512.s: ^
luffa_512.s: luffa_512.s:302:2: note: while in macro instantiation
luffa_512.s: mPS %xmm10, %xmm11, %xmm12, %xmm13, %xmm14, %xmm15
luffa_512.s: ^
luffa_512.s: <instantiation>:1:8: error: unknown token in expression
luffa_512.s: movaps %xmm12, %xmm10
luffa_512.s: ^
luffa_512.s: <instantiation>:2:2: note: while in macro instantiation
luffa_512.s: mPSSTEPII %xmm10, %xmm11, %xmm12, %xmm13, %xmm14, %xmm15
luffa_512.s: ^
luffa_512.s: luffa_512.s:302:2: note: while in macro instantiation
luffa_512.s: ...

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:thomaz/asm-PS-v2-FP
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:thomaz/asm-PS-v2-FP
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:thomaz/asm-PS-v2-FP
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:thomaz/asm-PS-v2-FP
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:thomaz/asm-PS-v2-FP

Compiler output

Implementation: T:thomaz/asm-PS-v2-FP
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
hash.c: hash.c: In function 'crypto_hash_luffa512_thomaz_asm_PS_v2_FP_timingleaks':
hash.c: hash.c:32:19: warning: passing argument 1 of 'fLuffa512' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
hash.c: 32 | fLuffa512(in, out, inlen);
hash.c: | ^~
hash.c: hash.c:29:31: note: expected 'unsigned char *' but argument is of type 'const unsigned char *'
hash.c: 29 | void fLuffa512(unsigned char *input, unsigned char *output, int len);
hash.c: | ~~~~~~~~~~~~~~~^~~~~
try.c: /usr/bin/ld: libcrypto_hash_luffa512.a(luffa_512.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIE
try.c: /usr/bin/ld: failed to set dynamic section sizes: bad value
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:thomaz/asm-PS-v2-FP
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:thomaz/asm-PS-v2-FP
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:thomaz/asm-PS-v2-FP
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:thomaz/asm-PS-v2-FP

Compiler output

Implementation: T:thomaz/asm-PS-v2-INT
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
hash.c: hash.c:32:12: warning: passing 'const unsigned char *' to parameter of type 'unsigned char *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
hash.c: fLuffa512(in, out, inlen);
hash.c: ^~
hash.c: hash.c:29:31: note: passing argument to parameter 'input' here
hash.c: void fLuffa512(unsigned char *input, unsigned char *output, int len);
hash.c: ^
hash.c: 1 warning generated.
luffa_512.s: <instantiation>:1:8: error: unknown token in expression
luffa_512.s: pshufb %xmm10, maskShufLittleEndian
luffa_512.s: ^
luffa_512.s: <instantiation>:1:1: note: while in macro instantiation
luffa_512.s: mPSSTEPI %xmm10, %xmm11, maskShufLittleEndian
luffa_512.s: ^
luffa_512.s: luffa_512.s:305:2: note: while in macro instantiation
luffa_512.s: mPS %xmm10, %xmm11, %xmm12, %xmm13, %xmm14, %xmm15
luffa_512.s: ^
luffa_512.s: <instantiation>:2:9: error: unknown token in expression
luffa_512.s: pshufb %xmm11, maskShufLittleEndian
luffa_512.s: ^
luffa_512.s: <instantiation>:1:1: note: while in macro instantiation
luffa_512.s: mPSSTEPI %xmm10, %xmm11, maskShufLittleEndian
luffa_512.s: ^
luffa_512.s: luffa_512.s:305:2: note: while in macro instantiation
luffa_512.s: mPS %xmm10, %xmm11, %xmm12, %xmm13, %xmm14, %xmm15
luffa_512.s: ^
luffa_512.s: <instantiation>:1:8: error: unknown token in expression
luffa_512.s: movdqa %xmm12, %xmm10
luffa_512.s: ^
luffa_512.s: <instantiation>:2:2: note: while in macro instantiation
luffa_512.s: mPSSTEPII %xmm10, %xmm11, %xmm12, %xmm13, %xmm14, %xmm15
luffa_512.s: ^
luffa_512.s: luffa_512.s:305:2: note: while in macro instantiation
luffa_512.s: ...

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:thomaz/asm-PS-v2-INT
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:thomaz/asm-PS-v2-INT
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:thomaz/asm-PS-v2-INT
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:thomaz/asm-PS-v2-INT
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:thomaz/asm-PS-v2-INT

Compiler output

Implementation: T:thomaz/asm-PS-v2-INT
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
hash.c: hash.c: In function 'crypto_hash_luffa512_thomaz_asm_PS_v2_INT_timingleaks':
hash.c: hash.c:32:19: warning: passing argument 1 of 'fLuffa512' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
hash.c: 32 | fLuffa512(in, out, inlen);
hash.c: | ^~
hash.c: hash.c:29:31: note: expected 'unsigned char *' but argument is of type 'const unsigned char *'
hash.c: 29 | void fLuffa512(unsigned char *input, unsigned char *output, int len);
hash.c: | ~~~~~~~~~~~~~~~^~~~~
try.c: /usr/bin/ld: libcrypto_hash_luffa512.a(luffa_512.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIE
try.c: /usr/bin/ld: failed to set dynamic section sizes: bad value
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:thomaz/asm-PS-v2-INT
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:thomaz/asm-PS-v2-INT
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:thomaz/asm-PS-v2-INT
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:thomaz/asm-PS-v2-INT

Compiler output

Implementation: T:thomaz/asm-PSPar-v2-FP
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
hash.c: hash.c:32:12: warning: passing 'const unsigned char *' to parameter of type 'unsigned char *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
hash.c: fLuffa512(in, out, inlen);
hash.c: ^~
hash.c: hash.c:29:31: note: passing argument to parameter 'input' here
hash.c: void fLuffa512(unsigned char *input, unsigned char *output, int len);
hash.c: ^
hash.c: 1 warning generated.
luffa512.s: <instantiation>:1:8: error: unknown token in expression
luffa512.s: pshufb %xmm10, maskShufLittleEndian
luffa512.s: ^
luffa512.s: <instantiation>:1:1: note: while in macro instantiation
luffa512.s: mPSSTEPI %xmm10, %xmm11, maskShufLittleEndian
luffa512.s: ^
luffa512.s: luffa512.s:449:2: note: while in macro instantiation
luffa512.s: mPS %xmm10, %xmm11, %xmm12, %xmm13, %xmm14, %xmm15
luffa512.s: ^
luffa512.s: <instantiation>:2:9: error: unknown token in expression
luffa512.s: pshufb %xmm11, maskShufLittleEndian
luffa512.s: ^
luffa512.s: <instantiation>:1:1: note: while in macro instantiation
luffa512.s: mPSSTEPI %xmm10, %xmm11, maskShufLittleEndian
luffa512.s: ^
luffa512.s: luffa512.s:449:2: note: while in macro instantiation
luffa512.s: mPS %xmm10, %xmm11, %xmm12, %xmm13, %xmm14, %xmm15
luffa512.s: ^
luffa512.s: <instantiation>:1:8: error: unknown token in expression
luffa512.s: movaps %xmm12, %xmm10
luffa512.s: ^
luffa512.s: <instantiation>:2:2: note: while in macro instantiation
luffa512.s: mPSSTEPII %xmm10, %xmm11, %xmm12, %xmm13, %xmm14, %xmm15
luffa512.s: ^
luffa512.s: luffa512.s:449:2: note: while in macro instantiation
luffa512.s: ...

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:thomaz/asm-PSPar-v2-FP
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:thomaz/asm-PSPar-v2-FP
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:thomaz/asm-PSPar-v2-FP
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:thomaz/asm-PSPar-v2-FP
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:thomaz/asm-PSPar-v2-FP

Compiler output

Implementation: T:thomaz/asm-PSPar-v2-FP
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
hash.c: hash.c: In function 'crypto_hash_luffa512_thomaz_asm_PSPar_v2_FP_timingleaks':
hash.c: hash.c:32:19: warning: passing argument 1 of 'fLuffa512' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
hash.c: 32 | fLuffa512(in, out, inlen);
hash.c: | ^~
hash.c: hash.c:29:31: note: expected 'unsigned char *' but argument is of type 'const unsigned char *'
hash.c: 29 | void fLuffa512(unsigned char *input, unsigned char *output, int len);
hash.c: | ~~~~~~~~~~~~~~~^~~~~
try.c: /usr/bin/ld: libcrypto_hash_luffa512.a(luffa512.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIE
try.c: /usr/bin/ld: failed to set dynamic section sizes: bad value
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:thomaz/asm-PSPar-v2-FP
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:thomaz/asm-PSPar-v2-FP
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:thomaz/asm-PSPar-v2-FP
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:thomaz/asm-PSPar-v2-FP

Compiler output

Implementation: T:thomaz/asm-PSPar-v2-INT
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
hash.c: hash.c:32:12: warning: passing 'const unsigned char *' to parameter of type 'unsigned char *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
hash.c: fLuffa512(in, out, inlen);
hash.c: ^~
hash.c: hash.c:29:31: note: passing argument to parameter 'input' here
hash.c: void fLuffa512(unsigned char *input, unsigned char *output, int len);
hash.c: ^
hash.c: 1 warning generated.
luffa512.s: <instantiation>:1:8: error: unknown token in expression
luffa512.s: pshufb %xmm10, maskShufLittleEndian
luffa512.s: ^
luffa512.s: <instantiation>:1:1: note: while in macro instantiation
luffa512.s: mPSSTEPI %xmm10, %xmm11, maskShufLittleEndian
luffa512.s: ^
luffa512.s: luffa512.s:449:2: note: while in macro instantiation
luffa512.s: mPS %xmm10, %xmm11, %xmm12, %xmm13, %xmm14, %xmm15
luffa512.s: ^
luffa512.s: <instantiation>:2:9: error: unknown token in expression
luffa512.s: pshufb %xmm11, maskShufLittleEndian
luffa512.s: ^
luffa512.s: <instantiation>:1:1: note: while in macro instantiation
luffa512.s: mPSSTEPI %xmm10, %xmm11, maskShufLittleEndian
luffa512.s: ^
luffa512.s: luffa512.s:449:2: note: while in macro instantiation
luffa512.s: mPS %xmm10, %xmm11, %xmm12, %xmm13, %xmm14, %xmm15
luffa512.s: ^
luffa512.s: <instantiation>:1:8: error: unknown token in expression
luffa512.s: movdqa %xmm12, %xmm10
luffa512.s: ^
luffa512.s: <instantiation>:2:2: note: while in macro instantiation
luffa512.s: mPSSTEPII %xmm10, %xmm11, %xmm12, %xmm13, %xmm14, %xmm15
luffa512.s: ^
luffa512.s: luffa512.s:449:2: note: while in macro instantiation
luffa512.s: ...

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:thomaz/asm-PSPar-v2-INT
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:thomaz/asm-PSPar-v2-INT
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:thomaz/asm-PSPar-v2-INT
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:thomaz/asm-PSPar-v2-INT
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:thomaz/asm-PSPar-v2-INT

Compiler output

Implementation: T:thomaz/asm-PSPar-v2-INT
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
hash.c: hash.c: In function 'crypto_hash_luffa512_thomaz_asm_PSPar_v2_INT_timingleaks':
hash.c: hash.c:32:19: warning: passing argument 1 of 'fLuffa512' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
hash.c: 32 | fLuffa512(in, out, inlen);
hash.c: | ^~
hash.c: hash.c:29:31: note: expected 'unsigned char *' but argument is of type 'const unsigned char *'
hash.c: 29 | void fLuffa512(unsigned char *input, unsigned char *output, int len);
hash.c: | ~~~~~~~~~~~~~~~^~~~~
try.c: /usr/bin/ld: libcrypto_hash_luffa512.a(luffa512.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIE
try.c: /usr/bin/ld: failed to set dynamic section sizes: bad value
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:thomaz/asm-PSPar-v2-INT
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:thomaz/asm-PSPar-v2-INT
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:thomaz/asm-PSPar-v2-INT
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:thomaz/asm-PSPar-v2-INT