Implementation notes: amd64, floodyberry, crypto_hash/shavite3256

Computer: floodyberry
Architecture: amd64
CPU ID: GenuineIntel-00010676-bfebfbff
SUPERCOP version: 20140505
Operation: crypto_hash
Primitive: shavite3256
TimeImplementationCompilerBenchmark dateSUPERCOP version
32362sphlibicc -m64 -O3 -static -xHost -fomit-frame-pointer2014050820140505
32687low-memicc -m64 -O3 -static -xHost -fomit-frame-pointer2014050820140505
33962no-salticc -m64 -O3 -static -xHost -fomit-frame-pointer2014050820140505
34025sphlibicc -m64 -O1 -static -xHost -fomit-frame-pointer2014050820140505
34150new-aes-roundicc -m64 -O3 -static -xHost -fomit-frame-pointer2014050820140505
34875sphlib-smallicc -m64 -O3 -static -xHost -fomit-frame-pointer2014050820140505
36150sphlibclang -O1 -march=native -m64 -fomit-frame-pointer2014050820140505
37575sphlib-smallicc -m64 -O1 -static -xHost -fomit-frame-pointer2014050820140505
40038sphlib-smallclang -O1 -march=native -m64 -fomit-frame-pointer2014050820140505
40238low-memicc -m64 -O1 -static -xHost -fomit-frame-pointer2014050820140505
40713no-saltclang -O1 -march=native -m64 -fomit-frame-pointer2014050820140505
40725lower-memicc -m64 -O3 -static -xHost -fomit-frame-pointer2014050820140505
41000low-memclang -O1 -march=native -m64 -fomit-frame-pointer2014050820140505
41262new-aes-roundclang -O1 -march=native -m64 -fomit-frame-pointer2014050820140505
41375no-salticc -m64 -O1 -static -xHost -fomit-frame-pointer2014050820140505
41450new-aes-roundicc -m64 -O1 -static -xHost -fomit-frame-pointer2014050820140505
41513sphlibgcc -m64 -O3 -fomit-frame-pointer2014050820140505
41537sphlibgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050820140505
41562sphlibgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050820140505
41588sphlibgcc -m64 -O2 -fomit-frame-pointer2014050820140505
41687sphlib-smallgcc -m64 -O3 -fomit-frame-pointer2014050820140505
41687sphlib-smallgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050820140505
43613no-saltgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050820140505
44025no-saltgcc -m64 -O3 -fomit-frame-pointer2014050820140505
44038sphlib-smallgcc -m64 -O2 -fomit-frame-pointer2014050820140505
44075sphlib-smallgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050820140505
44750new-aes-roundgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050820140505
45350lower-memclang -O1 -march=native -m64 -fomit-frame-pointer2014050820140505
45413new-aes-roundgcc -m64 -O3 -fomit-frame-pointer2014050820140505
46675low-memgcc -m64 -O2 -fomit-frame-pointer2014050820140505
46750low-memgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050820140505
46863new-aes-roundgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050820140505
46937new-aes-roundgcc -m64 -O2 -fomit-frame-pointer2014050820140505
47488low-memgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050820140505
48412low-memgcc -m64 -O3 -fomit-frame-pointer2014050820140505
49025lower-memgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050820140505
49513no-saltgcc -m64 -O2 -fomit-frame-pointer2014050820140505
49562no-saltgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050820140505
49800lower-memgcc -m64 -O3 -fomit-frame-pointer2014050820140505
50475lower-memicc -m64 -O1 -static -xHost -fomit-frame-pointer2014050820140505
51375lower-memgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050820140505
51425lower-memgcc -m64 -O2 -fomit-frame-pointer2014050820140505
1527128-bitgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050820140505
1540138-bitgcc -m64 -O3 -fomit-frame-pointer2014050820140505
1574388-bitgcc -m64 -O2 -fomit-frame-pointer2014050820140505
1577508-bitgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050820140505
1805008-biticc -m64 -O3 -static -xHost -fomit-frame-pointer2014050820140505
3424128-biticc -m64 -O1 -static -xHost -fomit-frame-pointer2014050820140505
5690008-bitclang -O1 -march=native -m64 -fomit-frame-pointer2014050820140505

Test failure

Implementation: crypto_hash/shavite3256/8-bit
Compiler: clang -O3 -march=native -m64 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 7, namely:
CompilerImplementations
clang -O3 -march=native -m64 -fomit-frame-pointer 8-bit low-mem lower-mem new-aes-round no-salt sphlib sphlib-small

Compiler output

Implementation: crypto_hash/shavite3256/8-bit
Compiler: clang -O1 -march=native -m64 -fomit-frame-pointer
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: 2 warnings generated.

Number of similar (compiler,implementation) pairs: 10, namely:
CompilerImplementations
clang -O1 -march=native -m64 -fomit-frame-pointer 8-bit low-mem lower-mem new-aes-round no-salt
clang -O3 -march=native -m64 -fomit-frame-pointer 8-bit low-mem lower-mem new-aes-round no-salt

Compiler output

Implementation: crypto_hash/shavite3256/aes-instruct
Compiler: clang -O1 -march=native -m64 -fomit-frame-pointer
hash.c: hash.c:8:6: error: use of undeclared identifier 'crypto_hash_BYTES'
hash.c: Hash(crypto_hash_BYTES*8,in,inlen*8,out);
hash.c: ^
hash.c: 1 error generated.

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -O1 -march=native -m64 -fomit-frame-pointer aes-instruct
clang -O3 -march=native -m64 -fomit-frame-pointer aes-instruct

Compiler output

Implementation: crypto_hash/shavite3256/8-bit
Compiler: gcc -m64 -O2 -fomit-frame-pointer
SHAvite3.c: In file included from SHAvite3.c:11:0:
SHAvite3.c: portable.h:109:2: warning: #warning NEITHER NESSIE_LITTLE_ENDIAN NOR NESSIE_BIG_ENDIAN ARE DEFINED!!!!! [-Wcpp]

Number of similar (compiler,implementation) pairs: 20, namely:
CompilerImplementations
gcc -m64 -O2 -fomit-frame-pointer 8-bit low-mem lower-mem new-aes-round no-salt
gcc -m64 -O3 -fomit-frame-pointer 8-bit low-mem lower-mem new-aes-round no-salt
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer 8-bit low-mem lower-mem new-aes-round no-salt
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer 8-bit low-mem lower-mem new-aes-round no-salt

Compiler output

Implementation: crypto_hash/shavite3256/aes-instruct
Compiler: gcc -m64 -O2 -fomit-frame-pointer
hash.c: hash.c: In function 'crypto_hash':
hash.c: hash.c:8:6: error: 'crypto_hash_BYTES' undeclared (first use in this function)
hash.c: hash.c:8:6: note: each undeclared identifier is reported only once for each function it appears in

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

Compiler output

Implementation: crypto_hash/shavite3256/aes-instruct
Compiler: icc -m64 -O1 -static -xHost -fomit-frame-pointer
hash.c: hash.c(8): error: identifier "crypto_hash_BYTES" is undefined
hash.c: Hash(crypto_hash_BYTES*8,in,inlen*8,out);
hash.c: ^
hash.c:
hash.c: compilation aborted for hash.c (code 2)

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
icc -m64 -O1 -static -xHost -fomit-frame-pointer aes-instruct
icc -m64 -O3 -static -xHost -fomit-frame-pointer aes-instruct