pixman: Branch 'master' - 2 commits
Søren Sandmann Pedersen
sandmann at kemper.freedesktop.org
Wed Feb 22 11:18:37 PST 2012
pixman/pixman-mmx.c | 25 +++++--------------------
1 file changed, 5 insertions(+), 20 deletions(-)
New commits:
commit 51ae3f2d7f25daebbc767f161f0097b581d1554b
Author: Søren Sandmann Pedersen <ssp at redhat.com>
Date: Tue Feb 21 19:30:04 2012 -0500
mmx: Delete unused function in_over_full_src_alpha()
Also a few minor formatting fixes.
Reviewed-by: Matt Turner <mattst88 at gmail.com>
diff --git a/pixman/pixman-mmx.c b/pixman/pixman-mmx.c
index 609e532..a3500ce 100644
--- a/pixman/pixman-mmx.c
+++ b/pixman/pixman-mmx.c
@@ -63,7 +63,7 @@ _mm_empty (void)
extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
_mm_mulhi_pu16 (__m64 __A, __m64 __B)
{
- asm("pmulhuw %1, %0\n\t"
+ asm ("pmulhuw %1, %0\n\t"
: "+y" (__A)
: "y" (__B)
);
@@ -75,7 +75,7 @@ _mm_shuffle_pi16 (__m64 __A, int8_t const __N)
{
__m64 ret;
- asm("pshufw %2, %1, %0\n\t"
+ asm ("pshufw %2, %1, %0\n\t"
: "=y" (ret)
: "y" (__A), "K" (__N)
);
@@ -259,19 +259,19 @@ pix_add (__m64 a, __m64 b)
static force_inline __m64
expand_alpha (__m64 pixel)
{
- return _mm_shuffle_pi16(pixel, _MM_SHUFFLE (3, 3, 3, 3));
+ return _mm_shuffle_pi16 (pixel, _MM_SHUFFLE (3, 3, 3, 3));
}
static force_inline __m64
expand_alpha_rev (__m64 pixel)
{
- return _mm_shuffle_pi16(pixel, _MM_SHUFFLE (0, 0, 0, 0));
+ return _mm_shuffle_pi16 (pixel, _MM_SHUFFLE (0, 0, 0, 0));
}
static force_inline __m64
invert_colors (__m64 pixel)
{
- return _mm_shuffle_pi16(pixel, _MM_SHUFFLE (3, 0, 1, 2));
+ return _mm_shuffle_pi16 (pixel, _MM_SHUFFLE (3, 0, 1, 2));
}
static force_inline __m64
@@ -297,14 +297,6 @@ in (__m64 src, __m64 mask)
return pix_multiply (src, mask);
}
-static force_inline __m64
-in_over_full_src_alpha (__m64 src, __m64 mask, __m64 dest)
-{
- src = _mm_or_si64 (src, MC (full_alpha));
-
- return over (in (src, mask), mask, dest);
-}
-
#ifndef _MSC_VER
static force_inline __m64
in_over (__m64 src, __m64 srca, __m64 mask, __m64 dest)
commit bbd1e6941b39adcdb64c77670889314fa8461c0b
Author: Søren Sandmann Pedersen <ssp at redhat.com>
Date: Tue Feb 21 19:23:33 2012 -0500
mmx: Enable over_x888_8_8888() for x86 as well
It used to be slower than the generic code (with the gcc that was
current in 2007), but that doesn't seem to be the case anymore:
over_x888_8_8888 = L1: 22.97 L2: 22.88 M: 22.27 ( 5.29%) HT: 18.30 VT: 15.81 R: 15.54 RT: 10.35 ( 131Kops/s)
over_x888_8_8888 = L1: 53.56 L2: 53.20 M: 50.50 ( 11.99%) HT: 38.60 VT: 31.19 R: 29.00 RT: 17.37 ( 208Kops/s)
Reviewed-by: Matt Turner <mattst88 at gmail.com>
diff --git a/pixman/pixman-mmx.c b/pixman/pixman-mmx.c
index 09b2077..609e532 100644
--- a/pixman/pixman-mmx.c
+++ b/pixman/pixman-mmx.c
@@ -3029,7 +3029,6 @@ mmx_composite_copy_area (pixman_implementation_t *imp,
src_x, src_y, dest_x, dest_y, width, height);
}
-#ifdef USE_ARM_IWMMXT
static void
mmx_composite_over_x888_8_8888 (pixman_implementation_t *imp,
pixman_composite_info_t *info)
@@ -3086,7 +3085,6 @@ mmx_composite_over_x888_8_8888 (pixman_implementation_t *imp,
_mm_empty ();
}
-#endif
static const pixman_fast_path_t mmx_fast_paths[] =
{
@@ -3116,15 +3114,10 @@ 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 ),
-#ifdef USE_ARM_IWMMXT
- /* FIXME: This code is commented out since it's apparently
- * 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 ),
PIXMAN_STD_FAST_PATH (OVER, x8b8g8r8, a8, x8b8g8r8, mmx_composite_over_x888_8_8888 ),
PIXMAN_STD_FAST_PATH (OVER, x8b8g8r8, a8, a8b8g8r8, mmx_composite_over_x888_8_8888 ),
-#endif
PIXMAN_STD_FAST_PATH (OVER, solid, null, a8r8g8b8, mmx_composite_over_n_8888 ),
PIXMAN_STD_FAST_PATH (OVER, solid, null, x8r8g8b8, mmx_composite_over_n_8888 ),
PIXMAN_STD_FAST_PATH (OVER, solid, null, r5g6b5, mmx_composite_over_n_0565 ),
More information about the xorg-commit
mailing list