pixman: Branch 'master' - 2 commits
Matt Turner
mattst88 at kemper.freedesktop.org
Sat Jun 9 13:57:53 PDT 2012
configure.ac | 22 +++++++++++++++-------
pixman/Makefile.am | 18 +++++++++++++-----
2 files changed, 28 insertions(+), 12 deletions(-)
New commits:
commit 367b78fd5c57ee05298eb11370b68d01613961e5
Author: Matt Turner <mattst88 at gmail.com>
Date: Wed May 30 16:44:04 2012 -0400
configure.ac: add iwmmxt2 configure flag
The flag allows the user to select whether pixman-mmx.c is compiled with
-march=iwmmxt or -march=iwmmxt2.
gcc has scheduling support for the Marvell CPU in the XO 1.75 when
building with -march=iwmmxt2.
diff --git a/configure.ac b/configure.ac
index a544e19..2b9d1ba 100644
--- a/configure.ac
+++ b/configure.ac
@@ -607,8 +607,21 @@ fi
dnl ===========================================================================
dnl Check for IWMMXT
+AC_ARG_ENABLE(arm-iwmmxt,
+ [AC_HELP_STRING([--disable-arm-iwmmxt],
+ [disable ARM IWMMXT fast paths])],
+ [enable_iwmmxt=$enableval], [enable_iwmmxt=auto])
+
+AC_ARG_ENABLE(arm-iwmmxt2,
+ [AC_HELP_STRING([--disable-arm-iwmmxt2],
+ [build ARM IWMMXT fast paths with -march=iwmmxt instead of -march=iwmmxt2])],
+ [enable_iwmmxt2=$enableval], [enable_iwmmxt2=auto])
+
if test "x$IWMMXT_CFLAGS" = "x" ; then
- IWMMXT_CFLAGS="-march=iwmmxt -flax-vector-conversions -Winline"
+ IWMMXT_CFLAGS="-flax-vector-conversions -Winline -march=iwmmxt"
+ if test $enable_iwmmxt2 != no ; then
+ IWMMXT_CFLAGS+="2"
+ fi
fi
have_iwmmxt_intrinsics=no
@@ -636,11 +649,6 @@ int main () {
}]])], have_iwmmxt_intrinsics=yes)
CFLAGS=$xserver_save_CFLAGS
-AC_ARG_ENABLE(arm-iwmmxt,
- [AC_HELP_STRING([--disable-arm-iwmmxt],
- [disable ARM IWMMXT fast paths])],
- [enable_iwmmxt=$enableval], [enable_iwmmxt=auto])
-
if test $enable_iwmmxt = no ; then
have_iwmmxt_intrinsics=disabled
fi
commit 31a6563ec5167d6b15fdb8c158a71ab4f97015ab
Author: Matt Turner <mattst88 at gmail.com>
Date: Wed May 30 16:26:32 2012 -0400
autotools: use custom build rule to build iwMMXt code
gcc has no sane way of enabling iwmmxt code generation, like -msse for
SSE, so you have to use -march=iwmmxt{,2}. User CFLAGS are placed after
-march=iwmmxt and override the march value, so we have to use a custom
build rule to order the CFLAGS such that pixman-mmx.c will be built with
the necessary CFLAGS.
diff --git a/configure.ac b/configure.ac
index 5c60b13..a544e19 100644
--- a/configure.ac
+++ b/configure.ac
@@ -614,7 +614,7 @@ fi
have_iwmmxt_intrinsics=no
AC_MSG_CHECKING(whether to use ARM IWMMXT intrinsics)
xserver_save_CFLAGS=$CFLAGS
-CFLAGS="$IWMMXT_CFLAGS $CFLAGS"
+CFLAGS="$CFLAGS $IWMMXT_CFLAGS"
AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
#ifndef __arm__
#error "IWMMXT is only available on ARM"
diff --git a/pixman/Makefile.am b/pixman/Makefile.am
index b320a58..1b232ad 100644
--- a/pixman/Makefile.am
+++ b/pixman/Makefile.am
@@ -93,13 +93,21 @@ endif
# iwmmxt code
if USE_ARM_IWMMXT
noinst_LTLIBRARIES += libpixman-iwmmxt.la
-libpixman_iwmmxt_la_SOURCES = pixman-mmx.c
-libpixman_iwmmxt_la_CFLAGS = $(DEP_CFLAGS) $(IWMMXT_CFLAGS)
-libpixman_iwmmxt_la_LIBADD = $(DEP_LIBS)
-libpixman_1_la_LDFLAGS += $(IWMMXT_LDFLAGS)
libpixman_1_la_LIBADD += libpixman-iwmmxt.la
-ASM_CFLAGS_IWMMXT=$(IWMMXT_CFLAGS)
+libpixman_iwmmxt_la-pixman-mmx.lo: pixman-mmx.c
+ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(CFLAGS) $(IWMMXT_CFLAGS) -MT libpixman_iwmmxt_la-pixman-mmx.lo -MD -MP -MF $(DEPDIR)/libpixman_iwmmxt_la-pixman-mmx.Tpo -c -o libpixman_iwmmxt_la-pixman-mmx.lo `test -f 'pixman-mmx.c' || echo '$(srcdir)/'`pixman-mmx.c
+ $(AM_V_at)$(am__mv) $(DEPDIR)/libpixman_iwmmxt_la-pixman-mmx.Tpo $(DEPDIR)/libpixman_iwmmxt_la-pixman-mmx.Plo
+
+libpixman_iwmmxt_la_DEPENDENCIES = $(am__DEPENDENCIES_1)
+libpixman_iwmmxt_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
+ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
+ $(CFLAGS) $(IWMMXT_CFLAGS) $(AM_LDFLAGS) \
+ $(LDFLAGS) -o $@
+libpixman_iwmmxt_la_LIBADD = $(DEP_LIBS)
+
+libpixman-iwmmxt.la: libpixman_iwmmxt_la-pixman-mmx.lo $(libpixman_iwmmxt_la_DEPENDENCIES)
+ $(AM_V_CCLD)$(libpixman_iwmmxt_la_LINK) libpixman_iwmmxt_la-pixman-mmx.lo $(libpixman_iwmmxt_la_LIBADD) $(LIBS)
endif
# mips dspr2 code
More information about the xorg-commit
mailing list