Implementation notes: amd64, waldorf, crypto_hash/mgrostl256

Computer: waldorf
Architecture: amd64
CPU ID: GenuineIntel-000106e5-bfebfbff
SUPERCOP version: 20160715
Operation: crypto_hash
Primitive: mgrostl256
TimeImplementationCompilerBenchmark dateSUPERCOP version
85672opt-64gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016071820160715
87940opt-64gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016071820160715
90252opt-64gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016071820160715
95872opt-64gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016071820160715
153976opt-32gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016071820160715
159900opt-32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016071820160715
174620opt-32gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016071820160715
177836opt-32clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016071820160715
179720opt-32gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016071820160715
3925248refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016071820160715
5994952refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016071820160715
6265624refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016071820160715
6743672refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016071820160715
8048568refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016071820160715

Compiler output

Implementation: crypto_hash/mgrostl256/opt-64
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
hash.c: hash.c:239:3: warning: non-constant static local variable in inline function may be different in different files [-Wstatic-local-in-inline]
hash.c: static u64 y[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:238:1: note: use 'static' to give inline function 'F1024' internal linkage
hash.c: inline void F1024(u64 *h, const u64 *m) {
hash.c: ^
hash.c: static
hash.c: hash.c:240:3: warning: non-constant static local variable in inline function may be different in different files [-Wstatic-local-in-inline]
hash.c: static u64 z[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:238:1: note: use 'static' to give inline function 'F1024' internal linkage
hash.c: inline void F1024(u64 *h, const u64 *m) {
hash.c: ^
hash.c: static
hash.c: hash.c:241:3: warning: non-constant static local variable in inline function may be different in different files [-Wstatic-local-in-inline]
hash.c: static u64 outQ[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:238:1: note: use 'static' to give inline function 'F1024' internal linkage
hash.c: inline void F1024(u64 *h, const u64 *m) {
hash.c: ^
hash.c: static
hash.c: hash.c:242:3: warning: non-constant static local variable in inline function may be different in different files [-Wstatic-local-in-inline]
hash.c: static u64 inP[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:238:1: note: use 'static' to give inline function 'F1024' internal linkage
hash.c: ...
try.c: crypto_hash_mgrostl256.a(hash.o): In function `Transform':
try.c: hash.c:(.text+0x...): undefined reference to `F512'
try.c: crypto_hash_mgrostl256.a(hash.o): In function `Update':
try.c: hash.c:(.text+0x...): undefined reference to `F512'
try.c: hash.c:(.text+0x...): undefined reference to `F512'
try.c: crypto_hash_mgrostl256.a(hash.o): In function `Final':
try.c: hash.c:(.text+0x...): undefined reference to `F512'
try.c: hash.c:(.text+0x...): undefined reference to `F512'
try.c: clang: error: linker command failed with exit code 1 (use -v to see invocation)

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