Implementation notes: amd64, floodyberry, crypto_hash/blake256

Computer: floodyberry
Architecture: amd64
CPU ID: GenuineIntel-00010676-bfebfbff
SUPERCOP version: 20140505
Operation: crypto_hash
Primitive: blake256
TimeImplementationCompilerBenchmark dateSUPERCOP version
14338vect128icc -m64 -O1 -static -xHost -fomit-frame-pointer2014050720140505
14338ssse3icc -m64 -O3 -static -xHost -fomit-frame-pointer2014050720140505
14350ssse3icc -m64 -O1 -static -xHost -fomit-frame-pointer2014050720140505
14475vect128gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050720140505
14487vect128icc -m64 -O3 -static -xHost -fomit-frame-pointer2014050720140505
14488vect128gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050720140505
14612vect128-mmxhackicc -m64 -O1 -static -xHost -fomit-frame-pointer2014050720140505
14638vect128-mmxhackicc -m64 -O3 -static -xHost -fomit-frame-pointer2014050720140505
14950vect128-mmxhackgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050720140505
15050vect128-mmxhackgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050720140505
15775ssse3gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050720140505
15788ssse3gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050720140505
17237sse2icc -m64 -O3 -static -xHost -fomit-frame-pointer2014050720140505
17475sse2-2icc -m64 -O3 -static -xHost -fomit-frame-pointer2014050720140505
17738sse2-2icc -m64 -O1 -static -xHost -fomit-frame-pointer2014050720140505
18225sse2-2gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050720140505
18225sse2icc -m64 -O1 -static -xHost -fomit-frame-pointer2014050720140505
18350sse2-2gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050720140505
18575sse2gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050720140505
18588sse2gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050720140505
18762sse2gcc -m64 -O3 -fomit-frame-pointer2014050720140505
18775sse2-2gcc -m64 -O3 -fomit-frame-pointer2014050720140505
18787sse2gcc -m64 -O2 -fomit-frame-pointer2014050720140505
18863sse2-2gcc -m64 -O2 -fomit-frame-pointer2014050720140505
20487bswapicc -m64 -O3 -static -xHost -fomit-frame-pointer2014050720140505
20538bswapgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050720140505
20613bswapgcc -m64 -O2 -fomit-frame-pointer2014050720140505
20613bswapgcc -m64 -O3 -fomit-frame-pointer2014050720140505
20662bswapgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050720140505
21275sphlibicc -m64 -O3 -static -xHost -fomit-frame-pointer2014050720140505
21288bswapicc -m64 -O1 -static -xHost -fomit-frame-pointer2014050720140505
21312regsicc -m64 -O3 -static -xHost -fomit-frame-pointer2014050720140505
21363sphlibicc -m64 -O1 -static -xHost -fomit-frame-pointer2014050720140505
21813regsgcc -m64 -O2 -fomit-frame-pointer2014050720140505
21825regsgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050720140505
21875regsgcc -m64 -O3 -fomit-frame-pointer2014050720140505
21975regsgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050720140505
22025sphlibgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050720140505
22125sphlibclang -O3 -march=native -m64 -fomit-frame-pointer2014050720140505
22125sphlibgcc -m64 -O2 -fomit-frame-pointer2014050720140505
22138sphlibgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050720140505
22163sphlibgcc -m64 -O3 -fomit-frame-pointer2014050720140505
22250regsicc -m64 -O1 -static -xHost -fomit-frame-pointer2014050720140505
22338bswapclang -O3 -march=native -m64 -fomit-frame-pointer2014050720140505
22375bswapclang -O1 -march=native -m64 -fomit-frame-pointer2014050720140505
23413regsclang -O3 -march=native -m64 -fomit-frame-pointer2014050720140505
23450regsclang -O1 -march=native -m64 -fomit-frame-pointer2014050720140505
24250sphlibclang -O1 -march=native -m64 -fomit-frame-pointer2014050720140505
25463sandyclang -O3 -march=native -m64 -fomit-frame-pointer2014050720140505
25475sandyclang -O1 -march=native -m64 -fomit-frame-pointer2014050720140505
25525sandygcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050720140505
25737sandygcc -m64 -O2 -fomit-frame-pointer2014050720140505
25750sandygcc -m64 -O3 -fomit-frame-pointer2014050720140505
25913sandygcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050720140505
27575sandyicc -m64 -O1 -static -xHost -fomit-frame-pointer2014050720140505
27662sphlib-smallgcc -m64 -O2 -fomit-frame-pointer2014050720140505
27662sphlib-smallgcc -m64 -O3 -fomit-frame-pointer2014050720140505
27687sandyicc -m64 -O3 -static -xHost -fomit-frame-pointer2014050720140505
28225refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050720140505
28375sphlib-smallgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050720140505
28425sphlib-smallgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050720140505
28537refgcc -m64 -O3 -fomit-frame-pointer2014050720140505
29350sphlib-smallicc -m64 -O3 -static -xHost -fomit-frame-pointer2014050720140505
30412reficc -m64 -O3 -static -xHost -fomit-frame-pointer2014050720140505
30600refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050720140505
30637refgcc -m64 -O2 -fomit-frame-pointer2014050720140505
30738sphlib-smallicc -m64 -O1 -static -xHost -fomit-frame-pointer2014050720140505
35925reficc -m64 -O1 -static -xHost -fomit-frame-pointer2014050720140505
38737sphlib-smallclang -O3 -march=native -m64 -fomit-frame-pointer2014050720140505
42938sphlib-smallclang -O1 -march=native -m64 -fomit-frame-pointer2014050720140505
44400refclang -O1 -march=native -m64 -fomit-frame-pointer2014050720140505

