LibreOffice Build failed on Debian-x86-32bit
Rene Engelhard
rene at debian.org
Tue Jul 4 18:19:01 UTC 2023
Hi,
Am 03.07.23 um 20:45 schrieb Rene Engelhard:
>
>
>> Here is the output from my current build process (from the status of the
>> LibreOffice source from last Friday):
>>
> Note you can't assume anything over SSE2 in here.
Actually you can't assume anything MMXish or SSEish.
https://wiki.debian.org/ArchitectureSpecificsMemo#i386-1
I confused it with amd64 which up to
SSE2:https://wiki.debian.org/ArchitectureSpecificsMemo#amd64
https://wiki.debian.org/ArchitectureSpecificsMemo#amd64
>
> I've no diea about SIMD instuctions bit this suspicously looks like
> instructions not in SSE2?
>
clang (which per defaults gets used for building skia if installed)
spells out explicitely that it's trying to use SSE2:
/home/rene/LibreOffice/git/libreoffice-7-6/workdir/UnpackedTarball/skia/src/core/SkBlitRow_D32.cpp:65:50:
error: always_inline function '_mm_loadu_si128' requires target feature
'sse2', but would be inlined into function 'blit_row_s32_blend' that is
compiled without support for 'sse2'
_mm_storeu_si128(dst4, SkPMLerp_SSE2(_mm_loadu_si128(src4),
^
/home/rene/LibreOffice/git/libreoffice-7-6/workdir/UnpackedTarball/skia/src/core/SkBlitRow_D32.cpp:66:50:
error: always_inline function '_mm_loadu_si128' requires target feature
'sse2', but would be inlined into function 'blit_row_s32_blend' that is
compiled without support for 'sse2'
_mm_loadu_si128(dst4),
^
/home/rene/LibreOffice/git/libreoffice-7-6/workdir/UnpackedTarball/skia/src/core/SkBlitRow_D32.cpp:65:13:
error: always_inline function '_mm_storeu_si128' requires target feature
'sse2', but would be inlined into function 'blit_row_s32_blend' that is
compiled without support for 'sse2'
_mm_storeu_si128(dst4, SkPMLerp_SSE2(_mm_loadu_si128(src4),
^
/home/rene/LibreOffice/git/libreoffice-7-6/workdir/UnpackedTarball/skia/src/core/SkBlitRow_D32.cpp:33:30:
error: always_inline function '_mm_set1_epi32' requires target feature
'sse2', but would be inlined into function 'SkPMLerp_SSE2' that is
compiled without support for 'sse2'
const __m128i mask = _mm_set1_epi32(0x00FF00FF);
^
/home/rene/LibreOffice/git/libreoffice-7-6/workdir/UnpackedTarball/skia/src/core/SkBlitRow_D32.cpp:36:26:
error: always_inline function '_mm_and_si128' requires target feature
'sse2', but would be inlined into function 'SkPMLerp_SSE2' that is
compiled without support for 'sse2'
__m128i src_rb = _mm_and_si128(mask, src);
^
/home/rene/LibreOffice/git/libreoffice-7-6/workdir/UnpackedTarball/skia/src/core/SkBlitRow_D32.cpp:37:26:
error: always_inline function '_mm_srli_epi16' requires target feature
'sse2', but would be inlined into function 'SkPMLerp_SSE2' that is
compiled without support for 'sse2'
__m128i src_ag = _mm_srli_epi16(src, 8);
^
/home/rene/LibreOffice/git/libreoffice-7-6/workdir/UnpackedTarball/skia/src/core/SkBlitRow_D32.cpp:38:26:
error: always_inline function '_mm_and_si128' requires target feature
'sse2', but would be inlined into function 'SkPMLerp_SSE2' that is
compiled without support for 'sse2'
__m128i dst_rb = _mm_and_si128(mask, dst);
^
/home/rene/LibreOffice/git/libreoffice-7-6/workdir/UnpackedTarball/skia/src/core/SkBlitRow_D32.cpp:39:26:
error: always_inline function '_mm_srli_epi16' requires target feature
'sse2', but would be inlined into function 'SkPMLerp_SSE2' that is
compiled without support for 'sse2'
__m128i dst_ag = _mm_srli_epi16(dst, 8);
^
/home/rene/LibreOffice/git/libreoffice-7-6/workdir/UnpackedTarball/skia/src/core/SkBlitRow_D32.cpp:42:27:
error: always_inline function '_mm_sub_epi16' requires target feature
'sse2', but would be inlined into function 'SkPMLerp_SSE2' that is
compiled without support for 'sse2'
__m128i diff_rb = _mm_sub_epi16(src_rb, dst_rb);
^
/home/rene/LibreOffice/git/libreoffice-7-6/workdir/UnpackedTarball/skia/src/core/SkBlitRow_D32.cpp:43:27:
error: always_inline function '_mm_sub_epi16' requires target feature
'sse2', but would be inlined into function 'SkPMLerp_SSE2' that is
compiled without support for 'sse2'
__m128i diff_ag = _mm_sub_epi16(src_ag, dst_ag);
^
/home/rene/LibreOffice/git/libreoffice-7-6/workdir/UnpackedTarball/skia/src/core/SkBlitRow_D32.cpp:44:21:
error: always_inline function '_mm_set1_epi16' requires target feature
'sse2', but would be inlined into function 'SkPMLerp_SSE2' that is
compiled without support for 'sse2'
__m128i s = _mm_set1_epi16(src_scale);
^
/home/rene/LibreOffice/git/libreoffice-7-6/workdir/UnpackedTarball/skia/src/core/SkBlitRow_D32.cpp:45:19:
error: always_inline function '_mm_mullo_epi16' requires target feature
'sse2', but would be inlined into function 'SkPMLerp_SSE2' that is
compiled without support for 'sse2'
diff_rb = _mm_mullo_epi16(diff_rb, s);
^
/home/rene/LibreOffice/git/libreoffice-7-6/workdir/UnpackedTarball/skia/src/core/SkBlitRow_D32.cpp:46:19:
error: always_inline function '_mm_mullo_epi16' requires target feature
'sse2', but would be inlined into function 'SkPMLerp_SSE2' that is
compiled without support for 'sse2'
diff_ag = _mm_mullo_epi16(diff_ag, s);
^
/home/rene/LibreOffice/git/libreoffice-7-6/workdir/UnpackedTarball/skia/src/core/SkBlitRow_D32.cpp:49:19:
error: always_inline function '_mm_srli_epi16' requires target feature
'sse2', but would be inlined into function 'SkPMLerp_SSE2' that is
compiled without support for 'sse2'
diff_rb = _mm_srli_epi16(diff_rb, 8);
^
/home/rene/LibreOffice/git/libreoffice-7-6/workdir/UnpackedTarball/skia/src/core/SkBlitRow_D32.cpp:50:19:
error: always_inline function '_mm_andnot_si128' requires target feature
'sse2', but would be inlined into function 'SkPMLerp_SSE2' that is
compiled without support for 'sse2'
diff_ag = _mm_andnot_si128(mask, diff_ag);
^
/home/rene/LibreOffice/git/libreoffice-7-6/workdir/UnpackedTarball/skia/src/core/SkBlitRow_D32.cpp:51:24:
error: always_inline function '_mm_or_si128' requires target feature
'sse2', but would be inlined into function 'SkPMLerp_SSE2' that is
compiled without support for 'sse2'
__m128i diff = _mm_or_si128(diff_rb, diff_ag);
^
/home/rene/LibreOffice/git/libreoffice-7-6/workdir/UnpackedTarball/skia/src/core/SkBlitRow_D32.cpp:54:16:
error: always_inline function '_mm_add_epi8' requires target feature
'sse2', but would be inlined into function 'SkPMLerp_SSE2' that is
compiled without support for 'sse2'
return _mm_add_epi8(dst, diff);
^
/home/rene/LibreOffice/git/libreoffice-7-6/workdir/UnpackedTarball/skia/src/core/SkBlitRow_D32.cpp:130:55:
error: always_inline function '_mm_loadu_si128' requires target feature
'sse2', but would be inlined into function 'blit_row_s32a_blend' that is
compiled without support for 'sse2'
_mm_storeu_si128(dst4,
SkBlendARGB32_SSE2(_mm_loadu_si128(src4),
^
/home/rene/LibreOffice/git/libreoffice-7-6/workdir/UnpackedTarball/skia/src/core/SkBlitRow_D32.cpp:131:55:
error: always_inline function '_mm_loadu_si128' requires target feature
'sse2', but would be inlined into function 'blit_row_s32a_blend' that is
compiled without support for 'sse2'
_mm_loadu_si128(dst4),
^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
I think skia should be patched (at least on i386) to not require SSE or
MMX or whatever. Otherwise the only other alternative would be
--disable-skia....
Regards,
Rene
More information about the LibreOffice
mailing list