[cairo-commit] 2 commits - perf/cairo-perf-micro.c perf/micro test/a1-bug.ref.png test/a8-clear.ref.png test/aliasing.ref.png test/arc-looping-dash.ref.png test/big-line.ref.png test/big-little-triangle.argb32.ref.png test/big-little-triangle.rgb24.ref.png test/bug-extents.ref.png test/bug-seams.ref.png test/caps-joins-alpha.ref.png test/caps-joins-curve.ref.png test/caps-joins.ref.png test/caps.ref.png test/caps-sub-paths.ref.png test/caps-tails-curve.ref.png test/clear.argb32.ref.png test/clear.rgb24.ref.png test/clear-source.ref.png test/clip-disjoint-hatching.ref.png test/clip-disjoint.ref.png test/clip-fill-eo-unbounded.argb32.ref.png test/clip-fill-nz-unbounded.argb32.ref.png test/clip-fill.ref.png test/clip-fill-rule.argb32.ref.png test/clip-fill-rule.ref.png test/clip-fill-rule.rgb24.ref.png test/clip-group-shapes-circles.ref.png test/clip-image.ref.png test/clip-intersect.ref.png test/clip-mixed-antialias.ref.png test/clip-nesting.argb32.ref.png test/clip-nesting.ref.png t est/clip-nesting.rgb24.ref.png test/clip-push-group.ref.png test/clip-shape.ref.png test/clip-stroke.ref.png test/clip-stroke-unbounded.argb32.ref.png test/clip-text.ref.png test/clip-twice.argb32.ref.png test/clip-twice.ref.png test/clip-twice.rgb24.ref.png test/close-path-current-point.ref.png test/close-path.ref.png test/copy-path.ref.png test/dash-caps-joins.ref.png test/dash-curve.ref.png test/dash-infinite-loop.ref.png test/dash-scale.ref.png test/dash-state.ref.png test/dash-zero-length.ref.png test/dash-zero-length.rgb24.ref.png test/degenerate-arc.ref.png test/degenerate-curve-to.ref.png test/degenerate-dash.ref.png test/degenerate-path.argb32.ref.png test/degenerate-path.rgb24.ref.png test/degenerate-pen.ref.png test/degenerate-rel-curve-to.ref.png test/drunkard-tails.ref.png test/extended-blend-alpha-mask.rgb24.ref.png test/extended-blend-alpha.rgb24.ref.png test/extended-blend.rgb24.ref.png test/extended-blend-solid-alpha.rgb24.ref.png test/extended-blend-solid.r gb24.ref.png test/fill-alpha-pattern.ref.png test/fill-alpha.ref.png test/fill-and-stroke-alpha-add.ref.png test/fill-and-stroke-alpha.ref.png test/fill-and-stroke.argb32.ref.png test/fill-and-stroke.rgb24.ref.png test/fill-degenerate-sort-order.argb32.ref.png test/fill-degenerate-sort-order.ref.png test/fill-degenerate-sort-order.rgb24.ref.png test/fill-image.ref.png test/fill-missed-stop.ref.png test/fill-missed-stop.rgb24.ref.png test/fill-rule.ref.png test/fill-rule.rgb24.ref.png test/finer-grained-fallbacks.argb32.ref.png test/finer-grained-fallbacks.rgb24.ref.png test/font-matrix-translation.ref.png test/ft-show-glyphs-positioning.ref.png test/ft-show-glyphs-table.ref.png test/ft-text-vertical-layout-type3.ref.png test/glyph-cache-pressure.ref.png test/gradient-alpha.rgb24.ref.png test/gradient-constant-alpha.rgb24.ref.png test/group-unaligned.ref.png test/halo.ref.png test/halo-transform.ref.png test/hatchings.ref.png test/infinite-join.ref.png test/inverse-text.ref.p ng test/joins-loop.ref.png test/joins.ref.png test/joins-retrace.ref.png test/joins-star.ref.png test/large-twin-antialias-mixed.ref.png test/leaky-dashed-stroke.ref.png test/leaky-polygon.ref.png test/linear-gradient.ref.png test/linear-gradient-subset.ref.png test/line-width-overlap.ref.png test/line-width-overlap-rotated.ref.png test/line-width-scale.ref.png test/long-dashed-lines.ref.png test/Makefile.refs test/mask-alpha.argb32.ref.png test/mask-alpha.ref.png test/mask-alpha.rgb24.ref.png test/mask.argb32.ref.png test/mask.ref.png test/mask.rgb24.ref.png test/new-sub-path.argb32.ref.png test/new-sub-path.rgb24.ref.png test/operator-clear.argb32.ref.png test/operator-clear.ref.png test/operator-clear.rgb24.ref.png test/over-above-source.ref.png test/over-above-source.rgb24.ref.png test/over-around-source.ref.png test/over-around-source.rgb24.ref.png test/over-below-source.ref.png test/over-below-source.rgb24.ref.png test/over-between-source.ref.png test/over-between-sour ce.rgb24.ref.png test/overlapping-boxes.argb32.ref.png test/overlapping-dash-caps.ref.png test/overlapping-glyphs.argb32.ref.png test/overlapping-glyphs.rgb24.ref.png test/paint-with-alpha-clip-mask.ref.png test/paint-with-alpha-clip.ref.png test/partial-clip-text-bottom.ref.png test/partial-clip-text-left.ref.png test/partial-clip-text-right.ref.png test/path-append.ref.png test/path-stroke-twice.ref.png test/pthread-show-text.ref.png test/push-group-color.ref.png test/push-group.ref.png test/push-group.rgb24.ref.png test/random-intersections-curves-eo.ref.png test/random-intersections-curves-nz.ref.png test/random-intersections-eo.ref.png test/random-intersections-nonzero.ref.png test/record-fill-alpha.ref.png test/recording-surface-over.rgb24.ref.png test/record-paint-alpha-clip-mask.ref.png test/record-paint-alpha-clip.ref.png test/rectilinear-miter-limit.ref.png test/reflected-stroke.ref.png test/rel-path.ref.png test/rel-path.rgb24.ref.png test/rotate-clip-image-surfac e-paint.ref.png test/rotated-clip.ref.png test/rounded-rectangle-fill.ref.png test/rounded-rectangle-stroke.ref.png test/scale-offset-image.ref.png test/scale-offset-similar.ref.png test/select-font-face.ref.png test/self-copy.ref.png test/shape-general-convex.ref.png test/shape-sierpinski.ref.png test/show-glyphs-advance.ref.png test/show-text-current-point.ref.png test/skew-extreme.ref.png test/smask-fill.ref.png test/smask.ref.png test/smask-stroke.ref.png test/smask-text.ref.png test/spline-decomposition.ref.png test/stroke-ctm-caps.ref.png test/stroke-image.ref.png test/subsurface.ref.png test/surface-pattern-operator.argb32.ref.png test/surface-pattern-operator.rgb24.ref.png test/text-antialias-gray.ref.png test/text-antialias-subpixel.ref.png test/text-glyph-range.ref.png test/text-pattern.ref.png test/text-pattern.rgb24.ref.png test/text-rotate.ref.png test/transforms.ref.png test/trap-clip.ref.png test/trap-clip.rgb24.ref.png test/twin-antialias-gray.ref.png test/tw in-antialias-mixed.ref.png test/twin-antialias-none.ref.png test/twin-antialias-subpixel.ref.png test/twin.ref.png test/unantialiased-shapes.ref.png test/unclosed-strokes.ref.png test/user-font-mask.ref.png test/user-font-proxy.ref.png test/user-font.ref.png test/user-font-rescale.ref.png test/world-map-fill.ref.png test/world-map.ref.png test/world-map-stroke.ref.png test/xcomposite-projection.ref.png

