diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2011-07-19 11:29:49 +0100 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2011-07-20 13:19:38 +0100 |
commit | d5d4a0f24031580db93d3b7909482687458718e2 (patch) | |
tree | 2b3b4082648f83d03baa073d91d832a3c4eb322a /src/cairo-composite-rectangles-private.h | |
parent | b419fdcacd636dc2274695f922f758a8b521ca01 (diff) | |
download | cairo-d5d4a0f24031580db93d3b7909482687458718e2.tar.gz |
xcb: Take advantage of clip-boxes
A demonstration of step 2, improves performance for selected benchmarks
on selected GPUs by up to 30%.
firefox-fishbowl on snb {i5-2520m): 42s -> 29s.
firefox-talos-gfx on snb: 7.6 -> 5.2s.
firefox-fishbowl on pnv (n450): 380 -> 360s.
Whist this looks like it is getting close to as good as we can achieve,
we are constrained by both our API and Xrender and fishbowl is about 50%
slower than peak performance (on snb).
And it fixes the older performance regression in firefox-planet-gnome.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'src/cairo-composite-rectangles-private.h')
-rw-r--r-- | src/cairo-composite-rectangles-private.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/cairo-composite-rectangles-private.h b/src/cairo-composite-rectangles-private.h index 2b4bdba93..62244b2b2 100644 --- a/src/cairo-composite-rectangles-private.h +++ b/src/cairo-composite-rectangles-private.h @@ -104,6 +104,10 @@ _cairo_composite_rectangles_init_for_glyphs (cairo_composite_rectangles_t *exten const cairo_clip_t *clip, cairo_bool_t *overlap); +cairo_private cairo_int_status_t +_cairo_composite_rectangles_intersect_mask_extents (cairo_composite_rectangles_t *extents, + const cairo_box_t *box); + cairo_private void _cairo_composite_rectangles_fini (cairo_composite_rectangles_t *extents); |