From db3fb5eb605c4e1a6fcb93902389a22fc496151c Mon Sep 17 00:00:00 2001 From: =?utf8?q?S=C3=B8ren=20Sandmann=20Pedersen?= Date: Mon, 21 Jul 2008 22:06:02 -0400 Subject: [PATCH] Don't require GCC 4.2 on x86-64 --- configure.ac | 4 +++- pixman/pixman-pict.c | 5 ++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/configure.ac b/configure.ac index 6dcffb1..13563ed 100644 --- a/configure.ac +++ b/configure.ac @@ -224,7 +224,9 @@ CFLAGS="$CFLAGS -msse2 $SSE_CFLAGS" AC_COMPILE_IFELSE([ #if defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 2)) -#error "Need GCC >= 4.2 for SSE2 intrinsics" +# if !defined(__amd64__) && !defined(__x86_64__) +# error "Need GCC >= 4.2 for SSE2 intrinsics on x86" +# endif #endif #include #include diff --git a/pixman/pixman-pict.c b/pixman/pixman-pict.c index 806e380..b918219 100644 --- a/pixman/pixman-pict.c +++ b/pixman/pixman-pict.c @@ -1703,7 +1703,7 @@ pixman_optimize_operator(pixman_op_t op, pixman_image_t *pSrc, pixman_image_t *p } -#if defined(USE_SSE2) && defined (__GNUC__) +#if defined(USE_SSE2) && defined(__GNUC__) && !defined(__x86_64__) && !defined(__amd64__) /* * Work around GCC bug causing crashes in Mozilla with SSE2 @@ -1715,6 +1715,9 @@ pixman_optimize_operator(pixman_op_t op, pixman_image_t *pSrc, pixman_image_t *p * The __force_align_arg_pointer__ makes gcc generate a prologue that * realigns the stack pointer to 16 bytes. * + * On x86-64 this is not necessary because the standard ABI already + * calls for a 16 byte aligned stack. + * * See https://bugs.freedesktop.org/show_bug.cgi?id=15693 */ -- 2.7.4