Test failure

Implementation: crypto_hash/blake256/avxs
Compiler: clang -O1 -march=native -m64 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 27, namely:
CompilerImplementations
clang -O1 -march=native -m64 -fomit-frame-pointer avxs sse2 sse2-2 sse41 sse41-2 ssse3
clang -O3 -march=native -m64 -fomit-frame-pointer avxs ref sse2 sse2-2 sse41 sse41-2 ssse3
gcc -m64 -O2 -fomit-frame-pointer avxicc
gcc -m64 -O3 -fomit-frame-pointer avxicc
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer avxicc avxs
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer avxicc avxs
icc -m64 -O1 -static -xHost -fomit-frame-pointer avxicc avxs sse41 sse41-2
icc -m64 -O3 -static -xHost -fomit-frame-pointer avxicc avxs sse41 sse41-2

Compiler output

Implementation: crypto_hash/blake256/avxs
Compiler: clang -O1 -march=native -m64 -fomit-frame-pointer
b256.s: clang: warning: argument unused during compilation: '-fomit-frame-pointer'
b256.s: clang: warning: argument unused during compilation: '-D SUPERCOP'
b256.s: clang: warning: argument unused during compilation: '-I .'
b256.s: clang: warning: argument unused during compilation: '-I /home/bloom/supercop-20140505/supercop-data/floodyberry/amd64/include'

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

Compiler output

