Implementation notes: amd64, firefly, crypto_hash/blake256

Computer: firefly
Architecture: amd64
CPU ID: AuthenticAMD-00800f12-178bfbff
SUPERCOP version: 20201130
Operation: crypto_hash
Primitive: blake256
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
98906285 0 017511 792 752avxsclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
100516267 0 015981 784 736avxsclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
100746285 0 017511 792 752avxsclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
100746446 0 017181 808 776avxsgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
101666229 0 015877 792 776avxsgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
101896285 0 018415 792 752avxsclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
103046818 0 019518 816 776avxsgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
104196635 0 016301 784 736ssse3clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
104886297 0 016853 808 776avxsgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
104886073 0 018191 792 752sse41clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
106956073 0 017287 792 752sse41clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
108796073 0 017287 792 752sse41clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
109256043 0 015709 784 736sse41clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
110406652 0 017863 792 752ssse3clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
110866652 0 018767 792 752ssse3clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
111555874 0 017967 792 752sse41-2clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
113165841 0 015485 784 736sse41-2clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
113855874 0 017063 792 752sse41-2clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
115005874 0 017063 792 752sse41-2clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
120756652 0 017863 792 752ssse3clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
129497845 0 019063 792 752sse2-2clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
131336917 0 016597 784 736sse2clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
132716934 0 019047 792 752sse2clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
134097993 0 019607 792 736sse2clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
134326934 0 018143 792 752sse2clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
1405329517 0 042294 816 776sphlibgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
141916934 0 018143 792 752sse2clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
1439811138 0 020709 792 776regsgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
145827845 0 019967 792 752sse2-2clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
1495026634 0 038399 792 736sphlibclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
1511128689 0 040071 792 752sphlibclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
152497845 0 019063 792 752sse2-2clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
155488792 0 020399 792 736sse2-2clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
158017828 0 017501 784 736sse2-2clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
1584712469 0 022157 784 736regsclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
175266493 0 019142 816 776sse41-2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
178945878 0 015445 792 776sse41-2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
179866193 0 016669 808 776sse41gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
180326114 0 016789 808 776sse41-2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
182396645 0 019286 816 776sse41gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
182856894 0 016461 792 776ssse3gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
183546198 0 015765 792 776sse41gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
186075951 0 016445 808 776sse41-2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
187456386 0 017061 808 776sse41gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
190447452 0 020086 816 776ssse3gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
194587162 0 017837 808 776ssse3gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
1991810764 0 022367 792 736regsclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
2150511973 0 023191 792 752bswapclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
215746858 0 017333 808 776ssse3gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
2198811049 0 021533 808 776bswapgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
2212625784 0 036734 816 776sphlibgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
2288511458 0 022133 808 776regsgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
2300011536 0 024174 816 776bswapgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
230238317 0 017885 792 776sse2-2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
2306910899 0 020469 792 776bswapgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
232767340 0 016909 792 776sse2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
233457852 0 020486 816 776sse2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
234838844 0 021478 816 776sse2-2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
237137562 0 018237 808 776sse2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
237828366 0 018853 808 776sse2-2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
239438554 0 019229 808 776sse2-2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
243117283 0 017765 808 776sse2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
2504711013 0 022623 792 736bswapclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
2516211810 0 022285 808 776regsgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
2520811218 0 021893 808 776bswapgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
2555325751 0 036478 816 776sphlibgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
2594411973 0 024095 792 752bswapclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
2599011952 0 021629 784 736bswapclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
2670311748 0 024382 816 776regsgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
271403666 0 014341 808 776refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
278304612 0 017230 816 776refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
2794524822 0 034581 792 776sphlibgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
2898028369 0 038189 784 736sphlibclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
2907212486 0 023703 792 752regsclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
2907212486 0 023703 792 752regsclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
2909528689 0 040071 792 752sphlibclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
317862896 0 013389 808 776refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
322008228 0 018942 816 776sphlib-smallgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
3254511973 0 023191 792 752bswapclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
331432968 0 014575 792 736refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
3344211598 0 022807 792 752sandyclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
3346528689 0 040975 792 752sphlibclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
337648424 0 018269 784 736sphlib-smallclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
3443112486 0 024607 792 752regsclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
351908657 0 020039 792 752sphlib-smallclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
352822811 0 012373 792 776refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
368002898 0 015023 792 752refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
374678986 0 020767 792 736sphlib-smallclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
379967151 0 016917 792 776sphlib-smallgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
387092898 0 014119 792 752refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
391232898 0 014119 792 752refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
392382913 0 012589 784 736refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
4169913757 0 026534 816 776sphlib-smallgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
4365410040 0 020990 816 776sphlib-smallgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
443908657 0 020943 792 752sphlib-smallclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
477028657 0 020039 792 752sphlib-smallclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
4818511506 0 022181 808 776sandygcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
5099111511 0 023119 792 736sandyclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
5453311598 0 023711 792 752sandyclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
5655711577 0 021261 784 736sandyclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
5950111163 0 021645 808 776sandygcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
6336510567 0 020133 792 776sandygcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
6407811824 0 024462 816 776sandygcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
8972311598 0 022807 792 752sandyclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130

