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

Matt Turner mattst88 at gmail.com
Thu Mar 8 09:51:01 PST 2012


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? :)


More information about the Pixman mailing list