Implementation: crypto_hash/blake256/xop
Compiler: clang -O1 -march=native -m64 -fomit-frame-pointer
hash.c: hash.c:115:3: warning: implicit declaration of function '_mm_perm_epi8' is invalid in C99 [-Wimplicit-function-declaration]
hash.c: ROUND( 0);
hash.c: ^
hash.c: ./rounds.h:51:3: note: expanded from macro 'ROUND'
hash.c: LOAD_MSG_ ##r ##_1(buf1); \
hash.c: ^
hash.c: gt;:41:1: note: expanded from here
hash.c: LOAD_MSG_0_1
hash.c: ^
hash.c: ./load.xop.h:19:6: note: expanded from macro 'LOAD_MSG_0_1'
hash.c: s0 = _mm_perm_epi8(m0, m1, _mm_set_epi32(TOB(6),TOB(4),TOB(2),TOB(0)) ); \
hash.c: ^
hash.c: hash.c:115:3: error: assigning to '__m128i' from incompatible type 'int'
hash.c: ROUND( 0);
hash.c: ^
hash.c: ./rounds.h:51:3: note: expanded from macro 'ROUND'
hash.c: LOAD_MSG_ ##r ##_1(buf1); \
hash.c: ^
hash.c: gt;:41:1: note: expanded from here
hash.c: LOAD_MSG_0_1
hash.c: ^
hash.c: ./load.xop.h:19:4: note: expanded from macro 'LOAD_MSG_0_1'
hash.c: s0 = _mm_perm_epi8(m0, m1, _mm_set_epi32(TOB(6),TOB(4),TOB(2),TOB(0)) ); \
hash.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c: hash.c:115:3: warning: implicit declaration of function '_mm_roti_epi32' is invalid in C99 [-Wimplicit-function-declaration]
hash.c: ...

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

Compiler output

Implementation: crypto_hash/blake256/avxicc
Compiler: clang -O1 -march=native -m64 -fomit-frame-pointer
hash.s: clang: warning: argument unused during compilation: '-fomit-frame-pointer'
hash.s: clang: warning: argument unused during compilation: '-D SUPERCOP'
hash.s: clang: warning: argument unused during compilation: '-I .'
hash.s: clang: warning: argument unused during compilation: '-I /home/bloom/supercop-20140505/supercop-data/floodyberry/amd64/include'
hash.s: hash.s:217952:59: error: unexpected token in argument list
hash.s: vmovdqu xmm3, XMMWORD PTR .L_2il0floatpacket.113[rip] #287.3
hash.s: ^
hash.s: hash.s:217953:60: error: unexpected token in argument list
hash.s: vmovdqu xmm11, XMMWORD PTR .L_2il0floatpacket.114[rip] #287.3
hash.s: ^
hash.s: hash.s:217993:59: error: unexpected token in argument list
hash.s: vmovdqu xmm0, XMMWORD PTR .L_2il0floatpacket.115[rip] #288.3
hash.s: ^
hash.s: hash.s:217997:59: error: unexpected token in argument list
hash.s: vmovdqu xmm9, XMMWORD PTR .L_2il0floatpacket.116[rip] #288.3
hash.s: ^
hash.s: hash.s:217998:59: error: unexpected token in argument list
hash.s: vmovdqu xmm8, XMMWORD PTR .L_2il0floatpacket.117[rip] #288.3
hash.s: ^
hash.s: hash.s:218005:59: error: unexpected token in argument list
hash.s: vmovdqu xmm3, XMMWORD PTR .L_2il0floatpacket.118[rip] #288.3
hash.s: ^
hash.s: hash.s:218017:66: error: unexpected token in argument list
hash.s: vpxor xmm7, xmm10, XMMWORD PTR .L_2il0floatpacket.119[rip] #288.3
hash.s: ^
hash.s: ...

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

Compiler output

