pixman: Branch 'master' - 3 commits
Matt Turner
mattst88 at kemper.freedesktop.org
Mon Feb 20 21:11:28 PST 2012
configure.ac | 8 ++++----
pixman/pixman-mmx.c | 20 ++++++++++----------
pixman/pixman-sse2.c | 2 +-
3 files changed, 15 insertions(+), 15 deletions(-)
New commits:
commit 69ed71fad11d541f89eee1238c587a03a9cf59cb
Author: Matt Turner <mattst88 at gmail.com>
Date: Tue Feb 21 00:05:45 2012 +0000
mmx: enable over_x888_8_8888 on ARM/iwMMXt
before: over_x888_8_8888 = L1: 7.63 L2: 7.72 M: 6.44 ( 19.17%) HT: 6.24 VT: 6.11 R: 5.87 RT: 4.61 ( 51Kops/s)
after : over_x888_8_8888 = L1: 11.88 L2: 11.11 M: 8.70 ( 26.01%) HT: 8.15 VT: 8.07 R: 7.76 RT: 5.62 ( 61Kops/s)
Signed-off-by: Matt Turner <mattst88 at gmail.com>
diff --git a/pixman/pixman-mmx.c b/pixman/pixman-mmx.c
index 6e6de5f..d89c3d6 100644
--- a/pixman/pixman-mmx.c
+++ b/pixman/pixman-mmx.c
@@ -3036,7 +3036,7 @@ mmx_composite_copy_area (pixman_implementation_t *imp,
src_x, src_y, dest_x, dest_y, width, height);
}
-#if 0
+#ifdef USE_ARM_IWMMXT
static void
mmx_composite_over_x888_8_8888 (pixman_implementation_t *imp,
pixman_composite_info_t *info)
@@ -3123,9 +3123,9 @@ static const pixman_fast_path_t mmx_fast_paths[] =
PIXMAN_STD_FAST_PATH (OVER, a8r8g8b8, solid, x8r8g8b8, mmx_composite_over_8888_n_8888 ),
PIXMAN_STD_FAST_PATH (OVER, a8b8g8r8, solid, a8b8g8r8, mmx_composite_over_8888_n_8888 ),
PIXMAN_STD_FAST_PATH (OVER, a8b8g8r8, solid, x8b8g8r8, mmx_composite_over_8888_n_8888 ),
-#if 0
+#ifdef USE_ARM_IWMMXT
/* FIXME: This code is commented out since it's apparently
- * not actually faster than the generic code.
+ * not actually faster than the generic code on x86.
*/
PIXMAN_STD_FAST_PATH (OVER, x8r8g8b8, a8, x8r8g8b8, mmx_composite_over_x888_8_8888 ),
PIXMAN_STD_FAST_PATH (OVER, x8r8g8b8, a8, a8r8g8b8, mmx_composite_over_x888_8_8888 ),
commit a14f0f66bba987d5cdcb4a3e0f3e9f7c35d3f6f0
Author: Matt Turner <mattst88 at gmail.com>
Date: Mon Feb 20 18:36:24 2012 -0500
autoconf: use #error instead of error
We'd rather see the actual #error message rather than a syntax error in
config.log.
Signed-off-by: Matt Turner <mattst88 at gmail.com>
diff --git a/configure.ac b/configure.ac
index 4f8a0c5..f39f437 100644
--- a/configure.ac
+++ b/configure.ac
@@ -259,14 +259,14 @@ PIXMAN_CHECK_CFLAG([-fvisibility=hidden], [dnl
#error Have -fvisibility but it is ignored and generates a warning
#endif
#else
-error Need GCC 4.0 for visibility
+#error Need GCC 4.0 for visibility
#endif
])
PIXMAN_CHECK_CFLAG([-xldscope=hidden], [dnl
#if defined(__SUNPRO_C) && (__SUNPRO_C >= 0x550)
#else
-error Need Sun Studio 8 for visibility
+#error Need Sun Studio 8 for visibility
#endif
])
@@ -292,7 +292,7 @@ xserver_save_CFLAGS=$CFLAGS
CFLAGS="$MMX_CFLAGS $CFLAGS"
AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
#if defined(__GNUC__) && (__GNUC__ < 3 || (__GNUC__ == 3 && __GNUC_MINOR__ < 4))
-error "Need GCC >= 3.4 for MMX intrinsics"
+#error "Need GCC >= 3.4 for MMX intrinsics"
#endif
#include <mmintrin.h>
int main () {
@@ -427,7 +427,7 @@ xserver_save_CFLAGS=$CFLAGS
CFLAGS="$VMX_CFLAGS $CFLAGS"
AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
#if defined(__GNUC__) && (__GNUC__ < 3 || (__GNUC__ == 3 && __GNUC_MINOR__ < 4))
-error "Need GCC >= 3.4 for sane altivec support"
+#error "Need GCC >= 3.4 for sane altivec support"
#endif
#include <altivec.h>
int main () {
commit fced5c82c2f0d6d00cb8d0a30ce6a04ec196d274
Author: Matt Turner <mattst88 at gmail.com>
Date: Fri Feb 17 18:17:49 2012 -0500
Convert while (w) to if (w) when possible
Missed in commit 57fd8c37.
Signed-off-by: Matt Turner <mattst88 at gmail.com>
diff --git a/pixman/pixman-mmx.c b/pixman/pixman-mmx.c
index 937ce8f..6e6de5f 100644
--- a/pixman/pixman-mmx.c
+++ b/pixman/pixman-mmx.c
@@ -1360,7 +1360,7 @@ mmx_composite_over_n_8888_8888_ca (pixman_implementation_t *imp,
twidth -= 2;
}
- while (twidth)
+ if (twidth)
{
uint32_t m = *(uint32_t *)p;
@@ -1901,14 +1901,14 @@ pixman_fill_mmx (uint32_t *bits,
byte_line += stride;
w = byte_width;
- while (w >= 1 && ((unsigned long)d & 1))
+ if (w >= 1 && ((unsigned long)d & 1))
{
*(uint8_t *)d = (xor & 0xff);
w--;
d++;
}
- while (w >= 2 && ((unsigned long)d & 3))
+ if (w >= 2 && ((unsigned long)d & 3))
{
*(uint16_t *)d = xor;
w -= 2;
@@ -1961,13 +1961,13 @@ pixman_fill_mmx (uint32_t *bits,
w -= 4;
d += 4;
}
- while (w >= 2)
+ if (w >= 2)
{
*(uint16_t *)d = xor;
w -= 2;
d += 2;
}
- while (w >= 1)
+ if (w >= 1)
{
*(uint8_t *)d = (xor & 0xff);
w--;
@@ -2925,7 +2925,7 @@ pixman_blt_mmx (uint32_t *src_bits,
dst_bytes += dst_stride;
w = byte_width;
- while (w >= 1 && ((unsigned long)d & 1))
+ if (w >= 1 && ((unsigned long)d & 1))
{
*(uint8_t *)d = *(uint8_t *)s;
w -= 1;
@@ -2933,7 +2933,7 @@ pixman_blt_mmx (uint32_t *src_bits,
d += 1;
}
- while (w >= 2 && ((unsigned long)d & 3))
+ if (w >= 2 && ((unsigned long)d & 3))
{
*(uint16_t *)d = *(uint16_t *)s;
w -= 2;
diff --git a/pixman/pixman-sse2.c b/pixman/pixman-sse2.c
index 8adf541..e217ca3 100644
--- a/pixman/pixman-sse2.c
+++ b/pixman/pixman-sse2.c
@@ -3291,7 +3291,7 @@ pixman_fill_sse2 (uint32_t *bits,
byte_line += stride;
w = byte_width;
- while (w >= 1 && ((unsigned long)d & 1))
+ if (w >= 1 && ((unsigned long)d & 1))
{
*(uint8_t *)d = data;
w -= 1;
More information about the xorg-commit
mailing list