Chris Wilson ickle at kemper.freedesktop.org
Mon Sep 12 07:45:45 PDT 2011


 dev/null                                       |binary
 perf/cairo-perf-micro.c                        |    6 ++-
 perf/micro/pixel.c                             |   38 +++++++++++++++++++++++++
 test/Makefile.refs                             |   14 ++++-----
 test/a1-bug.ref.png                            |binary
 test/a8-clear.ref.png                          |binary
 test/aliasing.ref.png                          |binary
 test/arc-looping-dash.ref.png                  |binary
 test/big-line.ref.png                          |binary
 test/big-little-triangle.argb32.ref.png        |binary
 test/big-little-triangle.rgb24.ref.png         |binary
 test/bug-extents.ref.png                       |binary
 test/bug-seams.ref.png                         |binary
 test/caps-joins-alpha.ref.png                  |binary
 test/caps-joins-curve.ref.png                  |binary
 test/caps-joins.ref.png                        |binary
 test/caps-sub-paths.ref.png                    |binary
 test/caps-tails-curve.ref.png                  |binary
 test/caps.ref.png                              |binary
 test/clear-source.ref.png                      |binary
 test/clear.argb32.ref.png                      |binary
 test/clear.rgb24.ref.png                       |binary
 test/clip-disjoint-hatching.ref.png            |binary
 test/clip-disjoint.ref.png                     |binary
 test/clip-fill-eo-unbounded.argb32.ref.png     |binary
 test/clip-fill-nz-unbounded.argb32.ref.png     |binary
 test/clip-fill-rule.argb32.ref.png             |binary
 test/clip-fill-rule.rgb24.ref.png              |binary
 test/clip-fill.ref.png                         |binary
 test/clip-group-shapes-circles.ref.png         |binary
 test/clip-image.ref.png                        |binary
 test/clip-intersect.ref.png                    |binary
 test/clip-mixed-antialias.ref.png              |binary
 test/clip-nesting.argb32.ref.png               |binary
 test/clip-nesting.rgb24.ref.png                |binary
 test/clip-push-group.ref.png                   |binary
 test/clip-shape.ref.png                        |binary
 test/clip-stroke-unbounded.argb32.ref.png      |binary
 test/clip-stroke.ref.png                       |binary
 test/clip-text.ref.png                         |binary
 test/clip-twice.argb32.ref.png                 |binary
 test/clip-twice.rgb24.ref.png                  |binary
 test/close-path-current-point.ref.png          |binary
 test/close-path.ref.png                        |binary
 test/copy-path.ref.png                         |binary
 test/dash-caps-joins.ref.png                   |binary
 test/dash-curve.ref.png                        |binary
 test/dash-infinite-loop.ref.png                |binary
 test/dash-scale.ref.png                        |binary
 test/dash-state.ref.png                        |binary
 test/dash-zero-length.ref.png                  |binary
 test/dash-zero-length.rgb24.ref.png            |binary
 test/degenerate-arc.ref.png                    |binary
 test/degenerate-curve-to.ref.png               |binary
 test/degenerate-dash.ref.png                   |binary
 test/degenerate-path.argb32.ref.png            |binary
 test/degenerate-path.rgb24.ref.png             |binary
 test/degenerate-pen.ref.png                    |binary
 test/degenerate-rel-curve-to.ref.png           |binary
 test/drunkard-tails.ref.png                    |binary
 test/extended-blend-alpha-mask.rgb24.ref.png   |binary
 test/extended-blend-alpha.rgb24.ref.png        |binary
 test/extended-blend-solid-alpha.rgb24.ref.png  |binary
 test/extended-blend-solid.rgb24.ref.png        |binary
 test/extended-blend.rgb24.ref.png              |binary
 test/fill-alpha-pattern.ref.png                |binary
 test/fill-alpha.ref.png                        |binary
 test/fill-and-stroke-alpha-add.ref.png         |binary
 test/fill-and-stroke-alpha.ref.png             |binary
 test/fill-and-stroke.argb32.ref.png            |binary
 test/fill-and-stroke.rgb24.ref.png             |binary
 test/fill-degenerate-sort-order.argb32.ref.png |binary
 test/fill-degenerate-sort-order.rgb24.ref.png  |binary
 test/fill-image.ref.png                        |binary
 test/fill-missed-stop.ref.png                  |binary
 test/fill-missed-stop.rgb24.ref.png            |binary
 test/fill-rule.ref.png                         |binary
 test/fill-rule.rgb24.ref.png                   |binary
 test/finer-grained-fallbacks.argb32.ref.png    |binary
 test/finer-grained-fallbacks.rgb24.ref.png     |binary
 test/font-matrix-translation.ref.png           |binary
 test/ft-show-glyphs-positioning.ref.png        |binary
 test/ft-show-glyphs-table.ref.png              |binary
 test/ft-text-vertical-layout-type3.ref.png     |binary
 test/glyph-cache-pressure.ref.png              |binary
 test/gradient-alpha.rgb24.ref.png              |binary
 test/gradient-constant-alpha.rgb24.ref.png     |binary
 test/group-unaligned.ref.png                   |binary
 test/halo-transform.ref.png                    |binary
 test/halo.ref.png                              |binary
 test/hatchings.ref.png                         |binary
 test/infinite-join.ref.png                     |binary
 test/inverse-text.ref.png                      |binary
 test/joins-loop.ref.png                        |binary
 test/joins-retrace.ref.png                     |binary
 test/joins-star.ref.png                        |binary
 test/joins.ref.png                             |binary
 test/large-twin-antialias-mixed.ref.png        |binary
 test/leaky-dashed-stroke.ref.png               |binary
 test/leaky-polygon.ref.png                     |binary
 test/line-width-overlap-rotated.ref.png        |binary
 test/line-width-overlap.ref.png                |binary
 test/line-width-scale.ref.png                  |binary
 test/linear-gradient-subset.ref.png            |binary
 test/linear-gradient.ref.png                   |binary
 test/long-dashed-lines.ref.png                 |binary
 test/mask-alpha.argb32.ref.png                 |binary
 test/mask-alpha.rgb24.ref.png                  |binary
 test/mask.argb32.ref.png                       |binary
 test/mask.rgb24.ref.png                        |binary
 test/new-sub-path.argb32.ref.png               |binary
 test/new-sub-path.rgb24.ref.png                |binary
 test/operator-clear.argb32.ref.png             |binary
 test/operator-clear.rgb24.ref.png              |binary
 test/over-above-source.ref.png                 |binary
 test/over-above-source.rgb24.ref.png           |binary
 test/over-around-source.ref.png                |binary
 test/over-around-source.rgb24.ref.png          |binary
 test/over-below-source.ref.png                 |binary
 test/over-below-source.rgb24.ref.png           |binary
 test/over-between-source.ref.png               |binary
 test/over-between-source.rgb24.ref.png         |binary
 test/overlapping-boxes.argb32.ref.png          |binary
 test/overlapping-dash-caps.ref.png             |binary
 test/overlapping-glyphs.argb32.ref.png         |binary
 test/overlapping-glyphs.rgb24.ref.png          |binary
 test/paint-with-alpha-clip-mask.ref.png        |binary
 test/paint-with-alpha-clip.ref.png             |binary
 test/partial-clip-text-bottom.ref.png          |binary
 test/partial-clip-text-left.ref.png            |binary
 test/partial-clip-text-right.ref.png           |binary
 test/path-append.ref.png                       |binary
 test/path-stroke-twice.ref.png                 |binary
 test/pthread-show-text.ref.png                 |binary
 test/push-group-color.ref.png                  |binary
 test/push-group.ref.png                        |binary
 test/push-group.rgb24.ref.png                  |binary
 test/random-intersections-curves-eo.ref.png    |binary
 test/random-intersections-curves-nz.ref.png    |binary
 test/random-intersections-eo.ref.png           |binary
 test/random-intersections-nonzero.ref.png      |binary
 test/record-fill-alpha.ref.png                 |binary
 test/record-paint-alpha-clip-mask.ref.png      |binary
 test/record-paint-alpha-clip.ref.png           |binary
 test/recording-surface-over.rgb24.ref.png      |binary
 test/rectilinear-miter-limit.ref.png           |binary
 test/reflected-stroke.ref.png                  |binary
 test/rel-path.ref.png                          |binary
 test/rel-path.rgb24.ref.png                    |binary
 test/rotate-clip-image-surface-paint.ref.png   |binary
 test/rotated-clip.ref.png                      |binary
 test/rounded-rectangle-fill.ref.png            |binary
 test/rounded-rectangle-stroke.ref.png          |binary
 test/scale-offset-image.ref.png                |binary
 test/scale-offset-similar.ref.png              |binary
 test/select-font-face.ref.png                  |binary
 test/self-copy.ref.png                         |binary
 test/shape-general-convex.ref.png              |binary
 test/shape-sierpinski.ref.png                  |binary
 test/show-glyphs-advance.ref.png               |binary
 test/show-text-current-point.ref.png           |binary
 test/skew-extreme.ref.png                      |binary
 test/smask-fill.ref.png                        |binary
 test/smask-stroke.ref.png                      |binary
 test/smask-text.ref.png                        |binary
 test/smask.ref.png                             |binary
 test/spline-decomposition.ref.png              |binary
 test/stroke-ctm-caps.ref.png                   |binary
 test/stroke-image.ref.png                      |binary
 test/subsurface.ref.png                        |binary
 test/surface-pattern-operator.argb32.ref.png   |binary
 test/surface-pattern-operator.rgb24.ref.png    |binary
 test/text-antialias-gray.ref.png               |binary
 test/text-antialias-subpixel.ref.png           |binary
 test/text-glyph-range.ref.png                  |binary
 test/text-pattern.ref.png                      |binary
 test/text-pattern.rgb24.ref.png                |binary
 test/text-rotate.ref.png                       |binary
 test/transforms.ref.png                        |binary
 test/trap-clip.ref.png                         |binary
 test/trap-clip.rgb24.ref.png                   |binary
 test/twin-antialias-gray.ref.png               |binary
 test/twin-antialias-mixed.ref.png              |binary
 test/twin-antialias-none.ref.png               |binary
 test/twin-antialias-subpixel.ref.png           |binary
 test/twin.ref.png                              |binary
 test/unantialiased-shapes.ref.png              |binary
 test/unclosed-strokes.ref.png                  |binary
 test/user-font-mask.ref.png                    |binary
 test/user-font-proxy.ref.png                   |binary
 test/user-font-rescale.ref.png                 |binary
 test/user-font.ref.png                         |binary
 test/world-map-fill.ref.png                    |binary
 test/world-map-stroke.ref.png                  |binary
 test/world-map.ref.png                         |binary
 test/xcomposite-projection.ref.png             |binary
 196 files changed, 49 insertions(+), 9 deletions(-)

New commits:
commit a6a48e05597e700df74384a5063f787de45a8d83
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date:   Mon Sep 12 15:43:42 2011 +0100

    test: Update ref images
    
    First pass after the recent turmoil in clip and antialias handling.

