[Pixman] [PATCH] Always use xmmintrin.h for 64 bit Windows

Stefan Weil sw at weilnetz.de
Sat Nov 17 01:49:33 PST 2012


Am 16.11.2012 23:22, schrieb Matt Turner:
> On Tue, Nov 13, 2012 at 10:44 AM, Stefan Weil<sw at weilnetz.de>  wrote:
>> MinGW-w64 uses the GNU compiler and does not define _MSC_VER.
>> Nevertheless, it provides xmmintrin.h and must be handled
>> here like the MS compiler. Otherwise compilation fails due to
>> conflicting declarations.
>>
>> Signed-off-by: Stefan Weil<sw at weilnetz.de>
>> ---
>>   pixman/pixman-mmx.c |    2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/pixman/pixman-mmx.c b/pixman/pixman-mmx.c
>> index c2ae4ea..aef468a 100644
>> --- a/pixman/pixman-mmx.c
>> +++ b/pixman/pixman-mmx.c
>> @@ -62,7 +62,7 @@ _mm_empty (void)
>>   #endif
>>
>>   #ifdef USE_X86_MMX
>> -# if (defined(__SUNPRO_C) || defined(_MSC_VER))
>> +# if (defined(__SUNPRO_C) || defined(_MSC_VER) || defined(_WIN64))
>>   #  include<xmmintrin.h>
>>   # else
>>   /* We have to compile with -msse to use xmmintrin.h, but that causes SSE
>> --
>> 1.7.10.4
>
> If you're compiling for Win64, you have SSE2. Why even compile the MMX code?


That's the result of a cross compilation on Debian Squeeze.
Pixman was configured using

     configure --host=amd64-mingw32msvc

Then make compiles MMX code. With native builds, SSE2 is used.

I did not look for a patch which fixes cross builds to use SSE2,
too (although it might be desirable to get more performance).
My primary goal was fixing build issues with QEMU which recently
started using pixman.

Regards
Stefan Weil



More information about the Pixman mailing list