{
__m64 d, da;
uint32_t s = combine (src, mask);
-
+
d = load8888 (*dest);
da = expand_alpha (d);
*dest = store8888 (over (d, da, load8888 (s)));
while (dest < end)
{
__m64 x, a;
-
+
x = load8888 (combine (src, mask));
a = load8888 (*dest);
a = expand_alpha (a);
x = pix_multiply (x, a);
-
+
*dest = store8888 (x);
++dest;
while (dest < end)
{
__m64 x, a;
-
+
x = load8888 (*dest);
a = load8888 (combine (src, mask));
a = expand_alpha (a);
while (dest < end)
{
__m64 x, a;
-
+
x = load8888 (combine (src, mask));
a = load8888 (*dest);
a = expand_alpha (a);
while (dest < end)
{
__m64 x, a;
-
+
x = load8888 (*dest);
a = load8888 (combine (src, mask));
a = expand_alpha (a);
while (dest < end)
{
__m64 s, da, d, sia;
-
+
s = load8888 (combine (src, mask));
d = load8888 (*dest);
sia = expand_alpha (s);
while (dest < end)
{
__m64 s, dia, d, sa;
-
+
s = load8888 (combine (src, mask));
d = load8888 (*dest);
sa = expand_alpha (s);
while (dest < end)
{
__m64 s, dia, d, sia;
-
+
s = load8888 (combine (src, mask));
d = load8888 (*dest);
sia = expand_alpha (s);
while (dest < end)
{
__m64 s, d;
-
+
s = load8888 (combine (src, mask));
d = load8888 (*dest);
s = pix_add (s, d);
{
__m64 a = load8888 (*mask);
__m64 s = load8888 (*src);
-
+
s = pix_multiply (s, a);
*dest = store8888 (s);
__m64 s = load8888 (*src);
__m64 d = load8888 (*dest);
__m64 da = expand_alpha (d);
-
+
s = pix_multiply (s, a);
s = pix_multiply (s, da);
*dest = store8888 (s);
__m64 s = load8888 (*src);
__m64 d = load8888 (*dest);
__m64 sa = expand_alpha (s);
-
+
a = pix_multiply (a, sa);
d = pix_multiply (d, a);
*dest = store8888 (d);
__m64 s = load8888 (*src);
__m64 d = load8888 (*dest);
__m64 da = expand_alpha (d);
-
+
da = negate (da);
s = pix_multiply (s, a);
s = pix_multiply (s, da);
{
uint64_t d = *dst;
__m64 vdest = expand565 (M64 (d), 0);
-
+
vdest = pack_565 (over (vsrc, vsrca, vdest), vdest, 0);
*dst = UINT64 (vdest);
{
uint64_t d = *dst;
__m64 vdest = expand565 (M64 (d), 0);
-
+
vdest = pack_565 (over (vsrc, vsrca, vdest), vdest, 0);
*dst = UINT64 (vdest);
{
s = *src++;
a = s >> 24;
-
+
if (a == 0xff)
{
*dst = s;
sa = expand_alpha (ms);
*dst = store8888 (over (ms, sa, load8888 (*dst)));
}
-
+
dst++;
}
}
__m64 vdest = in_over (vsrc, vsrca,
expand_alpha_rev (M64 (m)),
load8888 (*dst));
-
+
*dst = store8888 (vdest);
}
while (w >= 2)
{
uint64_t m0, m1;
-
+
m0 = *mask;
m1 = *(mask + 1);
"movq %7, %5\n"
"movq %7, %6\n"
: "=y" (v1), "=y" (v2), "=y" (v3),
- "=y" (v4), "=y" (v5), "=y" (v6), "=y" (v7)
+ "=y" (v4), "=y" (v5), "=y" (v6), "=y" (v7)
: "y" (vfill));
#endif
{
int w;
uint8_t *d = byte_line;
-
+
byte_line += stride;
w = byte_width;
"movq %8, 56(%0)\n"
:
: "r" (d),
- "y" (vfill), "y" (v1), "y" (v2), "y" (v3),
- "y" (v4), "y" (v5), "y" (v6), "y" (v7)
+ "y" (vfill), "y" (v1), "y" (v2), "y" (v3),
+ "y" (v4), "y" (v5), "y" (v6), "y" (v7)
: "memory");
#else
*(__m64*) (d + 0) = vfill;
if (m)
{
__m64 vdest = in (vsrc, expand_alpha_rev (M64 (m)));
-
+
*dst = store8888 (vdest);
}
else
if (m)
{
__m64 vdest = load8888 (*dst);
-
+
vdest = in (vsrc, expand_alpha_rev (M64 (m)));
*dst = store8888 (vdest);
}
__m64 vd = M64 (d);
__m64 vdest = in_over (
vsrc, vsrca, expand_alpha_rev (M64 (m)), expand565 (vd, 0));
-
+
vd = pack_565 (vdest, _mm_setzero_si64 (), 0);
*dst = UINT64 (vd);
}
:
: "r" (d), "r" (s)
: "memory",
- "%mm0", "%mm1", "%mm2", "%mm3",
- "%mm4", "%mm5", "%mm6", "%mm7");
+ "%mm0", "%mm1", "%mm2", "%mm3",
+ "%mm4", "%mm5", "%mm6", "%mm7");
#else
__m64 v0 = *(__m64 *)(s + 0);
__m64 v1 = *(__m64 *)(s + 8);
{
return _pixman_implementation_blt (
- imp->delegate,
- src_bits, dst_bits, src_stride, dst_stride, src_bpp, dst_bpp,
- src_x, src_y, dst_x, dst_y, width, height);
+ imp->delegate,
+ src_bits, dst_bits, src_stride, dst_stride, src_bpp, dst_bpp,
+ src_x, src_y, dst_x, dst_y, width, height);
}
return TRUE;
if (!pixman_fill_mmx (bits, stride, bpp, x, y, width, height, xor))
{
return _pixman_implementation_fill (
- imp->delegate, bits, stride, bpp, x, y, width, height, xor);
+ imp->delegate, bits, stride, bpp, x, y, width, height, xor);
}
return TRUE;