Compiler output

Implementation: avxs
Security model: constbranchindex
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
hash.c: hash.c:155:61: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'blake256_final' that is compiled without support for 'ssse3'
hash.c: __m128i w0 = _mm_load_si128((__m128i*)(&S->h[0])); w0 = _mm_shuffle_epi8(w0, u32to8);
hash.c: ^
hash.c: hash.c:156:61: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'blake256_final' that is compiled without support for 'ssse3'
hash.c: __m128i w1 = _mm_load_si128((__m128i*)(&S->h[4])); w1 = _mm_shuffle_epi8(w1, u32to8);
hash.c: ^
hash.c: 2 errors generated.

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

Compiler output

Implementation: sse41
Security model: constbranchindex
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
hash.c: hash.c:104:7: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'blake256_compress' that is compiled without support for 'ssse3'
hash.c: m0 = _mm_shuffle_epi8(_mm_loadu_si128((__m128i*)(datablock + 00)), u8to32);
hash.c: ^
hash.c: hash.c:105:8: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'blake256_compress' that is compiled without support for 'ssse3'
hash.c: m1 = _mm_shuffle_epi8(_mm_loadu_si128((__m128i*)(datablock + 16)), u8to32);
hash.c: ^
hash.c: hash.c:106:8: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'blake256_compress' that is compiled without support for 'ssse3'
hash.c: m2 = _mm_shuffle_epi8(_mm_loadu_si128((__m128i*)(datablock + 32)), u8to32);
hash.c: ^
hash.c: hash.c:107:8: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'blake256_compress' that is compiled without support for 'ssse3'
hash.c: m3 = _mm_shuffle_epi8(_mm_loadu_si128((__m128i*)(datablock + 48)), u8to32);
hash.c: ^
hash.c: In file included from hash.c:121:
hash.c: ./rounds.sse41.h:25:8: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'blake256_compress' that is compiled without support for 'ssse3'
hash.c: row4 = _mm_shuffle_epi8(row4, r16);
hash.c: ^
hash.c: ./rounds.sse41.h:32:8: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'blake256_compress' that is compiled without support for 'ssse3'
hash.c: row4 = _mm_shuffle_epi8(row4, r8);
hash.c: ^
hash.c: ./rounds.sse41.h:56:8: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'blake256_compress' that is compiled without support for 'ssse3'
hash.c: row4 = _mm_shuffle_epi8(row4, r16);
hash.c: ^
hash.c: ./rounds.sse41.h:62:8: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'blake256_compress' that is compiled without support for 'ssse3'
hash.c: row4 = _mm_shuffle_epi8(row4, r8);
hash.c: ^
hash.c: ...

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

Compiler output

Implementation: sse41-2
Security model: constbranchindex
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
hash.c: In file included from hash.c:2:
hash.c: ./blake256.h:105:15: warning: '_mm_roti_epi32' macro redefined [-Wmacro-redefined]
hash.c: #define _mm_roti_epi32(r, c) ((8==-c) ? _mm_shuffle_epi8(r,r8) : ( (16==-c) ? _mm_shuffle_epi8(r,r16) : _mm_xor_si128(_mm_srli_epi32( (r), -(c) ),_mm_slli_epi32( (r), 32-(-c) )) ) )
hash.c: ^
hash.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.1/include/xopintrin.h:246:9: note: previous definition is here
hash.c: #define _mm_roti_epi32(A, N) __extension__ ({ \
hash.c: ^
hash.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE sse41-2
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE sse41-2
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE sse41-2
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE sse41-2

