Implementation notes: x86, thoth, crypto_hash/nasha512

Computer: thoth
Architecture: x86
CPU ID: AuthenticAMD-00000622-0183f9ff
SUPERCOP version: 20160806
Operation: crypto_hash
Primitive: nasha512
TimeImplementationCompilerBenchmark dateSUPERCOP version
35203opt_v4clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016072620160724
42171opt_v4gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072620160724
42177opt_v4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072620160724
42369opt_v4gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072620160724
44102opt_v4gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072620160724
45027optgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072620160724
46096optgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072620160724
52050optclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016072620160724
55962optgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072620160724
65918optgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072620160724

Compiler output

Implementation: crypto_hash/nasha512/opt
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
Nasha.c: Nasha.c:627:1: warning: control may reach end of non-void function [-Wreturn-type]
Nasha.c: }
Nasha.c: ^
Nasha.c: Nasha.c:646:1: warning: control may reach end of non-void function [-Wreturn-type]
Nasha.c: }
Nasha.c: ^
Nasha.c: 2 warnings generated.

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

Compiler output

Implementation: crypto_hash/nasha512/opt_v4
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
Nasha.c: Nasha.c:815:29: warning: incompatible pointer to integer conversion assigning to 'uint_16t' (aka 'unsigned short') from 'uint_16t [256]' [-Wint-conversion]
Nasha.c: ssbox[i][j] = ssbox[i^j];
Nasha.c: ^ ~~~~~~~~~~
Nasha.c: Nasha.c:854:1: warning: control may reach end of non-void function [-Wreturn-type]
Nasha.c: }
Nasha.c: ^
Nasha.c: Nasha.c:873:1: warning: control may reach end of non-void function [-Wreturn-type]
Nasha.c: }
Nasha.c: ^
Nasha.c: 3 warnings generated.

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

Compiler output

Implementation: crypto_hash/nasha512/opt_v4
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
Nasha.c: Nasha.c: In function 'Init':
Nasha.c: Nasha.c:815:29: warning: assignment makes integer from pointer without a cast [-Wint-conversion]
Nasha.c: ssbox[i][j] = ssbox[i^j];
Nasha.c: ^

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