Implementation notes: x86, thoth, crypto_hash/cubehash162

Computer: thoth
Architecture: x86
CPU ID: AuthenticAMD-00000622-0183f9ff
SUPERCOP version: 20160806
Operation: crypto_hash
Primitive: cubehash162
TimeImplementationCompilerBenchmark dateSUPERCOP version
1414186unrolledgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072620160724
1419059unrolledgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072620160724
1434517simplegcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072620160724
1461551unrolledgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072620160724
1576801unrolledgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072620160724
1918482unrolledclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016072620160724
2490072specgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072620160724
2875272specclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016072620160724
3611343simpleclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016072620160724
5055080specgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072620160724
5764443specgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072620160724
6486543specgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072620160724
9086247simplegcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072620160724
9286560simplegcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072620160724
9410990simplegcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072620160724

Compiler output

Implementation: crypto_hash/cubehash162/emmintrin4
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
cubehash.c: cubehash.c:102:19: error: always_inline function '_mm_set_epi32' requires target feature 'sse2', but would be inlined into function 'Init' that is compiled without support for 'sse2'
cubehash.c: state->gt;x[0] = _mm_set_epi32(0x0636ff65,0xe425b169,0x5e42fed8,0xa69300f4);
cubehash.c: ^
cubehash.c: cubehash.c:103:19: error: always_inline function '_mm_set_epi32' requires target feature 'sse2', but would be inlined into function 'Init' that is compiled without support for 'sse2'
cubehash.c: state->gt;x[1] = _mm_set_epi32(0x76bafe8c,0x3a0548c8,0xbbc9878b,0x945a950a);
cubehash.c: ^
cubehash.c: cubehash.c:104:19: error: always_inline function '_mm_set_epi32' requires target feature 'sse2', but would be inlined into function 'Init' that is compiled without support for 'sse2'
cubehash.c: state->gt;x[2] = _mm_set_epi32(0xab8e50b7,0x58ae39b5,0x1a935de0,0xc0b94068);
cubehash.c: ^
cubehash.c: cubehash.c:105:19: error: always_inline function '_mm_set_epi32' requires target feature 'sse2', but would be inlined into function 'Init' that is compiled without support for 'sse2'
cubehash.c: state->gt;x[3] = _mm_set_epi32(0xb6aeeb17,0xf015c87f,0x096a8cd4,0x04a918c4);
cubehash.c: ^
cubehash.c: cubehash.c:106:19: error: always_inline function '_mm_set_epi32' requires target feature 'sse2', but would be inlined into function 'Init' that is compiled without support for 'sse2'
cubehash.c: state->gt;x[4] = _mm_set_epi32(0x11a81ee3,0x6c8b69f8,0x891deb37,0xb5d0eca2);
cubehash.c: ^
cubehash.c: cubehash.c:107:19: error: always_inline function '_mm_set_epi32' requires target feature 'sse2', but would be inlined into function 'Init' that is compiled without support for 'sse2'
cubehash.c: state->gt;x[5] = _mm_set_epi32(0xd05da460,0x8b622996,0xf87b77d2,0xfe6d86ba);
cubehash.c: ^
cubehash.c: cubehash.c:108:19: error: always_inline function '_mm_set_epi32' requires target feature 'sse2', but would be inlined into function 'Init' that is compiled without support for 'sse2'
cubehash.c: state->gt;x[6] = _mm_set_epi32(0x79d446be,0x9b8dfbf8,0x068aa5ec,0xfb6f1976);
cubehash.c: ^
cubehash.c: cubehash.c:109:19: error: always_inline function '_mm_set_epi32' requires target feature 'sse2', but would be inlined into function 'Init' that is compiled without support for 'sse2'
cubehash.c: state->gt;x[7] = _mm_set_epi32(0x51f1b9d5,0xa4dc1cc1,0xa127e308,0x118f293c);
cubehash.c: ^
cubehash.c: cubehash.c:111:19: error: always_inline function '_mm_set_epi32' requires target feature 'sse2', but would be inlined into function 'Init' that is compiled without support for 'sse2'
cubehash.c: ...

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

Compiler output

Implementation: crypto_hash/cubehash162/emmintrin4
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
cubehash.c: cubehash.c: In function 'Init':
cubehash.c: cubehash.c:102:17: warning: SSE vector return without SSE enabled changes the ABI [-Wpsabi]
cubehash.c: state->gt;x[0] = _mm_set_epi32(0x0636ff65,0xe425b169,0x5e42fed8,0xa69300f4);
cubehash.c: ^
cubehash.c: In file included from cubehash.h:14:0,
cubehash.c: from cubehash.c:9:
cubehash.c: cubehash.c: In function 'transform':
cubehash.c: /usr/lib/gcc/i686-linux-gnu/5/include/emmintrin.h:1415:1: error: inlining failed in call to always_inline '_mm_shuffle_epi32': target specific option mismatch
cubehash.c: _mm_shuffle_epi32 (__m128i __A, const int __mask)
cubehash.c: ^
cubehash.c: cubehash.c:77:8: error: called from here
cubehash.c: x7 = _mm_shuffle_epi32(x7,0xb1);
cubehash.c: ^
cubehash.c: In file included from cubehash.h:14:0,
cubehash.c: from cubehash.c:9:
cubehash.c: /usr/lib/gcc/i686-linux-gnu/5/include/emmintrin.h:1415:1: error: inlining failed in call to always_inline '_mm_shuffle_epi32': target specific option mismatch
cubehash.c: _mm_shuffle_epi32 (__m128i __A, const int __mask)
cubehash.c: ^
cubehash.c: cubehash.c:76:8: error: called from here
cubehash.c: x6 = _mm_shuffle_epi32(x6,0xb1);
cubehash.c: ^
cubehash.c: In file included from cubehash.h:14:0,
cubehash.c: from cubehash.c:9:
cubehash.c: /usr/lib/gcc/i686-linux-gnu/5/include/emmintrin.h:1415:1: error: inlining failed in call to always_inline '_mm_shuffle_epi32': target specific option mismatch
cubehash.c: _mm_shuffle_epi32 (__m128i __A, const int __mask)
cubehash.c: ...

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