Compiler output

Implementation: sse41-2
Security model: constbranchindex
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
hash.c: In file included from hash.c:2:
hash.c: ./blake256.h:105:15: warning: '_mm_roti_epi32' macro redefined [-Wmacro-redefined]
hash.c: #define _mm_roti_epi32(r, c) ((8==-c) ? _mm_shuffle_epi8(r,r8) : ( (16==-c) ? _mm_shuffle_epi8(r,r16) : _mm_xor_si128(_mm_srli_epi32( (r), -(c) ),_mm_slli_epi32( (r), 32-(-c) )) ) )
hash.c: ^
hash.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.1/include/xopintrin.h:246:9: note: previous definition is here
hash.c: #define _mm_roti_epi32(A, N) __extension__ ({ \
hash.c: ^
hash.c: hash.c:93:22: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'blake256_compress' that is compiled without support for 'ssse3'
hash.c: const __m128i m0 = _mm_shuffle_epi8(LOADU(datablock + 00), u8to32);
hash.c: ^
hash.c: hash.c:94:22: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'blake256_compress' that is compiled without support for 'ssse3'
hash.c: const __m128i m1 = _mm_shuffle_epi8(LOADU(datablock + 16), u8to32);
hash.c: ^
hash.c: hash.c:95:22: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'blake256_compress' that is compiled without support for 'ssse3'
hash.c: const __m128i m2 = _mm_shuffle_epi8(LOADU(datablock + 32), u8to32);
hash.c: ^
hash.c: hash.c:96:22: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'blake256_compress' that is compiled without support for 'ssse3'
hash.c: const __m128i m3 = _mm_shuffle_epi8(LOADU(datablock + 48), u8to32);
hash.c: ^
hash.c: hash.c:115:3: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'blake256_compress' that is compiled without support for 'ssse3'
hash.c: ROUND( 0);
hash.c: ^
hash.c: ./rounds.h:52:3: note: expanded from macro 'ROUND'
hash.c: G1(row1,row2,row3,row4,buf1); \
hash.c: ^
hash.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE sse41-2

Compiler output

Implementation: ssse3
Security model: constbranchindex
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
hash.c: hash.c:105:15: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'blake256_compress' that is compiled without support for 'ssse3'
hash.c: m.u128[0] = _mm_shuffle_epi8(_mm_loadu_si128((__m128i*)(datablock + 00)), u8to32);
hash.c: ^
hash.c: hash.c:106:15: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'blake256_compress' that is compiled without support for 'ssse3'
hash.c: m.u128[1] = _mm_shuffle_epi8(_mm_loadu_si128((__m128i*)(datablock + 16)), u8to32);
hash.c: ^
hash.c: hash.c:107:15: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'blake256_compress' that is compiled without support for 'ssse3'
hash.c: m.u128[2] = _mm_shuffle_epi8(_mm_loadu_si128((__m128i*)(datablock + 32)), u8to32);
hash.c: ^
hash.c: hash.c:108:15: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'blake256_compress' that is compiled without support for 'ssse3'
hash.c: m.u128[3] = _mm_shuffle_epi8(_mm_loadu_si128((__m128i*)(datablock + 48)), u8to32);
hash.c: ^
hash.c: In file included from hash.c:122:
hash.c: ./rounds.ssse3.h:10:8: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'blake256_compress' that is compiled without support for 'ssse3'
hash.c: row4 = _mm_shuffle_epi8(row4, r16);
hash.c: ^
hash.c: ./rounds.ssse3.h:17:8: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'blake256_compress' that is compiled without support for 'ssse3'
hash.c: row4 = _mm_shuffle_epi8(row4, r8);
hash.c: ^
hash.c: ./rounds.ssse3.h:35:8: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'blake256_compress' that is compiled without support for 'ssse3'
hash.c: row4 = _mm_shuffle_epi8(row4, r16);
hash.c: ^
hash.c: ./rounds.ssse3.h:41:8: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'blake256_compress' that is compiled without support for 'ssse3'
hash.c: row4 = _mm_shuffle_epi8(row4, r8);
hash.c: ^
hash.c: ...

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

