Implementation notes: amd64, sliver, crypto_hash/shavite3512

Computer: sliver
Architecture: amd64
CPU ID: GenuineIntel-00040651-bfebfbff
SUPERCOP version: 20160731
Operation: crypto_hash
Primitive: shavite3512
TimeImplementationCompilerBenchmark dateSUPERCOP version
116292sphlibgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072420160718
122658sphlib-smallgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072420160718
127392sphlib-smallgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072420160718
141156sphlibclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016072420160718
152460sphlibgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072420160718
153120sphlibgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072420160718
156162sphlib-smallgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072420160718
162426sphlib-smallclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016072420160718
190956sphlib-smallgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072420160718
193770sphlibgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072420160718

Compiler output

Implementation: crypto_hash/shavite3512/8-bit
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
SHAvite3.c: In file included from SHAvite3.c:11:
SHAvite3.c: ./portable.h:109:2: warning: NEITHER NESSIE_LITTLE_ENDIAN NOR NESSIE_BIG_ENDIAN ARE DEFINED!!!!! [-W#warnings]
SHAvite3.c: #warning NEITHER NESSIE_LITTLE_ENDIAN NOR NESSIE_BIG_ENDIAN ARE DEFINED!!!!!
SHAvite3.c: ^
SHAvite3.c: ./portable.h:510:1: warning: '/*' within block comment [-Wcomment]
SHAvite3.c: /* "x++" is passed as an argument, thus increasing x 4 times instead of one */
SHAvite3.c: ^
SHAvite3.c: ./portable.h:511:19: error: expected identifier or '('
SHAvite3.c: static inline u32 swap32(u32 x)
SHAvite3.c: ^
SHAvite3.c: /usr/include/sys/endian.h:71:19: note: expanded from macro 'swap32'
SHAvite3.c: #define swap32(x) __swap32(x)
SHAvite3.c: ^
SHAvite3.c: /usr/include/sys/_endian.h:117:21: note: expanded from macro '__swap32'
SHAvite3.c: #define __swap32(x) __statement({ \
SHAvite3.c: ^
SHAvite3.c: /usr/include/sys/cdefs.h:227:24: note: expanded from macro '__statement'
SHAvite3.c: #define __statement(x) __extension__(x)
SHAvite3.c: ^
SHAvite3.c: In file included from SHAvite3.c:11:
SHAvite3.c: ./portable.h:522:9: warning: 'ntohl' macro redefined
SHAvite3.c: #define ntohl(x) (x)
SHAvite3.c: ^
SHAvite3.c: /usr/include/sys/endian.h:98:9: note: previous definition is here
SHAvite3.c: #define ntohl(x) __htobe32(x)
SHAvite3.c: ...

Number of similar (compiler,implementation) pairs: 7, namely:
CompilerImplementations
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments 8-bit IntelL1Cache different-order low-mem lower-mem new-aes-round no-salt

Compiler output

Implementation: crypto_hash/shavite3512/aes-instruct
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
hash.c: In file included from hash.c:4:
hash.c: In file included from ./SHA3api_ref.h:13:
hash.c: ./compress.h:140:9: error: invalid operand for instruction
hash.c: asm ("movaps xmm0, [SHAVITE512_PTXT]");
hash.c: ^
hash.c: gt;:1:15: note: instantiated into assembly here
hash.c: movaps xmm0, [SHAVITE512_PTXT]
hash.c: ^~~~~~~~~~~~~~~~~
hash.c: In file included from hash.c:4:
hash.c: In file included from ./SHA3api_ref.h:13:
hash.c: ./compress.h:141:9: error: invalid operand for instruction
hash.c: asm ("movaps xmm1, [SHAVITE512_PTXT+16]");
hash.c: ^
hash.c: gt;:1:15: note: instantiated into assembly here
hash.c: movaps xmm1, [SHAVITE512_PTXT+16]
hash.c: ^~~~~~~~~~~~~~~~~~~~
hash.c: In file included from hash.c:4:
hash.c: In file included from ./SHA3api_ref.h:13:
hash.c: ./compress.h:142:9: error: invalid operand for instruction
hash.c: asm ("movaps xmm2, [SHAVITE512_PTXT+32]");
hash.c: ^
hash.c: gt;:1:15: note: instantiated into assembly here
hash.c: movaps xmm2, [SHAVITE512_PTXT+32]
hash.c: ^~~~~~~~~~~~~~~~~~~~
hash.c: In file included from hash.c:4:
hash.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments aes-instruct

Compiler output

Implementation: crypto_hash/shavite3512/sphlib-small
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
try.c: /tmp/try-anything-7053e4.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /tmp/try-anything-73082b.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments sphlib-small

Compiler output

Implementation: crypto_hash/shavite3512/sphlib
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
try.c: /tmp/try-anything-7ab647.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /tmp/try-anything-da5b28.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments sphlib

Compiler output

Implementation: crypto_hash/shavite3512/8-bit
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
SHAvite3.c: In file included from SHAvite3.c:11:
SHAvite3.c: portable.h:109:2: warning: #warning NEITHER NESSIE_LITTLE_ENDIAN NOR NESSIE_BIG_ENDIAN ARE DEFINED!!!!!
SHAvite3.c: In file included from SHAvite3.c:11:
SHAvite3.c: portable.h:511: error: expected identifier or '(' before '__extension__'
SHAvite3.c: portable.h:511: error: expected identifier or '(' before ')' token
SHAvite3.c: portable.h:522:1: warning: "ntohl" redefined
SHAvite3.c: In file included from /usr/include/sys/types.h:45,
SHAvite3.c: from /usr/include/stdlib.h:41,
SHAvite3.c: from portable.h:128,
SHAvite3.c: from SHAvite3.c:11:
SHAvite3.c: /usr/include/sys/endian.h:98:1: warning: this is the location of the previous definition
SHAvite3.c: In file included from SHAvite3.c:11:
SHAvite3.c: portable.h:523:1: warning: "htonl" redefined
SHAvite3.c: In file included from /usr/include/sys/types.h:45,
SHAvite3.c: from /usr/include/stdlib.h:41,
SHAvite3.c: from portable.h:128,
SHAvite3.c: from SHAvite3.c:11:
SHAvite3.c: /usr/include/sys/endian.h:96:1: warning: this is the location of the previous definition

Number of similar (compiler,implementation) pairs: 28, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv 8-bit IntelL1Cache different-order low-mem lower-mem new-aes-round no-salt
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv 8-bit IntelL1Cache different-order low-mem lower-mem new-aes-round no-salt
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv 8-bit IntelL1Cache different-order low-mem lower-mem new-aes-round no-salt
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv 8-bit IntelL1Cache different-order low-mem lower-mem new-aes-round no-salt

Compiler output

Implementation: crypto_hash/shavite3512/sphlib-small
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
try.c: /tmp//ccpLmbHA.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /tmp//ccru1G5Y.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?

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

Compiler output

Implementation: crypto_hash/shavite3512/sphlib
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
try.c: /tmp//ccu4rAZ6.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /tmp//ccDpfVto.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?

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

Compiler output

Implementation: crypto_hash/shavite3512/aes-instruct
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
try.c: /usr/bin/ld: crypto_hash_shavite3512.a(hash.o): relocation R_X86_64_32S against `SHAVITE512_PTXT' can not be used when making a shared object; recompile with -fPIC
try.c: crypto_hash_shavite3512.a: could not read symbols: Bad value
try.c: collect2: ld returned 1 exit status

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

Compiler output

Implementation: crypto_hash/shavite3512/sphlib
Compiler: gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
try.c: /tmp//ccMidjQR.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /tmp//cccTmwhn.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?

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

Compiler output

Implementation: crypto_hash/shavite3512/sphlib-small
Compiler: gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
try.c: /tmp//ccwbgLuR.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /tmp//ccnjqeGM.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?

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

Compiler output

Implementation: crypto_hash/shavite3512/sphlib
Compiler: gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv
try.c: /tmp//ccOZSe9Y.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /tmp//ccWC7YBW.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?

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

Compiler output

Implementation: crypto_hash/shavite3512/sphlib-small
Compiler: gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv
try.c: /tmp//ccgvfIBb.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /tmp//cccbGPzo.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?

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

Compiler output

Implementation: crypto_hash/shavite3512/sphlib
Compiler: gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv
try.c: /tmp//ccZ3J4eq.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /tmp//cc0U5iWv.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?

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

Compiler output

Implementation: crypto_hash/shavite3512/sphlib-small
Compiler: gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv
try.c: /tmp//ccheIZrl.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /tmp//ccjCs1Oc.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?

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