pixman: Branch '0.16' - 2 commits

Siarhei Siamashka siamashka at kemper.freedesktop.org
Sun Sep 6 14:42:14 PDT 2009


 configure.ac             |    6 +++---
 pixman/pixman-arm-neon.c |    4 ++--
 2 files changed, 5 insertions(+), 5 deletions(-)

New commits:
commit 2186bc89486f9f11161b0db280a869c6849c867e
Author: Siarhei Siamashka <siarhei.siamashka at nokia.com>
Date:   Fri Sep 4 14:14:00 2009 +0300

    Change CFLAGS order for PPC and ARM configure tests
    
    CFLAGS are always appended to the end of gcc options when compiling
    sources in autotools based projects. Configure tests should do the
    same. Otherwise build fails on PPC when using CFLAGS="-O2 -mno-altivec"
    for example. Similar problem affects ARM.

diff --git a/configure.ac b/configure.ac
index 061a380..fbc73f6 100644
--- a/configure.ac
+++ b/configure.ac
@@ -318,7 +318,7 @@ fi
 have_vmx_intrinsics=no
 AC_MSG_CHECKING(whether to use VMX/Altivec intrinsics)
 xserver_save_CFLAGS=$CFLAGS
-CFLAGS="$CFLAGS $VMX_CFLAGS"
+CFLAGS="$VMX_CFLAGS $CFLAGS"
 AC_COMPILE_IFELSE([
 #if defined(__GNUC__) && (__GNUC__ < 3 || (__GNUC__ == 3 && __GNUC_MINOR__ < 4))
 error "Need GCC >= 3.4 for sane altivec support"
@@ -362,7 +362,7 @@ ARM_SIMD_CFLAGS="-mcpu=arm1136j-s"
 have_arm_simd=no
 AC_MSG_CHECKING(whether to use ARM SIMD assembler)
 xserver_save_CFLAGS=$CFLAGS
-CFLAGS="$CFLAGS $ARM_SIMD_CFLAGS"
+CFLAGS="$ARM_SIMD_CFLAGS $CFLAGS"
 AC_COMPILE_IFELSE([
 int main () {
     asm("uqadd8 r1, r1, r2");
@@ -401,7 +401,7 @@ ARM_NEON_CFLAGS="-mfpu=neon -mcpu=cortex-a8"
 have_arm_neon=no
 AC_MSG_CHECKING(whether to use ARM NEON)
 xserver_save_CFLAGS=$CFLAGS
-CFLAGS="$CFLAGS $ARM_NEON_CFLAGS"
+CFLAGS="$ARM_NEON_CFLAGS $CFLAGS"
 AC_COMPILE_IFELSE([
 #include <arm_neon.h>
 int main () {
commit 15304e3cddd6568ba6d5d1d3030568c3db7b05cc
Author: Siarhei Siamashka <siarhei.siamashka at nokia.com>
Date:   Wed Sep 2 19:46:47 2009 +0300

    ARM: Remove fallback to ARMv6 implementation from NEON delegate chain
    
    This can help to fix build problems with '-mthumb' gcc option in CFLAGS.
    ARMv6 optimized code can't be compiled for thumb (because of its inline
    assembly) and gets automatically disabled in configure. Reference
    to it from NEON optimized code resulted in linking problems.
    
    Every ARMv6 optimized fast path function also has a better NEON
    counterpart, so there is no need to fallback to ARMv6. Shorter
    delegate chain should additionally result in a bit better performance.

diff --git a/pixman/pixman-arm-neon.c b/pixman/pixman-arm-neon.c
index 3e7f566..8a2d72e 100644
--- a/pixman/pixman-arm-neon.c
+++ b/pixman/pixman-arm-neon.c
@@ -2767,8 +2767,8 @@ arm_neon_fill (pixman_implementation_t *imp,
 pixman_implementation_t *
 _pixman_implementation_create_arm_neon (void)
 {
-    pixman_implementation_t *simd = _pixman_implementation_create_arm_simd ();
-    pixman_implementation_t *imp = _pixman_implementation_create (simd);
+    pixman_implementation_t *general = _pixman_implementation_create_fast_path ();
+    pixman_implementation_t *imp = _pixman_implementation_create (general);
 
     imp->composite = arm_neon_composite;
 #if 0 /* this code has some bugs */


More information about the xorg-commit mailing list