[Pixman] [PATCH 2/4] Disable MMX when incompatible clang is being used.

Siarhei Siamashka siarhei.siamashka at gmail.com
Thu Mar 8 10:41:10 PST 2012


On Thu, Mar 8, 2012 at 8:31 PM, Jeremy Huddleston <jeremyhu at apple.com> wrote:
>
> On Mar 8, 2012, at 09:51, Matt Turner wrote:
>
>> On Thu, Mar 8, 2012 at 5:41 PM, Jeremy Huddleston <jeremyhu at apple.com> wrote:
>>> Signed-off-by: Jeremy Huddleston <jeremyhu at apple.com>
>>> ---
>>>  configure.ac |    9 +++++++++
>>>  1 files changed, 9 insertions(+), 0 deletions(-)
>>>
>>> diff --git a/configure.ac b/configure.ac
>>> index c3c711c..1ca3c02 100644
>>> --- a/configure.ac
>>> +++ b/configure.ac
>>> @@ -297,6 +297,15 @@ AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
>>>  #include <mmintrin.h>
>>>  int main () {
>>>     __m64 v = _mm_cvtsi32_si64 (1);
>>> +    __m64 w;
>>> +    int8_t x;
>>> +
>>> +    /* Some versions of clang will choke on K */
>>> +    asm ("pshufw %2, %1, %0\n\t"
>>> +        : "=y" (v)
>>> +        : "y" (w), "K" (x)
>>> +    );
>>> +
>>>     return _mm_cvtsi64_si32 (v);
>>>  }]])], have_mmx_intrinsics=yes)
>>>  CFLAGS=$xserver_save_CFLAGS
>>> --
>>> 1.7.9
>>
>> Newer clangs support the "K" constraint? Fixed in response to its use
>> in pixman? :)
>
> Unfortunately, I'm just being optimistic at this point.

Is there at least a bug reported in LLVM bugtracker? IMHO a good
practice is to never add any workarounds without having a bug reported
against the offending tool or library.

-- 
Best regards,
Siarhei Siamashka


More information about the Pixman mailing list