summaryrefslogtreecommitdiff
path: root/src/cairo-composite-rectangles-private.h
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2011-07-19 11:29:49 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2011-07-20 13:19:38 +0100
commitd5d4a0f24031580db93d3b7909482687458718e2 (patch)
tree2b3b4082648f83d03baa073d91d832a3c4eb322a /src/cairo-composite-rectangles-private.h
parentb419fdcacd636dc2274695f922f758a8b521ca01 (diff)
downloadcairo-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.h4
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);