diff options
Diffstat (limited to 'pixman/pixman-orc.c')
-rw-r--r-- | pixman/pixman-orc.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/pixman/pixman-orc.c b/pixman/pixman-orc.c index c9ccb08..56c2042 100644 --- a/pixman/pixman-orc.c +++ b/pixman/pixman-orc.c @@ -112,6 +112,21 @@ orc_combine_atop_u (pixman_implementation_t *imp, } } +static void +orc_combine_xor_u (pixman_implementation_t *imp, + pixman_op_t op, + uint32_t * dst, + const uint32_t * src, + const uint32_t * mask, + int width) +{ + if (mask) { + orc_code_combine_xor_u (dst, src, mask, width); + } else { + orc_code_combine_xor_u_n (dst, src, width); + } +} + pixman_bool_t pixman_fill_orc (uint32_t *bits, @@ -499,7 +514,7 @@ _pixman_implementation_create_orc (void) //imp->combine_32[PIXMAN_OP_OUT_REVERSE] = orc_combine_out_reverse_u; imp->combine_32[PIXMAN_OP_ATOP] = orc_combine_atop_u; //imp->combine_32[PIXMAN_OP_ATOP_REVERSE] = orc_combine_atop_reverse_u; - //imp->combine_32[PIXMAN_OP_XOR] = orc_combine_xor_u; + imp->combine_32[PIXMAN_OP_XOR] = orc_combine_xor_u; imp->combine_32[PIXMAN_OP_ADD] = orc_combine_add_u; //imp->combine_32[PIXMAN_OP_SATURATE] = orc_combine_saturate_u; |