[Pixman] [PATCH/RFC] Move Trapezoids and Triangles code to pixman

Søren Sandmann Pedersen sandmann at cs.au.dk
Fri Feb 11 06:54:12 PST 2011


What follows is six patches for pixman, and three patches for the X
server. Together they move the code for the Trapezoids and Triangles
requests into pixman. 

Moving them into pixman has some advantages:

- It is a performance improvement in itself since it avoids a call to
  image_from_pict() per trapezoid.

- There are various potential optimizations that could be done by
  rasterizing and compositing in one pass.

- There is a regression test suite for them.

The code is also available in git repositories here:



I sent a previous version here:


Changes since then:

        - Add pixman_add_triangles() and make fbAddTriangles() a call
          to that function.

	- A regression test for pixman_composite_trapezoids(). 

	- An optimization for opaque trapezoids that was lost from the


	  The regression test showed that the optimization in the
	  server is actually buggy, since it doesn't deal correctly
	  with clipping.

	- Fix for an issue where the new fbTrapezoids() didn't deal
          correctly with the case where maskFormat was None.


More information about the Pixman mailing list