[Pixman] [PATCH] Don't discriminate PAD and REFLECT repeat in standard fast paths
siarhei.siamashka at gmail.com
Tue Sep 28 08:35:28 PDT 2010
On Tuesday 28 September 2010 17:24:14 Siarhei Siamashka wrote:
> The flags in pixman are implemented in such a way that they all have some
> kind of "positive" meaning, indicating that the operation is going to be
> more simple than the general case in one way or another. Having more flags
> set on the initial analysis stage is always good. Forgetting to set some
> of the flags is safe in the sense that it will not make pixman misbehave,
> pixman will just run slower because of not taking some fast paths.
Tried to actually verify this claim by artificially clearing flags in
'compute_image_info' and running pixman tests. Appears that not everything
is so simple.
Some flags are a bit special:
- NARROW_FORMAT flag needs to be propagated to 'general_composite_rect'
function because it is used there
- calculation of NEEDS_WORKAROUND flag also can't be skipped
- flags ID_TRANSFORM, NO_ALPHA_MAP, NO_CONVOLUTION_FILTER, NO_PAD_REPEAT
and NO_REFLECT_REPEAT are needed to select untransformed fetchers
bit_image_fetch_untransformed_32/bit_image_fetch_untransformed_64 instead of
bit_image_fetch_general/_pixman_image_get_scanline_generic_64, and apparently
these behave differently
The rest of flags seem to be really optional and only result in skipping fast
paths if not set. But of course current tests do not provide full coverage of
pixman functionality and some other quirks could have been overlooked.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Size: 198 bytes
Desc: This is a digitally signed message part.
More information about the Pixman