Implementation notes: x86, thoth, crypto_hash/bblake512

Computer: thoth
Architecture: x86
CPU ID: AuthenticAMD-00000622-0183f9ff
SUPERCOP version: 20160806
Operation: crypto_hash
Primitive: bblake512

Compiler output

Implementation: crypto_hash/bblake512/xop
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
hash.c: hash.c:291:13: error: always_inline function '_mm_set_epi64x' requires target feature 'sse2', but would be inlined into function 'blake512_init' that is compiled without support for 'sse2'
hash.c: S->gt;h[0] = _mm_set_epi64x(0xBB67AE8584CAA73BULL, 0x6A09E667F3BCC908ULL);
hash.c: ^
hash.c: hash.c:292:13: error: always_inline function '_mm_set_epi64x' requires target feature 'sse2', but would be inlined into function 'blake512_init' that is compiled without support for 'sse2'
hash.c: S->gt;h[1] = _mm_set_epi64x(0xA54FF53A5F1D36F1ULL, 0x3C6EF372FE94F82BULL);
hash.c: ^
hash.c: hash.c:293:13: error: always_inline function '_mm_set_epi64x' requires target feature 'sse2', but would be inlined into function 'blake512_init' that is compiled without support for 'sse2'
hash.c: S->gt;h[2] = _mm_set_epi64x(0x9B05688C2B3E6C1FULL, 0x510E527FADE682D1ULL);
hash.c: ^
hash.c: hash.c:294:13: error: always_inline function '_mm_set_epi64x' requires target feature 'sse2', but would be inlined into function 'blake512_init' that is compiled without support for 'sse2'
hash.c: S->gt;h[3] = _mm_set_epi64x(0x5BE0CD19137E2179ULL, 0x1F83D9ABFB41BD6BULL);
hash.c: ^
hash.c: hash.c:66:26: error: always_inline function '_mm_set_epi8' requires target feature 'sse2', but would be inlined into function 'blake512_compress' that is compiled without support for 'sse2'
hash.c: const __m128i u8to64 = _mm_set_epi8(8, 9, 10, 11, 12, 13, 14, 15, 0, 1, 2, 3, 4, 5, 6, 7);
hash.c: ^
hash.c: hash.c:72:8: error: always_inline function '_mm_loadu_si128' requires target feature 'sse2', but would be inlined into function 'blake512_compress' that is compiled without support for 'sse2'
hash.c: m0 = _mm_loadu_si128((__m128i*)(datablock + 0));
hash.c: ^
hash.c: hash.c:73:8: error: always_inline function '_mm_loadu_si128' requires target feature 'sse2', but would be inlined into function 'blake512_compress' that is compiled without support for 'sse2'
hash.c: m1 = _mm_loadu_si128((__m128i*)(datablock + 16));
hash.c: ^
hash.c: hash.c:74:8: error: always_inline function '_mm_loadu_si128' requires target feature 'sse2', but would be inlined into function 'blake512_compress' that is compiled without support for 'sse2'
hash.c: m2 = _mm_loadu_si128((__m128i*)(datablock + 32));
hash.c: ^
hash.c: hash.c:75:8: error: always_inline function '_mm_loadu_si128' requires target feature 'sse2', but would be inlined into function 'blake512_compress' that is compiled without support for 'sse2'
hash.c: ...

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

Compiler output

Implementation: crypto_hash/bblake512/xop
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
hash.c: hash.c: In function 'blake512_init':
hash.c: hash.c:291:11: warning: SSE vector return without SSE enabled changes the ABI [-Wpsabi]
hash.c: S->gt;h[0] = _mm_set_epi64x(0xBB67AE8584CAA73BULL, 0x6A09E667F3BCC908ULL);
hash.c: ^
hash.c: In file included from /usr/lib/gcc/i686-linux-gnu/5/include/xmmintrin.h:1249:0,
hash.c: from /usr/lib/gcc/i686-linux-gnu/5/include/x86intrin.h:31,
hash.c: from hash.c:5:
hash.c: hash.c: In function 'blake512_compress':
hash.c: /usr/lib/gcc/i686-linux-gnu/5/include/emmintrin.h:1286:1: error: inlining failed in call to always_inline '_mm_xor_si128': target specific option mismatch
hash.c: _mm_xor_si128 (__m128i __A, __m128i __B)
hash.c: ^
hash.c: hash.c:144:17: error: called from here
hash.c: state->gt;h[3] = _mm_xor_si128(row2h, state->gt;h[3]);
hash.c: ^
hash.c: In file included from /usr/lib/gcc/i686-linux-gnu/5/include/xmmintrin.h:1249:0,
hash.c: from /usr/lib/gcc/i686-linux-gnu/5/include/x86intrin.h:31,
hash.c: from hash.c:5:
hash.c: /usr/lib/gcc/i686-linux-gnu/5/include/emmintrin.h:1286:1: error: inlining failed in call to always_inline '_mm_xor_si128': target specific option mismatch
hash.c: _mm_xor_si128 (__m128i __A, __m128i __B)
hash.c: ^
hash.c: hash.c:143:17: error: called from here
hash.c: state->gt;h[2] = _mm_xor_si128(row2l, state->gt;h[2]);
hash.c: ^
hash.c: In file included from /usr/lib/gcc/i686-linux-gnu/5/include/xmmintrin.h:1249:0,
hash.c: from /usr/lib/gcc/i686-linux-gnu/5/include/x86intrin.h:31,
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