Implementation notes: amd64, devoptimis, crypto_hash/luffa384

Computer: devoptimis
Architecture: amd64
CPU ID: GenuineIntel-000206c2-bfebfbff
SUPERCOP version: 20190910
Operation: crypto_hash
Primitive: luffa384
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
2706110770 0 020917 768 1392sse2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019100320190910
3732211584 0 024030 776 1392sse2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019100320190910
433149019 0 018281 752 1360sse2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019100320190910
4801910301 0 020525 768 1392sse2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019100320190910
5813521137 320 033662 1104 808opt32gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019100320190910
7509810317 320 020613 1096 808opt32gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019100320190910
804069202 320 018545 1080 776opt32gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019100320190910
12744310460 320 020685 1096 808opt32gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019100320190910

Compiler output

Implementation: sse2_x64asm
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.c: /usr/bin/ld: crypto_hash_luffa384.a(luffa_x64asm.o): relocation R_X86_64_32S against symbol `IV' can not be used when making a PIE object; recompile with -fPIC
try.c: /usr/bin/ld: final link failed: Nonrepresentable section on output
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 sse2_x64asm
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE sse2_x64asm
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE sse2_x64asm
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE sse2_x64asm
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE sse2_x64asm-2
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE sse2_x64asm-2
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE sse2_x64asm-2
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE sse2_x64asm-2
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE ssse3_x64asm
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE ssse3_x64asm
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE ssse3_x64asm
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE ssse3_x64asm
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE ssse3_x64asm-2
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE ssse3_x64asm-2
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE ssse3_x64asm-2
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE ssse3_x64asm-2

Compiler output

Implementation: ssse3_x64asm-PS
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.c: /usr/bin/ld: crypto_hash_luffa384.a(luffa256_x64asm.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
try.c: /usr/bin/ld: crypto_hash_luffa384.a(luffa384_x64asm.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
try.c: /usr/bin/ld: crypto_hash_luffa384.a(luffa512_x64asm.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
try.c: /usr/bin/ld: final link failed: Nonrepresentable section on output
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 ssse3_x64asm-PS
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE ssse3_x64asm-PS
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE ssse3_x64asm-PS
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE ssse3_x64asm-PS
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE ssse3_x64asm-PS-2
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE ssse3_x64asm-PS-2
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE ssse3_x64asm-PS-2
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE ssse3_x64asm-PS-2

Compiler output

Implementation: thomaz/asm-PS
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
hash.c: hash.c: In function 'crypto_hash_luffa384_thomaz_asm_PS':
hash.c: hash.c:32:12: warning: passing argument 1 of 'fLuffa384' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
hash.c: fLuffa384(in, out, inlen);
hash.c: ^~
hash.c: hash.c:29:6: note: expected 'unsigned char *' but argument is of type 'const unsigned char *'
hash.c: void fLuffa384(unsigned char *input, unsigned char *output, int len);
hash.c: ^~~~~~~~~
try.c: /usr/bin/ld: crypto_hash_luffa384.a(luffa_384.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
try.c: /usr/bin/ld: final link failed: Nonrepresentable section on output
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 thomaz/asm-PS
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE thomaz/asm-PS
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE thomaz/asm-PS
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE thomaz/asm-PS

Compiler output

Implementation: thomaz/asm-PS-v2-FP
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
hash.c: hash.c: In function 'crypto_hash_luffa384_thomaz_asm_PS_v2_FP':
hash.c: hash.c:32:12: warning: passing argument 1 of 'fLuffa384' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
hash.c: fLuffa384(in, out, inlen);
hash.c: ^~
hash.c: hash.c:29:6: note: expected 'unsigned char *' but argument is of type 'const unsigned char *'
hash.c: void fLuffa384(unsigned char *input, unsigned char *output, int len);
hash.c: ^~~~~~~~~
try.c: /usr/bin/ld: crypto_hash_luffa384.a(luffa_384.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
try.c: /usr/bin/ld: final link failed: Nonrepresentable section on output
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 thomaz/asm-PS-v2-FP
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE thomaz/asm-PS-v2-FP
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE thomaz/asm-PS-v2-FP
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE thomaz/asm-PS-v2-FP

Compiler output

Implementation: thomaz/asm-PS-v2-INT
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
hash.c: hash.c: In function 'crypto_hash_luffa384_thomaz_asm_PS_v2_INT':
hash.c: hash.c:32:12: warning: passing argument 1 of 'fLuffa384' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
hash.c: fLuffa384(in, out, inlen);
hash.c: ^~
hash.c: hash.c:29:6: note: expected 'unsigned char *' but argument is of type 'const unsigned char *'
hash.c: void fLuffa384(unsigned char *input, unsigned char *output, int len);
hash.c: ^~~~~~~~~
try.c: /usr/bin/ld: crypto_hash_luffa384.a(luffa_384.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
try.c: /usr/bin/ld: final link failed: Nonrepresentable section on output
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 thomaz/asm-PS-v2-INT
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE thomaz/asm-PS-v2-INT
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE thomaz/asm-PS-v2-INT
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE thomaz/asm-PS-v2-INT

Compiler output

Implementation: thomaz/asm-PSPar-v2-FP
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
hash.c: hash.c: In function 'crypto_hash_luffa384_thomaz_asm_PSPar_v2_FP':
hash.c: hash.c:32:12: warning: passing argument 1 of 'fLuffa384' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
hash.c: fLuffa384(in, out, inlen);
hash.c: ^~
hash.c: hash.c:29:6: note: expected 'unsigned char *' but argument is of type 'const unsigned char *'
hash.c: void fLuffa384(unsigned char *input, unsigned char *output, int len);
hash.c: ^~~~~~~~~
try.c: /usr/bin/ld: crypto_hash_luffa384.a(luffa384.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
try.c: /usr/bin/ld: final link failed: Nonrepresentable section on output
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 thomaz/asm-PSPar-v2-FP
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE thomaz/asm-PSPar-v2-FP
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE thomaz/asm-PSPar-v2-FP
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE thomaz/asm-PSPar-v2-FP

Compiler output

Implementation: thomaz/asm-PSPar-v2-INT
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
hash.c: hash.c: In function 'crypto_hash_luffa384_thomaz_asm_PSPar_v2_INT':
hash.c: hash.c:32:12: warning: passing argument 1 of 'fLuffa384' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
hash.c: fLuffa384(in, out, inlen);
hash.c: ^~
hash.c: hash.c:29:6: note: expected 'unsigned char *' but argument is of type 'const unsigned char *'
hash.c: void fLuffa384(unsigned char *input, unsigned char *output, int len);
hash.c: ^~~~~~~~~
try.c: /usr/bin/ld: crypto_hash_luffa384.a(luffa384.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
try.c: /usr/bin/ld: final link failed: Nonrepresentable section on output
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 thomaz/asm-PSPar-v2-INT
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE thomaz/asm-PSPar-v2-INT
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE thomaz/asm-PSPar-v2-INT
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE thomaz/asm-PSPar-v2-INT

Namespace violations

Implementation: opt32
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
luffa_for_32.o CNS D
luffa_for_32.o Final T
luffa_for_32.o Hash T
luffa_for_32.o IV R
luffa_for_32.o Init T
luffa_for_32.o Update T
luffa_for_32.o Update256 T
luffa_for_32.o Update384 T
luffa_for_32.o Update512 T
luffa_for_32.o finalization224 T
luffa_for_32.o finalization256 T
luffa_for_32.o finalization384 T
luffa_for_32.o finalization512 T
luffa_for_32.o process_last_msgs256 T
luffa_for_32.o process_last_msgs384 T
luffa_for_32.o process_last_msgs512 T
luffa_for_32.o rnd256 T
luffa_for_32.o rnd384 T
luffa_for_32.o rnd512 T

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

Namespace violations

Implementation: sse2
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
luffa_for_sse2.o ALLONE C
luffa_for_sse2.o CNS128 C
luffa_for_sse2.o Final T
luffa_for_sse2.o Hash T
luffa_for_sse2.o Init T
luffa_for_sse2.o MASK C
luffa_for_sse2.o Update T

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