diff --git a/test/reference/a1-clip-fill-rule.quartz.ref.png b/test/reference/a1-clip-fill-rule.quartz.ref.png new file mode 100644 index 000000000..c4658a804 Binary files /dev/null and b/test/reference/a1-clip-fill-rule.quartz.ref.png differ diff --git a/test/reference/a1-line-width.quartz.ref.png b/test/reference/a1-line-width.quartz.ref.png new file mode 100644 index 000000000..bf96a4c23 Binary files /dev/null and b/test/reference/a1-line-width.quartz.ref.png differ diff --git a/test/reference/a1-rectilinear-grid.quartz.ref.png b/test/reference/a1-rectilinear-grid.quartz.ref.png new file mode 100644 index 000000000..8e9dd1961 Binary files /dev/null and b/test/reference/a1-rectilinear-grid.quartz.ref.png differ diff --git a/test/reference/a1-sample.quartz.xfail.png b/test/reference/a1-sample.quartz.xfail.png new file mode 100644 index 000000000..8f1815be3 Binary files /dev/null and b/test/reference/a1-sample.quartz.xfail.png differ diff --git a/test/reference/a1-tiger.quartz.xfail.png b/test/reference/a1-tiger.quartz.xfail.png new file mode 100644 index 000000000..da3aec660 Binary files /dev/null and b/test/reference/a1-tiger.quartz.xfail.png differ diff --git a/test/reference/arc-direction.quartz.ref.png b/test/reference/arc-direction.quartz.ref.png new file mode 100644 index 000000000..43e4afc37 Binary files /dev/null and b/test/reference/arc-direction.quartz.ref.png differ diff --git a/test/reference/arc-looping-dash.quartz.ref.png b/test/reference/arc-looping-dash.quartz.ref.png deleted file mode 100644 index 70304ca85..000000000 Binary files a/test/reference/arc-looping-dash.quartz.ref.png and /dev/null differ diff --git a/test/reference/arc-looping-dash.quartz.xfail.png b/test/reference/arc-looping-dash.quartz.xfail.png new file mode 100644 index 000000000..5aeffe26c Binary files /dev/null and b/test/reference/arc-looping-dash.quartz.xfail.png differ diff --git a/test/reference/big-little-triangle.quartz.rgb24.ref.png b/test/reference/big-little-triangle.quartz.rgb24.ref.png new file mode 100644 index 000000000..4914a4ad2 Binary files /dev/null and b/test/reference/big-little-triangle.quartz.rgb24.ref.png differ diff --git a/test/reference/bug-51910.quartz.ref.png b/test/reference/bug-51910.quartz.ref.png new file mode 100644 index 000000000..cc900e68c Binary files /dev/null and b/test/reference/bug-51910.quartz.ref.png differ diff --git a/test/reference/bug-extents.quartz.ref.png b/test/reference/bug-extents.quartz.ref.png index 29734483d..193d3e746 100644 Binary files a/test/reference/bug-extents.quartz.ref.png and b/test/reference/bug-extents.quartz.ref.png differ diff --git a/test/reference/bug-seams.quartz.xfail.png b/test/reference/bug-seams.quartz.xfail.png new file mode 100644 index 000000000..25c98b36a Binary files /dev/null and b/test/reference/bug-seams.quartz.xfail.png differ diff --git a/test/reference/bug-spline.quartz.ref.png b/test/reference/bug-spline.quartz.ref.png new file mode 100644 index 000000000..34daba03c Binary files /dev/null and b/test/reference/bug-spline.quartz.ref.png differ diff --git a/test/reference/caps-05.quartz.ref.png b/test/reference/caps-05.quartz.ref.png new file mode 100644 index 000000000..c10460203 Binary files /dev/null and b/test/reference/caps-05.quartz.ref.png differ diff --git a/test/reference/caps-1.quartz.ref.png b/test/reference/caps-1.quartz.ref.png new file mode 100644 index 000000000..668ac6950 Binary files /dev/null and b/test/reference/caps-1.quartz.ref.png differ diff --git a/test/reference/caps-joins-05.quartz.ref.png b/test/reference/caps-joins-05.quartz.ref.png new file mode 100644 index 000000000..21a833876 Binary files /dev/null and b/test/reference/caps-joins-05.quartz.ref.png differ diff --git a/test/reference/caps-joins-1.quartz.ref.png b/test/reference/caps-joins-1.quartz.ref.png new file mode 100644 index 000000000..8c549d3c2 Binary files /dev/null and b/test/reference/caps-joins-1.quartz.ref.png differ diff --git a/test/reference/caps-joins-alpha.quartz.ref.png b/test/reference/caps-joins-alpha.quartz.ref.png index 190c1e96c..f4cb95054 100644 Binary files a/test/reference/caps-joins-alpha.quartz.ref.png and b/test/reference/caps-joins-alpha.quartz.ref.png differ diff --git a/test/reference/caps-joins-curve.quartz.ref.png b/test/reference/caps-joins-curve.quartz.ref.png deleted file mode 100644 index ec3d30796..000000000 Binary files a/test/reference/caps-joins-curve.quartz.ref.png and /dev/null differ diff --git a/test/reference/caps-tails-curve.quartz.ref.png b/test/reference/caps-tails-curve.quartz.ref.png new file mode 100644 index 000000000..489300a26 Binary files /dev/null and b/test/reference/caps-tails-curve.quartz.ref.png differ diff --git a/test/reference/clear.quartz.argb32.ref.png b/test/reference/clear.quartz.argb32.ref.png index 12e604312..0013b1107 100644 Binary files a/test/reference/clear.quartz.argb32.ref.png and b/test/reference/clear.quartz.argb32.ref.png differ diff --git a/test/reference/clear.quartz.rgb24.ref.png b/test/reference/clear.quartz.rgb24.ref.png index 6ea449094..021781cb5 100644 Binary files a/test/reference/clear.quartz.rgb24.ref.png and b/test/reference/clear.quartz.rgb24.ref.png differ diff --git a/test/reference/clip-complex-bug61592.quartz.ref.png b/test/reference/clip-complex-bug61592.quartz.ref.png new file mode 100644 index 000000000..3ebc707e0 Binary files /dev/null and b/test/reference/clip-complex-bug61592.quartz.ref.png differ diff --git a/test/reference/clip-disjoint-hatching.quartz.ref.png b/test/reference/clip-disjoint-hatching.quartz.ref.png new file mode 100644 index 000000000..d80913328 Binary files /dev/null and b/test/reference/clip-disjoint-hatching.quartz.ref.png differ diff --git a/test/reference/clip-disjoint.quartz.ref.png b/test/reference/clip-disjoint.quartz.ref.png index 10068152e..6bd15031b 100644 Binary files a/test/reference/clip-disjoint.quartz.ref.png and b/test/reference/clip-disjoint.quartz.ref.png differ diff --git a/test/reference/clip-fill.quartz.ref.png b/test/reference/clip-fill.quartz.ref.png index 4f235b4dc..925131082 100644 Binary files a/test/reference/clip-fill.quartz.ref.png and b/test/reference/clip-fill.quartz.ref.png differ diff --git a/test/reference/clip-group-shapes-circles.quartz.ref.png b/test/reference/clip-group-shapes-circles.quartz.ref.png index c2ac9ea49..97f70163a 100644 Binary files a/test/reference/clip-group-shapes-circles.quartz.ref.png and b/test/reference/clip-group-shapes-circles.quartz.ref.png differ diff --git a/test/reference/clip-intersect.quartz.ref.png b/test/reference/clip-intersect.quartz.ref.png new file mode 100644 index 000000000..1fefe271d Binary files /dev/null and b/test/reference/clip-intersect.quartz.ref.png differ diff --git a/test/reference/clip-nesting.quartz.argb32.ref.png b/test/reference/clip-nesting.quartz.argb32.ref.png index 7bc187c7e..815d37a73 100644 Binary files a/test/reference/clip-nesting.quartz.argb32.ref.png and b/test/reference/clip-nesting.quartz.argb32.ref.png differ diff --git a/test/reference/clip-nesting.quartz.rgb24.ref.png b/test/reference/clip-nesting.quartz.rgb24.ref.png index 926f5f590..0953e0621 100644 Binary files a/test/reference/clip-nesting.quartz.rgb24.ref.png and b/test/reference/clip-nesting.quartz.rgb24.ref.png differ diff --git a/test/reference/clip-operator.quartz.argb32.ref.png b/test/reference/clip-operator.quartz.argb32.ref.png index ecf6ee2af..142b212cc 100644 Binary files a/test/reference/clip-operator.quartz.argb32.ref.png and b/test/reference/clip-operator.quartz.argb32.ref.png differ diff --git a/test/reference/clip-operator.quartz.rgb24.ref.png b/test/reference/clip-operator.quartz.rgb24.ref.png index 67c628f91..7b8fb6aae 100644 Binary files a/test/reference/clip-operator.quartz.rgb24.ref.png and b/test/reference/clip-operator.quartz.rgb24.ref.png differ diff --git a/test/reference/clip-polygons.quartz.xfail.png b/test/reference/clip-polygons.quartz.xfail.png new file mode 100644 index 000000000..11afe6318 Binary files /dev/null and b/test/reference/clip-polygons.quartz.xfail.png differ diff --git a/test/reference/clip-rotate-image-surface-paint.quartz.ref.png b/test/reference/clip-rotate-image-surface-paint.quartz.ref.png new file mode 100644 index 000000000..dc81695fa Binary files /dev/null and b/test/reference/clip-rotate-image-surface-paint.quartz.ref.png differ diff --git a/test/reference/clip-shape.quartz.ref.png b/test/reference/clip-shape.quartz.ref.png index 292340676..664597b3e 100644 Binary files a/test/reference/clip-shape.quartz.ref.png and b/test/reference/clip-shape.quartz.ref.png differ diff --git a/test/reference/clip-stroke-unbounded.quartz.argb32.ref.png b/test/reference/clip-stroke-unbounded.quartz.argb32.ref.png index 8bd5b3681..51c156a28 100644 Binary files a/test/reference/clip-stroke-unbounded.quartz.argb32.ref.png and b/test/reference/clip-stroke-unbounded.quartz.argb32.ref.png differ diff --git a/test/reference/clip-text.quartz.ref.png b/test/reference/clip-text.quartz.ref.png index d251bfa08..96df3934f 100644 Binary files a/test/reference/clip-text.quartz.ref.png and b/test/reference/clip-text.quartz.ref.png differ diff --git a/test/reference/close-path-current-point.quartz.ref.png b/test/reference/close-path-current-point.quartz.ref.png new file mode 100644 index 000000000..cd21450d9 Binary files /dev/null and b/test/reference/close-path-current-point.quartz.ref.png differ diff --git a/test/reference/culled-glyphs.quartz.ref.png b/test/reference/culled-glyphs.quartz.ref.png index 1aa234219..4da2a6c27 100644 Binary files a/test/reference/culled-glyphs.quartz.ref.png and b/test/reference/culled-glyphs.quartz.ref.png differ diff --git a/test/reference/dash-caps-joins.quartz.xfail.png b/test/reference/dash-caps-joins.quartz.xfail.png index 0dc54336b..cd9fe93ba 100644 Binary files a/test/reference/dash-caps-joins.quartz.xfail.png and b/test/reference/dash-caps-joins.quartz.xfail.png differ diff --git a/test/reference/dash-curve.quartz.xfail.png b/test/reference/dash-curve.quartz.xfail.png index b68d7a735..52da627a7 100644 Binary files a/test/reference/dash-curve.quartz.xfail.png and b/test/reference/dash-curve.quartz.xfail.png differ diff --git a/test/reference/dash-scale.quartz.ref.png b/test/reference/dash-scale.quartz.ref.png deleted file mode 100644 index 62ccdf52d..000000000 Binary files a/test/reference/dash-scale.quartz.ref.png and /dev/null differ diff --git a/test/reference/dash-scale.quartz.xfail.png b/test/reference/dash-scale.quartz.xfail.png new file mode 100644 index 000000000..5a62c1cde Binary files /dev/null and b/test/reference/dash-scale.quartz.xfail.png differ diff --git a/test/reference/dash-state.quartz.xfail.png b/test/reference/dash-state.quartz.xfail.png index 993498ceb..ef38975ca 100644 Binary files a/test/reference/dash-state.quartz.xfail.png and b/test/reference/dash-state.quartz.xfail.png differ diff --git a/test/reference/dash-zero-length.quartz.argb32.xfail.png b/test/reference/dash-zero-length.quartz.argb32.xfail.png new file mode 100644 index 000000000..57b926039 Binary files /dev/null and b/test/reference/dash-zero-length.quartz.argb32.xfail.png differ diff --git a/test/reference/dash-zero-length.quartz.rgb24.xfail.png b/test/reference/dash-zero-length.quartz.rgb24.xfail.png new file mode 100644 index 000000000..68802c584 Binary files /dev/null and b/test/reference/dash-zero-length.quartz.rgb24.xfail.png differ diff --git a/test/reference/degenerate-path.quartz.argb32.xfail.png b/test/reference/degenerate-path.quartz.argb32.xfail.png index d655e2758..302da4579 100644 Binary files a/test/reference/degenerate-path.quartz.argb32.xfail.png and b/test/reference/degenerate-path.quartz.argb32.xfail.png differ diff --git a/test/reference/degenerate-path.quartz.rgb24.xfail.png b/test/reference/degenerate-path.quartz.rgb24.xfail.png index 525695111..45e5df9d8 100644 Binary files a/test/reference/degenerate-path.quartz.rgb24.xfail.png and b/test/reference/degenerate-path.quartz.rgb24.xfail.png differ diff --git a/test/reference/degenerate-solid-dash.quartz.xfail.png b/test/reference/degenerate-solid-dash.quartz.xfail.png new file mode 100644 index 000000000..799562ad5 Binary files /dev/null and b/test/reference/degenerate-solid-dash.quartz.xfail.png differ diff --git a/test/reference/drunkard-tails.quartz.ref.png b/test/reference/drunkard-tails.quartz.ref.png new file mode 100644 index 000000000..8e72b0a8c Binary files /dev/null and b/test/reference/drunkard-tails.quartz.ref.png differ diff --git a/test/reference/extended-blend-alpha-mask.quartz.argb32.ref.png b/test/reference/extended-blend-alpha-mask.quartz.argb32.ref.png new file mode 100644 index 000000000..d44145fb3 Binary files /dev/null and b/test/reference/extended-blend-alpha-mask.quartz.argb32.ref.png differ diff --git a/test/reference/extended-blend-alpha-mask.quartz.rgb24.ref.png b/test/reference/extended-blend-alpha-mask.quartz.rgb24.ref.png new file mode 100644 index 000000000..794989952 Binary files /dev/null and b/test/reference/extended-blend-alpha-mask.quartz.rgb24.ref.png differ diff --git a/test/reference/extended-blend-alpha.quartz.argb32.ref.png b/test/reference/extended-blend-alpha.quartz.argb32.ref.png index e5701a652..83c0ce5f7 100644 Binary files a/test/reference/extended-blend-alpha.quartz.argb32.ref.png and b/test/reference/extended-blend-alpha.quartz.argb32.ref.png differ diff --git a/test/reference/extended-blend-alpha.quartz.rgb24.ref.png b/test/reference/extended-blend-alpha.quartz.rgb24.ref.png index 477d346c5..1b3dae712 100644 Binary files a/test/reference/extended-blend-alpha.quartz.rgb24.ref.png and b/test/reference/extended-blend-alpha.quartz.rgb24.ref.png differ diff --git a/test/reference/extended-blend-mask.quartz.argb32.ref.png b/test/reference/extended-blend-mask.quartz.argb32.ref.png new file mode 100644 index 000000000..ab48faa0e Binary files /dev/null and b/test/reference/extended-blend-mask.quartz.argb32.ref.png differ diff --git a/test/reference/extended-blend-mask.quartz.rgb24.ref.png b/test/reference/extended-blend-mask.quartz.rgb24.ref.png new file mode 100644 index 000000000..dcc0919c8 Binary files /dev/null and b/test/reference/extended-blend-mask.quartz.rgb24.ref.png differ diff --git a/test/reference/extended-blend-solid-alpha.quartz.argb32.ref.png b/test/reference/extended-blend-solid-alpha.quartz.argb32.ref.png new file mode 100644 index 000000000..83c0ce5f7 Binary files /dev/null and b/test/reference/extended-blend-solid-alpha.quartz.argb32.ref.png differ diff --git a/test/reference/extended-blend-solid-alpha.quartz.rgb24.ref.png b/test/reference/extended-blend-solid-alpha.quartz.rgb24.ref.png new file mode 100644 index 000000000..1b3dae712 Binary files /dev/null and b/test/reference/extended-blend-solid-alpha.quartz.rgb24.ref.png differ diff --git a/test/reference/extended-blend-solid.quartz.argb32.ref.png b/test/reference/extended-blend-solid.quartz.argb32.ref.png new file mode 100644 index 000000000..14a782077 Binary files /dev/null and b/test/reference/extended-blend-solid.quartz.argb32.ref.png differ diff --git a/test/reference/extended-blend-solid.quartz.rgb24.ref.png b/test/reference/extended-blend-solid.quartz.rgb24.ref.png new file mode 100644 index 000000000..28ef8e15c Binary files /dev/null and b/test/reference/extended-blend-solid.quartz.rgb24.ref.png differ diff --git a/test/reference/extended-blend.quartz.argb32.ref.png b/test/reference/extended-blend.quartz.argb32.ref.png index 173c6e23c..14a782077 100644 Binary files a/test/reference/extended-blend.quartz.argb32.ref.png and b/test/reference/extended-blend.quartz.argb32.ref.png differ diff --git a/test/reference/extended-blend.quartz.rgb24.ref.png b/test/reference/extended-blend.quartz.rgb24.ref.png index 56a1214ee..28ef8e15c 100644 Binary files a/test/reference/extended-blend.quartz.rgb24.ref.png and b/test/reference/extended-blend.quartz.rgb24.ref.png differ diff --git a/test/reference/fallback.quartz.argb32.ref.png b/test/reference/fallback.quartz.argb32.ref.png new file mode 100644 index 000000000..c5f20bb81 Binary files /dev/null and b/test/reference/fallback.quartz.argb32.ref.png differ diff --git a/test/reference/fallback.quartz.rgb24.ref.png b/test/reference/fallback.quartz.rgb24.ref.png new file mode 100644 index 000000000..e9876a92f Binary files /dev/null and b/test/reference/fallback.quartz.rgb24.ref.png differ diff --git a/test/reference/fill-alpha-pattern.quartz.ref.png b/test/reference/fill-alpha-pattern.quartz.ref.png index b612e7a6b..431989926 100644 Binary files a/test/reference/fill-alpha-pattern.quartz.ref.png and b/test/reference/fill-alpha-pattern.quartz.ref.png differ diff --git a/test/reference/fill-alpha.quartz.ref.png b/test/reference/fill-alpha.quartz.ref.png index 81cee81e2..858a2b357 100644 Binary files a/test/reference/fill-alpha.quartz.ref.png and b/test/reference/fill-alpha.quartz.ref.png differ diff --git a/test/reference/fill-and-stroke-alpha-add.quartz.ref.png b/test/reference/fill-and-stroke-alpha-add.quartz.ref.png deleted file mode 100644 index 1d8975253..000000000 Binary files a/test/reference/fill-and-stroke-alpha-add.quartz.ref.png and /dev/null differ diff --git a/test/reference/fill-and-stroke.quartz.argb32.ref.png b/test/reference/fill-and-stroke.quartz.ref.png similarity index 100% rename from test/reference/fill-and-stroke.quartz.argb32.ref.png rename to test/reference/fill-and-stroke.quartz.ref.png diff --git a/test/reference/fill-and-stroke.quartz.rgb24.ref.png b/test/reference/fill-and-stroke.quartz.rgb24.ref.png deleted file mode 100644 index 5ba219756..000000000 Binary files a/test/reference/fill-and-stroke.quartz.rgb24.ref.png and /dev/null differ diff --git a/test/reference/fill-image.quartz.ref.png b/test/reference/fill-image.quartz.ref.png index bb205a7d1..141676d49 100644 Binary files a/test/reference/fill-image.quartz.ref.png and b/test/reference/fill-image.quartz.ref.png differ diff --git a/test/reference/filter-nearest-transformed.quartz.xfail.png b/test/reference/filter-nearest-transformed.quartz.xfail.png index 246cdf421..7a1b55ab3 100644 Binary files a/test/reference/filter-nearest-transformed.quartz.xfail.png and b/test/reference/filter-nearest-transformed.quartz.xfail.png differ diff --git a/test/reference/finer-grained-fallbacks.quartz.argb32.ref.png b/test/reference/finer-grained-fallbacks.quartz.argb32.ref.png index dc0576100..bca4ee49c 100644 Binary files a/test/reference/finer-grained-fallbacks.quartz.argb32.ref.png and b/test/reference/finer-grained-fallbacks.quartz.argb32.ref.png differ diff --git a/test/reference/finer-grained-fallbacks.quartz.rgb24.ref.png b/test/reference/finer-grained-fallbacks.quartz.rgb24.ref.png index 1fdedd01f..0220e7f3d 100644 Binary files a/test/reference/finer-grained-fallbacks.quartz.rgb24.ref.png and b/test/reference/finer-grained-fallbacks.quartz.rgb24.ref.png differ diff --git a/test/reference/font-matrix-translation.quartz.ref.png b/test/reference/font-matrix-translation.quartz.ref.png index 187e2c1aa..424e8772c 100644 Binary files a/test/reference/font-matrix-translation.quartz.ref.png and b/test/reference/font-matrix-translation.quartz.ref.png differ diff --git a/test/reference/ft-text-vertical-layout-type1.quartz.ref.png b/test/reference/ft-text-vertical-layout-type1.quartz.ref.png new file mode 100644 index 000000000..5083ac533 Binary files /dev/null and b/test/reference/ft-text-vertical-layout-type1.quartz.ref.png differ diff --git a/test/reference/ft-text-vertical-layout-type1.quartz.xfail.png b/test/reference/ft-text-vertical-layout-type1.quartz.xfail.png deleted file mode 100644 index a603b3597..000000000 Binary files a/test/reference/ft-text-vertical-layout-type1.quartz.xfail.png and /dev/null differ diff --git a/test/reference/ft-text-vertical-layout-type3.quartz.ref.png b/test/reference/ft-text-vertical-layout-type3.quartz.ref.png index 4a063f3b5..08ee57284 100644 Binary files a/test/reference/ft-text-vertical-layout-type3.quartz.ref.png and b/test/reference/ft-text-vertical-layout-type3.quartz.ref.png differ diff --git a/test/reference/gradient-constant-alpha.quartz.argb32.ref.png b/test/reference/gradient-constant-alpha.quartz.argb32.ref.png deleted file mode 100644 index a426f5ad0..000000000 Binary files a/test/reference/gradient-constant-alpha.quartz.argb32.ref.png and /dev/null differ diff --git a/test/reference/gradient-constant-alpha.quartz.ref.png b/test/reference/gradient-constant-alpha.quartz.ref.png new file mode 100644 index 000000000..5855b679d Binary files /dev/null and b/test/reference/gradient-constant-alpha.quartz.ref.png differ diff --git a/test/reference/group-unaligned.quartz.ref.png b/test/reference/group-unaligned.quartz.ref.png index 1711025e9..36f37ccd1 100644 Binary files a/test/reference/group-unaligned.quartz.ref.png and b/test/reference/group-unaligned.quartz.ref.png differ diff --git a/test/reference/halo-transform.quartz.ref.png b/test/reference/halo-transform.quartz.ref.png index 91a99baaf..802b04ffe 100644 Binary files a/test/reference/halo-transform.quartz.ref.png and b/test/reference/halo-transform.quartz.ref.png differ diff --git a/test/reference/halo.quartz.ref.png b/test/reference/halo.quartz.ref.png index c5cf999c9..cffa79a6f 100644 Binary files a/test/reference/halo.quartz.ref.png and b/test/reference/halo.quartz.ref.png differ diff --git a/test/reference/hatchings.quartz.ref.png b/test/reference/hatchings.quartz.ref.png new file mode 100644 index 000000000..02b6a8e9a Binary files /dev/null and b/test/reference/hatchings.quartz.ref.png differ diff --git a/test/reference/huge-linear.quartz.ref.png b/test/reference/huge-linear.quartz.ref.png deleted file mode 100644 index 3d12f7bea..000000000 Binary files a/test/reference/huge-linear.quartz.ref.png and /dev/null differ diff --git a/test/reference/huge-radial.quartz.ref.png b/test/reference/huge-radial.quartz.ref.png index d823f8651..ec1db2917 100644 Binary files a/test/reference/huge-radial.quartz.ref.png and b/test/reference/huge-radial.quartz.ref.png differ diff --git a/test/reference/inverse-text.quartz.ref.png b/test/reference/inverse-text.quartz.ref.png new file mode 100644 index 000000000..df0ea57ea Binary files /dev/null and b/test/reference/inverse-text.quartz.ref.png differ diff --git a/test/reference/inverted-clip.quartz.rgb24.ref.png b/test/reference/inverted-clip.quartz.rgb24.ref.png new file mode 100644 index 000000000..844e467c0 Binary files /dev/null and b/test/reference/inverted-clip.quartz.rgb24.ref.png differ diff --git a/test/reference/joins-loop.quartz.ref.png b/test/reference/joins-loop.quartz.ref.png new file mode 100644 index 000000000..f16050c90 Binary files /dev/null and b/test/reference/joins-loop.quartz.ref.png differ diff --git a/test/reference/joins-retrace.quartz.ref.png b/test/reference/joins-retrace.quartz.ref.png new file mode 100644 index 000000000..86005c1c4 Binary files /dev/null and b/test/reference/joins-retrace.quartz.ref.png differ diff --git a/test/reference/joins.quartz.ref.png b/test/reference/joins.quartz.ref.png deleted file mode 100644 index 59b8fdb0b..000000000 Binary files a/test/reference/joins.quartz.ref.png and /dev/null differ diff --git a/test/reference/leaky-dash.quartz.ref.png b/test/reference/leaky-dash.quartz.xfail.png similarity index 100% rename from test/reference/leaky-dash.quartz.ref.png rename to test/reference/leaky-dash.quartz.xfail.png diff --git a/test/reference/line-width-large-overlap-dashed.quartz.xfail.png b/test/reference/line-width-large-overlap-dashed.quartz.xfail.png new file mode 100644 index 000000000..78dbe5976 Binary files /dev/null and b/test/reference/line-width-large-overlap-dashed.quartz.xfail.png differ diff --git a/test/reference/line-width-large-overlap-rotated.quartz.ref.png b/test/reference/line-width-large-overlap-rotated.quartz.ref.png new file mode 100644 index 000000000..5093f2c7f Binary files /dev/null and b/test/reference/line-width-large-overlap-rotated.quartz.ref.png differ diff --git a/test/reference/line-width-overlap-dashed.quartz.xfail.png b/test/reference/line-width-overlap-dashed.quartz.xfail.png new file mode 100644 index 000000000..ce8ff7bc9 Binary files /dev/null and b/test/reference/line-width-overlap-dashed.quartz.xfail.png differ diff --git a/test/reference/linear-gradient-subset.quartz.ref.png b/test/reference/linear-gradient-subset.quartz.ref.png index 85d80adbb..70a6336e8 100644 Binary files a/test/reference/linear-gradient-subset.quartz.ref.png and b/test/reference/linear-gradient-subset.quartz.ref.png differ diff --git a/test/reference/linear-gradient.quartz.ref.png b/test/reference/linear-gradient.quartz.ref.png index 1c3e7c228..5debca9bb 100644 Binary files a/test/reference/linear-gradient.quartz.ref.png and b/test/reference/linear-gradient.quartz.ref.png differ diff --git a/test/reference/long-dashed-lines.quartz.ref.png b/test/reference/long-dashed-lines.quartz.ref.png deleted file mode 100644 index 3f68d216d..000000000 Binary files a/test/reference/long-dashed-lines.quartz.ref.png and /dev/null differ diff --git a/test/reference/mask-alpha.quartz.argb32.ref.png b/test/reference/mask-alpha.quartz.argb32.ref.png index 1d530ee17..a7bfbb2a8 100644 Binary files a/test/reference/mask-alpha.quartz.argb32.ref.png and b/test/reference/mask-alpha.quartz.argb32.ref.png differ diff --git a/test/reference/mask-alpha.quartz.rgb24.ref.png b/test/reference/mask-alpha.quartz.rgb24.ref.png new file mode 100644 index 000000000..d4cc59c83 Binary files /dev/null and b/test/reference/mask-alpha.quartz.rgb24.ref.png differ diff --git a/test/reference/mask.quartz.argb32.ref.png b/test/reference/mask.quartz.argb32.ref.png index c7ab76e82..cf9ddc9ac 100644 Binary files a/test/reference/mask.quartz.argb32.ref.png and b/test/reference/mask.quartz.argb32.ref.png differ diff --git a/test/reference/mask.quartz.rgb24.ref.png b/test/reference/mask.quartz.rgb24.ref.png deleted file mode 100644 index f475ba933..000000000 Binary files a/test/reference/mask.quartz.rgb24.ref.png and /dev/null differ diff --git a/test/reference/new-sub-path.quartz.ref.png b/test/reference/new-sub-path.quartz.argb32.ref.png similarity index 100% rename from test/reference/new-sub-path.quartz.ref.png rename to test/reference/new-sub-path.quartz.argb32.ref.png diff --git a/test/reference/new-sub-path.quartz.rgb24.ref.png b/test/reference/new-sub-path.quartz.rgb24.ref.png new file mode 100644 index 000000000..d5baca901 Binary files /dev/null and b/test/reference/new-sub-path.quartz.rgb24.ref.png differ diff --git a/test/reference/operator-clear.quartz.argb32.ref.png b/test/reference/operator-clear.quartz.argb32.ref.png index caf265e75..a76ebfc82 100644 Binary files a/test/reference/operator-clear.quartz.argb32.ref.png and b/test/reference/operator-clear.quartz.argb32.ref.png differ diff --git a/test/reference/operator-clear.quartz.rgb24.ref.png b/test/reference/operator-clear.quartz.rgb24.ref.png index a07a6e0af..7b44e219c 100644 Binary files a/test/reference/operator-clear.quartz.rgb24.ref.png and b/test/reference/operator-clear.quartz.rgb24.ref.png differ diff --git a/test/reference/operator-source.quartz.argb32.ref.png b/test/reference/operator-source.quartz.argb32.ref.png new file mode 100644 index 000000000..8d4f80dae Binary files /dev/null and b/test/reference/operator-source.quartz.argb32.ref.png differ diff --git a/test/reference/operator-source.quartz.rgb24.ref.png b/test/reference/operator-source.quartz.rgb24.ref.png new file mode 100644 index 000000000..30c05c8c2 Binary files /dev/null and b/test/reference/operator-source.quartz.rgb24.ref.png differ diff --git a/test/reference/over-above-source.quartz.argb32.ref.png b/test/reference/over-above-source.quartz.argb32.ref.png index eeb3622b6..6ad74d798 100644 Binary files a/test/reference/over-above-source.quartz.argb32.ref.png and b/test/reference/over-above-source.quartz.argb32.ref.png differ diff --git a/test/reference/over-above-source.quartz.rgb24.ref.png b/test/reference/over-above-source.quartz.rgb24.ref.png index 2ab347653..f70593ce0 100644 Binary files a/test/reference/over-above-source.quartz.rgb24.ref.png and b/test/reference/over-above-source.quartz.rgb24.ref.png differ diff --git a/test/reference/over-around-source.quartz.argb32.ref.png b/test/reference/over-around-source.quartz.argb32.ref.png index 26ab8e5cd..48eddaebc 100644 Binary files a/test/reference/over-around-source.quartz.argb32.ref.png and b/test/reference/over-around-source.quartz.argb32.ref.png differ diff --git a/test/reference/over-around-source.quartz.rgb24.ref.png b/test/reference/over-around-source.quartz.rgb24.ref.png new file mode 100644 index 000000000..fb9b5ba04 Binary files /dev/null and b/test/reference/over-around-source.quartz.rgb24.ref.png differ diff --git a/test/reference/over-below-source.quartz.rgb24.ref.png b/test/reference/over-below-source.quartz.rgb24.ref.png new file mode 100644 index 000000000..f8b82a3ec Binary files /dev/null and b/test/reference/over-below-source.quartz.rgb24.ref.png differ diff --git a/test/reference/over-between-source.quartz.argb32.ref.png b/test/reference/over-between-source.quartz.argb32.ref.png index adb17aee4..8e7513be4 100644 Binary files a/test/reference/over-between-source.quartz.argb32.ref.png and b/test/reference/over-between-source.quartz.argb32.ref.png differ diff --git a/test/reference/over-between-source.quartz.rgb24.ref.png b/test/reference/over-between-source.quartz.rgb24.ref.png new file mode 100644 index 000000000..d2025455e Binary files /dev/null and b/test/reference/over-between-source.quartz.rgb24.ref.png differ diff --git a/test/reference/overlapping-dash-caps.quartz.ref.png b/test/reference/overlapping-dash-caps.quartz.ref.png new file mode 100644 index 000000000..0d38a377c Binary files /dev/null and b/test/reference/overlapping-dash-caps.quartz.ref.png differ diff --git a/test/reference/overlapping-glyphs.quartz.argb32.ref.png b/test/reference/overlapping-glyphs.quartz.argb32.ref.png index eaa0cb9c6..2bbbb3944 100644 Binary files a/test/reference/overlapping-glyphs.quartz.argb32.ref.png and b/test/reference/overlapping-glyphs.quartz.argb32.ref.png differ diff --git a/test/reference/overlapping-glyphs.quartz.rgb24.ref.png b/test/reference/overlapping-glyphs.quartz.rgb24.ref.png index c2b5fc0ab..a3961f8bf 100644 Binary files a/test/reference/overlapping-glyphs.quartz.rgb24.ref.png and b/test/reference/overlapping-glyphs.quartz.rgb24.ref.png differ diff --git a/test/reference/paint-with-alpha-clip-mask.quartz.ref.png b/test/reference/paint-with-alpha-clip-mask.quartz.ref.png new file mode 100644 index 000000000..34f46fae2 Binary files /dev/null and b/test/reference/paint-with-alpha-clip-mask.quartz.ref.png differ diff --git a/test/reference/partial-clip-text-bottom.quartz.ref.png b/test/reference/partial-clip-text-bottom.quartz.ref.png new file mode 100644 index 000000000..7da297a11 Binary files /dev/null and b/test/reference/partial-clip-text-bottom.quartz.ref.png differ diff --git a/test/reference/partial-clip-text-left.quartz.ref.png b/test/reference/partial-clip-text-left.quartz.ref.png new file mode 100644 index 000000000..20cc556a9 Binary files /dev/null and b/test/reference/partial-clip-text-left.quartz.ref.png differ diff --git a/test/reference/partial-clip-text-right.quartz.ref.png b/test/reference/partial-clip-text-right.quartz.ref.png new file mode 100644 index 000000000..c8b14c9ef Binary files /dev/null and b/test/reference/partial-clip-text-right.quartz.ref.png differ diff --git a/test/reference/partial-clip-text-top.quartz.ref.png b/test/reference/partial-clip-text-top.quartz.ref.png index 33ac283af..15c399432 100644 Binary files a/test/reference/partial-clip-text-top.quartz.ref.png and b/test/reference/partial-clip-text-top.quartz.ref.png differ diff --git a/test/reference/pixman-downscale-best-24.quartz.ref.png b/test/reference/pixman-downscale-best-24.quartz.ref.png new file mode 100644 index 000000000..bdb78f951 Binary files /dev/null and b/test/reference/pixman-downscale-best-24.quartz.ref.png differ diff --git a/test/reference/pixman-downscale-best-95.quartz.ref.png b/test/reference/pixman-downscale-best-95.quartz.ref.png new file mode 100644 index 000000000..30547fac7 Binary files /dev/null and b/test/reference/pixman-downscale-best-95.quartz.ref.png differ diff --git a/test/reference/pixman-downscale-bilinear-95.quartz.ref.png b/test/reference/pixman-downscale-bilinear-95.quartz.ref.png new file mode 100644 index 000000000..43b477942 Binary files /dev/null and b/test/reference/pixman-downscale-bilinear-95.quartz.ref.png differ diff --git a/test/reference/pixman-downscale-fast-95.quartz.ref.png b/test/reference/pixman-downscale-fast-95.quartz.ref.png new file mode 100644 index 000000000..350d7305d Binary files /dev/null and b/test/reference/pixman-downscale-fast-95.quartz.ref.png differ diff --git a/test/reference/pixman-downscale-good-95.quartz.ref.png b/test/reference/pixman-downscale-good-95.quartz.ref.png new file mode 100644 index 000000000..43b477942 Binary files /dev/null and b/test/reference/pixman-downscale-good-95.quartz.ref.png differ diff --git a/test/reference/pixman-downscale-nearest-95.quartz.ref.png b/test/reference/pixman-downscale-nearest-95.quartz.ref.png new file mode 100644 index 000000000..350d7305d Binary files /dev/null and b/test/reference/pixman-downscale-nearest-95.quartz.ref.png differ diff --git a/test/reference/pixman-rotate.quartz.rgb24.ref.png b/test/reference/pixman-rotate.quartz.rgb24.ref.png new file mode 100644 index 000000000..9ef09c351 Binary files /dev/null and b/test/reference/pixman-rotate.quartz.rgb24.ref.png differ diff --git a/test/reference/pthread-same-source.quartz.ref.png b/test/reference/pthread-same-source.quartz.ref.png new file mode 100644 index 000000000..2cd620f43 Binary files /dev/null and b/test/reference/pthread-same-source.quartz.ref.png differ diff --git a/test/reference/pthread-same-source.quartz.xfail.png b/test/reference/pthread-same-source.quartz.xfail.png deleted file mode 100644 index ffed61998..000000000 Binary files a/test/reference/pthread-same-source.quartz.xfail.png and /dev/null differ diff --git a/test/reference/pthread-show-text.quartz.ref.png b/test/reference/pthread-show-text.quartz.ref.png index cc9bb25dc..77971f956 100644 Binary files a/test/reference/pthread-show-text.quartz.ref.png and b/test/reference/pthread-show-text.quartz.ref.png differ diff --git a/test/reference/push-group-color.quartz.ref.png b/test/reference/push-group-color.quartz.ref.png index bca7c5693..9a46bb0f6 100644 Binary files a/test/reference/push-group-color.quartz.ref.png and b/test/reference/push-group-color.quartz.ref.png differ diff --git a/test/reference/push-group.quartz.argb32.ref.png b/test/reference/push-group.quartz.argb32.ref.png index b3867b98a..b8de2e60a 100644 Binary files a/test/reference/push-group.quartz.argb32.ref.png and b/test/reference/push-group.quartz.argb32.ref.png differ diff --git a/test/reference/push-group.quartz.rgb24.ref.png b/test/reference/push-group.quartz.rgb24.ref.png index 1fd6ef321..74a87b132 100644 Binary files a/test/reference/push-group.quartz.rgb24.ref.png and b/test/reference/push-group.quartz.rgb24.ref.png differ diff --git a/test/reference/radial-gradient-mask-source.quartz.argb32.ref.png b/test/reference/radial-gradient-mask-source.quartz.argb32.ref.png index 5f734f612..2868f17c3 100644 Binary files a/test/reference/radial-gradient-mask-source.quartz.argb32.ref.png and b/test/reference/radial-gradient-mask-source.quartz.argb32.ref.png differ diff --git a/test/reference/radial-gradient-mask-source.quartz.rgb24.ref.png b/test/reference/radial-gradient-mask-source.quartz.rgb24.ref.png index 4ae71f753..319f177db 100644 Binary files a/test/reference/radial-gradient-mask-source.quartz.rgb24.ref.png and b/test/reference/radial-gradient-mask-source.quartz.rgb24.ref.png differ diff --git a/test/reference/radial-gradient-mask-source.rgb24.ref.png b/test/reference/radial-gradient-mask-source.rgb24.ref.png new file mode 100644 index 000000000..55335196a Binary files /dev/null and b/test/reference/radial-gradient-mask-source.rgb24.ref.png differ diff --git a/test/reference/radial-gradient-mask.quartz.ref.png b/test/reference/radial-gradient-mask.quartz.ref.png index c1bd50686..5c92322b6 100644 Binary files a/test/reference/radial-gradient-mask.quartz.ref.png and b/test/reference/radial-gradient-mask.quartz.ref.png differ diff --git a/test/reference/radial-gradient-one-stop.quartz.ref.png b/test/reference/radial-gradient-one-stop.quartz.ref.png index da991b1bd..cf37c2f48 100644 Binary files a/test/reference/radial-gradient-one-stop.quartz.ref.png and b/test/reference/radial-gradient-one-stop.quartz.ref.png differ diff --git a/test/reference/radial-gradient-source.quartz.argb32.ref.png b/test/reference/radial-gradient-source.quartz.argb32.ref.png index 421c0b988..f23c72a0a 100644 Binary files a/test/reference/radial-gradient-source.quartz.argb32.ref.png and b/test/reference/radial-gradient-source.quartz.argb32.ref.png differ diff --git a/test/reference/radial-gradient-source.quartz.rgb24.ref.png b/test/reference/radial-gradient-source.quartz.rgb24.ref.png index 22f2b9077..a531f2810 100644 Binary files a/test/reference/radial-gradient-source.quartz.rgb24.ref.png and b/test/reference/radial-gradient-source.quartz.rgb24.ref.png differ diff --git a/test/reference/radial-gradient.quartz.ref.png b/test/reference/radial-gradient.quartz.ref.png index f01c6eb89..c80c7619c 100644 Binary files a/test/reference/radial-gradient.quartz.ref.png and b/test/reference/radial-gradient.quartz.ref.png differ diff --git a/test/reference/random-clip.quartz.ref.png b/test/reference/random-clip.quartz.ref.png new file mode 100644 index 000000000..aa617d675 Binary files /dev/null and b/test/reference/random-clip.quartz.ref.png differ diff --git a/test/reference/record-mesh.ref.png b/test/reference/record-mesh.ref.png index 4921ba386..6e781b1a4 100644 Binary files a/test/reference/record-mesh.ref.png and b/test/reference/record-mesh.ref.png differ diff --git a/test/reference/record-select-font-face.quartz.ref.png b/test/reference/record-select-font-face.quartz.ref.png new file mode 100644 index 000000000..e26063939 Binary files /dev/null and b/test/reference/record-select-font-face.quartz.ref.png differ diff --git a/test/reference/record1414x-fill-alpha.quartz.ref.png b/test/reference/record1414x-fill-alpha.quartz.ref.png new file mode 100644 index 000000000..837eaccbf Binary files /dev/null and b/test/reference/record1414x-fill-alpha.quartz.ref.png differ diff --git a/test/reference/record1414x-paint-alpha-clip-mask.quartz.ref.png b/test/reference/record1414x-paint-alpha-clip-mask.quartz.ref.png new file mode 100644 index 000000000..5bb4bbd1c Binary files /dev/null and b/test/reference/record1414x-paint-alpha-clip-mask.quartz.ref.png differ diff --git a/test/reference/record1414x-select-font-face.quartz.ref.png b/test/reference/record1414x-select-font-face.quartz.ref.png new file mode 100644 index 000000000..a3b51ffeb Binary files /dev/null and b/test/reference/record1414x-select-font-face.quartz.ref.png differ diff --git a/test/reference/record1414x-text-transform.quartz.ref.png b/test/reference/record1414x-text-transform.quartz.ref.png new file mode 100644 index 000000000..58e0f4f1b Binary files /dev/null and b/test/reference/record1414x-text-transform.quartz.ref.png differ diff --git a/test/reference/record2x-fill-alpha.quartz.ref.png b/test/reference/record2x-fill-alpha.quartz.ref.png new file mode 100644 index 000000000..7ecd5717b Binary files /dev/null and b/test/reference/record2x-fill-alpha.quartz.ref.png differ diff --git a/test/reference/record2x-select-font-face.quartz.ref.png b/test/reference/record2x-select-font-face.quartz.ref.png new file mode 100644 index 000000000..7312eba26 Binary files /dev/null and b/test/reference/record2x-select-font-face.quartz.ref.png differ diff --git a/test/reference/record90-paint-alpha-clip.quartz.ref.png b/test/reference/record90-paint-alpha-clip.quartz.ref.png new file mode 100644 index 000000000..b7703d47d Binary files /dev/null and b/test/reference/record90-paint-alpha-clip.quartz.ref.png differ diff --git a/test/reference/record90-select-font-face.quartz.ref.png b/test/reference/record90-select-font-face.quartz.ref.png new file mode 100644 index 000000000..db14aacae Binary files /dev/null and b/test/reference/record90-select-font-face.quartz.ref.png differ diff --git a/test/reference/record90-self-intersecting.quartz.xfail.png b/test/reference/record90-self-intersecting.quartz.xfail.png new file mode 100644 index 000000000..f4f34ce3b Binary files /dev/null and b/test/reference/record90-self-intersecting.quartz.xfail.png differ diff --git a/test/reference/recordflip-fill-alpha.quartz.ref.png b/test/reference/recordflip-fill-alpha.quartz.ref.png new file mode 100644 index 000000000..69035ef5f Binary files /dev/null and b/test/reference/recordflip-fill-alpha.quartz.ref.png differ diff --git a/test/reference/recordflip-paint-alpha-clip-mask.quartz.ref.png b/test/reference/recordflip-paint-alpha-clip-mask.quartz.ref.png new file mode 100644 index 000000000..6f14ad3b4 Binary files /dev/null and b/test/reference/recordflip-paint-alpha-clip-mask.quartz.ref.png differ diff --git a/test/reference/recordflip-select-font-face.quartz.ref.png b/test/reference/recordflip-select-font-face.quartz.ref.png new file mode 100644 index 000000000..488d35be4 Binary files /dev/null and b/test/reference/recordflip-select-font-face.quartz.ref.png differ diff --git a/test/reference/recordflip-whole-fill-alpha.quartz.ref.png b/test/reference/recordflip-whole-fill-alpha.quartz.ref.png new file mode 100644 index 000000000..69035ef5f Binary files /dev/null and b/test/reference/recordflip-whole-fill-alpha.quartz.ref.png differ diff --git a/test/reference/recordflip-whole-paint-alpha-clip-mask.quartz.ref.png b/test/reference/recordflip-whole-paint-alpha-clip-mask.quartz.ref.png new file mode 100644 index 000000000..6f14ad3b4 Binary files /dev/null and b/test/reference/recordflip-whole-paint-alpha-clip-mask.quartz.ref.png differ diff --git a/test/reference/recordflip-whole-select-font-face.quartz.ref.png b/test/reference/recordflip-whole-select-font-face.quartz.ref.png new file mode 100644 index 000000000..488d35be4 Binary files /dev/null and b/test/reference/recordflip-whole-select-font-face.quartz.ref.png differ diff --git a/test/reference/recording-surface-extend-none.quartz.argb32.ref.png b/test/reference/recording-surface-extend-none.quartz.argb32.ref.png new file mode 100644 index 000000000..07d737a13 Binary files /dev/null and b/test/reference/recording-surface-extend-none.quartz.argb32.ref.png differ diff --git a/test/reference/recording-surface-extend-none.quartz.rgb24.ref.png b/test/reference/recording-surface-extend-none.quartz.rgb24.ref.png new file mode 100644 index 000000000..0df693529 Binary files /dev/null and b/test/reference/recording-surface-extend-none.quartz.rgb24.ref.png differ diff --git a/test/reference/recording-surface-extend-pad.argb32.ref.png b/test/reference/recording-surface-extend-pad.argb32.xfail.png similarity index 100% rename from test/reference/recording-surface-extend-pad.argb32.ref.png rename to test/reference/recording-surface-extend-pad.argb32.xfail.png diff --git a/test/reference/recording-surface-extend-pad.rgb24.ref.png b/test/reference/recording-surface-extend-pad.rgb24.xfail.png similarity index 100% rename from test/reference/recording-surface-extend-pad.rgb24.ref.png rename to test/reference/recording-surface-extend-pad.rgb24.xfail.png diff --git a/test/reference/recording-surface-extend-reflect.quartz.argb32.ref.png b/test/reference/recording-surface-extend-reflect.quartz.argb32.ref.png new file mode 100644 index 000000000..5e3972acf Binary files /dev/null and b/test/reference/recording-surface-extend-reflect.quartz.argb32.ref.png differ diff --git a/test/reference/recording-surface-extend-reflect.quartz.rgb24.ref.png b/test/reference/recording-surface-extend-reflect.quartz.rgb24.ref.png new file mode 100644 index 000000000..bc2cdf41d Binary files /dev/null and b/test/reference/recording-surface-extend-reflect.quartz.rgb24.ref.png differ diff --git a/test/reference/recording-surface-extend-repeat.quartz.argb32.ref.png b/test/reference/recording-surface-extend-repeat.quartz.argb32.ref.png new file mode 100644 index 000000000..2f6f274de Binary files /dev/null and b/test/reference/recording-surface-extend-repeat.quartz.argb32.ref.png differ diff --git a/test/reference/recording-surface-extend-repeat.quartz.rgb24.ref.png b/test/reference/recording-surface-extend-repeat.quartz.rgb24.ref.png new file mode 100644 index 000000000..a8943a706 Binary files /dev/null and b/test/reference/recording-surface-extend-repeat.quartz.rgb24.ref.png differ diff --git a/test/reference/recording-surface-over.quartz.argb32.ref.png b/test/reference/recording-surface-over.quartz.argb32.ref.png index 09d955967..07d737a13 100644 Binary files a/test/reference/recording-surface-over.quartz.argb32.ref.png and b/test/reference/recording-surface-over.quartz.argb32.ref.png differ diff --git a/test/reference/recording-surface-over.quartz.rgb24.ref.png b/test/reference/recording-surface-over.quartz.rgb24.ref.png index 96aff408b..0df693529 100644 Binary files a/test/reference/recording-surface-over.quartz.rgb24.ref.png and b/test/reference/recording-surface-over.quartz.rgb24.ref.png differ diff --git a/test/reference/recording-surface-source.quartz.argb32.ref.png b/test/reference/recording-surface-source.quartz.argb32.ref.png new file mode 100644 index 000000000..bd5d7497b Binary files /dev/null and b/test/reference/recording-surface-source.quartz.argb32.ref.png differ diff --git a/test/reference/recording-surface-source.quartz.rgb24.ref.png b/test/reference/recording-surface-source.quartz.rgb24.ref.png new file mode 100644 index 000000000..ddba6f3ff Binary files /dev/null and b/test/reference/recording-surface-source.quartz.rgb24.ref.png differ diff --git a/test/reference/rectilinear-dash-scale-unaligned.quartz.xfail.png b/test/reference/rectilinear-dash-scale-unaligned.quartz.xfail.png new file mode 100644 index 000000000..ccc1f97e9 Binary files /dev/null and b/test/reference/rectilinear-dash-scale-unaligned.quartz.xfail.png differ diff --git a/test/reference/rectilinear-dash-scale.quartz.xfail.png b/test/reference/rectilinear-dash-scale.quartz.xfail.png new file mode 100644 index 000000000..4e3326b39 Binary files /dev/null and b/test/reference/rectilinear-dash-scale.quartz.xfail.png differ diff --git a/test/reference/rectilinear-dash.quartz.xfail.png b/test/reference/rectilinear-dash.quartz.xfail.png index 510184551..f349155fb 100644 Binary files a/test/reference/rectilinear-dash.quartz.xfail.png and b/test/reference/rectilinear-dash.quartz.xfail.png differ diff --git a/test/reference/reflected-stroke.quartz.ref.png b/test/reference/reflected-stroke.quartz.ref.png new file mode 100644 index 000000000..71c367341 Binary files /dev/null and b/test/reference/reflected-stroke.quartz.ref.png differ diff --git a/test/reference/rotate-clip-image-surface-paint.quartz.ref.png b/test/reference/rotate-clip-image-surface-paint.quartz.ref.png new file mode 100644 index 000000000..45b321f3b Binary files /dev/null and b/test/reference/rotate-clip-image-surface-paint.quartz.ref.png differ diff --git a/test/reference/rotate-image-surface-paint.quartz.ref.png b/test/reference/rotate-image-surface-paint.quartz.ref.png index a716b630a..12204471e 100644 Binary files a/test/reference/rotate-image-surface-paint.quartz.ref.png and b/test/reference/rotate-image-surface-paint.quartz.ref.png differ diff --git a/test/reference/rotated-clip.quartz.ref.png b/test/reference/rotated-clip.quartz.ref.png index 6282846e2..2c88c4b1a 100644 Binary files a/test/reference/rotated-clip.quartz.ref.png and b/test/reference/rotated-clip.quartz.ref.png differ diff --git a/test/reference/rounded-rectangle-fill.quartz.ref.png b/test/reference/rounded-rectangle-fill.quartz.ref.png deleted file mode 100644 index ee685ca06..000000000 Binary files a/test/reference/rounded-rectangle-fill.quartz.ref.png and /dev/null differ diff --git a/test/reference/rounded-rectangle-stroke.quartz.ref.png b/test/reference/rounded-rectangle-stroke.quartz.ref.png new file mode 100644 index 000000000..9bae1d386 Binary files /dev/null and b/test/reference/rounded-rectangle-stroke.quartz.ref.png differ diff --git a/test/reference/shape-sierpinski.quartz.ref.png b/test/reference/shape-sierpinski.quartz.ref.png new file mode 100644 index 000000000..a82054f91 Binary files /dev/null and b/test/reference/shape-sierpinski.quartz.ref.png differ diff --git a/test/reference/show-glyphs-advance.quartz.ref.png b/test/reference/show-glyphs-advance.quartz.ref.png index 4750308fa..69395bfbb 100644 Binary files a/test/reference/show-glyphs-advance.quartz.ref.png and b/test/reference/show-glyphs-advance.quartz.ref.png differ diff --git a/test/reference/smask-fill.quartz.ref.png b/test/reference/smask-fill.quartz.ref.png index ae0547652..7d0f56857 100644 Binary files a/test/reference/smask-fill.quartz.ref.png and b/test/reference/smask-fill.quartz.ref.png differ diff --git a/test/reference/smask-stroke.quartz.ref.png b/test/reference/smask-stroke.quartz.ref.png index f6f0d1bcc..3c472a67b 100644 Binary files a/test/reference/smask-stroke.quartz.ref.png and b/test/reference/smask-stroke.quartz.ref.png differ diff --git a/test/reference/smask-text.quartz.ref.png b/test/reference/smask-text.quartz.ref.png index 096dc9853..b64eb0cb8 100644 Binary files a/test/reference/smask-text.quartz.ref.png and b/test/reference/smask-text.quartz.ref.png differ diff --git a/test/reference/smask.quartz.ref.png b/test/reference/smask.quartz.ref.png index f9ab00f85..fac4b4e33 100644 Binary files a/test/reference/smask.quartz.ref.png and b/test/reference/smask.quartz.ref.png differ diff --git a/test/reference/spline-decomposition.quartz.xfail.png b/test/reference/spline-decomposition.quartz.xfail.png index 18d67fbb5..eeb3bf6ab 100644 Binary files a/test/reference/spline-decomposition.quartz.xfail.png and b/test/reference/spline-decomposition.quartz.xfail.png differ diff --git a/test/reference/stroke-clipped.quartz.ref.png b/test/reference/stroke-clipped.quartz.ref.png new file mode 100644 index 000000000..737488ce4 Binary files /dev/null and b/test/reference/stroke-clipped.quartz.ref.png differ diff --git a/test/reference/stroke-ctm-caps.quartz.ref.png b/test/reference/stroke-ctm-caps.quartz.ref.png deleted file mode 100644 index c9da2c9d3..000000000 Binary files a/test/reference/stroke-ctm-caps.quartz.ref.png and /dev/null differ diff --git a/test/reference/stroke-image.quartz.ref.png b/test/reference/stroke-image.quartz.ref.png index f9a60f2a6..c6f0a3ba8 100644 Binary files a/test/reference/stroke-image.quartz.ref.png and b/test/reference/stroke-image.quartz.ref.png differ diff --git a/test/reference/stroke-pattern.quartz.ref.png b/test/reference/stroke-pattern.quartz.ref.png new file mode 100644 index 000000000..34619f4f7 Binary files /dev/null and b/test/reference/stroke-pattern.quartz.ref.png differ diff --git a/test/reference/subsurface-outside-target.quartz.argb32.xfail.png b/test/reference/subsurface-outside-target.quartz.argb32.xfail.png new file mode 100644 index 000000000..d052d0469 Binary files /dev/null and b/test/reference/subsurface-outside-target.quartz.argb32.xfail.png differ diff --git a/test/reference/subsurface-outside-target.quartz.rgb24.xfail.png b/test/reference/subsurface-outside-target.quartz.rgb24.xfail.png new file mode 100644 index 000000000..adf486e38 Binary files /dev/null and b/test/reference/subsurface-outside-target.quartz.rgb24.xfail.png differ diff --git a/test/reference/subsurface-scale.quartz.ref.png b/test/reference/subsurface-scale.quartz.ref.png new file mode 100644 index 000000000..38a047062 Binary files /dev/null and b/test/reference/subsurface-scale.quartz.ref.png differ diff --git a/test/reference/surface-pattern-big-scale-down.quartz.ref.png b/test/reference/surface-pattern-big-scale-down.quartz.ref.png deleted file mode 100644 index 32deb2d9b..000000000 Binary files a/test/reference/surface-pattern-big-scale-down.quartz.ref.png and /dev/null differ diff --git a/test/reference/surface-pattern-operator.quartz.argb32.ref.png b/test/reference/surface-pattern-operator.quartz.argb32.ref.png index 5e934b211..e2a411682 100644 Binary files a/test/reference/surface-pattern-operator.quartz.argb32.ref.png and b/test/reference/surface-pattern-operator.quartz.argb32.ref.png differ diff --git a/test/reference/surface-pattern-operator.quartz.rgb24.ref.png b/test/reference/surface-pattern-operator.quartz.rgb24.ref.png index 30408c1f4..02eec1c85 100644 Binary files a/test/reference/surface-pattern-operator.quartz.rgb24.ref.png and b/test/reference/surface-pattern-operator.quartz.rgb24.ref.png differ diff --git a/test/reference/surface-pattern-scale-down-extend-none.quartz.ref.png b/test/reference/surface-pattern-scale-down-extend-none.quartz.ref.png deleted file mode 100644 index e126cbb31..000000000 Binary files a/test/reference/surface-pattern-scale-down-extend-none.quartz.ref.png and /dev/null differ diff --git a/test/reference/surface-pattern-scale-down-extend-pad.quartz.xfail.png b/test/reference/surface-pattern-scale-down-extend-pad.quartz.xfail.png index 6b8f7540e..c5cff0fe3 100644 Binary files a/test/reference/surface-pattern-scale-down-extend-pad.quartz.xfail.png and b/test/reference/surface-pattern-scale-down-extend-pad.quartz.xfail.png differ diff --git a/test/reference/surface-pattern-scale-down-extend-reflect.quartz.ref.png b/test/reference/surface-pattern-scale-down-extend-reflect.quartz.ref.png deleted file mode 100644 index ef5e62e11..000000000 Binary files a/test/reference/surface-pattern-scale-down-extend-reflect.quartz.ref.png and /dev/null differ diff --git a/test/reference/surface-pattern-scale-down-extend-repeat.quartz.ref.png b/test/reference/surface-pattern-scale-down-extend-repeat.quartz.ref.png deleted file mode 100644 index 6b8f7540e..000000000 Binary files a/test/reference/surface-pattern-scale-down-extend-repeat.quartz.ref.png and /dev/null differ diff --git a/test/reference/surface-pattern-scale-down.quartz.ref.png b/test/reference/surface-pattern-scale-down.quartz.ref.png index 5b3ace4ae..8306a03a0 100644 Binary files a/test/reference/surface-pattern-scale-down.quartz.ref.png and b/test/reference/surface-pattern-scale-down.quartz.ref.png differ diff --git a/test/reference/surface-pattern-scale-up.quartz.xfail.png b/test/reference/surface-pattern-scale-up.quartz.ref.png similarity index 100% rename from test/reference/surface-pattern-scale-up.quartz.xfail.png rename to test/reference/surface-pattern-scale-up.quartz.ref.png diff --git a/test/reference/text-antialias-gray.quartz.ref.png b/test/reference/text-antialias-gray.quartz.ref.png index 63926a8eb..36ffebb07 100644 Binary files a/test/reference/text-antialias-gray.quartz.ref.png and b/test/reference/text-antialias-gray.quartz.ref.png differ diff --git a/test/reference/text-antialias-subpixel-bgr.quartz.xfail.png b/test/reference/text-antialias-subpixel-bgr.quartz.xfail.png new file mode 100644 index 000000000..83cf7d4bf Binary files /dev/null and b/test/reference/text-antialias-subpixel-bgr.quartz.xfail.png differ diff --git a/test/reference/text-antialias-subpixel-rgb.quartz.ref.png b/test/reference/text-antialias-subpixel-rgb.quartz.ref.png new file mode 100644 index 000000000..83cf7d4bf Binary files /dev/null and b/test/reference/text-antialias-subpixel-rgb.quartz.ref.png differ diff --git a/test/reference/text-antialias-subpixel-vbgr.quartz.xfail.png b/test/reference/text-antialias-subpixel-vbgr.quartz.xfail.png new file mode 100644 index 000000000..83cf7d4bf Binary files /dev/null and b/test/reference/text-antialias-subpixel-vbgr.quartz.xfail.png differ diff --git a/test/reference/text-antialias-subpixel-vrgb.quartz.xfail.png b/test/reference/text-antialias-subpixel-vrgb.quartz.xfail.png new file mode 100644 index 000000000..83cf7d4bf Binary files /dev/null and b/test/reference/text-antialias-subpixel-vrgb.quartz.xfail.png differ diff --git a/test/reference/text-antialias-subpixel.quartz.ref.png b/test/reference/text-antialias-subpixel.quartz.ref.png index f5b1aa8f0..83cf7d4bf 100644 Binary files a/test/reference/text-antialias-subpixel.quartz.ref.png and b/test/reference/text-antialias-subpixel.quartz.ref.png differ diff --git a/test/reference/text-glyph-range.quartz.ref.png b/test/reference/text-glyph-range.quartz.ref.png deleted file mode 100644 index e4a14b2aa..000000000 Binary files a/test/reference/text-glyph-range.quartz.ref.png and /dev/null differ diff --git a/test/reference/text-glyph-range.quartz.xfail.png b/test/reference/text-glyph-range.quartz.xfail.png new file mode 100644 index 000000000..9dcc75621 Binary files /dev/null and b/test/reference/text-glyph-range.quartz.xfail.png differ diff --git a/test/reference/text-pattern.quartz.argb32.ref.png b/test/reference/text-pattern.quartz.argb32.ref.png index 1a15964e5..b3f869b50 100644 Binary files a/test/reference/text-pattern.quartz.argb32.ref.png and b/test/reference/text-pattern.quartz.argb32.ref.png differ diff --git a/test/reference/text-pattern.quartz.rgb24.ref.png b/test/reference/text-pattern.quartz.rgb24.ref.png index f19dd767d..bb50f4dff 100644 Binary files a/test/reference/text-pattern.quartz.rgb24.ref.png and b/test/reference/text-pattern.quartz.rgb24.ref.png differ diff --git a/test/reference/text-rotate.quartz.ref.png b/test/reference/text-rotate.quartz.ref.png index 113e727af..68e45afda 100644 Binary files a/test/reference/text-rotate.quartz.ref.png and b/test/reference/text-rotate.quartz.ref.png differ diff --git a/test/reference/tiger.quartz.ref.png b/test/reference/tiger.quartz.ref.png new file mode 100644 index 000000000..490e40f9d Binary files /dev/null and b/test/reference/tiger.quartz.ref.png differ diff --git a/test/reference/tighten-bounds.quartz.argb32.ref.png b/test/reference/tighten-bounds.quartz.argb32.ref.png new file mode 100644 index 000000000..dc4aacdd8 Binary files /dev/null and b/test/reference/tighten-bounds.quartz.argb32.ref.png differ diff --git a/test/reference/tighten-bounds.quartz.rgb24.ref.png b/test/reference/tighten-bounds.quartz.rgb24.ref.png new file mode 100644 index 000000000..8d11e0b85 Binary files /dev/null and b/test/reference/tighten-bounds.quartz.rgb24.ref.png differ diff --git a/test/reference/trap-clip.quartz.argb32.ref.png b/test/reference/trap-clip.quartz.argb32.ref.png index e045ea4ed..2255805ff 100644 Binary files a/test/reference/trap-clip.quartz.argb32.ref.png and b/test/reference/trap-clip.quartz.argb32.ref.png differ diff --git a/test/reference/trap-clip.quartz.rgb24.ref.png b/test/reference/trap-clip.quartz.rgb24.ref.png index 1044d8699..38e6d31df 100644 Binary files a/test/reference/trap-clip.quartz.rgb24.ref.png and b/test/reference/trap-clip.quartz.rgb24.ref.png differ diff --git a/test/reference/twin-antialias-gray.quartz.ref.png b/test/reference/twin-antialias-gray.quartz.ref.png new file mode 100644 index 000000000..8ce398047 Binary files /dev/null and b/test/reference/twin-antialias-gray.quartz.ref.png differ diff --git a/test/reference/twin-antialias-none.quartz.ref.png b/test/reference/twin-antialias-none.quartz.ref.png new file mode 100644 index 000000000..8e5facf2a Binary files /dev/null and b/test/reference/twin-antialias-none.quartz.ref.png differ diff --git a/test/reference/twin-antialias-subpixel.quartz.ref.png b/test/reference/twin-antialias-subpixel.quartz.ref.png new file mode 100644 index 000000000..8ce398047 Binary files /dev/null and b/test/reference/twin-antialias-subpixel.quartz.ref.png differ diff --git a/test/reference/twin.quartz.ref.png b/test/reference/twin.quartz.ref.png new file mode 100644 index 000000000..8ce398047 Binary files /dev/null and b/test/reference/twin.quartz.ref.png differ diff --git a/test/reference/user-font-proxy.quartz.ref.png b/test/reference/user-font-proxy.quartz.ref.png index 3bead3d1f..f7b1163be 100644 Binary files a/test/reference/user-font-proxy.quartz.ref.png and b/test/reference/user-font-proxy.quartz.ref.png differ diff --git a/test/reference/user-font.quartz.ref.png b/test/reference/user-font.quartz.ref.png index 8c0ec94e6..dfb2e0a15 100644 Binary files a/test/reference/user-font.quartz.ref.png and b/test/reference/user-font.quartz.ref.png differ diff --git a/test/reference/world-map-fill.quartz.ref.png b/test/reference/world-map-fill.quartz.ref.png new file mode 100644 index 000000000..af0770a15 Binary files /dev/null and b/test/reference/world-map-fill.quartz.ref.png differ diff --git a/test/reference/world-map-stroke.quartz.ref.png b/test/reference/world-map-stroke.quartz.ref.png new file mode 100644 index 000000000..9be5de8bf Binary files /dev/null and b/test/reference/world-map-stroke.quartz.ref.png differ diff --git a/test/reference/world-map.quartz.ref.png b/test/reference/world-map.quartz.ref.png new file mode 100644 index 000000000..efc92f0b9 Binary files /dev/null and b/test/reference/world-map.quartz.ref.png differ diff --git a/test/reference/xcomposite-projection.quartz.ref.png b/test/reference/xcomposite-projection.quartz.ref.png index 02216071b..b5526f0e0 100644 Binary files a/test/reference/xcomposite-projection.quartz.ref.png and b/test/reference/xcomposite-projection.quartz.ref.png differ