diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2009-01-28 14:22:58 +0000 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2009-02-13 14:13:32 +0000 |
commit | fa66291c8862ed592fca469ceab0ac9b1d270835 (patch) | |
tree | da86da4e44aa05e6c16df5043273a93377826df7 | |
parent | aab9ed3432f0ea7b8b24990de4aa134bb599a3e5 (diff) |
[perf] Test non-antialiased fill.
Just because the i915 can special case such fills using a single-pass
tessellation in the stencil buffer.
-rw-r--r-- | perf/fill.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/perf/fill.c b/perf/fill.c index 6ebe70ea..f068561a 100644 --- a/perf/fill.c +++ b/perf/fill.c @@ -42,6 +42,26 @@ do_fill (cairo_t *cr, int width, int height) return cairo_perf_timer_elapsed (); } +static cairo_perf_ticks_t +do_fill_eo_noaa (cairo_t *cr, int width, int height) +{ + cairo_set_antialias (cr, CAIRO_ANTIALIAS_NONE); + cairo_set_fill_rule (cr, CAIRO_FILL_RULE_EVEN_ODD); + + cairo_arc (cr, + width/2.0, height/2.0, + width/3.0, + 0, 2 * M_PI); + + cairo_perf_timer_start (); + + cairo_fill (cr); + + cairo_perf_timer_stop (); + + return cairo_perf_timer_elapsed (); +} + void fill (cairo_perf_t *perf, cairo_t *cr, int width, int height) { @@ -49,4 +69,5 @@ fill (cairo_perf_t *perf, cairo_t *cr, int width, int height) return; cairo_perf_cover_sources_and_operators (perf, "fill", do_fill); + cairo_perf_cover_sources_and_operators (perf, "fill-eo-noaa", do_fill_eo_noaa); } |