[Pixman] [PATCH 2/4] general: Fetch the source directly into the destination

Chris Wilson chris at chris-wilson.co.uk
Sun Jan 27 08:38:31 PST 2013


On Sun, Jan 27, 2013 at 05:04:37PM +0100, Søren Sandmann wrote:
> Chris Wilson <chris at chris-wilson.co.uk> writes:
> 
> > This is principally used by external renderers to convert a procedural
> > pixman_image_t (SourcePict) into an image that they can handle, using a
> > simple pixman_image_composite(SRC, source, NULL, dst). For these cases
> > we typicall hit the general_composite_rect and so retrieve the source
> > into a temporary buffer before copying back to the destination. This
> > allows us to eliminate that extra copy.
> 
> If something like this is really necessary, it should be done as a fast
> path in pixman-fast.c.
> 
> But I don't really like it. It is legal for an iterator to assume that
> its buffer doesn't change from one call to _get_scanline() to the next,
> and while it may be true currently that iterators only rely on that if
> they also use _pixman_get_scanline_noop so that your special casing of
> that function makes it work, this is a rather fragile assumption.

Totally agree, I thought it was going to be a much simpler change. That
idea quickly unravelled! Just throwing the idea out there in case you
have a better idea, as you usually do ;-)
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre


More information about the Pixman mailing list