Implementation: crypto_hash/blake256/vect128-mmxhack
Compiler: clang -O1 -march=native -m64 -fomit-frame-pointer
vector.c: vector.c:203:8: error: use of unknown builtin '__builtin_ia32_pshufd' [-Wimplicit-function-declaration]
vector.c: M0 = v32_shufrot(M0,1);
vector.c: ^
vector.c: ./vector.h:151:26: note: expanded from macro 'v32_shufrot'
vector.c: #define v32_shufrot(x,s) v32_shuf(x,XCAT(SHUFROT_,s))
vector.c: ^
vector.c: ./vector.h:140:18: note: expanded from macro 'v32_shuf'
vector.c: #define v32_shuf __builtin_ia32_pshufd
vector.c: ^
vector.c: vector.c:203:8: note: did you mean '__builtin_ia32_psubd'?
vector.c: ./vector.h:151:26: note: expanded from macro 'v32_shufrot'
vector.c: #define v32_shufrot(x,s) v32_shuf(x,XCAT(SHUFROT_,s))
vector.c: ^
vector.c: ./vector.h:140:18: note: expanded from macro 'v32_shuf'
vector.c: #define v32_shuf __builtin_ia32_pshufd
vector.c: ^
vector.c: vector.c:203:6: error: assigning to 'v32' (aka 'v4si') from incompatible type 'int'
vector.c: M0 = v32_shufrot(M0,1);
vector.c: ^ ~~~~~~~~~~~~~~~~~
vector.c: vector.c:205:6: error: assigning to 'v32' (aka 'v4si') from incompatible type 'int'
vector.c: M0 = v32_shufrot(M0,1);
vector.c: ^ ~~~~~~~~~~~~~~~~~
vector.c: vector.c:207:6: error: assigning to 'v32' (aka 'v4si') from incompatible type 'int'
vector.c: M0 = v32_shufrot(M0,1);
vector.c: ^ ~~~~~~~~~~~~~~~~~
vector.c: ...

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

Compiler output

Implementation: crypto_hash/blake256/vect128
Compiler: clang -O1 -march=native -m64 -fomit-frame-pointer
vector.c: vector.c:389:3: error: use of unknown builtin '__builtin_ia32_punpckldq128' [-Wimplicit-function-declaration]
vector.c: v32_interleave_inplace(M0,M2);
vector.c: ^
vector.c: ./vector.h:1038:17: note: expanded from macro 'v32_interleave_inplace'
vector.c: v32 c__ = v32_interleavel (a__, b__); \
vector.c: ^
vector.c: ./vector.h:100:27: note: expanded from macro 'v32_interleavel'
vector.c: #define v32_interleavel __builtin_ia32_punpckldq128
vector.c: ^
vector.c: vector.c:389:3: error: initializing 'v32' (aka 'v4si') with an expression of incompatible type 'int'
vector.c: v32_interleave_inplace(M0,M2);
vector.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vector.c: ./vector.h:1038:11: note: expanded from macro 'v32_interleave_inplace'
vector.c: v32 c__ = v32_interleavel (a__, b__); \
vector.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~
vector.c: vector.c:389:3: error: use of unknown builtin '__builtin_ia32_punpckhdq128' [-Wimplicit-function-declaration]
vector.c: ./vector.h:1039:17: note: expanded from macro 'v32_interleave_inplace'
vector.c: v32 d__ = v32_interleaveh (a__, b__); \
vector.c: ^
vector.c: ./vector.h:101:27: note: expanded from macro 'v32_interleaveh'
vector.c: #define v32_interleaveh __builtin_ia32_punpckhdq128
vector.c: ^
vector.c: vector.c:389:3: note: did you mean '__builtin_ia32_punpckldq128'?
vector.c: ./vector.h:1039:17: note: expanded from macro 'v32_interleave_inplace'
vector.c: v32 d__ = v32_interleaveh (a__, b__); \
vector.c: ...

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

Compiler output

Implementation: crypto_hash/blake256/sse41
Compiler: gcc -m64 -O2 -fomit-frame-pointer
hash.c: In file included from hash.c:4:0:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/tmmintrin.h:31:3: error: #error "SSSE3 instruction set not enabled"
hash.c: In file included from hash.c:5:0:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/smmintrin.h:32:3: error: #error "SSE4.1 instruction set not enabled"
hash.c: hash.c: In function 'blake256_compress':
hash.c: hash.c:104:5: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:105:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:106:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:107:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: In file included from hash.c:121:0:
hash.c: rounds.sse41.h:25:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:32:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:56:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:62:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:71:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:73:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:76:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:77:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:89:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:96:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:106:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:107:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:111:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:124:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:130:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc -m64 -O2 -fomit-frame-pointer sse41
gcc -m64 -O3 -fomit-frame-pointer sse41

Compiler output

