commit 9d97716d2fd91d5611a5e7a7b29b38887b672e9f Author: André Tupinambá Date: Tue Jul 8 14:15:27 2008 -0400 Fix bug 16310 in the SSE2 fast path in function fbCompositeSolidMask_nx8888x0565Csse2 diff --git a/pixman/pixman-sse.c b/pixman/pixman-sse.c index 6f7876c..f456dda 100644 --- a/pixman/pixman-sse.c +++ b/pixman/pixman-sse.c @@ -3839,7 +3839,7 @@ fbCompositeSolidMask_nx8888x0565Csse2 (pixman_op_t op, fbComposeGetStart (pDst, xDst, yDst, uint16_t, dstStride, dstLine, 1); fbComposeGetStart (pMask, xMask, yMask, uint32_t, maskStride, maskLine, 1); - xmmSrc = unpack_32_1x128 (src); + xmmSrc = expandPixel_32_1x128 (src); xmmAlpha = expandAlpha_1x128 (xmmSrc); while (height--) @@ -3862,7 +3862,7 @@ fbCompositeSolidMask_nx8888x0565Csse2 (pixman_op_t op, { d = *dst; - *dst++ = pack565_32_16 (pack_1x64_32 (inOver_1x64 (_mm_movepi64_pi64 (xmmSrc), + *dst = pack565_32_16 (pack_1x64_32 (inOver_1x64 (_mm_movepi64_pi64 (xmmSrc), _mm_movepi64_pi64 (xmmAlpha), unpack_32_1x64 (m), expand565_16_1x64 (d)))); @@ -3926,7 +3926,7 @@ fbCompositeSolidMask_nx8888x0565Csse2 (pixman_op_t op, { d = *dst; - *dst++ = pack565_32_16 (pack_1x64_32 (inOver_1x64 (_mm_movepi64_pi64 (xmmSrc), + *dst = pack565_32_16 (pack_1x64_32 (inOver_1x64 (_mm_movepi64_pi64 (xmmSrc), _mm_movepi64_pi64 (xmmAlpha), unpack_32_1x64 (m), expand565_16_1x64 (d))));