e0c70d4285
<https://github.com/llvm/llvm-project/commit/ b72a8c65e4e34779b6bc9e466203f553f5294486> "PR17164: Change clang's default behavior from -flax-vector-conversions=all to -flax-vector-conversions=integer" broke the build with > In file included from /data/sbergman/lo-clang/core/workdir/UnpackedTarball/skia/src/core/SkOpts.cpp:43: > /data/sbergman/lo-clang/core/workdir/UnpackedTarball/skia/src/opts/SkRasterPipeline_opts.h:713:26: error: no matching function for call to '_mm_and_ps' > return _mm_or_ps(_mm_and_ps(c, t), _mm_andnot_ps(c, e)); > ^~~~~~~~~~ > /data/sbergman/llvm/inst/lib/clang/11.0.0/include/xmmintrin.h:404:1: note: candidate function not viable: no known conversion from 'sse2::I32' (aka 'V<int32_t>') to '__m128' (vector of 4 'float' values) for 1st argument > _mm_and_ps(__m128 __a, __m128 __b) > ^ etc. We could pass in -flax-vector-conversions=all on the compiler command line for Clang 11, but that option is not understood by older versions, so for now just disable the failing JUMPER_IS_SSE2/JUMPER_IS_SSE41 code paths. Ultimately, the skia code will need to be fixed. Change-Id: If3202789f5f08bb40cf2ad8f6bcef5b5b3e462dd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86939 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
11 lines
265 B
Text
11 lines
265 B
Text
--- src/opts/SkRasterPipeline_opts.h
|
|
+++ src/opts/SkRasterPipeline_opts.h
|
|
@@ -68,7 +68,7 @@
|
|
};
|
|
|
|
|
|
-#if !defined(__clang__)
|
|
+#if !defined(__clang__) || __clang_major__ >= 11
|
|
#define JUMPER_IS_SCALAR
|
|
#elif defined(SK_ARM_HAS_NEON)
|
|
#define JUMPER_IS_NEON
|