[Nouveau] [Bug 93454] Can't build with LLVM/clang 3.7.0 - SSSE3 instruction set not enabled
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Sun Dec 20 02:37:50 PST 2015
https://bugs.freedesktop.org/show_bug.cgi?id=93454
--- Comment #6 from Jose Fonseca <jfonseca at vmware.com> ---
The issue is simple:
- GCC used to require -msse3 in order to include tmmintrin.h
- MSVC/ICC does not
- GCC 4.9 finally eliminated that awkward requirement -- it's now possible to
use SSE3 instrinsics without giving GCC carte blanch to emit SSSE3 whenever it
wants
- it appears Clang claims to be GCC 4.9 but does not in fact support this.
We can workaround by adding
diff --git a/src/gallium/include/pipe/p_config.h
b/src/gallium/include/pipe/p_config.h
index 0b570c7..7d5d7d4 100644
--- a/src/gallium/include/pipe/p_config.h
+++ b/src/gallium/include/pipe/p_config.h
@@ -96,7 +96,7 @@
#else
#define PIPE_ARCH_SSE
#endif
-#if defined(PIPE_CC_GCC) && (__GNUC__ * 100 + __GNUC_MINOR__) < 409 &&
!defined(__SSSE3__)
+#if defined(PIPE_CC_GCC) && ((__GNUC__ * 100 + __GNUC_MINOR__) < 409 ||
defined(__clang__)) && !defined(__SSSE3__)
/* #warning SSE3 support requires -msse3 compiler options before GCC 4.9 */
#else
#define PIPE_ARCH_SSSE3
But this is above all a bug in Clang 3.7. If that strive/claim to be GCC 4.9
then they should handle this too.
--
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/nouveau/attachments/20151220/28dcf914/attachment.html>
More information about the Nouveau
mailing list