Implementation notes: x86, thoth, crypto_hash/echo512

Computer: thoth
Architecture: x86
CPU ID: AuthenticAMD-00000622-0183f9ff
SUPERCOP version: 20160806
Operation: crypto_hash
Primitive: echo512
TimeImplementationCompilerBenchmark dateSUPERCOP version
127460pentium/pentiummmxgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072620160724
127471pentium/pentiummmxgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072620160724
127487pentium/pentiummmxgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072620160724
127491pentium/pentiummmxgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072620160724
155007pentium/pentiumvnommxgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072620160724
155016pentium/pentiumvnommxgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072620160724
155016pentium/pentiumvnommxgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072620160724
155033pentium/pentiumvnommxgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072620160724
206321sphlibgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072620160724
207558sphlibgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072620160724
210625generic/opt32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072620160724
216183generic/opt32gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072620160724
228359sphlibgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072620160724
228958sphlib-smallgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072620160724
230142sphlibgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072620160724
233677generic/opt32gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072620160724
242570generic/opt32gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072620160724
256127sphlib-smallclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016072620160724
264234sphlib-smallgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072620160724
280170sphlib-smallgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072620160724
282844sphlib-smallgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072620160724
296143generic/opt64gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072620160724
296569generic/opt64gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072620160724
297906generic/opt64gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072620160724
298126powerpc/pp32cv2gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072620160724
304222powerpc/pp32cv2gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072620160724
305971generic/opt32clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016072620160724
324750powerpc/pp32cv2gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072620160724
329274powerpc/pp32cv2clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016072620160724
330807powerpc/pp32cv1clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016072620160724
350520powerpc/pp32cv2gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072620160724
351391generic/opt64gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072620160724
353241sphlibclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016072620160724
387942generic/opt64clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016072620160724
437478powerpc/pp32cv1gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072620160724
471097powerpc/pp32cv1gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072620160724
480711powerpc/pp32cv1gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072620160724
487284powerpc/pp32cv1gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072620160724

Test failure

Implementation: crypto_hash/echo512/aes/aes32
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
error 111

Number of similar (compiler,implementation) pairs: 12, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv aes/aes32 core2/core2 pentium/pentium4
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv aes/aes32 core2/core2 pentium/pentium4
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv aes/aes32 core2/core2 pentium/pentium4
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv aes/aes32 core2/core2 pentium/pentium4

Compiler output

Implementation: crypto_hash/echo512/pentium/pentium4
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
echo32.s: echo32.c:525:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:525:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:525:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:525:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:526:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:526:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:526:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:526:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:527:2: error: invalid instruction mnemonic 'addd'
echo32.s: ...

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

Compiler output

Implementation: crypto_hash/echo512/core2/core2
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
echo32.s: echo32.c:544:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:544:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:544:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:544:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:545:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:545:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:545:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:545:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:546:2: error: invalid instruction mnemonic 'addd'
echo32.s: ...

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

Compiler output

Implementation: crypto_hash/echo512/pentium/pentiumvnommx
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
echo32.s: echo32.c:568:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:568:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:568:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:568:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:569:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:569:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:569:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:569:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:570:2: error: invalid instruction mnemonic 'addd'
echo32.s: ...

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

Compiler output

Implementation: crypto_hash/echo512/pentium/pentiummmx
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
echo32.s: echo32.c:569:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:569:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:569:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:569:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:570:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:570:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:570:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:570:2: error: invalid instruction mnemonic 'addd'
echo32.s: addd [SHA3_CNT], 1
echo32.s: ^
echo32.s: echo32.c:571:2: error: invalid instruction mnemonic 'addd'
echo32.s: ...

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

Compiler output

Implementation: crypto_hash/echo512/aes/aes32
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
echo32.s: echo32.c:613:2: error: '.att_syntax noprefix' is not supported: registers must have a '%' prefix in .att_syntax
echo32.s: .att_syntax noprefix
echo32.s: ^
echo32.s: echo32.c:613:2: error: unknown directive
echo32.s: .att_syntax noprefix
echo32.s: ^
echo32.s: echo32.s:1247:7: error: unknown token in expression
echo32.s: popl %ebp
echo32.s: ^
echo32.s: echo32.s:1247:7: error: unknown token in expression
echo32.s: popl %ebp
echo32.s: ^
echo32.s: echo32.s:1254:8: error: unknown token in expression
echo32.s: pushl %ebp
echo32.s: ^
echo32.s: echo32.s:1254:8: error: unknown token in expression
echo32.s: pushl %ebp
echo32.s: ^
echo32.s: echo32.s:1255:7: error: unknown token in expression
echo32.s: movl %esp, %ebp
echo32.s: ^
echo32.s: echo32.s:1255:7: error: unknown token in expression
echo32.s: movl %esp, %ebp
echo32.s: ^
echo32.s: echo32.s:1256:8: error: unknown token in expression
echo32.s: ...

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

Compiler output

