projects
/
profile
/
ivi
/
pixman.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
084e3f2
)
mmx: add load function and use it in add_8888_8888
author
Matt Turner
<mattst88@gmail.com>
Fri, 24 Feb 2012 17:34:41 +0000
(12:34 -0500)
committer
Matt Turner
<mattst88@gmail.com>
Fri, 27 Apr 2012 17:34:53 +0000
(13:34 -0400)
pixman/pixman-mmx.c
patch
|
blob
|
history
diff --git
a/pixman/pixman-mmx.c
b/pixman/pixman-mmx.c
index
36cf2cd
..
f8dfca7
100644
(file)
--- a/
pixman/pixman-mmx.c
+++ b/
pixman/pixman-mmx.c
@@
-356,9
+356,15
@@
static force_inline uint32_t ldl_u(const uint32_t *p)
}
static force_inline __m64
}
static force_inline __m64
+load (const uint32_t *v)
+{
+ return _mm_cvtsi32_si64 (*v);
+}
+
+static force_inline __m64
load8888 (const uint32_t *v)
{
load8888 (const uint32_t *v)
{
- return _mm_unpacklo_pi8 (
_mm_cvtsi32_si64 (*
v), _mm_setzero_si64 ());
+ return _mm_unpacklo_pi8 (
load (
v), _mm_setzero_si64 ());
}
static force_inline __m64
}
static force_inline __m64
@@
-2864,8
+2870,8
@@
mmx_composite_add_8888_8888 (pixman_implementation_t *imp,
while (w && (unsigned long)dst & 7)
{
while (w && (unsigned long)dst & 7)
{
- store (dst, _mm_adds_pu8 (
_mm_cvtsi32_si64 (*
src),
-
_mm_cvtsi32_si64 (*
dst)));
+ store (dst, _mm_adds_pu8 (
load ((const uint32_t *)
src),
+
load ((const uint32_t *)
dst)));
dst++;
src++;
w--;
dst++;
src++;
w--;
@@
-2882,8
+2888,8
@@
mmx_composite_add_8888_8888 (pixman_implementation_t *imp,
if (w)
{
if (w)
{
- store (dst, _mm_adds_pu8 (
_mm_cvtsi32_si64 (*
src),
-
_mm_cvtsi32_si64 (*
dst)));
+ store (dst, _mm_adds_pu8 (
load ((const uint32_t *)
src),
+
load ((const uint32_t *)
dst)));
}
}
}
}