summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBilly Biggs <vektor@dumbterm.net>2005-09-18 19:56:32 +0000
committerBilly Biggs <vektor@dumbterm.net>2005-09-18 19:56:32 +0000
commitdbe0552ed39a39133d89975ac3ba9359a766c52f (patch)
treea0678123ba739d916e30af95f481349d971a7556
parent178909580f357f190fd26b437cdd962ce6fc59d0 (diff)
Bug #4414, reviewed by otaylor, cworth.
Remove -msse from the MMX CFLAGS as it causes gcc to emit SSE instructions, however the detection code only checks for processors supporting MMX and does not require SSE. Fix the MMX test to only check for MMX intrinsics and not the SSE intrinsics.
-rw-r--r--ChangeLog10
-rw-r--r--configure.in6
2 files changed, 13 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 84605389a..176c15489 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2005-09-18 Billy Biggs <vektor@dumbterm.net>
+
+ Bug #4414, reviewed by otaylor, cworth.
+
+ * configure.in: Remove -msse from the MMX CFLAGS as it causes
+ gcc to emit SSE instructions, however the detection code only
+ checks for processors supporting MMX and does not require SSE.
+ Fix the MMX test to only check for MMX intrinsics and not the
+ SSE intrinsics.
+
2005-09-16 Carl Worth <cworth@cworth.org>
Tested by: John Ellson
diff --git a/configure.in b/configure.in
index 0bf08ea8e..2ac454c3c 100644
--- a/configure.in
+++ b/configure.in
@@ -474,7 +474,7 @@ AC_SUBST(PKGCONFIG_REQUIRES)
dnl ===========================================================================
dnl Check for MMX
-MMX_CFLAGS="-mmmx -msse -Winline --param inline-unit-growth=10000 --param large-function-growth=10000"
+MMX_CFLAGS="-mmmx -Winline --param inline-unit-growth=10000 --param large-function-growth=10000"
have_mmx_intrinsics=no
AC_MSG_CHECKING(For MMX/SSE intrinsics in the compiler)
@@ -485,10 +485,10 @@ AC_COMPILE_IFELSE([
#error "Need GCC >= 3.4 for MMX intrinsics"
#endif
#include <mmintrin.h>
-#include <xmmintrin.h>
int main () {
__m64 v = _mm_cvtsi32_si64 (1);
- v = _mm_shuffle_pi16 (v, _MM_SHUFFLE(3, 3, 3, 3));
+ __m64 w = _mm_slli_si64 (v, 1);
+ v = _mm_or_si64 (v, w);
return _mm_cvtsi64_si32 (v);
}], have_mmx_intrinsics=yes)
CFLAGS=$xserver_save_CFLAGS