Implementation: crypto_hash/echo512/generic/opt64
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
echo64.c: echo64.c:501:29: warning: passing 'const unsigned char *' to parameter of type 'BitSequence *' (aka 'unsigned char *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
echo64.c: if (Hash(CRYPTO_BYTES * 8,in,inlen * 8,out) == SUCCESS) return 0;
echo64.c: ^~
echo64.c: echo64.c:488:46: note: passing argument to parameter 'data' here
echo64.c: HashReturn Hash(int hashbitlen, BitSequence *data, DataLength databitlen, BitSequence *hashval)
echo64.c: ^
echo64.c: 1 warning generated.

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

Compiler output

Implementation: crypto_hash/echo512/ccalik/aesni
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
hash.c: hash.c:263:4: error: always_inline function '_mm_andnot_si128' requires target feature 'sse2', but would be inlined into function 'Compress' that is compiled without support for 'sse2'
hash.c: TRANSFORM(_state[i][j], _k_ipt, t1, t2);
hash.c: ^
hash.c: ./vperm.h:49:7: note: expanded from macro 'TRANSFORM'
hash.c: t1 = _mm_andnot_si128(M128(_k_s0F), x);\
hash.c: ^
hash.c: hash.c:263:4: error: always_inline function '_mm_srli_epi32' requires target feature 'sse2', but would be inlined into function 'Compress' that is compiled without support for 'sse2'
hash.c: ./vperm.h:50:7: note: expanded from macro 'TRANSFORM'
hash.c: t1 = _mm_srli_epi32(t1, 4);\
hash.c: ^
hash.c: hash.c:263:4: error: always_inline function '_mm_and_si128' requires target feature 'sse2', but would be inlined into function 'Compress' that is compiled without support for 'sse2'
hash.c: ./vperm.h:51:7: note: expanded from macro 'TRANSFORM'
hash.c: x = _mm_and_si128(x, M128(_k_s0F));\
hash.c: ^
hash.c: hash.c:263:4: error: always_inline function '_mm_shuffle_epi8' requires target feature 'sse3', but would be inlined into function 'Compress' that is compiled without support for 'sse3'
hash.c: ./vperm.h:52:7: note: expanded from macro 'TRANSFORM'
hash.c: t1 = _mm_shuffle_epi8(*((__m128i*)table + 1), t1);\
hash.c: ^
hash.c: hash.c:263:4: error: always_inline function '_mm_shuffle_epi8' requires target feature 'sse3', but would be inlined into function 'Compress' that is compiled without support for 'sse3'
hash.c: ./vperm.h:53:7: note: expanded from macro 'TRANSFORM'
hash.c: x = _mm_shuffle_epi8(*((__m128i*)table + 0), x);\
hash.c: ^
hash.c: hash.c:263:4: error: always_inline function '_mm_xor_si128' requires target feature 'sse2', but would be inlined into function 'Compress' that is compiled without support for 'sse2'
hash.c: ./vperm.h:54:7: note: expanded from macro 'TRANSFORM'
hash.c: x = _mm_xor_si128(x, t1)
hash.c: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ccalik/aesni ccalik/vperm

Compiler output

Implementation: crypto_hash/echo512/ccalik/bitsliced
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
hash.c: hash.c:435:12: error: always_inline function '_mm_add_epi64' requires target feature 'sse2', but would be inlined into function 'Compress' that is compiled without support for 'sse2'
hash.c: ctx->gt;k = _mm_add_epi64(ctx->gt;k, ctx->gt;const1536);
hash.c: ^
hash.c: hash.c:442:20: error: always_inline function '_mm_loadu_si128' requires target feature 'sse2', but would be inlined into function 'Compress' that is compiled without support for 'sse2'
hash.c: _state[i][j] = _mm_loadu_si128((__m128i*)pmsg + 4 * (j - (ctx->gt;uHashSize / 256)) + i);
hash.c: ^
hash.c: hash.c:451:3: error: always_inline function '_mm_srli_epi64' requires target feature 'sse2', but would be inlined into function 'Compress' that is compiled without support for 'sse2'
hash.c: BITSLICE(_state[0][0], _state[0][1], _state[0][2], _state[0][3], _state[1][0], _state[1][1], _state[1][2], _state[1][3], t0);
hash.c: ^
hash.c: ./bitslice.h:34:53: note: expanded from macro 'BITSLICE'
hash.c: #define BITSLICE(x0, x1, x2, x3, x4, x5, x6, x7, t) SWAPMOVE(x0, x1, 1, M128(_BS0), t);\
hash.c: ^
hash.c: ./bitslice.h:26:13: note: expanded from macro 'SWAPMOVE'
hash.c: t = _mm_srli_epi64(t, n);\
hash.c: ^
hash.c: hash.c:451:3: error: always_inline function '_mm_xor_si128' requires target feature 'sse2', but would be inlined into function 'Compress' that is compiled without support for 'sse2'
hash.c: ./bitslice.h:34:53: note: expanded from macro 'BITSLICE'
hash.c: #define BITSLICE(x0, x1, x2, x3, x4, x5, x6, x7, t) SWAPMOVE(x0, x1, 1, M128(_BS0), t);\
hash.c: ^
hash.c: ./bitslice.h:27:13: note: expanded from macro 'SWAPMOVE'
hash.c: t = _mm_xor_si128(t, a);\
hash.c: ^
hash.c: hash.c:451:3: error: always_inline function '_mm_and_si128' requires target feature 'sse2', but would be inlined into function 'Compress' that is compiled without support for 'sse2'
hash.c: ./bitslice.h:34:53: note: expanded from macro 'BITSLICE'
hash.c: #define BITSLICE(x0, x1, x2, x3, x4, x5, x6, x7, t) SWAPMOVE(x0, x1, 1, M128(_BS0), t);\
hash.c: ...

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

Compiler output

Implementation: crypto_hash/echo512/generic/opt64
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
echo64.c: echo64.c: In function 'crypto_hash_echo512_generic_opt64':
echo64.c: echo64.c:501:29: warning: passing argument 2 of 'Hash' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
echo64.c: if (Hash(CRYPTO_BYTES * 8,in,inlen * 8,out) == SUCCESS) return 0;
echo64.c: ^
echo64.c: echo64.c:488:12: note: expected 'BitSequence * {aka unsigned char *}' but argument is of type 'const unsigned char *'
echo64.c: HashReturn Hash(int hashbitlen, BitSequence *data, DataLength databitlen, BitSequence *hashval)
echo64.c: ^

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

Compiler output

Implementation: crypto_hash/echo512/ccalik/aesni
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
hash.c: In file included from hash.c:20:0:
hash.c: hash.c: In function 'Compress':
hash.c: vperm.h:49:5: warning: SSE vector return without SSE enabled changes the ABI [-Wpsabi]
hash.c: t1 = _mm_andnot_si128(M128(_k_s0F), x);\
hash.c: ^
hash.c: hash.c:263:4: note: in expansion of macro 'TRANSFORM'
hash.c: TRANSFORM(_state[i][j], _k_ipt, t1, t2);
hash.c: ^
hash.c: In file included from hash_api.h:26:0,
hash.c: from hash.c:19:
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: In file included from hash.c:20:0:
hash.c: vperm.h:54:7: error: called from here
hash.c: x = _mm_xor_si128(x, t1)
hash.c: ^
hash.c: hash.c:263:4: note: in expansion of macro 'TRANSFORM'
hash.c: TRANSFORM(_state[i][j], _k_ipt, t1, t2);
hash.c: ^
hash.c: In file included from vperm.h:20:0,
hash.c: from hash.c:20:
hash.c: /usr/lib/gcc/i686-linux-gnu/5/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
hash.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
hash.c: ^
hash.c: ...

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv ccalik/aesni ccalik/vperm
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv ccalik/aesni ccalik/vperm
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv ccalik/aesni ccalik/vperm
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv ccalik/aesni ccalik/vperm

Compiler output

Implementation: crypto_hash/echo512/ccalik/bitsliced
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
hash.c: hash.c: In function 'Compress':
hash.c: hash.c:435:10: warning: SSE vector return without SSE enabled changes the ABI [-Wpsabi]
hash.c: ctx->gt;k = _mm_add_epi64(ctx->gt;k, ctx->gt;const1536);
hash.c: ^
hash.c: In file included from /usr/lib/gcc/i686-linux-gnu/5/include/pmmintrin.h:31:0,
hash.c: from /usr/lib/gcc/i686-linux-gnu/5/include/tmmintrin.h:31,
hash.c: from hash.c:18:
hash.c: /usr/lib/gcc/i686-linux-gnu/5/include/emmintrin.h:1029:1: error: inlining failed in call to always_inline '_mm_add_epi64': target specific option mismatch
hash.c: _mm_add_epi64 (__m128i __A, __m128i __B)
hash.c: ^
hash.c: hash.c:435:12: error: called from here
hash.c: ctx->gt;k = _mm_add_epi64(ctx->gt;k, ctx->gt;const1536);
hash.c: ^
hash.c: In file included from /usr/lib/gcc/i686-linux-gnu/5/include/pmmintrin.h:31:0,
hash.c: from /usr/lib/gcc/i686-linux-gnu/5/include/tmmintrin.h:31,
hash.c: from hash.c:18:
hash.c: /usr/lib/gcc/i686-linux-gnu/5/include/emmintrin.h:696:1: error: inlining failed in call to always_inline '_mm_loadu_si128': target specific option mismatch
hash.c: _mm_loadu_si128 (__m128i const *__P)
hash.c: ^
hash.c: hash.c:442:20: error: called from here
hash.c: _state[i][j] = _mm_loadu_si128((__m128i*)pmsg + 4 * (j - (ctx->gt;uHashSize / 256)) + i);
hash.c: ^
hash.c: In file included from /usr/lib/gcc/i686-linux-gnu/5/include/pmmintrin.h:31:0,
hash.c: from /usr/lib/gcc/i686-linux-gnu/5/include/tmmintrin.h:31,
hash.c: from hash.c:18:
hash.c: ...

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