Compiler output

Implementation: xop
Security model: constbranchindex
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
hash.c: hash.c:115:3: error: always_inline function '_mm_perm_epi8' requires target feature 'fma4', but would be inlined into function 'blake256_compress' that is compiled without support for 'fma4'
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: <scratch space>:58: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: '__builtin_ia32_vprotdi' needs target feature xop
hash.c: ./rounds.h:52:3: note: expanded from macro 'ROUND'
hash.c: G1(row1,row2,row3,row4,buf1); \
hash.c: ^
hash.c: ./rounds.h:8:10: note: expanded from macro 'G1'
hash.c: row4 = _mm_roti_epi32(row4, -16); \
hash.c: ^
hash.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.1/include/xopintrin.h:247:12: note: expanded from macro '_mm_roti_epi32'
hash.c: (__m128i)__builtin_ia32_vprotdi((__v4si)(__m128i)(A), (N)); })
hash.c: ^
hash.c: hash.c:115:3: error: '__builtin_ia32_vprotdi' needs target feature xop
hash.c: ./rounds.h:52:3: note: expanded from macro 'ROUND'
hash.c: G1(row1,row2,row3,row4,buf1); \
hash.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE xop
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE xop
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE xop
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE xop

Compiler output

Implementation: xop
Security model: constbranchindex
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
hash.c: hash.c:93:22: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'blake256_compress' that is compiled without support for 'ssse3'
hash.c: const __m128i m0 = _mm_shuffle_epi8(LOADU(datablock + 00), u8to32);
hash.c: ^
hash.c: hash.c:94:22: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'blake256_compress' that is compiled without support for 'ssse3'
hash.c: const __m128i m1 = _mm_shuffle_epi8(LOADU(datablock + 16), u8to32);
hash.c: ^
hash.c: hash.c:95:22: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'blake256_compress' that is compiled without support for 'ssse3'
hash.c: const __m128i m2 = _mm_shuffle_epi8(LOADU(datablock + 32), u8to32);
hash.c: ^
hash.c: hash.c:96:22: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'blake256_compress' that is compiled without support for 'ssse3'
hash.c: const __m128i m3 = _mm_shuffle_epi8(LOADU(datablock + 48), u8to32);
hash.c: ^
hash.c: hash.c:115:3: error: always_inline function '_mm_perm_epi8' requires target feature 'sse4a', but would be inlined into function 'blake256_compress' that is compiled without support for 'sse4a'
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: <scratch space>:58: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: '__builtin_ia32_vprotdi' needs target feature xop
hash.c: ...

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

Compiler output

Implementation: xop
Security model: constbranchindex
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
hash.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/6/include/x86intrin.h:54:0,
hash.c: from blake256.h:7,
hash.c: from hash.c:2:
hash.c: hash.c: In function ‘blake256_compress’:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/6/include/xopintrin.h:260:1: error: inlining failed in call to always_inline ‘_mm_roti_epi32’: target specific option mismatch
hash.c: _mm_roti_epi32(__m128i __A, const int __B)
hash.c: ^~~~~~~~~~~~~~
hash.c: In file included from blake256.h:127:0,
hash.c: from hash.c:2:
hash.c: rounds.h:19:8: note: called from here
hash.c: row2 = _mm_roti_epi32(row2, -7); \
hash.c: ^
hash.c: rounds.h:59:3: note: in expansion of macro ‘G2’
hash.c: G2(row1,row2,row3,row4,buf4); \
hash.c: ^~
hash.c: hash.c:128:3: note: in expansion of macro ‘ROUND’
hash.c: ROUND(13);
hash.c: ^~~~~
hash.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/6/include/x86intrin.h:54:0,
hash.c: from blake256.h:7,
hash.c: from hash.c:2:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/6/include/xopintrin.h:260:1: error: inlining failed in call to always_inline ‘_mm_roti_epi32’: target specific option mismatch
hash.c: _mm_roti_epi32(__m128i __A, const int __B)
hash.c: ^~~~~~~~~~~~~~
hash.c: In file included from blake256.h:127:0,
hash.c: ...

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