diff options
author | David Schleef <ds@schleef.org> | 2010-08-09 16:22:21 -0700 |
---|---|---|
committer | David Schleef <ds@schleef.org> | 2011-05-17 10:24:31 -0700 |
commit | da2053bd56dd6d183a09bdda13804ceebccac5aa (patch) | |
tree | f280f938b048477a4eb00ce2c941b1d20dd3316f | |
parent | 29e04980e956fcf21a2f32c815780c0908b7e769 (diff) |
fixes for rebase
-rw-r--r-- | pixman/pixman-orc.c | 144 |
1 files changed, 72 insertions, 72 deletions
diff --git a/pixman/pixman-orc.c b/pixman/pixman-orc.c index 58fa058..6a1da67 100644 --- a/pixman/pixman-orc.c +++ b/pixman/pixman-orc.c @@ -403,86 +403,88 @@ orc_composite_over_8888_8_8888 (pixman_implementation_t *imp, static const pixman_fast_path_t orc_fast_paths[] = { #if 0 - { PIXMAN_OP_OVER, PIXMAN_solid, PIXMAN_a8, PIXMAN_r5g6b5, orc_composite_over_n_8_0565 }, - { PIXMAN_OP_OVER, PIXMAN_solid, PIXMAN_a8, PIXMAN_b5g6r5, orc_composite_over_n_8_0565 }, - { PIXMAN_OP_OVER, PIXMAN_solid, PIXMAN_null, PIXMAN_a8r8g8b8, orc_composite_over_n_8888 }, - { PIXMAN_OP_OVER, PIXMAN_solid, PIXMAN_null, PIXMAN_x8r8g8b8, orc_composite_over_n_8888 }, - { PIXMAN_OP_OVER, PIXMAN_solid, PIXMAN_null, PIXMAN_r5g6b5, orc_composite_over_n_0565 }, - { PIXMAN_OP_OVER, PIXMAN_a8r8g8b8, PIXMAN_null, PIXMAN_a8r8g8b8, orc_composite_over_8888_8888 }, - { PIXMAN_OP_OVER, PIXMAN_a8r8g8b8, PIXMAN_null, PIXMAN_x8r8g8b8, orc_composite_over_8888_8888 }, - { PIXMAN_OP_OVER, PIXMAN_a8b8g8r8, PIXMAN_null, PIXMAN_a8b8g8r8, orc_composite_over_8888_8888 }, - { PIXMAN_OP_OVER, PIXMAN_a8b8g8r8, PIXMAN_null, PIXMAN_x8b8g8r8, orc_composite_over_8888_8888 }, - { PIXMAN_OP_OVER, PIXMAN_a8r8g8b8, PIXMAN_null, PIXMAN_r5g6b5, orc_composite_over_8888_0565 }, - { PIXMAN_OP_OVER, PIXMAN_a8b8g8r8, PIXMAN_null, PIXMAN_b5g6r5, orc_composite_over_8888_0565 }, - { PIXMAN_OP_OVER, PIXMAN_solid, PIXMAN_a8, PIXMAN_a8r8g8b8, orc_composite_over_n_8_8888 }, - { PIXMAN_OP_OVER, PIXMAN_solid, PIXMAN_a8, PIXMAN_x8r8g8b8, orc_composite_over_n_8_8888 }, - { PIXMAN_OP_OVER, PIXMAN_solid, PIXMAN_a8, PIXMAN_a8b8g8r8, orc_composite_over_n_8_8888 }, - { PIXMAN_OP_OVER, PIXMAN_solid, PIXMAN_a8, PIXMAN_x8b8g8r8, orc_composite_over_n_8_8888 }, - { PIXMAN_OP_OVER, PIXMAN_a8r8g8b8, PIXMAN_a8, PIXMAN_x8r8g8b8, orc_composite_over_8888_8_8888 }, + PIXMAN_STD_FAST_PATH( OVER, solid, a8, r5g6b5, orc_composite_over_n_8_0565 ), + PIXMAN_STD_FAST_PATH( OVER, solid, a8, b5g6r5, orc_composite_over_n_8_0565 ), + PIXMAN_STD_FAST_PATH( OVER, solid, null, a8r8g8b8, orc_composite_over_n_8888 ), + PIXMAN_STD_FAST_PATH( OVER, solid, null, x8r8g8b8, orc_composite_over_n_8888 ), + PIXMAN_STD_FAST_PATH( OVER, solid, null, r5g6b5, orc_composite_over_n_0565 ), + PIXMAN_STD_FAST_PATH( OVER, a8r8g8b8, null, a8r8g8b8, orc_composite_over_8888_8888 ), + PIXMAN_STD_FAST_PATH( OVER, a8r8g8b8, null, x8r8g8b8, orc_composite_over_8888_8888 ), + PIXMAN_STD_FAST_PATH( OVER, a8b8g8r8, null, a8b8g8r8, orc_composite_over_8888_8888 ), + PIXMAN_STD_FAST_PATH( OVER, a8b8g8r8, null, x8b8g8r8, orc_composite_over_8888_8888 ), + PIXMAN_STD_FAST_PATH( OVER, a8r8g8b8, null, r5g6b5, orc_composite_over_8888_0565 ), + PIXMAN_STD_FAST_PATH( OVER, a8b8g8r8, null, b5g6r5, orc_composite_over_8888_0565 ), + PIXMAN_STD_FAST_PATH( OVER, solid, a8, a8r8g8b8, orc_composite_over_n_8_8888 ), + PIXMAN_STD_FAST_PATH( OVER, solid, a8, x8r8g8b8, orc_composite_over_n_8_8888 ), + PIXMAN_STD_FAST_PATH( OVER, solid, a8, a8b8g8r8, orc_composite_over_n_8_8888 ), + PIXMAN_STD_FAST_PATH( OVER, solid, a8, x8b8g8r8, orc_composite_over_n_8_8888 ), + PIXMAN_STD_FAST_PATH( OVER, a8r8g8b8, a8, x8r8g8b8, orc_composite_over_8888_8_8888 ), #endif - { PIXMAN_OP_OVER, PIXMAN_a8r8g8b8, PIXMAN_a8, PIXMAN_a8r8g8b8, orc_composite_over_8888_8_8888 }, + PIXMAN_STD_FAST_PATH(OVER, a8r8g8b8, a8, a8r8g8b8, orc_composite_over_8888_8_8888), + PIXMAN_STD_FAST_PATH( OVER, a8r8g8b8, a8, a8r8g8b8, orc_composite_over_8888_8_8888 ), #if 0 - { PIXMAN_OP_OVER, PIXMAN_a8b8g8r8, PIXMAN_a8, PIXMAN_x8b8g8r8, orc_composite_over_8888_8_8888 }, - { PIXMAN_OP_OVER, PIXMAN_a8b8g8r8, PIXMAN_a8, PIXMAN_a8b8g8r8, orc_composite_over_8888_8_8888 }, - { PIXMAN_OP_OVER, PIXMAN_x8r8g8b8, PIXMAN_a8, PIXMAN_x8r8g8b8, orc_composite_over_x888_8_8888 }, - { PIXMAN_OP_OVER, PIXMAN_x8r8g8b8, PIXMAN_a8, PIXMAN_a8r8g8b8, orc_composite_over_x888_8_8888 }, - { PIXMAN_OP_OVER, PIXMAN_x8b8g8r8, PIXMAN_a8, PIXMAN_x8b8g8r8, orc_composite_over_x888_8_8888 }, - { PIXMAN_OP_OVER, PIXMAN_x8b8g8r8, PIXMAN_a8, PIXMAN_a8b8g8r8, orc_composite_over_x888_8_8888 }, - { PIXMAN_OP_OVER, PIXMAN_x8r8g8b8, PIXMAN_solid, PIXMAN_a8r8g8b8, orc_composite_over_x888_n_8888 }, - { PIXMAN_OP_OVER, PIXMAN_x8r8g8b8, PIXMAN_solid, PIXMAN_x8r8g8b8, orc_composite_over_x888_n_8888 }, - { PIXMAN_OP_OVER, PIXMAN_x8b8g8r8, PIXMAN_solid, PIXMAN_a8b8g8r8, orc_composite_over_x888_n_8888 }, - { PIXMAN_OP_OVER, PIXMAN_x8b8g8r8, PIXMAN_solid, PIXMAN_x8b8g8r8, orc_composite_over_x888_n_8888 }, - { PIXMAN_OP_OVER, PIXMAN_a8r8g8b8, PIXMAN_solid, PIXMAN_a8r8g8b8, orc_composite_over_8888_n_8888 }, - { PIXMAN_OP_OVER, PIXMAN_a8r8g8b8, PIXMAN_solid, PIXMAN_x8r8g8b8, orc_composite_over_8888_n_8888 }, - { PIXMAN_OP_OVER, PIXMAN_a8b8g8r8, PIXMAN_solid, PIXMAN_a8b8g8r8, orc_composite_over_8888_n_8888 }, - { PIXMAN_OP_OVER, PIXMAN_a8b8g8r8, PIXMAN_solid, PIXMAN_x8b8g8r8, orc_composite_over_8888_n_8888 }, - { PIXMAN_OP_OVER, PIXMAN_solid, PIXMAN_a8r8g8b8_ca, PIXMAN_a8r8g8b8, orc_composite_over_n_8888_8888_ca }, - { PIXMAN_OP_OVER, PIXMAN_solid, PIXMAN_a8r8g8b8_ca, PIXMAN_x8r8g8b8, orc_composite_over_n_8888_8888_ca }, - { PIXMAN_OP_OVER, PIXMAN_solid, PIXMAN_a8b8g8r8_ca, PIXMAN_a8b8g8r8, orc_composite_over_n_8888_8888_ca }, - { PIXMAN_OP_OVER, PIXMAN_solid, PIXMAN_a8b8g8r8_ca, PIXMAN_x8b8g8r8, orc_composite_over_n_8888_8888_ca }, - { PIXMAN_OP_OVER, PIXMAN_solid, PIXMAN_a8r8g8b8_ca, PIXMAN_r5g6b5, orc_composite_over_n_8888_0565_ca }, - { PIXMAN_OP_OVER, PIXMAN_solid, PIXMAN_a8b8g8r8_ca, PIXMAN_b5g6r5, orc_composite_over_n_8888_0565_ca }, - { PIXMAN_OP_OVER, PIXMAN_pixbuf, PIXMAN_pixbuf, PIXMAN_a8r8g8b8, orc_composite_over_pixbuf_8888 }, - { PIXMAN_OP_OVER, PIXMAN_pixbuf, PIXMAN_pixbuf, PIXMAN_x8r8g8b8, orc_composite_over_pixbuf_8888 }, - { PIXMAN_OP_OVER, PIXMAN_rpixbuf, PIXMAN_rpixbuf, PIXMAN_a8b8g8r8, orc_composite_over_pixbuf_8888 }, - { PIXMAN_OP_OVER, PIXMAN_rpixbuf, PIXMAN_rpixbuf, PIXMAN_x8b8g8r8, orc_composite_over_pixbuf_8888 }, - { PIXMAN_OP_OVER, PIXMAN_pixbuf, PIXMAN_pixbuf, PIXMAN_r5g6b5, orc_composite_over_pixbuf_0565 }, - { PIXMAN_OP_OVER, PIXMAN_rpixbuf, PIXMAN_rpixbuf, PIXMAN_b5g6r5, orc_composite_over_pixbuf_0565 }, + PIXMAN_STD_FAST_PATH( OVER, a8b8g8r8, a8, x8b8g8r8, orc_composite_over_8888_8_8888 ), + PIXMAN_STD_FAST_PATH( OVER, a8b8g8r8, a8, a8b8g8r8, orc_composite_over_8888_8_8888 ), + PIXMAN_STD_FAST_PATH( OVER, x8r8g8b8, a8, x8r8g8b8, orc_composite_over_x888_8_8888 ), + PIXMAN_STD_FAST_PATH( OVER, x8r8g8b8, a8, a8r8g8b8, orc_composite_over_x888_8_8888 ), + PIXMAN_STD_FAST_PATH( OVER, x8b8g8r8, a8, x8b8g8r8, orc_composite_over_x888_8_8888 ), + PIXMAN_STD_FAST_PATH( OVER, x8b8g8r8, a8, a8b8g8r8, orc_composite_over_x888_8_8888 ), + PIXMAN_STD_FAST_PATH( OVER, x8r8g8b8, solid, a8r8g8b8, orc_composite_over_x888_n_8888 ), + PIXMAN_STD_FAST_PATH( OVER, x8r8g8b8, solid, x8r8g8b8, orc_composite_over_x888_n_8888 ), + PIXMAN_STD_FAST_PATH( OVER, x8b8g8r8, solid, a8b8g8r8, orc_composite_over_x888_n_8888 ), + PIXMAN_STD_FAST_PATH( OVER, x8b8g8r8, solid, x8b8g8r8, orc_composite_over_x888_n_8888 ), + PIXMAN_STD_FAST_PATH( OVER, a8r8g8b8, solid, a8r8g8b8, orc_composite_over_8888_n_8888 ), + PIXMAN_STD_FAST_PATH( OVER, a8r8g8b8, solid, x8r8g8b8, orc_composite_over_8888_n_8888 ), + PIXMAN_STD_FAST_PATH( OVER, a8b8g8r8, solid, a8b8g8r8, orc_composite_over_8888_n_8888 ), + PIXMAN_STD_FAST_PATH( OVER, a8b8g8r8, solid, x8b8g8r8, orc_composite_over_8888_n_8888 ), + PIXMAN_STD_FAST_PATH( OVER, solid, a8r8g8b8_ca, a8r8g8b8, orc_composite_over_n_8888_8888_ca ), + PIXMAN_STD_FAST_PATH( OVER, solid, a8r8g8b8_ca, x8r8g8b8, orc_composite_over_n_8888_8888_ca ), + PIXMAN_STD_FAST_PATH( OVER, solid, a8b8g8r8_ca, a8b8g8r8, orc_composite_over_n_8888_8888_ca ), + PIXMAN_STD_FAST_PATH( OVER, solid, a8b8g8r8_ca, x8b8g8r8, orc_composite_over_n_8888_8888_ca ), + PIXMAN_STD_FAST_PATH( OVER, solid, a8r8g8b8_ca, r5g6b5, orc_composite_over_n_8888_0565_ca ), + PIXMAN_STD_FAST_PATH( OVER, solid, a8b8g8r8_ca, b5g6r5, orc_composite_over_n_8888_0565_ca ), + PIXMAN_STD_FAST_PATH( OVER, pixbuf, pixbuf, a8r8g8b8, orc_composite_over_pixbuf_8888 ), + PIXMAN_STD_FAST_PATH( OVER, pixbuf, pixbuf, x8r8g8b8, orc_composite_over_pixbuf_8888 ), + PIXMAN_STD_FAST_PATH( OVER, rpixbuf, rpixbuf, a8b8g8r8, orc_composite_over_pixbuf_8888 ), + PIXMAN_STD_FAST_PATH( OVER, rpixbuf, rpixbuf, x8b8g8r8, orc_composite_over_pixbuf_8888 ), + PIXMAN_STD_FAST_PATH( OVER, pixbuf, pixbuf, r5g6b5, orc_composite_over_pixbuf_0565 ), + PIXMAN_STD_FAST_PATH( OVER, rpixbuf, rpixbuf, b5g6r5, orc_composite_over_pixbuf_0565 ), #endif - { PIXMAN_OP_OVER, PIXMAN_x8r8g8b8, PIXMAN_null, PIXMAN_x8r8g8b8, orc_composite_copy_area }, - { PIXMAN_OP_OVER, PIXMAN_x8b8g8r8, PIXMAN_null, PIXMAN_x8b8g8r8, orc_composite_copy_area }, + PIXMAN_STD_FAST_PATH( OVER, x8r8g8b8, null, x8r8g8b8, orc_composite_copy_area ), + PIXMAN_STD_FAST_PATH( OVER, x8b8g8r8, null, x8b8g8r8, orc_composite_copy_area ), #if 0 - { PIXMAN_OP_ADD, PIXMAN_solid, PIXMAN_a8r8g8b8_ca, PIXMAN_a8r8g8b8, orc_composite_add_n_8888_8888_ca }, + PIXMAN_STD_FAST_PATH( ADD, solid, a8r8g8b8_ca, a8r8g8b8, orc_composite_add_n_8888_8888_ca ), #endif - { PIXMAN_OP_ADD, PIXMAN_a8, PIXMAN_null, PIXMAN_a8, orc_composite_add_8000_8000 }, - { PIXMAN_OP_ADD, PIXMAN_a8r8g8b8, PIXMAN_null, PIXMAN_a8r8g8b8, orc_composite_add_8888_8888 }, - { PIXMAN_OP_ADD, PIXMAN_a8b8g8r8, PIXMAN_null, PIXMAN_a8b8g8r8, orc_composite_add_8888_8888 }, -// { PIXMAN_OP_ADD, PIXMAN_solid, PIXMAN_a8, PIXMAN_a8, orc_composite_add_n_8_8 }, + PIXMAN_STD_FAST_PATH( ADD, a8, null, a8, orc_composite_add_8000_8000 ), + PIXMAN_STD_FAST_PATH( ADD, a8r8g8b8, null, a8r8g8b8, orc_composite_add_8888_8888 ), + PIXMAN_STD_FAST_PATH( ADD, a8b8g8r8, null, a8b8g8r8, orc_composite_add_8888_8888 ), +// PIXMAN_STD_FAST_PATH( ADD, solid, a8, a8, orc_composite_add_n_8_8 ), #if 0 - { PIXMAN_OP_SRC, PIXMAN_solid, PIXMAN_a8, PIXMAN_a8r8g8b8, orc_composite_src_n_8_8888 }, - { PIXMAN_OP_SRC, PIXMAN_solid, PIXMAN_a8, PIXMAN_x8r8g8b8, orc_composite_src_n_8_8888 }, - { PIXMAN_OP_SRC, PIXMAN_solid, PIXMAN_a8, PIXMAN_a8b8g8r8, orc_composite_src_n_8_8888 }, - { PIXMAN_OP_SRC, PIXMAN_solid, PIXMAN_a8, PIXMAN_x8b8g8r8, orc_composite_src_n_8_8888 }, + PIXMAN_STD_FAST_PATH( SRC, solid, a8, a8r8g8b8, orc_composite_src_n_8_8888 ), + PIXMAN_STD_FAST_PATH( SRC, solid, a8, x8r8g8b8, orc_composite_src_n_8_8888 ), + PIXMAN_STD_FAST_PATH( SRC, solid, a8, a8b8g8r8, orc_composite_src_n_8_8888 ), + PIXMAN_STD_FAST_PATH( SRC, solid, a8, x8b8g8r8, orc_composite_src_n_8_8888 ), #endif - { PIXMAN_OP_SRC, PIXMAN_a8r8g8b8, PIXMAN_null, PIXMAN_a8r8g8b8, orc_composite_copy_area }, - { PIXMAN_OP_SRC, PIXMAN_a8b8g8r8, PIXMAN_null, PIXMAN_a8b8g8r8, orc_composite_copy_area }, - { PIXMAN_OP_SRC, PIXMAN_a8r8g8b8, PIXMAN_null, PIXMAN_x8r8g8b8, orc_composite_copy_area }, - { PIXMAN_OP_SRC, PIXMAN_a8b8g8r8, PIXMAN_null, PIXMAN_x8b8g8r8, orc_composite_copy_area }, - { PIXMAN_OP_SRC, PIXMAN_x8r8g8b8, PIXMAN_null, PIXMAN_x8r8g8b8, orc_composite_copy_area }, - { PIXMAN_OP_SRC, PIXMAN_x8b8g8r8, PIXMAN_null, PIXMAN_x8b8g8r8, orc_composite_copy_area }, - { PIXMAN_OP_SRC, PIXMAN_r5g6b5, PIXMAN_null, PIXMAN_r5g6b5, orc_composite_copy_area }, - { PIXMAN_OP_SRC, PIXMAN_b5g6r5, PIXMAN_null, PIXMAN_b5g6r5, orc_composite_copy_area }, + PIXMAN_STD_FAST_PATH( SRC, a8r8g8b8, null, a8r8g8b8, orc_composite_copy_area ), + PIXMAN_STD_FAST_PATH( SRC, a8b8g8r8, null, a8b8g8r8, orc_composite_copy_area ), + PIXMAN_STD_FAST_PATH( SRC, a8r8g8b8, null, x8r8g8b8, orc_composite_copy_area ), + PIXMAN_STD_FAST_PATH( SRC, a8b8g8r8, null, x8b8g8r8, orc_composite_copy_area ), + PIXMAN_STD_FAST_PATH( SRC, x8r8g8b8, null, x8r8g8b8, orc_composite_copy_area ), + PIXMAN_STD_FAST_PATH( SRC, x8b8g8r8, null, x8b8g8r8, orc_composite_copy_area ), + PIXMAN_STD_FAST_PATH( SRC, r5g6b5, null, r5g6b5, orc_composite_copy_area ), + PIXMAN_STD_FAST_PATH( SRC, b5g6r5, null, b5g6r5, orc_composite_copy_area ), #if 0 - { PIXMAN_OP_IN, PIXMAN_a8, PIXMAN_null, PIXMAN_a8, orc_composite_in_8_8 }, - { PIXMAN_OP_IN, PIXMAN_solid, PIXMAN_a8, PIXMAN_a8, orc_composite_in_n_8_8 }, + PIXMAN_STD_FAST_PATH( IN, a8, null, a8, orc_composite_in_8_8 ), + PIXMAN_STD_FAST_PATH( IN, solid, a8, a8, orc_composite_in_n_8_8 ), #endif - { PIXMAN_OP_NONE }, + { PIXMAN_OP_NONE } }; +#if 0 static void orc_composite (pixman_implementation_t *imp, pixman_op_t op, @@ -515,6 +517,7 @@ orc_composite (pixman_implementation_t *imp, dest_x, dest_y, width, height); } +#endif static pixman_bool_t orc_blt (pixman_implementation_t *imp, @@ -569,18 +572,15 @@ orc_fill (pixman_implementation_t *imp, pixman_implementation_t * _pixman_implementation_create_orc (void) { -#ifdef USE_SSE2x - pixman_implementation_t *general = _pixman_implementation_create_sse2 (); -#else pixman_implementation_t *general = _pixman_implementation_create_fast_path (); -#endif - pixman_implementation_t *imp = _pixman_implementation_create (general); + pixman_implementation_t *imp = _pixman_implementation_create (general, + orc_fast_paths); orc_init (); imp->combine_32[PIXMAN_OP_OVER] = orc_combine_over_u; //imp->combine_32[PIXMAN_OP_OVER_REVERSE] = orc_combine_over_reverse_u; - imp->combine_32[PIXMAN_OP_IN] = orc_combine_in_u; + if (0) imp->combine_32[PIXMAN_OP_IN] = orc_combine_in_u; //imp->combine_32[PIXMAN_OP_IN_REVERSE] = orc_combine_in_reverse_u; imp->combine_32[PIXMAN_OP_OUT] = orc_combine_out_u; //imp->combine_32[PIXMAN_OP_OUT_REVERSE] = orc_combine_out_reverse_u; @@ -603,7 +603,7 @@ _pixman_implementation_create_orc (void) //imp->combine_32_ca[PIXMAN_OP_XOR] = orc_combine_xor_ca; imp->combine_32_ca[PIXMAN_OP_ADD] = orc_combine_add_ca; - imp->composite = orc_composite; + //imp->composite = orc_composite; imp->blt = orc_blt; imp->fill = orc_fill; |