From: Søren Sandmann Pedersen Date: Fri, 7 Aug 2009 15:07:16 +0000 (-0400) Subject: Do the full four-component IN computation in vmx_combine_in_ca(). X-Git-Tag: pixman-0.15.20~1^2~18 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=5191421d1f143cca76afa1f4fbffa68f89a5d393;p=platform%2Fupstream%2Fpixman.git Do the full four-component IN computation in vmx_combine_in_ca(). --- diff --git a/pixman/pixman-vmx.c b/pixman/pixman-vmx.c index 5978a07..3468ad5 100644 --- a/pixman/pixman-vmx.c +++ b/pixman/pixman-vmx.c @@ -1252,30 +1252,30 @@ vmx_combine_in_ca (pixman_implementation_t *imp, vector unsigned int vdest, vsrc, vmask; vector unsigned char tmp1, tmp2, tmp3, tmp4, edges, dest_mask, mask_mask, src_mask, store_mask; - + COMPUTE_SHIFT_MASKC (dest, src, mask); - + /* printf ("%s\n",__PRETTY_FUNCTION__); */ for (i = width / 4; i > 0; i--) { - LOAD_VECTORSC (dest, src, mask); - + vdest = pix_multiply (pix_multiply (vsrc, vmask), splat_alpha (vdest)); - + STORE_VECTOR (dest); - + src += 4; dest += 4; mask += 4; } - + for (i = width % 4; --i >= 0;) { uint32_t a = mask[i]; uint32_t s = src[i]; uint32_t da = ALPHA_8 (dest[i]); - UN8x4_MUL_UN8 (s, a); + + UN8x4_MUL_UN8x4 (s, a); UN8x4_MUL_UN8 (s, da); dest[i] = s; }