pixman: Branch 'master'

Søren Sandmann Pedersen sandmann at kemper.freedesktop.org
Thu Mar 15 12:14:25 PDT 2012


 pixman/pixman-mmx.c |    4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

New commits:
commit 21eeecffa93ba5912487d88851b1a5c60fc37768
Author: Chun-wei Fan <fanchunwei at src.gnome.org>
Date:   Fri Mar 9 15:54:06 2012 +0800

    Just include xmmintrin.h on MSVC as well
    
    The xmmintrin.h as shipped with recent Visual C++ (2003+) provides
    _mm_shuffle_pi16 and _mm_mulhi_pu16, so including that header
    will do for using these functions, and MSVC does not like the GCC-specific
    implementations of _mm_shuffle_pi16 and _mm_mulhi_pu16 that is
    currently in the code.
    
    _MM_SHUFFLE is declared in the same way in MSVC's xmmintrin.h, so don't
    re-define it here to avoid a compilation warning.

diff --git a/pixman/pixman-mmx.c b/pixman/pixman-mmx.c
index f9efd73..9d1f6af 100644
--- a/pixman/pixman-mmx.c
+++ b/pixman/pixman-mmx.c
@@ -57,7 +57,7 @@ _mm_empty (void)
 #endif
 
 #ifdef USE_X86_MMX
-# ifdef __SUNPRO_C
+# if (defined(__SUNPRO_C) || defined(_MSC_VER))
 #  include <xmmintrin.h>
 # else
 /* We have to compile with -msse to use xmmintrin.h, but that causes SSE
@@ -88,8 +88,10 @@ _mm_shuffle_pi16 (__m64 __A, int8_t const __N)
 # endif
 #endif
 
+#ifndef _MSC_VER
 #define _MM_SHUFFLE(fp3,fp2,fp1,fp0) \
  (((fp3) << 6) | ((fp2) << 4) | ((fp1) << 2) | (fp0))
+#endif
 
 /* Notes about writing mmx code
  *


More information about the xorg-commit mailing list