From 819a6d6878d57d3b55075f048a7eed6d5bcab694 Mon Sep 17 00:00:00 2001 From: Søren Sandmann Date: Sat, 1 Dec 2007 19:56:26 -0500 Subject: Beginning of the end for the Switch of Doom. Add tables with information about the MMX and plain-C fast paths. Update TODO. --- TODO | 28 ++++++++++++++++++++++------ 1 file changed, 22 insertions(+), 6 deletions(-) (limited to 'TODO') diff --git a/TODO b/TODO index 6649c69..fc457af 100644 --- a/TODO +++ b/TODO @@ -1,3 +1,12 @@ + - Add a general way of dealing with architecture specific + fast-paths. The current idea is to have each operation that can + be optimized is called through a function pointer that is + initially set to an initialization function that is responsible for + setting the function pointer to the appropriate fast-path. + + - Get rid of the switch-of-doom; replace it with a big table + describing the various fast paths. + - Go through things marked FIXME - Add calls to prepare and finish access where necessary. grep for @@ -26,11 +35,6 @@ ABI, but should otherwise be mostly harmless, though a pixman_region_get_boxes16() may be useful. - - Make source clipping optional. - - done: source clipping happens through an indirection. - still needs to make the indirection settable. (And call it - from X) - - Consider optimizing the 8/16 bit solid fills in pixman-util.c by storing more than one value at a time. @@ -78,11 +82,23 @@ It may make sense to have a PIXMAN_TYPE_YUV, and then use the channel bits to specify the exact subtype. - What about color spaces such a linear vs. srGB etc.? + Another possibility is to add + PIXMAN_TYPE_ARGB_W + PIXMAN_TYPE_ARGB_WW + + where the channel widths would get 16 and 32 added to them, + respectively. + + What about color spaces such a linear vs. srGB etc.? done: +- Make source clipping optional. + - done: source clipping happens through an indirection. + still needs to make the indirection settable. (And call it + from X) + - Run cairo test suite; fix bugs - one bug in source-scale-clip -- cgit v1.2.3