Implementation: crypto_hash/blake256/ssse3
Compiler: gcc -m64 -O2 -fomit-frame-pointer
hash.c: In file included from hash.c:4:0:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/tmmintrin.h:31:3: error: #error "SSSE3 instruction set not enabled"
hash.c: hash.c: In function 'blake256_compress':
hash.c: hash.c:105:13: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:106:13: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:107:13: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:108:13: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: In file included from hash.c:122:0:
hash.c: rounds.ssse3.h:10:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:17:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:35:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:41:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:58:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:65:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:83:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:89:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:106:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:113:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:131:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:137:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:154:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:161:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:179:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:185:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:202:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc -m64 -O2 -fomit-frame-pointer ssse3
gcc -m64 -O3 -fomit-frame-pointer ssse3

Compiler output

Implementation: crypto_hash/blake256/xop
Compiler: gcc -m64 -O2 -fomit-frame-pointer
hash.c: hash.c: In function 'blake256_compress':
hash.c: hash.c:93:22: error: incompatible types when initializing type '__m128i' using type 'int'
hash.c: hash.c:94:22: error: incompatible types when initializing type '__m128i' using type 'int'
hash.c: hash.c:95:22: error: incompatible types when initializing type '__m128i' using type 'int'
hash.c: hash.c:96:22: error: incompatible types when initializing type '__m128i' using type 'int'
hash.c: hash.c:115:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:115:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:115:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:115:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:115:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:115:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:115:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:115:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:115:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:115:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:115:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:115:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc -m64 -O2 -fomit-frame-pointer xop
gcc -m64 -O3 -fomit-frame-pointer xop

Compiler output

Implementation: crypto_hash/blake256/sse41-2
Compiler: gcc -m64 -O2 -fomit-frame-pointer
hash.c: hash.c: In function 'blake256_compress':
hash.c: hash.c:93:22: error: incompatible types when initializing type '__m128i' using type 'int'
hash.c: hash.c:94:22: error: incompatible types when initializing type '__m128i' using type 'int'
hash.c: hash.c:95:22: error: incompatible types when initializing type '__m128i' using type 'int'
hash.c: hash.c:96:22: error: incompatible types when initializing type '__m128i' using type 'int'
hash.c: hash.c:115:1: error: type mismatch in conditional expression
hash.c: hash.c:115:1: error: type mismatch in conditional expression
hash.c: hash.c:115:1: error: type mismatch in conditional expression
hash.c: hash.c:115:1: error: type mismatch in conditional expression
hash.c: hash.c:115:1: error: type mismatch in conditional expression
hash.c: hash.c:115:1: error: type mismatch in conditional expression
hash.c: hash.c:115:1: error: type mismatch in conditional expression
hash.c: hash.c:115:1: error: type mismatch in conditional expression
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: type mismatch in conditional expression
hash.c: hash.c:116:1: error: type mismatch in conditional expression
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: type mismatch in conditional expression
hash.c: hash.c:116:1: error: type mismatch in conditional expression
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: type mismatch in conditional expression
hash.c: hash.c:116:1: error: type mismatch in conditional expression
hash.c: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc -m64 -O2 -fomit-frame-pointer sse41-2
gcc -m64 -O3 -fomit-frame-pointer sse41-2

Compiler output

Implementation: crypto_hash/blake256/avxs
Compiler: gcc -m64 -O2 -fomit-frame-pointer
hash.c: hash.c: In function 'blake256_final':
hash.c: hash.c:154:59: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:155:59: error: incompatible types when assigning to type '__m128i' from type 'int'

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc -m64 -O2 -fomit-frame-pointer avxs
gcc -m64 -O3 -fomit-frame-pointer avxs

Compiler output

