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-debug.c | |
parent | b419fdcacd636dc2274695f922f758a8b521ca01 (diff) |
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-debug.c')
-rw-r--r-- | src/cairo-debug.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/cairo-debug.c b/src/cairo-debug.c index 99289e3f..9e687482 100644 --- a/src/cairo-debug.c +++ b/src/cairo-debug.c @@ -269,6 +269,16 @@ _cairo_debug_print_polygon (FILE *stream, cairo_polygon_t *polygon) _cairo_fixed_to_double (polygon->extents.p1.y), _cairo_fixed_to_double (polygon->extents.p2.x), _cairo_fixed_to_double (polygon->extents.p2.y)); + if (polygon->num_limits) { + fprintf (stream, + " : limit=(%f, %f), (%f, %f) x %d\n", + _cairo_fixed_to_double (polygon->limit.p1.x), + _cairo_fixed_to_double (polygon->limit.p1.y), + _cairo_fixed_to_double (polygon->limit.p2.x), + _cairo_fixed_to_double (polygon->limit.p2.y), + polygon->num_limits); + } + for (n = 0; n < polygon->num_edges; n++) { cairo_edge_t *edge = &polygon->edges[n]; |