diff --git a/perf/cairo-perf-micro.c b/perf/cairo-perf-micro.c
index f3c6f8d..10adf30 100644
--- a/perf/cairo-perf-micro.c
+++ b/perf/cairo-perf-micro.c
@@ -288,7 +288,8 @@ cairo_perf_run (cairo_perf_t	   *perf,
 	    if (count_func != NULL) {
 		double count = count_func (perf->cr, perf->size, perf->size);
 		fprintf (perf->summary,
-			 "%10lld/%d %#8.3f %#8.3f %#5.2f%% %3d: %.2f\n",
+			 "%.3f [%10lld/%d] %#8.3f %#8.3f %#5.2f%% %3d: %.2f\n",
+			 stats.min_ticks /(double) loops,
 			 (long long) stats.min_ticks, loops,
 			 _cairo_time_to_s (stats.min_ticks) * 1000.0 / loops,
 			 _cairo_time_to_s (stats.median_ticks) * 1000.0 / loops,
@@ -296,7 +297,8 @@ cairo_perf_run (cairo_perf_t	   *perf,
 			 count / _cairo_time_to_s (stats.min_ticks));
 	    } else {
 		fprintf (perf->summary,
-			 "%10lld/%d %#8.3f %#8.3f %#5.2f%% %3d\n",
+			 "%.3f [%10lld/%d] %#8.3f %#8.3f %#5.2f%% %3d\n",
+			 stats.min_ticks /(double) loops,
 			 (long long) stats.min_ticks, loops,
 			 _cairo_time_to_s (stats.min_ticks) * 1000.0 / loops,
 			 _cairo_time_to_s (stats.median_ticks) * 1000.0 / loops,
diff --git a/test/Makefile.refs b/test/Makefile.refs
index 68f721a..07529e9 100644
--- a/test/Makefile.refs
+++ b/test/Makefile.refs
@@ -144,12 +144,12 @@ REFERENCE_IMAGES = \
 	clip-fill-nz-unbounded.xlib.rgb24.ref.png \
 	clip-fill-rule-pixel-aligned.ref.png \
 	clip-fill-rule-pixel-aligned.rgb24.ref.png \
+	clip-fill-rule.argb32.ref.png \
 	clip-fill-rule.image16.ref.png \
 	clip-fill-rule.pdf.argb32.ref.png \
 	clip-fill-rule.ps.argb32.ref.png \
 	clip-fill-rule.ps.rgb24.ref.png \
 	clip-fill-rule.quartz.rgb24.ref.png \
-	clip-fill-rule.ref.png \
 	clip-fill-rule.rgb24.ref.png \
 	clip-fill-rule.test-paginated.rgb24.ref.png \
 	clip-fill-rule.xlib.rgb24.ref.png \
@@ -170,12 +170,12 @@ REFERENCE_IMAGES = \
 	clip-image.ref.png \
 	clip-intersect.ref.png \
 	clip-mixed-antialias.ref.png \
+	clip-nesting.argb32.ref.png \
 	clip-nesting.pdf.argb32.ref.png \
 	clip-nesting.ps.argb32.ref.png \
 	clip-nesting.ps.rgb24.ref.png \
 	clip-nesting.quartz.argb32.ref.png \
 	clip-nesting.quartz.rgb24.ref.png \
-	clip-nesting.ref.png \
 	clip-nesting.rgb24.ref.png \
 	clip-nesting.test-paginated.rgb24.ref.png \
 	clip-nesting.xlib.rgb24.ref.png \
@@ -235,13 +235,13 @@ REFERENCE_IMAGES = \
 	clip-text.svg.ref.png \
 	clip-text.xlib.ref.png \
 	clip-twice-rectangle.ref.png \
+	clip-twice.argb32.ref.png \
 	clip-twice.image16.ref.png \
 	clip-twice.pdf.argb32.ref.png \
 	clip-twice.ps.argb32.ref.png \
 	clip-twice.ps.rgb24.ref.png \
 	clip-twice.quartz.argb32.ref.png \
 	clip-twice.quartz.rgb24.ref.png \
-	clip-twice.ref.png \
 	clip-twice.rgb24.ref.png \
 	clip-twice.test-paginated.argb32.ref.png \
 	clip-twice.test-paginated.rgb24.ref.png \
@@ -484,12 +484,12 @@ REFERENCE_IMAGES = \
 	fill-and-stroke.rgb24.ref.png \
 	fill-and-stroke.xlib.argb32.ref.png \
 	fill-and-stroke.xlib.rgb24.ref.png \
+	fill-degenerate-sort-order.argb32.ref.png \
 	fill-degenerate-sort-order.image16.ref.png \
 	fill-degenerate-sort-order.ps.argb32.xfail.png \
 	fill-degenerate-sort-order.ps.rgb24.xfail.png \
 	fill-degenerate-sort-order.quartz.argb32.ref.png \
 	fill-degenerate-sort-order.quartz.rgb24.ref.png \
-	fill-degenerate-sort-order.ref.png \
 	fill-degenerate-sort-order.rgb24.ref.png \
 	fill-degenerate-sort-order.xlib.ref.png \
 	fill-degenerate-sort-order.xlib.rgb24.ref.png \
@@ -749,9 +749,9 @@ REFERENCE_IMAGES = \
 	map-all-to-image.ref.png \
 	map-bit-to-image.ref.png \
 	map-to-image-fill.ref.png \
+	mask-alpha.argb32.ref.png \
 	mask-alpha.image16.ref.png \
 	mask-alpha.quartz.argb32.ref.png \
-	mask-alpha.ref.png \
 	mask-alpha.rgb24.ref.png \
 	mask-alpha.svg.rgb24.xfail.png \
 	mask-alpha.xlib.ref.png \
@@ -774,12 +774,12 @@ REFERENCE_IMAGES = \
 	mask-transformed-similar.quartz.ref.png \
 	mask-transformed-similar.ref.png \
 	mask-transformed-similar.svg.ref.png \
+	mask.argb32.ref.png \
 	mask.image16.ref.png \
 	mask.pdf.argb32.ref.png \
 	mask.pdf.rgb24.ref.png \
 	mask.quartz.argb32.ref.png \
 	mask.quartz.rgb24.ref.png \
-	mask.ref.png \
 	mask.rgb24.ref.png \
 	mask.svg.argb32.xfail.png \
 	mask.svg.rgb24.xfail.png \
@@ -828,11 +828,11 @@ REFERENCE_IMAGES = \
 	operator-alpha.rgb24.ref.png \
 	operator-alpha.svg12.argb32.xfail.png \
 	operator-alpha.svg12.rgb24.xfail.png \
+	operator-clear.argb32.ref.png \
 	operator-clear.ps2.argb32.ref.png \
 	operator-clear.ps3.argb32.ref.png \
 	operator-clear.quartz.argb32.ref.png \
 	operator-clear.quartz.rgb24.ref.png \
-	operator-clear.ref.png \
 	operator-clear.rgb24.ref.png \
 	operator-clear.svg12.argb32.xfail.png \
 	operator-clear.svg12.rgb24.xfail.png \
diff --git a/test/a1-bug.ref.png b/test/a1-bug.ref.png
index dc6ff93..9c6a36e 100644
Binary files a/test/a1-bug.ref.png and b/test/a1-bug.ref.png differ
diff --git a/test/a8-clear.ref.png b/test/a8-clear.ref.png
index 98a624e..23260c4 100644
Binary files a/test/a8-clear.ref.png and b/test/a8-clear.ref.png differ
diff --git a/test/aliasing.ref.png b/test/aliasing.ref.png
index 00ddacb..16f563e 100644
Binary files a/test/aliasing.ref.png and b/test/aliasing.ref.png differ
diff --git a/test/arc-looping-dash.ref.png b/test/arc-looping-dash.ref.png
index 516e66c..27acfc3 100644
Binary files a/test/arc-looping-dash.ref.png and b/test/arc-looping-dash.ref.png differ
diff --git a/test/big-line.ref.png b/test/big-line.ref.png
index 1bcde8f..d86725d 100644
Binary files a/test/big-line.ref.png and b/test/big-line.ref.png differ
diff --git a/test/big-little-triangle.argb32.ref.png b/test/big-little-triangle.argb32.ref.png
index 1c2522f..a5c8155 100644
Binary files a/test/big-little-triangle.argb32.ref.png and b/test/big-little-triangle.argb32.ref.png differ
diff --git a/test/big-little-triangle.rgb24.ref.png b/test/big-little-triangle.rgb24.ref.png
index 24fc472..30b1178 100644
Binary files a/test/big-little-triangle.rgb24.ref.png and b/test/big-little-triangle.rgb24.ref.png differ
diff --git a/test/bug-extents.ref.png b/test/bug-extents.ref.png
index c388bad..47d6d36 100644
Binary files a/test/bug-extents.ref.png and b/test/bug-extents.ref.png differ
diff --git a/test/bug-seams.ref.png b/test/bug-seams.ref.png
index d386327..0665e06 100644
Binary files a/test/bug-seams.ref.png and b/test/bug-seams.ref.png differ
diff --git a/test/caps-joins-alpha.ref.png b/test/caps-joins-alpha.ref.png
index b28d936..338c809 100644
Binary files a/test/caps-joins-alpha.ref.png and b/test/caps-joins-alpha.ref.png differ
diff --git a/test/caps-joins-curve.ref.png b/test/caps-joins-curve.ref.png
index cb4034b..f4398d7 100644
Binary files a/test/caps-joins-curve.ref.png and b/test/caps-joins-curve.ref.png differ
diff --git a/test/caps-joins.ref.png b/test/caps-joins.ref.png
index d83f956..b9b5ad4 100644
Binary files a/test/caps-joins.ref.png and b/test/caps-joins.ref.png differ
diff --git a/test/caps-sub-paths.ref.png b/test/caps-sub-paths.ref.png
index 1da16e8..1829fc5 100644
Binary files a/test/caps-sub-paths.ref.png and b/test/caps-sub-paths.ref.png differ
diff --git a/test/caps-tails-curve.ref.png b/test/caps-tails-curve.ref.png
index c521aa8..6ed8905 100644
Binary files a/test/caps-tails-curve.ref.png and b/test/caps-tails-curve.ref.png differ
diff --git a/test/caps.ref.png b/test/caps.ref.png
index a46e036..37ed2bb 100644
Binary files a/test/caps.ref.png and b/test/caps.ref.png differ
diff --git a/test/clear-source.ref.png b/test/clear-source.ref.png
index 4948c5e..b7e8025 100644
Binary files a/test/clear-source.ref.png and b/test/clear-source.ref.png differ
diff --git a/test/clear.argb32.ref.png b/test/clear.argb32.ref.png
index f05cfb6..2e756e2 100644
Binary files a/test/clear.argb32.ref.png and b/test/clear.argb32.ref.png differ
diff --git a/test/clear.rgb24.ref.png b/test/clear.rgb24.ref.png
index d51a4c6..dc1e509 100644
Binary files a/test/clear.rgb24.ref.png and b/test/clear.rgb24.ref.png differ
diff --git a/test/clip-disjoint-hatching.ref.png b/test/clip-disjoint-hatching.ref.png
index 25b3708..115875b 100644
Binary files a/test/clip-disjoint-hatching.ref.png and b/test/clip-disjoint-hatching.ref.png differ
diff --git a/test/clip-disjoint.ref.png b/test/clip-disjoint.ref.png
index 131e0e5..a4c9989 100644
Binary files a/test/clip-disjoint.ref.png and b/test/clip-disjoint.ref.png differ
diff --git a/test/clip-fill-eo-unbounded.argb32.ref.png b/test/clip-fill-eo-unbounded.argb32.ref.png
index 4557bf0..66af094 100644
Binary files a/test/clip-fill-eo-unbounded.argb32.ref.png and b/test/clip-fill-eo-unbounded.argb32.ref.png differ
diff --git a/test/clip-fill-nz-unbounded.argb32.ref.png b/test/clip-fill-nz-unbounded.argb32.ref.png
index 4557bf0..66af094 100644
Binary files a/test/clip-fill-nz-unbounded.argb32.ref.png and b/test/clip-fill-nz-unbounded.argb32.ref.png differ
diff --git a/test/clip-fill-rule.argb32.ref.png b/test/clip-fill-rule.argb32.ref.png
new file mode 100644
index 0000000..0af1530
Binary files /dev/null and b/test/clip-fill-rule.argb32.ref.png differ
diff --git a/test/clip-fill-rule.ref.png b/test/clip-fill-rule.ref.png
deleted file mode 100644
index 27ae122..0000000
Binary files a/test/clip-fill-rule.ref.png and /dev/null differ
diff --git a/test/clip-fill-rule.rgb24.ref.png b/test/clip-fill-rule.rgb24.ref.png
index 050bd66..7001dbe 100644
Binary files a/test/clip-fill-rule.rgb24.ref.png and b/test/clip-fill-rule.rgb24.ref.png differ
diff --git a/test/clip-fill.ref.png b/test/clip-fill.ref.png
index 41871bc..7f894e9 100644
Binary files a/test/clip-fill.ref.png and b/test/clip-fill.ref.png differ
diff --git a/test/clip-group-shapes-circles.ref.png b/test/clip-group-shapes-circles.ref.png
index 7dd6a83..289b323 100644
Binary files a/test/clip-group-shapes-circles.ref.png and b/test/clip-group-shapes-circles.ref.png differ
diff --git a/test/clip-image.ref.png b/test/clip-image.ref.png
index b038f2a..bf8ee72 100644
Binary files a/test/clip-image.ref.png and b/test/clip-image.ref.png differ
diff --git a/test/clip-intersect.ref.png b/test/clip-intersect.ref.png
index f02f1cb..96f9b08 100644
Binary files a/test/clip-intersect.ref.png and b/test/clip-intersect.ref.png differ
diff --git a/test/clip-mixed-antialias.ref.png b/test/clip-mixed-antialias.ref.png
index fb28e0c..108cb46 100644
Binary files a/test/clip-mixed-antialias.ref.png and b/test/clip-mixed-antialias.ref.png differ
diff --git a/test/clip-nesting.argb32.ref.png b/test/clip-nesting.argb32.ref.png
new file mode 100644
index 0000000..927a7d4
Binary files /dev/null and b/test/clip-nesting.argb32.ref.png differ
diff --git a/test/clip-nesting.ref.png b/test/clip-nesting.ref.png
deleted file mode 100644
index 6b7e1cd..0000000
Binary files a/test/clip-nesting.ref.png and /dev/null differ
diff --git a/test/clip-nesting.rgb24.ref.png b/test/clip-nesting.rgb24.ref.png
index a014763..432318d 100644
Binary files a/test/clip-nesting.rgb24.ref.png and b/test/clip-nesting.rgb24.ref.png differ
diff --git a/test/clip-push-group.ref.png b/test/clip-push-group.ref.png
index 86724a2..f57e7d2 100644
Binary files a/test/clip-push-group.ref.png and b/test/clip-push-group.ref.png differ
diff --git a/test/clip-shape.ref.png b/test/clip-shape.ref.png
index 313e245..892a4aa 100644
Binary files a/test/clip-shape.ref.png and b/test/clip-shape.ref.png differ
diff --git a/test/clip-stroke-unbounded.argb32.ref.png b/test/clip-stroke-unbounded.argb32.ref.png
index eed9bad..df0ee64 100644
Binary files a/test/clip-stroke-unbounded.argb32.ref.png and b/test/clip-stroke-unbounded.argb32.ref.png differ
diff --git a/test/clip-stroke.ref.png b/test/clip-stroke.ref.png
index 0b316e6..bb819ce 100644
Binary files a/test/clip-stroke.ref.png and b/test/clip-stroke.ref.png differ
diff --git a/test/clip-text.ref.png b/test/clip-text.ref.png
index 5cb0030..d65a8f6 100644
Binary files a/test/clip-text.ref.png and b/test/clip-text.ref.png differ
diff --git a/test/clip-twice.argb32.ref.png b/test/clip-twice.argb32.ref.png
new file mode 100644
index 0000000..68a505e
Binary files /dev/null and b/test/clip-twice.argb32.ref.png differ
diff --git a/test/clip-twice.ref.png b/test/clip-twice.ref.png
deleted file mode 100644
index 4aafc9a..0000000
Binary files a/test/clip-twice.ref.png and /dev/null differ
diff --git a/test/clip-twice.rgb24.ref.png b/test/clip-twice.rgb24.ref.png
index 25c44ef..35f9613 100644
Binary files a/test/clip-twice.rgb24.ref.png and b/test/clip-twice.rgb24.ref.png differ
diff --git a/test/close-path-current-point.ref.png b/test/close-path-current-point.ref.png
index 70f9acc..9d3fd24 100644
Binary files a/test/close-path-current-point.ref.png and b/test/close-path-current-point.ref.png differ
diff --git a/test/close-path.ref.png b/test/close-path.ref.png
index 538d9c6..117c1ae 100644
Binary files a/test/close-path.ref.png and b/test/close-path.ref.png differ
diff --git a/test/copy-path.ref.png b/test/copy-path.ref.png
index 3e9c304..588d56c 100644
Binary files a/test/copy-path.ref.png and b/test/copy-path.ref.png differ
diff --git a/test/dash-caps-joins.ref.png b/test/dash-caps-joins.ref.png
index bde3697..db8822a 100644
Binary files a/test/dash-caps-joins.ref.png and b/test/dash-caps-joins.ref.png differ
diff --git a/test/dash-curve.ref.png b/test/dash-curve.ref.png
index b940c1b..b98c118 100644
Binary files a/test/dash-curve.ref.png and b/test/dash-curve.ref.png differ
diff --git a/test/dash-infinite-loop.ref.png b/test/dash-infinite-loop.ref.png
index c0cc739..4a44e22 100644
Binary files a/test/dash-infinite-loop.ref.png and b/test/dash-infinite-loop.ref.png differ
diff --git a/test/dash-scale.ref.png b/test/dash-scale.ref.png
index cbfb6bd..e2a2538 100644
Binary files a/test/dash-scale.ref.png and b/test/dash-scale.ref.png differ
diff --git a/test/dash-state.ref.png b/test/dash-state.ref.png
index d195ab0..06c8bbc 100644
Binary files a/test/dash-state.ref.png and b/test/dash-state.ref.png differ
diff --git a/test/dash-zero-length.ref.png b/test/dash-zero-length.ref.png
index 16024f4..9ddd40f 100644
Binary files a/test/dash-zero-length.ref.png and b/test/dash-zero-length.ref.png differ
diff --git a/test/dash-zero-length.rgb24.ref.png b/test/dash-zero-length.rgb24.ref.png
index 41b595c..74d5df2 100644
Binary files a/test/dash-zero-length.rgb24.ref.png and b/test/dash-zero-length.rgb24.ref.png differ
diff --git a/test/degenerate-arc.ref.png b/test/degenerate-arc.ref.png
index d83e2c7..6bcfb8b 100644
Binary files a/test/degenerate-arc.ref.png and b/test/degenerate-arc.ref.png differ
diff --git a/test/degenerate-curve-to.ref.png b/test/degenerate-curve-to.ref.png
index 353f08d..57a36c3 100644
Binary files a/test/degenerate-curve-to.ref.png and b/test/degenerate-curve-to.ref.png differ
diff --git a/test/degenerate-dash.ref.png b/test/degenerate-dash.ref.png
index 2ddfc8b..523eb1a 100644
Binary files a/test/degenerate-dash.ref.png and b/test/degenerate-dash.ref.png differ
diff --git a/test/degenerate-path.argb32.ref.png b/test/degenerate-path.argb32.ref.png
index e647677..5078b8a 100644
Binary files a/test/degenerate-path.argb32.ref.png and b/test/degenerate-path.argb32.ref.png differ
diff --git a/test/degenerate-path.rgb24.ref.png b/test/degenerate-path.rgb24.ref.png
index d8210a5..d25513a 100644
Binary files a/test/degenerate-path.rgb24.ref.png and b/test/degenerate-path.rgb24.ref.png differ
diff --git a/test/degenerate-pen.ref.png b/test/degenerate-pen.ref.png
index b7dcaad..0a28436 100644
Binary files a/test/degenerate-pen.ref.png and b/test/degenerate-pen.ref.png differ
diff --git a/test/degenerate-rel-curve-to.ref.png b/test/degenerate-rel-curve-to.ref.png
index 5f5275e..31b0eb4 100644
Binary files a/test/degenerate-rel-curve-to.ref.png and b/test/degenerate-rel-curve-to.ref.png differ
diff --git a/test/drunkard-tails.ref.png b/test/drunkard-tails.ref.png
index 166320e..9cd2314 100644
Binary files a/test/drunkard-tails.ref.png and b/test/drunkard-tails.ref.png differ
diff --git a/test/extended-blend-alpha-mask.rgb24.ref.png b/test/extended-blend-alpha-mask.rgb24.ref.png
index b0a6c6c..b5f12f1 100644
Binary files a/test/extended-blend-alpha-mask.rgb24.ref.png and b/test/extended-blend-alpha-mask.rgb24.ref.png differ
diff --git a/test/extended-blend-alpha.rgb24.ref.png b/test/extended-blend-alpha.rgb24.ref.png
index f62dda9..86d0e2d 100644
Binary files a/test/extended-blend-alpha.rgb24.ref.png and b/test/extended-blend-alpha.rgb24.ref.png differ
diff --git a/test/extended-blend-solid-alpha.rgb24.ref.png b/test/extended-blend-solid-alpha.rgb24.ref.png
index f62dda9..86d0e2d 100644
Binary files a/test/extended-blend-solid-alpha.rgb24.ref.png and b/test/extended-blend-solid-alpha.rgb24.ref.png differ
diff --git a/test/extended-blend-solid.rgb24.ref.png b/test/extended-blend-solid.rgb24.ref.png
index 53c1b22..4580e0d 100644
Binary files a/test/extended-blend-solid.rgb24.ref.png and b/test/extended-blend-solid.rgb24.ref.png differ
diff --git a/test/extended-blend.rgb24.ref.png b/test/extended-blend.rgb24.ref.png
index 53c1b22..4580e0d 100644
Binary files a/test/extended-blend.rgb24.ref.png and b/test/extended-blend.rgb24.ref.png differ
diff --git a/test/fill-alpha-pattern.ref.png b/test/fill-alpha-pattern.ref.png
index 9ab39a7..13f2a72 100644
Binary files a/test/fill-alpha-pattern.ref.png and b/test/fill-alpha-pattern.ref.png differ
diff --git a/test/fill-alpha.ref.png b/test/fill-alpha.ref.png
index b50a456..7ab149d 100644
Binary files a/test/fill-alpha.ref.png and b/test/fill-alpha.ref.png differ
diff --git a/test/fill-and-stroke-alpha-add.ref.png b/test/fill-and-stroke-alpha-add.ref.png
index c69b6bd..f2731b9 100644
Binary files a/test/fill-and-stroke-alpha-add.ref.png and b/test/fill-and-stroke-alpha-add.ref.png differ
diff --git a/test/fill-and-stroke-alpha.ref.png b/test/fill-and-stroke-alpha.ref.png
index ff2e156..70f4763 100644
Binary files a/test/fill-and-stroke-alpha.ref.png and b/test/fill-and-stroke-alpha.ref.png differ
diff --git a/test/fill-and-stroke.argb32.ref.png b/test/fill-and-stroke.argb32.ref.png
index 01d92c8..f1aa633 100644
Binary files a/test/fill-and-stroke.argb32.ref.png and b/test/fill-and-stroke.argb32.ref.png differ
diff --git a/test/fill-and-stroke.rgb24.ref.png b/test/fill-and-stroke.rgb24.ref.png
index 7228813..7081d72 100644
Binary files a/test/fill-and-stroke.rgb24.ref.png and b/test/fill-and-stroke.rgb24.ref.png differ
diff --git a/test/fill-degenerate-sort-order.argb32.ref.png b/test/fill-degenerate-sort-order.argb32.ref.png
new file mode 100644
index 0000000..57e61db
Binary files /dev/null and b/test/fill-degenerate-sort-order.argb32.ref.png differ
diff --git a/test/fill-degenerate-sort-order.ref.png b/test/fill-degenerate-sort-order.ref.png
deleted file mode 100644
index fa92ad4..0000000
Binary files a/test/fill-degenerate-sort-order.ref.png and /dev/null differ
diff --git a/test/fill-degenerate-sort-order.rgb24.ref.png b/test/fill-degenerate-sort-order.rgb24.ref.png
index 377c708..5e807b1 100644
Binary files a/test/fill-degenerate-sort-order.rgb24.ref.png and b/test/fill-degenerate-sort-order.rgb24.ref.png differ
diff --git a/test/fill-image.ref.png b/test/fill-image.ref.png
index 4e4f450..899c159 100644
Binary files a/test/fill-image.ref.png and b/test/fill-image.ref.png differ
diff --git a/test/fill-missed-stop.ref.png b/test/fill-missed-stop.ref.png
index 241d725..7c5a4ed 100644
Binary files a/test/fill-missed-stop.ref.png and b/test/fill-missed-stop.ref.png differ
diff --git a/test/fill-missed-stop.rgb24.ref.png b/test/fill-missed-stop.rgb24.ref.png
index 4f9b381..3f9d2ad 100644
Binary files a/test/fill-missed-stop.rgb24.ref.png and b/test/fill-missed-stop.rgb24.ref.png differ
diff --git a/test/fill-rule.ref.png b/test/fill-rule.ref.png
index 8ed850d..ed18bf8 100644
Binary files a/test/fill-rule.ref.png and b/test/fill-rule.ref.png differ
diff --git a/test/fill-rule.rgb24.ref.png b/test/fill-rule.rgb24.ref.png
index bdfc12f..704172f 100644
Binary files a/test/fill-rule.rgb24.ref.png and b/test/fill-rule.rgb24.ref.png differ
diff --git a/test/finer-grained-fallbacks.argb32.ref.png b/test/finer-grained-fallbacks.argb32.ref.png
index 8960179..ea50762 100644
Binary files a/test/finer-grained-fallbacks.argb32.ref.png and b/test/finer-grained-fallbacks.argb32.ref.png differ
diff --git a/test/finer-grained-fallbacks.rgb24.ref.png b/test/finer-grained-fallbacks.rgb24.ref.png
index 1a9a0c0..08467b0 100644
Binary files a/test/finer-grained-fallbacks.rgb24.ref.png and b/test/finer-grained-fallbacks.rgb24.ref.png differ
diff --git a/test/font-matrix-translation.ref.png b/test/font-matrix-translation.ref.png
index a7aeb59..dd5faba 100644
Binary files a/test/font-matrix-translation.ref.png and b/test/font-matrix-translation.ref.png differ
diff --git a/test/ft-show-glyphs-positioning.ref.png b/test/ft-show-glyphs-positioning.ref.png
index 21b9a4e..b49ed47 100644
Binary files a/test/ft-show-glyphs-positioning.ref.png and b/test/ft-show-glyphs-positioning.ref.png differ
diff --git a/test/ft-show-glyphs-table.ref.png b/test/ft-show-glyphs-table.ref.png
index 92a3527..c762dc7 100644
Binary files a/test/ft-show-glyphs-table.ref.png and b/test/ft-show-glyphs-table.ref.png differ
diff --git a/test/ft-text-vertical-layout-type3.ref.png b/test/ft-text-vertical-layout-type3.ref.png
index bcff10b..13651aa 100644
Binary files a/test/ft-text-vertical-layout-type3.ref.png and b/test/ft-text-vertical-layout-type3.ref.png differ
diff --git a/test/glyph-cache-pressure.ref.png b/test/glyph-cache-pressure.ref.png
index 0947a67..14182f1 100644
Binary files a/test/glyph-cache-pressure.ref.png and b/test/glyph-cache-pressure.ref.png differ
diff --git a/test/gradient-alpha.rgb24.ref.png b/test/gradient-alpha.rgb24.ref.png
index 93ce8f5..3c7258d 100644
Binary files a/test/gradient-alpha.rgb24.ref.png and b/test/gradient-alpha.rgb24.ref.png differ
diff --git a/test/gradient-constant-alpha.rgb24.ref.png b/test/gradient-constant-alpha.rgb24.ref.png
index f190009..69cd596 100644
Binary files a/test/gradient-constant-alpha.rgb24.ref.png and b/test/gradient-constant-alpha.rgb24.ref.png differ
diff --git a/test/group-unaligned.ref.png b/test/group-unaligned.ref.png
index 112cc48..700e6fd 100644
Binary files a/test/group-unaligned.ref.png and b/test/group-unaligned.ref.png differ
diff --git a/test/halo-transform.ref.png b/test/halo-transform.ref.png
index 6ad3ce1..cd84718 100644
Binary files a/test/halo-transform.ref.png and b/test/halo-transform.ref.png differ
diff --git a/test/halo.ref.png b/test/halo.ref.png
index e2973a0..ebe0c61 100644
Binary files a/test/halo.ref.png and b/test/halo.ref.png differ
diff --git a/test/hatchings.ref.png b/test/hatchings.ref.png
index 4b6c9a8..3b34e5c 100644
Binary files a/test/hatchings.ref.png and b/test/hatchings.ref.png differ
diff --git a/test/infinite-join.ref.png b/test/infinite-join.ref.png
index 5347d3b..60bf49e 100644
Binary files a/test/infinite-join.ref.png and b/test/infinite-join.ref.png differ
diff --git a/test/inverse-text.ref.png b/test/inverse-text.ref.png
index 014e70b..40defe6 100644
Binary files a/test/inverse-text.ref.png and b/test/inverse-text.ref.png differ
diff --git a/test/joins-loop.ref.png b/test/joins-loop.ref.png
index 696d40c..144734e 100644
Binary files a/test/joins-loop.ref.png and b/test/joins-loop.ref.png differ
diff --git a/test/joins-retrace.ref.png b/test/joins-retrace.ref.png
index 447bfdb..d036d7c 100644
Binary files a/test/joins-retrace.ref.png and b/test/joins-retrace.ref.png differ
diff --git a/test/joins-star.ref.png b/test/joins-star.ref.png
index e0d6606..574778c 100644
Binary files a/test/joins-star.ref.png and b/test/joins-star.ref.png differ
diff --git a/test/joins.ref.png b/test/joins.ref.png
index f8e33f8..6513023 100644
Binary files a/test/joins.ref.png and b/test/joins.ref.png differ
diff --git a/test/large-twin-antialias-mixed.ref.png b/test/large-twin-antialias-mixed.ref.png
index 137a1cb..456e81d 100644
Binary files a/test/large-twin-antialias-mixed.ref.png and b/test/large-twin-antialias-mixed.ref.png differ
diff --git a/test/leaky-dashed-stroke.ref.png b/test/leaky-dashed-stroke.ref.png
index ae64dae..31f1e97 100644
Binary files a/test/leaky-dashed-stroke.ref.png and b/test/leaky-dashed-stroke.ref.png differ
diff --git a/test/leaky-polygon.ref.png b/test/leaky-polygon.ref.png
index 15afc5d..b92d8d2 100644
Binary files a/test/leaky-polygon.ref.png and b/test/leaky-polygon.ref.png differ
diff --git a/test/line-width-overlap-rotated.ref.png b/test/line-width-overlap-rotated.ref.png
index cd89a85..6e3cbea 100644
Binary files a/test/line-width-overlap-rotated.ref.png and b/test/line-width-overlap-rotated.ref.png differ
diff --git a/test/line-width-overlap.ref.png b/test/line-width-overlap.ref.png
index 09911bc..13d70c8 100644
Binary files a/test/line-width-overlap.ref.png and b/test/line-width-overlap.ref.png differ
diff --git a/test/line-width-scale.ref.png b/test/line-width-scale.ref.png
index e012b6e..1c02e93 100644
Binary files a/test/line-width-scale.ref.png and b/test/line-width-scale.ref.png differ
diff --git a/test/linear-gradient-subset.ref.png b/test/linear-gradient-subset.ref.png
index e7fd923..0225b43 100644
Binary files a/test/linear-gradient-subset.ref.png and b/test/linear-gradient-subset.ref.png differ
diff --git a/test/linear-gradient.ref.png b/test/linear-gradient.ref.png
index ee238e6..66d5ddb 100644
Binary files a/test/linear-gradient.ref.png and b/test/linear-gradient.ref.png differ
diff --git a/test/long-dashed-lines.ref.png b/test/long-dashed-lines.ref.png
index 09829b7..8344a45 100644
Binary files a/test/long-dashed-lines.ref.png and b/test/long-dashed-lines.ref.png differ
diff --git a/test/mask-alpha.argb32.ref.png b/test/mask-alpha.argb32.ref.png
new file mode 100644
index 0000000..203b8d1
Binary files /dev/null and b/test/mask-alpha.argb32.ref.png differ
diff --git a/test/mask-alpha.ref.png b/test/mask-alpha.ref.png
deleted file mode 100644
index 20f0663..0000000
Binary files a/test/mask-alpha.ref.png and /dev/null differ
diff --git a/test/mask-alpha.rgb24.ref.png b/test/mask-alpha.rgb24.ref.png
index aa2010f..070ddf8 100644
Binary files a/test/mask-alpha.rgb24.ref.png and b/test/mask-alpha.rgb24.ref.png differ
diff --git a/test/mask.argb32.ref.png b/test/mask.argb32.ref.png
new file mode 100644
index 0000000..f1f14d7
Binary files /dev/null and b/test/mask.argb32.ref.png differ
diff --git a/test/mask.ref.png b/test/mask.ref.png
deleted file mode 100644
index b6c49ca..0000000
Binary files a/test/mask.ref.png and /dev/null differ
diff --git a/test/mask.rgb24.ref.png b/test/mask.rgb24.ref.png
index 3440050..0f9cb37 100644
Binary files a/test/mask.rgb24.ref.png and b/test/mask.rgb24.ref.png differ
diff --git a/test/new-sub-path.argb32.ref.png b/test/new-sub-path.argb32.ref.png
index 4ecaa0f..aec47e3 100644
Binary files a/test/new-sub-path.argb32.ref.png and b/test/new-sub-path.argb32.ref.png differ
diff --git a/test/new-sub-path.rgb24.ref.png b/test/new-sub-path.rgb24.ref.png
index 938344a..cdc270c 100644
Binary files a/test/new-sub-path.rgb24.ref.png and b/test/new-sub-path.rgb24.ref.png differ
diff --git a/test/operator-clear.argb32.ref.png b/test/operator-clear.argb32.ref.png
new file mode 100644
index 0000000..2629740
Binary files /dev/null and b/test/operator-clear.argb32.ref.png differ
diff --git a/test/operator-clear.ref.png b/test/operator-clear.ref.png
deleted file mode 100644
index 5b6b1f1..0000000
Binary files a/test/operator-clear.ref.png and /dev/null differ
diff --git a/test/operator-clear.rgb24.ref.png b/test/operator-clear.rgb24.ref.png
index d80da8b..0a730a1 100644
Binary files a/test/operator-clear.rgb24.ref.png and b/test/operator-clear.rgb24.ref.png differ
diff --git a/test/over-above-source.ref.png b/test/over-above-source.ref.png
index c45fcbd..19a57c2 100644
Binary files a/test/over-above-source.ref.png and b/test/over-above-source.ref.png differ
diff --git a/test/over-above-source.rgb24.ref.png b/test/over-above-source.rgb24.ref.png
index 84fc880..ec37387 100644
Binary files a/test/over-above-source.rgb24.ref.png and b/test/over-above-source.rgb24.ref.png differ
diff --git a/test/over-around-source.ref.png b/test/over-around-source.ref.png
index abaeb4e..01508d2 100644
Binary files a/test/over-around-source.ref.png and b/test/over-around-source.ref.png differ
diff --git a/test/over-around-source.rgb24.ref.png b/test/over-around-source.rgb24.ref.png
index 943a28e..a17983f 100644
Binary files a/test/over-around-source.rgb24.ref.png and b/test/over-around-source.rgb24.ref.png differ
diff --git a/test/over-below-source.ref.png b/test/over-below-source.ref.png
index cd7efd6..eedd56b 100644
Binary files a/test/over-below-source.ref.png and b/test/over-below-source.ref.png differ
diff --git a/test/over-below-source.rgb24.ref.png b/test/over-below-source.rgb24.ref.png
index 53041e9..8ce6755 100644
Binary files a/test/over-below-source.rgb24.ref.png and b/test/over-below-source.rgb24.ref.png differ
diff --git a/test/over-between-source.ref.png b/test/over-between-source.ref.png
index 0c3986f..7602945 100644
Binary files a/test/over-between-source.ref.png and b/test/over-between-source.ref.png differ
diff --git a/test/over-between-source.rgb24.ref.png b/test/over-between-source.rgb24.ref.png
index 602f2d2..f5223bb 100644
Binary files a/test/over-between-source.rgb24.ref.png and b/test/over-between-source.rgb24.ref.png differ
diff --git a/test/overlapping-boxes.argb32.ref.png b/test/overlapping-boxes.argb32.ref.png
index 278e62a..1c68438 100644
Binary files a/test/overlapping-boxes.argb32.ref.png and b/test/overlapping-boxes.argb32.ref.png differ
diff --git a/test/overlapping-dash-caps.ref.png b/test/overlapping-dash-caps.ref.png
index 6b3b0ce..726b293 100644
Binary files a/test/overlapping-dash-caps.ref.png and b/test/overlapping-dash-caps.ref.png differ
diff --git a/test/overlapping-glyphs.argb32.ref.png b/test/overlapping-glyphs.argb32.ref.png
index 2e2d60c..8f6d383 100644
Binary files a/test/overlapping-glyphs.argb32.ref.png and b/test/overlapping-glyphs.argb32.ref.png differ
diff --git a/test/overlapping-glyphs.rgb24.ref.png b/test/overlapping-glyphs.rgb24.ref.png
index d978138..eea57b2 100644
Binary files a/test/overlapping-glyphs.rgb24.ref.png and b/test/overlapping-glyphs.rgb24.ref.png differ
diff --git a/test/paint-with-alpha-clip-mask.ref.png b/test/paint-with-alpha-clip-mask.ref.png
index 3ea5e57..12e09d3 100644
Binary files a/test/paint-with-alpha-clip-mask.ref.png and b/test/paint-with-alpha-clip-mask.ref.png differ
diff --git a/test/paint-with-alpha-clip.ref.png b/test/paint-with-alpha-clip.ref.png
index c8c0bde..4bad4e8 100644
Binary files a/test/paint-with-alpha-clip.ref.png and b/test/paint-with-alpha-clip.ref.png differ
diff --git a/test/partial-clip-text-bottom.ref.png b/test/partial-clip-text-bottom.ref.png
index bb31331..7a03fad 100644
Binary files a/test/partial-clip-text-bottom.ref.png and b/test/partial-clip-text-bottom.ref.png differ
diff --git a/test/partial-clip-text-left.ref.png b/test/partial-clip-text-left.ref.png
index ee1358f..95c07f4 100644
Binary files a/test/partial-clip-text-left.ref.png and b/test/partial-clip-text-left.ref.png differ
diff --git a/test/partial-clip-text-right.ref.png b/test/partial-clip-text-right.ref.png
index 5853a72..3e69ca9 100644
Binary files a/test/partial-clip-text-right.ref.png and b/test/partial-clip-text-right.ref.png differ
diff --git a/test/path-append.ref.png b/test/path-append.ref.png
index de9057c..4733f06 100644
Binary files a/test/path-append.ref.png and b/test/path-append.ref.png differ
diff --git a/test/path-stroke-twice.ref.png b/test/path-stroke-twice.ref.png
index 32ef630..4c8b4f5 100644
Binary files a/test/path-stroke-twice.ref.png and b/test/path-stroke-twice.ref.png differ
diff --git a/test/pthread-show-text.ref.png b/test/pthread-show-text.ref.png
index 96b5971..efa5fe9 100644
Binary files a/test/pthread-show-text.ref.png and b/test/pthread-show-text.ref.png differ
diff --git a/test/push-group-color.ref.png b/test/push-group-color.ref.png
index c270bde..1cb630e 100644
Binary files a/test/push-group-color.ref.png and b/test/push-group-color.ref.png differ
diff --git a/test/push-group.ref.png b/test/push-group.ref.png
index e4ae291..a1175e2 100644
Binary files a/test/push-group.ref.png and b/test/push-group.ref.png differ
diff --git a/test/push-group.rgb24.ref.png b/test/push-group.rgb24.ref.png
index 3a95182..d88ff39 100644
Binary files a/test/push-group.rgb24.ref.png and b/test/push-group.rgb24.ref.png differ
diff --git a/test/random-intersections-curves-eo.ref.png b/test/random-intersections-curves-eo.ref.png
index 4456730..e8cfebd 100644
Binary files a/test/random-intersections-curves-eo.ref.png and b/test/random-intersections-curves-eo.ref.png differ
diff --git a/test/random-intersections-curves-nz.ref.png b/test/random-intersections-curves-nz.ref.png
index 6f29ab9..1cbc2a4 100644
Binary files a/test/random-intersections-curves-nz.ref.png and b/test/random-intersections-curves-nz.ref.png differ
diff --git a/test/random-intersections-eo.ref.png b/test/random-intersections-eo.ref.png
index ea23a87..b472113 100644
Binary files a/test/random-intersections-eo.ref.png and b/test/random-intersections-eo.ref.png differ
diff --git a/test/random-intersections-nonzero.ref.png b/test/random-intersections-nonzero.ref.png
index 3ea650c..777d192 100644
Binary files a/test/random-intersections-nonzero.ref.png and b/test/random-intersections-nonzero.ref.png differ
diff --git a/test/record-fill-alpha.ref.png b/test/record-fill-alpha.ref.png
index b50a456..3f8fa43 100644
Binary files a/test/record-fill-alpha.ref.png and b/test/record-fill-alpha.ref.png differ
diff --git a/test/record-paint-alpha-clip-mask.ref.png b/test/record-paint-alpha-clip-mask.ref.png
index 3ea5e57..3c7089c 100644
Binary files a/test/record-paint-alpha-clip-mask.ref.png and b/test/record-paint-alpha-clip-mask.ref.png differ
diff --git a/test/record-paint-alpha-clip.ref.png b/test/record-paint-alpha-clip.ref.png
index c8c0bde..9f6841e 100644
Binary files a/test/record-paint-alpha-clip.ref.png and b/test/record-paint-alpha-clip.ref.png differ
diff --git a/test/recording-surface-over.rgb24.ref.png b/test/recording-surface-over.rgb24.ref.png
index 2de298d..bd84338 100644
Binary files a/test/recording-surface-over.rgb24.ref.png and b/test/recording-surface-over.rgb24.ref.png differ
diff --git a/test/rectilinear-miter-limit.ref.png b/test/rectilinear-miter-limit.ref.png
index 53bfee0..6264e3e 100644
Binary files a/test/rectilinear-miter-limit.ref.png and b/test/rectilinear-miter-limit.ref.png differ
diff --git a/test/reflected-stroke.ref.png b/test/reflected-stroke.ref.png
index 2dd865b..d8c9c03 100644
Binary files a/test/reflected-stroke.ref.png and b/test/reflected-stroke.ref.png differ
diff --git a/test/rel-path.ref.png b/test/rel-path.ref.png
index 18e67ca..6376cec 100644
Binary files a/test/rel-path.ref.png and b/test/rel-path.ref.png differ
diff --git a/test/rel-path.rgb24.ref.png b/test/rel-path.rgb24.ref.png
index c317d11..8254eb5 100644
Binary files a/test/rel-path.rgb24.ref.png and b/test/rel-path.rgb24.ref.png differ
diff --git a/test/rotate-clip-image-surface-paint.ref.png b/test/rotate-clip-image-surface-paint.ref.png
index 7f74b2b..1118adf 100644
Binary files a/test/rotate-clip-image-surface-paint.ref.png and b/test/rotate-clip-image-surface-paint.ref.png differ
diff --git a/test/rotated-clip.ref.png b/test/rotated-clip.ref.png
index 8a4cc1b..1b291b1 100644
Binary files a/test/rotated-clip.ref.png and b/test/rotated-clip.ref.png differ
diff --git a/test/rounded-rectangle-fill.ref.png b/test/rounded-rectangle-fill.ref.png
index 3232c07..36e74dd 100644
Binary files a/test/rounded-rectangle-fill.ref.png and b/test/rounded-rectangle-fill.ref.png differ
diff --git a/test/rounded-rectangle-stroke.ref.png b/test/rounded-rectangle-stroke.ref.png
index 0e8bb25..b0f1b07 100644
Binary files a/test/rounded-rectangle-stroke.ref.png and b/test/rounded-rectangle-stroke.ref.png differ
diff --git a/test/scale-offset-image.ref.png b/test/scale-offset-image.ref.png
index 8c6b0fe..1e216e5 100644
Binary files a/test/scale-offset-image.ref.png and b/test/scale-offset-image.ref.png differ
diff --git a/test/scale-offset-similar.ref.png b/test/scale-offset-similar.ref.png
index 8c6b0fe..1e216e5 100644
Binary files a/test/scale-offset-similar.ref.png and b/test/scale-offset-similar.ref.png differ
diff --git a/test/select-font-face.ref.png b/test/select-font-face.ref.png
index b3d2322..be89d71 100644
Binary files a/test/select-font-face.ref.png and b/test/select-font-face.ref.png differ
diff --git a/test/self-copy.ref.png b/test/self-copy.ref.png
index 92a20db..e6baaa5 100644
Binary files a/test/self-copy.ref.png and b/test/self-copy.ref.png differ
diff --git a/test/shape-general-convex.ref.png b/test/shape-general-convex.ref.png
index 55f5c56..2b296ce 100644
Binary files a/test/shape-general-convex.ref.png and b/test/shape-general-convex.ref.png differ
diff --git a/test/shape-sierpinski.ref.png b/test/shape-sierpinski.ref.png
index 69755d2..938e5c4 100644
Binary files a/test/shape-sierpinski.ref.png and b/test/shape-sierpinski.ref.png differ
diff --git a/test/show-glyphs-advance.ref.png b/test/show-glyphs-advance.ref.png
index bf44a8f..e784099 100644
Binary files a/test/show-glyphs-advance.ref.png and b/test/show-glyphs-advance.ref.png differ
diff --git a/test/show-text-current-point.ref.png b/test/show-text-current-point.ref.png
index 2fc5bd8..b2ee5b2 100644
Binary files a/test/show-text-current-point.ref.png and b/test/show-text-current-point.ref.png differ
diff --git a/test/skew-extreme.ref.png b/test/skew-extreme.ref.png
index 1408395..23d58d5 100644
Binary files a/test/skew-extreme.ref.png and b/test/skew-extreme.ref.png differ
diff --git a/test/smask-fill.ref.png b/test/smask-fill.ref.png
index 28ab733..d21d010 100644
Binary files a/test/smask-fill.ref.png and b/test/smask-fill.ref.png differ
diff --git a/test/smask-stroke.ref.png b/test/smask-stroke.ref.png
index c94a09f..d36f0ac 100644
Binary files a/test/smask-stroke.ref.png and b/test/smask-stroke.ref.png differ
diff --git a/test/smask-text.ref.png b/test/smask-text.ref.png
index ee7fc8b..c570259 100644
Binary files a/test/smask-text.ref.png and b/test/smask-text.ref.png differ
diff --git a/test/smask.ref.png b/test/smask.ref.png
index 3b672d6..0370974 100644
Binary files a/test/smask.ref.png and b/test/smask.ref.png differ
diff --git a/test/spline-decomposition.ref.png b/test/spline-decomposition.ref.png
index 426aefa..e655efd 100644
Binary files a/test/spline-decomposition.ref.png and b/test/spline-decomposition.ref.png differ
diff --git a/test/stroke-ctm-caps.ref.png b/test/stroke-ctm-caps.ref.png
index 799ff39..75e3252 100644
Binary files a/test/stroke-ctm-caps.ref.png and b/test/stroke-ctm-caps.ref.png differ
diff --git a/test/stroke-image.ref.png b/test/stroke-image.ref.png
index a3c57aa..899c159 100644
Binary files a/test/stroke-image.ref.png and b/test/stroke-image.ref.png differ
diff --git a/test/subsurface.ref.png b/test/subsurface.ref.png
index ceaf3f7..77e3c23 100644
Binary files a/test/subsurface.ref.png and b/test/subsurface.ref.png differ
diff --git a/test/surface-pattern-operator.argb32.ref.png b/test/surface-pattern-operator.argb32.ref.png
index 8178030..9abc252 100644
Binary files a/test/surface-pattern-operator.argb32.ref.png and b/test/surface-pattern-operator.argb32.ref.png differ
diff --git a/test/surface-pattern-operator.rgb24.ref.png b/test/surface-pattern-operator.rgb24.ref.png
index 2378bdd..dd9315a 100644
Binary files a/test/surface-pattern-operator.rgb24.ref.png and b/test/surface-pattern-operator.rgb24.ref.png differ
diff --git a/test/text-antialias-gray.ref.png b/test/text-antialias-gray.ref.png
index 63b2e52..b1dbc20 100644
Binary files a/test/text-antialias-gray.ref.png and b/test/text-antialias-gray.ref.png differ
diff --git a/test/text-antialias-subpixel.ref.png b/test/text-antialias-subpixel.ref.png
index 31ddc9c..09da5fa 100644
Binary files a/test/text-antialias-subpixel.ref.png and b/test/text-antialias-subpixel.ref.png differ
diff --git a/test/text-glyph-range.ref.png b/test/text-glyph-range.ref.png
index a39e46c..f279790 100644
Binary files a/test/text-glyph-range.ref.png and b/test/text-glyph-range.ref.png differ
diff --git a/test/text-pattern.ref.png b/test/text-pattern.ref.png
index ac1dd84..272ee1a 100644
Binary files a/test/text-pattern.ref.png and b/test/text-pattern.ref.png differ
diff --git a/test/text-pattern.rgb24.ref.png b/test/text-pattern.rgb24.ref.png
index 54b214b..99e9e7d 100644
Binary files a/test/text-pattern.rgb24.ref.png and b/test/text-pattern.rgb24.ref.png differ
diff --git a/test/text-rotate.ref.png b/test/text-rotate.ref.png
index 3777a9c..59a0d0a 100644
Binary files a/test/text-rotate.ref.png and b/test/text-rotate.ref.png differ
diff --git a/test/transforms.ref.png b/test/transforms.ref.png
index a60e519..1d40acb 100644
Binary files a/test/transforms.ref.png and b/test/transforms.ref.png differ
diff --git a/test/trap-clip.ref.png b/test/trap-clip.ref.png
index 832a2c6..5f5532d 100644
Binary files a/test/trap-clip.ref.png and b/test/trap-clip.ref.png differ
diff --git a/test/trap-clip.rgb24.ref.png b/test/trap-clip.rgb24.ref.png
index e61992f..1e737a0 100644
Binary files a/test/trap-clip.rgb24.ref.png and b/test/trap-clip.rgb24.ref.png differ
diff --git a/test/twin-antialias-gray.ref.png b/test/twin-antialias-gray.ref.png
index ffaa57c..e597b64 100644
Binary files a/test/twin-antialias-gray.ref.png and b/test/twin-antialias-gray.ref.png differ
diff --git a/test/twin-antialias-mixed.ref.png b/test/twin-antialias-mixed.ref.png
index 67cfc5c..0c91dd1 100644
Binary files a/test/twin-antialias-mixed.ref.png and b/test/twin-antialias-mixed.ref.png differ
diff --git a/test/twin-antialias-none.ref.png b/test/twin-antialias-none.ref.png
index 2151f46..42f386d 100644
Binary files a/test/twin-antialias-none.ref.png and b/test/twin-antialias-none.ref.png differ
diff --git a/test/twin-antialias-subpixel.ref.png b/test/twin-antialias-subpixel.ref.png
index ffaa57c..e597b64 100644
Binary files a/test/twin-antialias-subpixel.ref.png and b/test/twin-antialias-subpixel.ref.png differ
diff --git a/test/twin.ref.png b/test/twin.ref.png
index f5d524f..e597b64 100644
Binary files a/test/twin.ref.png and b/test/twin.ref.png differ
diff --git a/test/unantialiased-shapes.ref.png b/test/unantialiased-shapes.ref.png
index 0e20fb8..d9f466e 100644
Binary files a/test/unantialiased-shapes.ref.png and b/test/unantialiased-shapes.ref.png differ
diff --git a/test/unclosed-strokes.ref.png b/test/unclosed-strokes.ref.png
index e42d065..6b1e388 100644
Binary files a/test/unclosed-strokes.ref.png and b/test/unclosed-strokes.ref.png differ
diff --git a/test/user-font-mask.ref.png b/test/user-font-mask.ref.png
index e59eab8..02a9a5e 100644
Binary files a/test/user-font-mask.ref.png and b/test/user-font-mask.ref.png differ
diff --git a/test/user-font-proxy.ref.png b/test/user-font-proxy.ref.png
index cffa9ed..1217ca3 100644
Binary files a/test/user-font-proxy.ref.png and b/test/user-font-proxy.ref.png differ
diff --git a/test/user-font-rescale.ref.png b/test/user-font-rescale.ref.png
index 4478130..c644f75 100644
Binary files a/test/user-font-rescale.ref.png and b/test/user-font-rescale.ref.png differ
diff --git a/test/user-font.ref.png b/test/user-font.ref.png
index ab18e1c..0906e6c 100644
Binary files a/test/user-font.ref.png and b/test/user-font.ref.png differ
diff --git a/test/world-map-fill.ref.png b/test/world-map-fill.ref.png
index fad82ee..50b7142 100644
Binary files a/test/world-map-fill.ref.png and b/test/world-map-fill.ref.png differ
diff --git a/test/world-map-stroke.ref.png b/test/world-map-stroke.ref.png
index 7d63674..6e2f737 100644
Binary files a/test/world-map-stroke.ref.png and b/test/world-map-stroke.ref.png differ
diff --git a/test/world-map.ref.png b/test/world-map.ref.png
index 86ecf4f..36d40c0 100644
Binary files a/test/world-map.ref.png and b/test/world-map.ref.png differ
diff --git a/test/xcomposite-projection.ref.png b/test/xcomposite-projection.ref.png
index ea4dddf..abbea08 100644
Binary files a/test/xcomposite-projection.ref.png and b/test/xcomposite-projection.ref.png differ
commit 0f26f75eda317efc9e448c875110b846b224d463
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date:   Mon Sep 12 13:18:29 2011 +0100

    perf/micro: Add measurement of setting the pixel directly using pixman
    
    Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>

diff --git a/perf/micro/pixel.c b/perf/micro/pixel.c
index 12b8f47..dd3ba52 100644
--- a/perf/micro/pixel.c
+++ b/perf/micro/pixel.c
@@ -28,6 +28,43 @@
 
 #include "cairo-perf.h"
 
+#include <pixman.h>
+
+static cairo_time_t
+pixel_direct (cairo_t *cr, int width, int height, int loops)
+{
+    cairo_surface_t *surface, *image;
+    uint32_t *data;
+    int stride, bpp;
+
+    surface = cairo_get_target (cr);
+    image = cairo_surface_map_to_image (surface, NULL);
+    data = (uint32_t *) cairo_image_surface_get_data (image);
+    stride = cairo_image_surface_get_stride (image) / sizeof (uint32_t);
+
+    switch (cairo_image_surface_get_format (image)) {
+    default:
+    case CAIRO_FORMAT_INVALID:
+    case CAIRO_FORMAT_A1: bpp = 0; break;
+    case CAIRO_FORMAT_A8: bpp = 8; break;
+    case CAIRO_FORMAT_RGB16_565: bpp = 16; break;
+    case CAIRO_FORMAT_RGB24:
+    case CAIRO_FORMAT_RGB30:
+    case CAIRO_FORMAT_ARGB32: bpp = 32; break;
+    }
+
+    cairo_perf_timer_start ();
+
+    while (loops--)
+	pixman_fill (data, stride, bpp, 0, 0, 1, 1, -1);
+
+    cairo_perf_timer_stop ();
+
+    cairo_surface_unmap_image (surface, image);
+
+    return cairo_perf_timer_elapsed ();
+}
+
 static cairo_time_t
 pixel_paint (cairo_t *cr, int width, int height, int loops)
 {
@@ -167,6 +204,7 @@ pixel (cairo_perf_t *perf, cairo_t *cr, int width, int height)
 {
     cairo_set_source_rgb (cr, 1., 1., 1.);
 
+    cairo_perf_run (perf, "pixel-direct", pixel_direct, NULL);
     cairo_perf_run (perf, "pixel-paint", pixel_paint, NULL);
     cairo_perf_run (perf, "pixel-mask", pixel_mask, NULL);
     cairo_perf_run (perf, "pixel-rectangle", pixel_rectangle, NULL);


More information about the cairo-commit mailing list