Implementation: crypto_hash/blake256/vect128-mmxhack
Compiler: gcc -m64 -O2 -fomit-frame-pointer
vector.c: vector.c: In function 'round256':
vector.c: vector.c:162:3: error: can't convert between vector values of different size
vector.c: vector.c:162:3: error: can't convert between vector values of different size
vector.c: vector.c:163:5: error: can't convert between vector values of different size
vector.c: vector.c:163:5: error: can't convert between vector values of different size
vector.c: vector.c:384:3: error: can't convert between vector values of different size
vector.c: vector.c:385:3: error: can't convert between vector values of different size
vector.c: vector.c:386:3: error: can't convert between vector values of different size
vector.c: vector.c:387:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc -m64 -O2 -fomit-frame-pointer vect128-mmxhack
gcc -m64 -O3 -fomit-frame-pointer vect128-mmxhack

Compiler output

Implementation: crypto_hash/blake256/vect128
Compiler: gcc -m64 -O2 -fomit-frame-pointer
vector.c: vector.c: In function 'round256':
vector.c: vector.c:384:3: error: can't convert between vector values of different size
vector.c: vector.c:385:3: error: can't convert between vector values of different size
vector.c: vector.c:386:3: error: can't convert between vector values of different size
vector.c: vector.c:387:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: vector.c:464:3: error: can't convert between vector values of different size
vector.c: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc -m64 -O2 -fomit-frame-pointer vect128
gcc -m64 -O3 -fomit-frame-pointer vect128

Compiler output

Implementation: crypto_hash/blake256/sse41
Compiler: gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer
hash.c: In file included from hash.c:5:0:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/smmintrin.h:32:3: error: #error "SSE4.1 instruction set not enabled"
hash.c: In file included from hash.c:121:0:
hash.c: rounds.sse41.h: In function 'blake256_compress':
hash.c: rounds.sse41.h:71:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:73:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:76:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:77:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:106:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:107:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:111:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:140:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:141:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:144:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:152:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:172:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:174:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:177:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:178:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:207:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:210:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:211:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:238:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:239:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:272:6: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: ...

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

Compiler output

Implementation: crypto_hash/blake256/xop
Compiler: gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer
hash.c: hash.c: In function 'blake256_compress':
hash.c: hash.c:115:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:115:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:115:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:115:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:115:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:115:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:115:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:115:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:115:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:115:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:115:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:115:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: ...

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

Compiler output

Implementation: crypto_hash/blake256/sse41-2
Compiler: gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer
hash.c: hash.c: In function 'blake256_compress':
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:116:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:117:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:117:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:117:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:117:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:117:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:117:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:117:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:117:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:118:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:118:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:118:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:118:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:118:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:119:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:119:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:119:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:119:1: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: ...

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

Compiler output

Implementation: crypto_hash/blake256/xop
Compiler: icc -m64 -O1 -static -xHost -fomit-frame-pointer
hash.c: hash.c(115): error: a value of type "int" cannot be assigned to an entity of type "__m128i"
hash.c: ROUND( 0);
hash.c: ^
hash.c:
hash.c: hash.c(115): error: a value of type "int" cannot be assigned to an entity of type "__m128i"
hash.c: ROUND( 0);
hash.c: ^
hash.c:
hash.c: hash.c(115): error: a value of type "int" cannot be assigned to an entity of type "__m128i"
hash.c: ROUND( 0);
hash.c: ^
hash.c:
hash.c: hash.c(115): error: a value of type "int" cannot be assigned to an entity of type "__m128i"
hash.c: ROUND( 0);
hash.c: ^
hash.c:
hash.c: hash.c(115): error: a value of type "int" cannot be assigned to an entity of type "__m128i"
hash.c: ROUND( 0);
hash.c: ^
hash.c:
hash.c: hash.c(115): error: a value of type "int" cannot be assigned to an entity of type "__m128i"
hash.c: ROUND( 0);
hash.c: ^
hash.c:
hash.c: hash.c(115): error: a value of type "int" cannot be assigned to an entity of type "__m128i"
hash.c: ...

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

Compiler output

Implementation: crypto_hash/blake256/avxicc
Compiler: icc -m64 -O1 -static -xHost -fomit-frame-pointer
try.c: ipo: remark #11035: Il version for crypto_hash_blake256.a (214006) does not match compiler's il version (236682), ignoring object file

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