Implementation notes: amd64, sliver, crypto_hash/shavite3256

Computer: sliver
Architecture: amd64
CPU ID: GenuineIntel-00040651-bfebfbff
SUPERCOP version: 20160731
Operation: crypto_hash
Primitive: shavite3256
TimeImplementationCompilerBenchmark dateSUPERCOP version
49656sphlib-smallgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072420160718
76578sphlibclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016072420160718
77184sphlibgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072420160718
85716sphlib-smallclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016072420160718
86028sphlib-smallgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072420160718
90162sphlibgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072420160718
93240sphlibgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072420160718
98196sphlib-smallgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072420160718
116154sphlibgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072420160718
119646sphlib-smallgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072420160718

Compiler output

Implementation: crypto_hash/shavite3256/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: 5, namely:
CompilerImplementations
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments 8-bit low-mem lower-mem new-aes-round no-salt

Compiler output

Implementation: crypto_hash/shavite3256/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:17:
hash.c: ./compress.h:99:9: error: invalid operand for instruction
hash.c: asm ("movaps xmm0, [SHAVITE_PTXT]");
hash.c: ^
hash.c: gt;:1:15: note: instantiated into assembly here
hash.c: movaps xmm0, [SHAVITE_PTXT]
hash.c: ^~~~~~~~~~~~~~
hash.c: In file included from hash.c:4:
hash.c: In file included from ./SHA3api_ref.h:17:
hash.c: ./compress.h:100:9: error: invalid operand for instruction
hash.c: asm ("movaps xmm1, [SHAVITE_PTXT+16]");
hash.c: ^
hash.c: gt;:1:15: note: instantiated into assembly here
hash.c: movaps xmm1, [SHAVITE_PTXT+16]
hash.c: ^~~~~~~~~~~~~~~~~
hash.c: In file included from hash.c:4:
hash.c: In file included from ./SHA3api_ref.h:17:
hash.c: ./compress.h:101:9: error: invalid operand for instruction
hash.c: asm ("movaps xmm3, [SHAVITE_CNTS]");
hash.c: ^
hash.c: gt;:1:15: note: instantiated into assembly here
hash.c: movaps xmm3, [SHAVITE_CNTS]
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/shavite3256/sphlib
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
try.c: /tmp/try-anything-2a2987.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-32ea28.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/shavite3256/sphlib-small
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
try.c: /tmp/try-anything-ec194e.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-5969c9.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/shavite3256/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: 20, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv 8-bit low-mem lower-mem new-aes-round no-salt
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv 8-bit low-mem lower-mem new-aes-round no-salt
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv 8-bit low-mem lower-mem new-aes-round no-salt
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv 8-bit low-mem lower-mem new-aes-round no-salt

Compiler output

Implementation: crypto_hash/shavite3256/sphlib
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
try.c: /tmp//ccKf7J2X.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//ccyJuj8k.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/shavite3256/sphlib-small
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
try.c: /tmp//ccmVixCH.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//ccl6su2n.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/shavite3256/aes-instruct
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
try.c: /usr/bin/ld: crypto_hash_shavite3256.a(hash.o): relocation R_X86_64_32S against `SHAVITE_PTXT' can not be used when making a shared object; recompile with -fPIC
try.c: crypto_hash_shavite3256.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/shavite3256/sphlib-small
Compiler: gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
try.c: /tmp//ccDLp0C5.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//ccXxIxJV.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/shavite3256/sphlib
Compiler: gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
try.c: /tmp//ccbqBxvB.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//cc37SA2v.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/shavite3256/sphlib-small
Compiler: gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv
try.c: /tmp//ccaXoVTy.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//ccxWeFHH.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/shavite3256/sphlib
Compiler: gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv
try.c: /tmp//ccf1MgV9.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//ccW5XWjB.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/shavite3256/sphlib
Compiler: gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv
try.c: /tmp//ccMYo5cq.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//ccjD2D5F.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/shavite3256/sphlib-small
Compiler: gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv
try.c: /tmp//ccvpRq5l.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//ccZSKlbU.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