[cairo] Optimize spans in the trapezoid rasterizer

Keith Packard keithp at keithp.com
Mon Jul 25 10:09:47 PDT 2005


On Sun, 2005-07-24 at 22:14 -0500, Billy Biggs wrote:
>   The attached patch modifies the 8-bit alpha trapezoid rasterizer in
> libpixman's fbedge.c to specifically handle opaque spans in the middle
> of a trapezoid.  It significantly speeds up large trapezoids without
> slowing down small ones.  The code also allows for optimized
> implementations of a saturated 8-bit add (MMX paddusb) and memset-to-255
> to be easily dropped in.
> 
>   If accepted, this patch should probably also get applied to the copy
> in Xorg.

I note that the clip255 function includes a branch, while the normal
saturation function does not. I thought branches were "really bad"...

-keith

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
Url : http://lists.freedesktop.org/archives/cairo/attachments/20050725/d0a49a92/attachment.pgp


More information about the cairo mailing list