Fix SSE2 bug where x888 pixels were treated as 8888
authorAndré Tupinambá <andrelrt@gmail.com>
Wed, 16 Jul 2008 18:29:29 +0000 (14:29 -0400)
committerSøren Sandmann <sandmann@redhat.com>
Wed, 16 Jul 2008 18:51:49 +0000 (14:51 -0400)
pixman/pixman-sse.c

index f456dda..b1e41b9 100644 (file)
@@ -2816,7 +2816,7 @@ fbCompositeSrc_x888xnx8888sse2 (pixman_op_t op,
             cachePrefetchNext ((__m128i*)dst);
             cachePrefetchNext ((__m128i*)src);
 
-            xmmSrc = load128Unaligned ((__m128i*)src);
+            xmmSrc = _mm_or_si128 (load128Unaligned ((__m128i*)src), Maskff000000);
             xmmDst = load128Aligned ((__m128i*)dst);
 
             unpack_128_2x128 (xmmSrc, &xmmSrcLo, &xmmSrcHi);