Implementation notes: amd64, tueisecgern, crypto_hash/blake512

Computer: tueisecgern
Architecture: amd64
CPU ID: GenuineIntel-000306f2-bfebfbff
SUPERCOP version: 20160724
Operation: crypto_hash
Primitive: blake512
TimeImplementationCompilerBenchmark dateSUPERCOP version
8894avxiccgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072220160718
8918avxiccgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072220160718
9090sse41gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072220160718
9157sse41gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072220160718
9482vect128gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072220160718
9583bswapgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072220160718
9598bswapgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072220160718
9651vect128-inplacegcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072220160718
10629regsgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072220160718
12773sphlib-smallgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072220160718
14886sse41gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072220160718
15536bswapgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072220160718
15879avxiccgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072220160718
16075sphlibgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072220160718
16876bswapgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072220160718
17060vect128gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072220160718
17275sphlibgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072220160718
17388sse41gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072220160718
17670vect128gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072220160718
17818avxiccgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072220160718
17937sse2gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072220160718
18277vect128-inplacegcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072220160718
18397sse2gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072220160718
18566vect128gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072220160718
18587vect128-inplacegcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072220160718
18602sandygcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072220160718
18701sphlibgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072220160718
18707sandygcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072220160718
18713sphlibgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072220160718
18719vect128-inplacegcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072220160718
19308regsgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072220160718
19642regsgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072220160718
20068ssse3gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072220160718
20081sandygcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072220160718
20178sphlib-smallgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072220160718
20301sandygcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072220160718
20804sse2gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072220160718
20865sphlib-smallgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072220160718
20878ssse3gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072220160718
21221sse2gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072220160718
21767ssse3gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072220160718
22031regsgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072220160718
22205sphlib-smallgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072220160718
22285ssse3gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072220160718
23021sse2sgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072220160718
23034refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072220160718
23074sse2sgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072220160718
23632refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072220160718
23770sse2sgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072220160718
23886sse2sgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072220160718
24095refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072220160718
25254refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072220160718

Compiler output

Implementation: crypto_hash/blake512/xop
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
hash.c: hash.c: In function 'blake512_compress':
hash.c: hash.c:81:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: m0 = BSWAP64(m0);
hash.c: ^
hash.c: hash.c:82:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: m1 = BSWAP64(m1);
hash.c: ^
hash.c: hash.c:83:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: m2 = BSWAP64(m2);
hash.c: ^
hash.c: hash.c:84:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: m3 = BSWAP64(m3);
hash.c: ^
hash.c: hash.c:85:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: m4 = BSWAP64(m4);
hash.c: ^
hash.c: hash.c:86:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: m5 = BSWAP64(m5);
hash.c: ^
hash.c: hash.c:87:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: m6 = BSWAP64(m6);
hash.c: ^
hash.c: hash.c:88:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: m7 = BSWAP64(m7);
hash.c: ^
hash.c: ...

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

Compiler output

Implementation: crypto_hash/blake512/xop-2
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
hash.c: hash.c: In function 'blake512_compress':
hash.c: hash.c:92:13: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: m.u128[0] = BSWAP64(m.u128[0]);
hash.c: ^
hash.c: hash.c:93:13: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: m.u128[1] = BSWAP64(m.u128[1]);
hash.c: ^
hash.c: hash.c:94:13: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: m.u128[2] = BSWAP64(m.u128[2]);
hash.c: ^
hash.c: hash.c:95:13: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: m.u128[3] = BSWAP64(m.u128[3]);
hash.c: ^
hash.c: hash.c:96:13: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: m.u128[4] = BSWAP64(m.u128[4]);
hash.c: ^
hash.c: hash.c:97:13: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: m.u128[5] = BSWAP64(m.u128[5]);
hash.c: ^
hash.c: hash.c:98:13: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: m.u128[6] = BSWAP64(m.u128[6]);
hash.c: ^
hash.c: hash.c:99:13: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: m.u128[7] = BSWAP64(m.u128[7]);
hash.c: ^
hash.c: ...

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

Compiler output

Implementation: crypto_hash/blake512/vect128-xop
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
vector.c: In file included from vector.c:7:0:
vector.c: vector.c: In function 'round512':
vector.c: vector.h:38:18: error: incompatible types when initializing type 'v64' using type 'int'
vector.c: #define V3264(x) (x)
vector.c: ^
vector.c: vector.h:202:18: note: in expansion of macro 'V3264'
vector.c: #define V864(x) V3264((V1632(V816(x))))
vector.c: ^
vector.c: vector.h:153:22: note: in expansion of macro 'V864'
vector.c: #define v64_lswap(x) V864(vector_shuffle(V648(x), v64_swap_endianness.v8))
vector.c: ^
vector.c: vector.c:646:13: note: in expansion of macro 'v64_lswap'
vector.c: v64 mm0 = v64_lswap(MM[0]), mm1 = v64_lswap(MM[1]);
vector.c: ^
vector.c: vector.h:38:18: error: incompatible types when initializing type 'v64' using type 'int'
vector.c: #define V3264(x) (x)
vector.c: ^
vector.c: vector.h:202:18: note: in expansion of macro 'V3264'
vector.c: #define V864(x) V3264((V1632(V816(x))))
vector.c: ^
vector.c: vector.h:153:22: note: in expansion of macro 'V864'
vector.c: #define v64_lswap(x) V864(vector_shuffle(V648(x), v64_swap_endianness.v8))
vector.c: ^
vector.c: vector.c:646:37: note: in expansion of macro 'v64_lswap'
vector.c: v64 mm0 = v64_lswap(MM[0]), mm1 = v64_lswap(MM[1]);
vector.c: ...

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