[GTK] Enable WebGL, 3D and compositing layout tests
https://bugs.webkit.org/show_bug.cgi?id=71849

Unreviewed test gardeninng.

* http/tests/webgl/1.0.2/origin-clean-conformance-expected.txt: Rebaseline after r208049.
* platform/gtk/TestExpectations: Mark new expected failures.
* platform/gtk/compositing/animation/state-at-end-event-transform-layer-expected.png: Added. Rebaselined.
* platform/gtk/compositing/animation/state-at-end-event-transform-layer-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/backing/backface-visibility-in-3dtransformed-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/backing/child-layer-no-backing-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/backing/inline-block-no-backing-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/backing/no-backing-for-clip-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/backing/no-backing-for-clip-overhang-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/backing/no-backing-for-clip-overlap-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/backing/replaced-child-no-backing-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/color-matching/image-color-matching-expected.png: Added. Rebaselined.
* platform/gtk/compositing/color-matching/image-color-matching-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/color-matching/pdf-image-match-expected.png: Added. Rebaselined.
* platform/gtk/compositing/color-matching/pdf-image-match-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/compositing-visible-descendant-expected.png: Added. Rebaselined.
* platform/gtk/compositing/compositing-visible-descendant-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/direct-image-compositing-expected.png: Added. Rebaselined.
* platform/gtk/compositing/direct-image-compositing-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/generated-content-expected.png: Added. Rebaselined.
* platform/gtk/compositing/generated-content-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/geometry/abs-position-inside-opacity-expected.png: Added. Rebaselined.
* platform/gtk/compositing/geometry/abs-position-inside-opacity-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/geometry/clipping-foreground-expected.png: Added. Rebaselined.
* platform/gtk/compositing/geometry/clipping-foreground-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/geometry/composited-html-size-expected.png: Added. Rebaselined.
* platform/gtk/compositing/geometry/composited-html-size-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/geometry/composited-in-columns-expected.png: Added. Rebaselined.
* platform/gtk/compositing/geometry/composited-in-columns-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/geometry/fixed-in-composited-expected.png: Added. Rebaselined.
* platform/gtk/compositing/geometry/fixed-in-composited-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/geometry/fixed-position-expected.png: Added. Rebaselined.
* platform/gtk/compositing/geometry/fixed-position-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/geometry/horizontal-scroll-composited-expected.png: Added. Rebaselined.
* platform/gtk/compositing/geometry/horizontal-scroll-composited-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/geometry/layer-due-to-layer-children-deep-expected.png: Added. Rebaselined.
* platform/gtk/compositing/geometry/layer-due-to-layer-children-deep-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/geometry/layer-due-to-layer-children-expected.png: Added. Rebaselined.
* platform/gtk/compositing/geometry/layer-due-to-layer-children-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/geometry/outline-change-expected.png: Added. Rebaselined.
* platform/gtk/compositing/geometry/outline-change-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/geometry/partial-layout-update-expected.png: Added. Rebaselined.
* platform/gtk/compositing/geometry/partial-layout-update-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/geometry/root-layer-update-expected.png: Added. Rebaselined.
* platform/gtk/compositing/geometry/root-layer-update-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/geometry/transfrom-origin-on-zero-size-layer-expected.png: Added. Rebaselined.
* platform/gtk/compositing/geometry/transfrom-origin-on-zero-size-layer-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/geometry/vertical-scroll-composited-expected.png: Added. Rebaselined.
* platform/gtk/compositing/geometry/vertical-scroll-composited-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/geometry/video-fixed-scrolling-expected.png: Added. Rebaselined.
* platform/gtk/compositing/geometry/video-fixed-scrolling-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/geometry/video-opacity-overlay-expected.png: Added. Rebaselined.
* platform/gtk/compositing/geometry/video-opacity-overlay-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/iframes/composited-iframe-alignment-expected.png: Added. Rebaselined.
* platform/gtk/compositing/iframes/composited-iframe-alignment-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/iframes/iframe-copy-on-scroll-expected.png: Added. Rebaselined.
* platform/gtk/compositing/iframes/iframe-copy-on-scroll-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/iframes/iframe-in-composited-layer-expected.png: Added. Rebaselined.
* platform/gtk/compositing/iframes/iframe-in-composited-layer-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/iframes/invisible-nested-iframe-show-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/iframes/resizer-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/images/direct-image-background-color-expected.png: Added. Rebaselined.
* platform/gtk/compositing/images/direct-image-background-color-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/layer-creation/fixed-position-scroll-expected.png: Added. Rebaselined.
* platform/gtk/compositing/layer-creation/fixed-position-scroll-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/layer-creation/overlap-animation-container-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/layer-creation/overlap-animation-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/layer-creation/will-change-layer-creation-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/layer-creation/will-change-on-normal-flow-content-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/layers-inside-overflow-scroll-expected.png: Added. Rebaselined.
* platform/gtk/compositing/layers-inside-overflow-scroll-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/masks/direct-image-mask-expected.png: Added. Rebaselined.
* platform/gtk/compositing/masks/direct-image-mask-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/masks/masked-ancestor-expected.png: Added. Rebaselined.
* platform/gtk/compositing/masks/masked-ancestor-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/masks/multiple-masks-expected.png: Added. Rebaselined.
* platform/gtk/compositing/masks/multiple-masks-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/masks/simple-composited-mask-expected.png: Added. Rebaselined.
* platform/gtk/compositing/masks/simple-composited-mask-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/media-controls-bar-appearance-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/overflow/composited-scrolling-creates-a-stacking-container-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/overflow/composited-scrolling-paint-phases-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/overflow/fixed-position-ancestor-clip-expected.png: Added. Rebaselined.
* platform/gtk/compositing/overflow/fixed-position-ancestor-clip-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/overflow/nested-scrolling-expected.png: Added. Rebaselined.
* platform/gtk/compositing/overflow/nested-scrolling-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/overflow/overflow-compositing-descendant-expected.png: Added. Rebaselined.
* platform/gtk/compositing/overflow/overflow-compositing-descendant-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/overflow/overflow-positioning-expected.png: Added. Rebaselined.
* platform/gtk/compositing/overflow/overflow-positioning-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/overflow/overflow-scroll-expected.png: Added. Rebaselined.
* platform/gtk/compositing/overflow/overflow-scroll-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/overflow/parent-overflow-expected.png: Added. Rebaselined.
* platform/gtk/compositing/overflow/parent-overflow-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/overflow/remove-overflow-crash2-expected.png: Added. Rebaselined.
* platform/gtk/compositing/overflow/remove-overflow-crash2-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/overflow/scroll-ancestor-update-expected.png: Added. Rebaselined.
* platform/gtk/compositing/overflow/scroll-ancestor-update-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/overflow/scrollbar-painting-expected.png: Added. Rebaselined.
* platform/gtk/compositing/overflow/scrollbar-painting-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/overflow/theme-affects-visual-overflow-expected.png: Added. Rebaselined.
* platform/gtk/compositing/overflow/theme-affects-visual-overflow-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/reflections/reflection-in-composited-expected.png: Added. Rebaselined.
* platform/gtk/compositing/reflections/reflection-in-composited-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/repaint/become-overlay-composited-layer-expected.png: Added. Rebaselined.
* platform/gtk/compositing/repaint/become-overlay-composited-layer-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/repaint/composited-document-element-expected.png: Added. Rebaselined.
* platform/gtk/compositing/repaint/composited-document-element-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/repaint/content-into-overflow-expected.png: Added. Rebaselined.
* platform/gtk/compositing/repaint/content-into-overflow-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/repaint/layer-repaint-expected.png: Added. Rebaselined.
* platform/gtk/compositing/repaint/layer-repaint-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/repaint/layer-repaint-rects-expected.png: Added. Rebaselined.
* platform/gtk/compositing/repaint/layer-repaint-rects-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/repaint/newly-composited-on-scroll-expected.png: Added. Rebaselined.
* platform/gtk/compositing/repaint/newly-composited-on-scroll-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/repaint/opacity-between-absolute-expected.png: Added. Rebaselined.
* platform/gtk/compositing/repaint/opacity-between-absolute-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/repaint/opacity-between-absolute2-expected.png: Added. Rebaselined.
* platform/gtk/compositing/repaint/opacity-between-absolute2-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/repaint/overflow-into-content-expected.png: Added. Rebaselined.
* platform/gtk/compositing/repaint/overflow-into-content-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/rtl/rtl-iframe-absolute-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/rtl/rtl-iframe-relative-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/rtl/rtl-overflow-scrolling-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/rtl/rtl-scrolling-with-transformed-descendants-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/self-painting-layers-expected.png: Added. Rebaselined.
* platform/gtk/compositing/self-painting-layers-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/shadows/shadow-drawing-expected.png: Added. Rebaselined.
* platform/gtk/compositing/shadows/shadow-drawing-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/sibling-positioning-expected.png: Added. Rebaselined.
* platform/gtk/compositing/sibling-positioning-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/text-on-large-layer-expected.png: Added. Rebaselined.
* platform/gtk/compositing/text-on-large-layer-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/tiling/huge-layer-add-remove-child-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/tiling/visiblerect-accumulated-offset-expected.png: Added. Rebaselined.
* platform/gtk/compositing/tiling/visiblerect-accumulated-offset-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/visibility/layer-visible-content-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/webgl/webgl-background-color-expected.png: Added. Rebaselined.
* platform/gtk/compositing/webgl/webgl-background-color-expected.txt: Added. Rebaselined.
* platform/gtk/compositing/webgl/webgl-nonpremultiplied-blend-expected.png: Added. Rebaselined.
* platform/gtk/compositing/webgl/webgl-nonpremultiplied-blend-expected.txt: Added. Rebaselined.
* platform/gtk/css3/blending/background-blend-mode-default-value-expected.png: Added. Rebaselined.
* platform/gtk/css3/blending/background-blend-mode-default-value-expected.txt: Added. Rebaselined.
* platform/gtk/css3/blending/background-blend-mode-different-image-formats-expected.png: Added. Rebaselined.
* platform/gtk/css3/blending/background-blend-mode-different-image-formats-expected.txt: Added. Rebaselined.
* platform/gtk/css3/blending/background-blend-mode-gif-color-2-expected.png: Added. Rebaselined.
* platform/gtk/css3/blending/background-blend-mode-gif-color-2-expected.txt: Added. Rebaselined.
* platform/gtk/css3/blending/background-blend-mode-gif-color-expected.png: Added. Rebaselined.
* platform/gtk/css3/blending/background-blend-mode-gif-color-expected.txt: Added. Rebaselined.
* platform/gtk/css3/blending/background-blend-mode-image-color-expected.png: Added. Rebaselined.
* platform/gtk/css3/blending/background-blend-mode-image-color-expected.txt: Added. Rebaselined.
* platform/gtk/css3/blending/background-blend-mode-image-image-expected.png: Added. Rebaselined.
* platform/gtk/css3/blending/background-blend-mode-image-image-expected.txt: Added. Rebaselined.
* platform/gtk/css3/blending/background-blend-mode-single-layer-no-blending-expected.png: Added. Rebaselined.
* platform/gtk/css3/blending/background-blend-mode-single-layer-no-blending-expected.txt: Added. Rebaselined.
* platform/gtk/css3/blending/blend-mode-background-expected.png: Added. Rebaselined.
* platform/gtk/css3/blending/blend-mode-background-expected.txt: Added. Rebaselined.
* platform/gtk/css3/blending/blend-mode-isolation-flags-remove-non-stacking-context-blending-expected.png: Added. Rebaselined.
* platform/gtk/css3/blending/blend-mode-isolation-flags-remove-non-stacking-context-blending-expected.txt: Added. Rebaselined.
* platform/gtk/css3/blending/blend-mode-isolation-flags-remove-stacking-context-blending-expected.png: Added. Rebaselined.
* platform/gtk/css3/blending/blend-mode-isolation-flags-remove-stacking-context-blending-expected.txt: Added. Rebaselined.
* platform/gtk/css3/blending/svg-blend-layer-blend-expected.png: Added. Rebaselined.
* platform/gtk/css3/blending/svg-blend-layer-blend-expected.txt: Added. Rebaselined.
* platform/gtk/css3/blending/svg-blend-layer-filter-expected.png: Added. Rebaselined.
* platform/gtk/css3/blending/svg-blend-layer-filter-expected.txt: Added. Rebaselined.
* platform/gtk/css3/blending/svg-blend-layer-mask-expected.png: Added. Rebaselined.
* platform/gtk/css3/blending/svg-blend-layer-mask-expected.txt: Added. Rebaselined.
* platform/gtk/css3/blending/svg-blend-layer-opacity-expected.png: Added. Rebaselined.
* platform/gtk/css3/blending/svg-blend-layer-opacity-expected.txt: Added. Rebaselined.
* platform/gtk/css3/blending/svg-blend-layer-shadow-expected.png: Added. Rebaselined.
* platform/gtk/css3/blending/svg-blend-layer-shadow-expected.txt: Added. Rebaselined.
* platform/gtk/css3/blending/svg-blend-multiply-alpha-expected.png: Added. Rebaselined.
* platform/gtk/css3/blending/svg-blend-multiply-alpha-expected.txt: Added. Rebaselined.
* platform/gtk/css3/blending/svg-blend-normal-expected.png: Added. Rebaselined.
* platform/gtk/css3/blending/svg-blend-normal-expected.txt: Added. Rebaselined.
* platform/gtk/css3/blending/svg-blend-plus-darker-expected.png: Added. Rebaselined.
* platform/gtk/css3/blending/svg-blend-plus-darker-expected.txt: Added. Rebaselined.
* platform/gtk/css3/blending/svg-blend-plus-lighter-expected.png: Added. Rebaselined.
* platform/gtk/css3/blending/svg-blend-plus-lighter-expected.txt: Added. Rebaselined.
* platform/gtk/fast/canvas/webgl/css-webkit-canvas-expected.png: Added. Rebaselined.
* platform/gtk/fast/canvas/webgl/css-webkit-canvas-expected.txt: Added. Rebaselined.
* platform/gtk/fast/canvas/webgl/css-webkit-canvas-repaint-expected.png: Added. Rebaselined.
* platform/gtk/fast/canvas/webgl/css-webkit-canvas-repaint-expected.txt: Added. Rebaselined.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@214223 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index 6dc8c1e..b0aa4d9 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,3 +1,195 @@
+2017-03-21  Carlos Alberto Lopez Perez  <clopez@igalia.com>
+
+        [GTK] Enable WebGL, 3D and compositing layout tests
+        https://bugs.webkit.org/show_bug.cgi?id=71849
+
+        Unreviewed test gardeninng.
+
+        * http/tests/webgl/1.0.2/origin-clean-conformance-expected.txt: Rebaseline after r208049.
+        * platform/gtk/TestExpectations: Mark new expected failures.
+        * platform/gtk/compositing/animation/state-at-end-event-transform-layer-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/animation/state-at-end-event-transform-layer-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/backing/backface-visibility-in-3dtransformed-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/backing/child-layer-no-backing-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/backing/inline-block-no-backing-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/backing/no-backing-for-clip-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/backing/no-backing-for-clip-overhang-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/backing/no-backing-for-clip-overlap-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/backing/replaced-child-no-backing-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/color-matching/image-color-matching-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/color-matching/image-color-matching-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/color-matching/pdf-image-match-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/color-matching/pdf-image-match-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/compositing-visible-descendant-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/compositing-visible-descendant-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/direct-image-compositing-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/direct-image-compositing-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/generated-content-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/generated-content-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/abs-position-inside-opacity-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/abs-position-inside-opacity-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/clipping-foreground-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/clipping-foreground-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/composited-html-size-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/composited-html-size-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/composited-in-columns-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/composited-in-columns-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/fixed-in-composited-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/fixed-in-composited-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/fixed-position-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/fixed-position-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/horizontal-scroll-composited-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/horizontal-scroll-composited-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/layer-due-to-layer-children-deep-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/layer-due-to-layer-children-deep-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/layer-due-to-layer-children-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/layer-due-to-layer-children-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/outline-change-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/outline-change-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/partial-layout-update-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/partial-layout-update-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/root-layer-update-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/root-layer-update-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/transfrom-origin-on-zero-size-layer-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/transfrom-origin-on-zero-size-layer-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/vertical-scroll-composited-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/vertical-scroll-composited-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/video-fixed-scrolling-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/video-fixed-scrolling-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/video-opacity-overlay-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/geometry/video-opacity-overlay-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/iframes/composited-iframe-alignment-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/iframes/composited-iframe-alignment-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/iframes/iframe-copy-on-scroll-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/iframes/iframe-copy-on-scroll-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/iframes/iframe-in-composited-layer-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/iframes/iframe-in-composited-layer-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/iframes/invisible-nested-iframe-show-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/iframes/resizer-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/images/direct-image-background-color-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/images/direct-image-background-color-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/layer-creation/fixed-position-scroll-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/layer-creation/fixed-position-scroll-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/layer-creation/overlap-animation-container-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/layer-creation/overlap-animation-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/layer-creation/will-change-layer-creation-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/layer-creation/will-change-on-normal-flow-content-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/layers-inside-overflow-scroll-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/layers-inside-overflow-scroll-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/masks/direct-image-mask-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/masks/direct-image-mask-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/masks/masked-ancestor-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/masks/masked-ancestor-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/masks/multiple-masks-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/masks/multiple-masks-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/masks/simple-composited-mask-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/masks/simple-composited-mask-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/media-controls-bar-appearance-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/overflow/composited-scrolling-creates-a-stacking-container-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/overflow/composited-scrolling-paint-phases-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/overflow/fixed-position-ancestor-clip-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/overflow/fixed-position-ancestor-clip-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/overflow/nested-scrolling-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/overflow/nested-scrolling-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/overflow/overflow-compositing-descendant-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/overflow/overflow-compositing-descendant-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/overflow/overflow-positioning-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/overflow/overflow-positioning-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/overflow/overflow-scroll-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/overflow/overflow-scroll-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/overflow/parent-overflow-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/overflow/parent-overflow-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/overflow/remove-overflow-crash2-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/overflow/remove-overflow-crash2-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/overflow/scroll-ancestor-update-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/overflow/scroll-ancestor-update-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/overflow/scrollbar-painting-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/overflow/scrollbar-painting-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/overflow/theme-affects-visual-overflow-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/overflow/theme-affects-visual-overflow-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/reflections/reflection-in-composited-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/reflections/reflection-in-composited-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/repaint/become-overlay-composited-layer-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/repaint/become-overlay-composited-layer-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/repaint/composited-document-element-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/repaint/composited-document-element-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/repaint/content-into-overflow-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/repaint/content-into-overflow-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/repaint/layer-repaint-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/repaint/layer-repaint-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/repaint/layer-repaint-rects-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/repaint/layer-repaint-rects-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/repaint/newly-composited-on-scroll-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/repaint/newly-composited-on-scroll-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/repaint/opacity-between-absolute-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/repaint/opacity-between-absolute-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/repaint/opacity-between-absolute2-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/repaint/opacity-between-absolute2-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/repaint/overflow-into-content-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/repaint/overflow-into-content-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/rtl/rtl-iframe-absolute-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/rtl/rtl-iframe-relative-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/rtl/rtl-overflow-scrolling-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/rtl/rtl-scrolling-with-transformed-descendants-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/self-painting-layers-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/self-painting-layers-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/shadows/shadow-drawing-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/shadows/shadow-drawing-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/sibling-positioning-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/sibling-positioning-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/text-on-large-layer-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/text-on-large-layer-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/tiling/huge-layer-add-remove-child-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/tiling/visiblerect-accumulated-offset-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/tiling/visiblerect-accumulated-offset-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/visibility/layer-visible-content-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/webgl/webgl-background-color-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/webgl/webgl-background-color-expected.txt: Added. Rebaselined.
+        * platform/gtk/compositing/webgl/webgl-nonpremultiplied-blend-expected.png: Added. Rebaselined.
+        * platform/gtk/compositing/webgl/webgl-nonpremultiplied-blend-expected.txt: Added. Rebaselined.
+        * platform/gtk/css3/blending/background-blend-mode-default-value-expected.png: Added. Rebaselined.
+        * platform/gtk/css3/blending/background-blend-mode-default-value-expected.txt: Added. Rebaselined.
+        * platform/gtk/css3/blending/background-blend-mode-different-image-formats-expected.png: Added. Rebaselined.
+        * platform/gtk/css3/blending/background-blend-mode-different-image-formats-expected.txt: Added. Rebaselined.
+        * platform/gtk/css3/blending/background-blend-mode-gif-color-2-expected.png: Added. Rebaselined.
+        * platform/gtk/css3/blending/background-blend-mode-gif-color-2-expected.txt: Added. Rebaselined.
+        * platform/gtk/css3/blending/background-blend-mode-gif-color-expected.png: Added. Rebaselined.
+        * platform/gtk/css3/blending/background-blend-mode-gif-color-expected.txt: Added. Rebaselined.
+        * platform/gtk/css3/blending/background-blend-mode-image-color-expected.png: Added. Rebaselined.
+        * platform/gtk/css3/blending/background-blend-mode-image-color-expected.txt: Added. Rebaselined.
+        * platform/gtk/css3/blending/background-blend-mode-image-image-expected.png: Added. Rebaselined.
+        * platform/gtk/css3/blending/background-blend-mode-image-image-expected.txt: Added. Rebaselined.
+        * platform/gtk/css3/blending/background-blend-mode-single-layer-no-blending-expected.png: Added. Rebaselined.
+        * platform/gtk/css3/blending/background-blend-mode-single-layer-no-blending-expected.txt: Added. Rebaselined.
+        * platform/gtk/css3/blending/blend-mode-background-expected.png: Added. Rebaselined.
+        * platform/gtk/css3/blending/blend-mode-background-expected.txt: Added. Rebaselined.
+        * platform/gtk/css3/blending/blend-mode-isolation-flags-remove-non-stacking-context-blending-expected.png: Added. Rebaselined.
+        * platform/gtk/css3/blending/blend-mode-isolation-flags-remove-non-stacking-context-blending-expected.txt: Added. Rebaselined.
+        * platform/gtk/css3/blending/blend-mode-isolation-flags-remove-stacking-context-blending-expected.png: Added. Rebaselined.
+        * platform/gtk/css3/blending/blend-mode-isolation-flags-remove-stacking-context-blending-expected.txt: Added. Rebaselined.
+        * platform/gtk/css3/blending/svg-blend-layer-blend-expected.png: Added. Rebaselined.
+        * platform/gtk/css3/blending/svg-blend-layer-blend-expected.txt: Added. Rebaselined.
+        * platform/gtk/css3/blending/svg-blend-layer-filter-expected.png: Added. Rebaselined.
+        * platform/gtk/css3/blending/svg-blend-layer-filter-expected.txt: Added. Rebaselined.
+        * platform/gtk/css3/blending/svg-blend-layer-mask-expected.png: Added. Rebaselined.
+        * platform/gtk/css3/blending/svg-blend-layer-mask-expected.txt: Added. Rebaselined.
+        * platform/gtk/css3/blending/svg-blend-layer-opacity-expected.png: Added. Rebaselined.
+        * platform/gtk/css3/blending/svg-blend-layer-opacity-expected.txt: Added. Rebaselined.
+        * platform/gtk/css3/blending/svg-blend-layer-shadow-expected.png: Added. Rebaselined.
+        * platform/gtk/css3/blending/svg-blend-layer-shadow-expected.txt: Added. Rebaselined.
+        * platform/gtk/css3/blending/svg-blend-multiply-alpha-expected.png: Added. Rebaselined.
+        * platform/gtk/css3/blending/svg-blend-multiply-alpha-expected.txt: Added. Rebaselined.
+        * platform/gtk/css3/blending/svg-blend-normal-expected.png: Added. Rebaselined.
+        * platform/gtk/css3/blending/svg-blend-normal-expected.txt: Added. Rebaselined.
+        * platform/gtk/css3/blending/svg-blend-plus-darker-expected.png: Added. Rebaselined.
+        * platform/gtk/css3/blending/svg-blend-plus-darker-expected.txt: Added. Rebaselined.
+        * platform/gtk/css3/blending/svg-blend-plus-lighter-expected.png: Added. Rebaselined.
+        * platform/gtk/css3/blending/svg-blend-plus-lighter-expected.txt: Added. Rebaselined.
+        * platform/gtk/fast/canvas/webgl/css-webkit-canvas-expected.png: Added. Rebaselined.
+        * platform/gtk/fast/canvas/webgl/css-webkit-canvas-expected.txt: Added. Rebaselined.
+        * platform/gtk/fast/canvas/webgl/css-webkit-canvas-repaint-expected.png: Added. Rebaselined.
+        * platform/gtk/fast/canvas/webgl/css-webkit-canvas-repaint-expected.txt: Added. Rebaselined.
+
 2017-03-21  Carlos Garcia Campos  <cgarcia@igalia.com>
 
         Unreviewed GTK+ gardening. Remove expectations for imported/w3c/web-platform-tests/XMLHttpRequest/setrequestheader-content-type.htm.
diff --git a/LayoutTests/http/tests/webgl/1.0.2/origin-clean-conformance-expected.txt b/LayoutTests/http/tests/webgl/1.0.2/origin-clean-conformance-expected.txt
index 405c223..2e2c143 100644
--- a/LayoutTests/http/tests/webgl/1.0.2/origin-clean-conformance-expected.txt
+++ b/LayoutTests/http/tests/webgl/1.0.2/origin-clean-conformance-expected.txt
@@ -1,4 +1,5 @@
 Blocked access to external URL http://www.opengl.org/img/opengl_logo.jpg
+Blocked access to external URL http://www.opengl.org/img/opengl_logo.jpg
 This test runs the WebGL Test listed below in an iframe and reports PASS or FAIL.
 
 Test: resources/webgl_test_files/conformance/textures/origin-clean-conformance.html
diff --git a/LayoutTests/platform/gtk/TestExpectations b/LayoutTests/platform/gtk/TestExpectations
index fa83aaf..9408e03 100644
--- a/LayoutTests/platform/gtk/TestExpectations
+++ b/LayoutTests/platform/gtk/TestExpectations
@@ -283,21 +283,315 @@
 # Needs testRunner.enableAutoResizeMode()
 webkit.org/b/99028 fast/autoresize [ Failure ]
 
-# The GTK+ build bots don't yet have the muscle to run WebGL, 3D and compositing tests.
-webkit.org/b/71849 compositing [ Skip ]
-webkit.org/b/71849 css3/blending [ Skip ]
-webkit.org/b/71849 fast/canvas/webgl [ Skip ]
-webkit.org/b/71849 fast/images/webgl-teximage2d.html [ Skip ]
-webkit.org/b/71849 fast/transforms/selection-bounds-in-transformed-view.html [ Skip ]
-webkit.org/b/71849 fast/media/mq-transform-02.html [ Skip ]
-webkit.org/b/71849 fast/media/mq-transform-03.html [ Skip ]
-webkit.org/b/71849 http/tests/canvas/webgl [ Skip ]
-webkit.org/b/71849 http/tests/security/webgl-remote-read-remote-image-allowed.html [ Skip ]
-webkit.org/b/71849 http/tests/security/webgl-remote-read-remote-image-allowed-with-credentials.html [ Skip ]
-webkit.org/b/71849 http/tests/security/webgl-remote-read-remote-image-blocked-no-crossorigin.html [ Skip ]
-webkit.org/b/71849 webkit.org/b/124486 http/tests/webgl [ Skip ]
-webkit.org/b/71849 webkit.org/b/111477 inspector/layers [ Skip ]
-webkit.org/b/71849 webgl [ Skip ]
+# We need to set ENABLE_CSS_COMPOSITING=ON
+webkit.org/b/169916 css3/blending/blend-mode-accelerated-with-multiple-stacking-contexts.html [ Failure ]
+webkit.org/b/169916 css3/blending/blend-mode-ancestor-clipping-layer.html [ Failure ]
+webkit.org/b/169916 css3/blending/blend-mode-blended-element-overlapping-composited-sibling-should-have-compositing-layer.html [ Failure ]
+webkit.org/b/169916 css3/blending/blend-mode-clip-accelerated-blending-canvas.html [ Failure ]
+webkit.org/b/169916 css3/blending/blend-mode-isolation-accelerated-overflow-hidden.html [ Failure ]
+webkit.org/b/169916 css3/blending/blend-mode-isolation-turn-off-self-painting-layer.html [ Failure ]
+webkit.org/b/169916 css3/blending/blend-mode-isolation-turn-off-self-painting-layer1.html [ Failure ]
+webkit.org/b/169916 css3/blending/blend-mode-isolation-turn-off-self-painting-layer2.html [ Failure ]
+webkit.org/b/169916 css3/blending/blend-mode-isolation-turn-on-self-painting-layer.html [ Failure ]
+webkit.org/b/169916 css3/blending/blend-mode-parent-of-composited-blended-has-layer.html [ Failure ]
+webkit.org/b/169916 css3/blending/blend-mode-property-parsing.html [ Failure ]
+webkit.org/b/169916 css3/blending/blend-mode-property.html [ Failure ]
+webkit.org/b/169916 css3/blending/blend-mode-transform-style.html [ Failure ]
+webkit.org/b/169916 css3/blending/blend-mode-with-composited-descendant-should-have-layer.html [ Failure ]
+webkit.org/b/169916 css3/blending/isolation-parsing.html [ Failure ]
+webkit.org/b/169916 css3/blending/repaint/blend-mode-isolate-stacking-context.html [ Failure ]
+webkit.org/b/169916 css3/blending/repaint/blend-mode-turn-off-isolation.html [ Failure ]
+webkit.org/b/169916 css3/blending/background-blend-mode-body-transparent-color-and-image.html [ ImageOnlyFailure ]
+webkit.org/b/169916 css3/blending/background-blend-mode-crossfade-image.html [ ImageOnlyFailure ]
+webkit.org/b/169916 css3/blending/background-blend-mode-tiled-layers.html [ ImageOnlyFailure ]
+webkit.org/b/169916 css3/blending/blend-mode-accelerated-parent-overflow-hidden.html [ ImageOnlyFailure ]
+webkit.org/b/169916 css3/blending/blend-mode-body-child-background-color.html [ ImageOnlyFailure ]
+webkit.org/b/169916 css3/blending/blend-mode-body-child-isolate-html-background-color.html [ ImageOnlyFailure ]
+webkit.org/b/169916 css3/blending/blend-mode-body-child.html [ ImageOnlyFailure ]
+webkit.org/b/169916 css3/blending/blend-mode-body-composited-child-background-color.html [ ImageOnlyFailure ]
+webkit.org/b/169916 css3/blending/blend-mode-body-composited-child.html [ ImageOnlyFailure ]
+webkit.org/b/169916 css3/blending/blend-mode-body-element.html [ ImageOnlyFailure ]
+webkit.org/b/169916 css3/blending/blend-mode-clip-accelerated-blending-child.html [ ImageOnlyFailure ]
+webkit.org/b/169916 css3/blending/blend-mode-clip-accelerated-blending-double.html [ ImageOnlyFailure ]
+webkit.org/b/169916 css3/blending/blend-mode-clip-accelerated-blending-with-siblings.html [ ImageOnlyFailure ]
+webkit.org/b/169916 css3/blending/blend-mode-clip-accelerated-transformed-blending.html [ ImageOnlyFailure ]
+webkit.org/b/169916 css3/blending/blend-mode-clip-rect-accelerated-blending.html [ ImageOnlyFailure ]
+webkit.org/b/169916 css3/blending/blend-mode-html-element-screen.html [ ImageOnlyFailure ]
+webkit.org/b/169916 css3/blending/blend-mode-isolated-group-1.html [ Missing Failure ]
+webkit.org/b/169916 css3/blending/blend-mode-isolated-group-2.html [ Missing Failure ]
+webkit.org/b/169916 css3/blending/blend-mode-isolated-group-3.html [ Missing Failure ]
+webkit.org/b/169916 css3/blending/blend-mode-isolation-flags-append-non-stacking-context-blending.html [ Missing Failure ]
+webkit.org/b/169916 css3/blending/blend-mode-isolation-flags-append-stacking-context-blending.html [ Missing Failure ]
+webkit.org/b/169916 css3/blending/blend-mode-isolation-flags-turn-off-blending-no-isolation.html [ Missing Failure ]
+webkit.org/b/169916 css3/blending/blend-mode-isolation-flags-turn-off-blending.html [ Missing Failure ]
+webkit.org/b/169916 css3/blending/blend-mode-isolation-flags-turn-off-stacking-context.html [ Missing Failure ]
+webkit.org/b/169916 css3/blending/blend-mode-isolation-flags-turn-on-blending.html [ Missing Failure ]
+webkit.org/b/169916 css3/blending/blend-mode-isolation-flags-turn-on-stacking-context.html [ Missing Failure ]
+webkit.org/b/169916 css3/blending/blend-mode-layers.html [ Missing Failure ]
+webkit.org/b/169916 css3/blending/blend-mode-overflow.html [ Missing Failure ]
+webkit.org/b/169916 css3/blending/blend-mode-reflection.html [ Missing Failure ]
+webkit.org/b/169916 css3/blending/blend-mode-simple-composited.html [ Missing Failure ]
+webkit.org/b/169916 css3/blending/blend-mode-simple.html [ Missing Failure ]
+webkit.org/b/169916 css3/blending/svg-blend-color-burn.html [ Missing Failure ]
+webkit.org/b/169916 css3/blending/svg-blend-color-dodge.html [ Missing Failure ]
+webkit.org/b/169916 css3/blending/svg-blend-darken.html [ Missing Failure ]
+webkit.org/b/169916 css3/blending/svg-blend-difference.html [ Missing Failure ]
+webkit.org/b/169916 css3/blending/svg-blend-exclusion.html [ Missing Failure ]
+webkit.org/b/169916 css3/blending/svg-blend-hard-light.html [ Missing Failure ]
+webkit.org/b/169916 css3/blending/svg-blend-layer-clip-path.html [ Missing Failure ]
+webkit.org/b/169916 css3/blending/svg-blend-lighten.html [ Missing Failure ]
+webkit.org/b/169916 css3/blending/svg-blend-multiply.html [ Missing Failure ]
+webkit.org/b/169916 css3/blending/svg-blend-overlay.html [ Missing Failure ]
+webkit.org/b/169916 css3/blending/svg-blend-screen.html [ Missing Failure ]
+webkit.org/b/169916 css3/blending/svg-blend-soft-light.html [ Missing Failure ]
+webkit.org/b/169916 css3/blending/background-blend-mode-data-uri-svg-image.html [ ImageOnlyFailure Pass ]
+webkit.org/b/169916 inspector/layers/layers-blending-compositing-reasons.html [ Failure ]
+
+# Failures related with compositing tests.
+webkit.org/b/169918 compositing/animation/animation-backing.html [ Failure Pass ]
+webkit.org/b/169918 compositing/backing/no-backing-for-perspective.html [ Failure ]
+webkit.org/b/169918 compositing/backing/whitespace-nodes-no-backing.html [ Failure ]
+webkit.org/b/169918 compositing/canvas/accelerated-canvas-compositing-size-limit.html [ Failure ]
+webkit.org/b/169918 compositing/clipping/border-radius-overflow-hidden-stacking-context.html [ Failure ]
+webkit.org/b/169918 compositing/columns/composited-lr-paginated-repaint.html [ Failure ]
+webkit.org/b/169918 compositing/columns/composited-rl-paginated-repaint.html [ Failure ]
+webkit.org/b/169918 compositing/contents-format/subpixel-antialiased-text-configs-antialiasing-style.html [ Failure ]
+webkit.org/b/169918 compositing/contents-format/subpixel-antialiased-text-configs.html [ Failure ]
+webkit.org/b/169918 compositing/contents-format/subpixel-antialiased-text-enabled.html [ Failure ]
+webkit.org/b/169918 compositing/contents-format/subpixel-antialiased-text-traversal.html [ Failure ]
+webkit.org/b/169918 compositing/contents-opaque/control-layer.html [ Failure ]
+webkit.org/b/169918 compositing/contents-scale/animating.html [ Failure ]
+webkit.org/b/169918 compositing/contents-scale/rounded-contents-scale.html [ Failure ]
+webkit.org/b/169918 compositing/contents-scale/scaled-ancestor.html [ Failure ]
+webkit.org/b/169918 compositing/contents-scale/simple-scale.html [ Failure ]
+webkit.org/b/169918 compositing/contents-scale/z-translate.html [ Failure ]
+webkit.org/b/169918 compositing/fixed-image-loading.html [ Failure ]
+webkit.org/b/169918 compositing/fixed-positioned-pseudo-content-no-compositing.html [ Failure ]
+webkit.org/b/169918 compositing/geometry/ancestor-overflow-change.html [ Failure ]
+webkit.org/b/169918 compositing/geometry/bounds-ignores-hidden-composited-descendant.html [ Failure ]
+webkit.org/b/169918 compositing/geometry/fixed-position-composited-switch.html [ Failure ]
+webkit.org/b/169918 compositing/geometry/fixed-position-flipped-writing-mode.html [ Failure ]
+webkit.org/b/169918 compositing/geometry/layer-due-to-layer-children-deep-switch.html [ Failure ]
+webkit.org/b/169918 compositing/geometry/layer-due-to-layer-children-switch.html [ Failure ]
+webkit.org/b/169918 compositing/geometry/limit-layer-bounds-overflow-repaint.html [ Failure ]
+webkit.org/b/169918 compositing/geometry/limit-layer-bounds-overflow-root.html [ Failure ]
+webkit.org/b/169918 compositing/geometry/preserve-3d-switching.html [ Failure ]
+webkit.org/b/169918 compositing/iframes/become-overlapped-iframe.html [ Failure ]
+webkit.org/b/169918 compositing/iframes/composited-iframe-scroll.html [ Failure ]
+webkit.org/b/169918 compositing/iframes/composited-parent-iframe.html [ Failure ]
+webkit.org/b/169918 compositing/iframes/connect-compositing-iframe-delayed.html [ Failure ]
+webkit.org/b/169918 compositing/iframes/connect-compositing-iframe.html [ Failure ]
+webkit.org/b/169918 compositing/iframes/connect-compositing-iframe2.html [ Failure ]
+webkit.org/b/169918 compositing/iframes/connect-compositing-iframe3.html [ Failure ]
+webkit.org/b/169918 compositing/iframes/enter-compositing-iframe.html [ Failure ]
+webkit.org/b/169918 compositing/iframes/iframe-content-flipping.html [ Failure ]
+webkit.org/b/169918 compositing/iframes/iframe-resize.html [ Failure ]
+webkit.org/b/169918 compositing/iframes/overlapped-iframe.html [ Failure ]
+webkit.org/b/169918 compositing/iframes/scrolling-iframe.html [ Failure ]
+webkit.org/b/169918 compositing/images/direct-image-object-fit.html [ Failure ]
+webkit.org/b/169918 compositing/layer-creation/fixed-position-out-of-view-scaled-scroll.html [ Failure ]
+webkit.org/b/169918 compositing/layer-creation/no-compositing-for-preserve-3d.html [ Failure ]
+webkit.org/b/169918 compositing/layer-creation/spanOverlapsCanvas.html [ Failure ]
+webkit.org/b/169918 compositing/layer-creation/fixed-position-out-of-view-scaled.html [ Failure Pass ]
+webkit.org/b/169918 compositing/masks/clip-path-composited-descendent.html [ Failure ]
+webkit.org/b/169918 compositing/masks/compositing-clip-path-change-no-repaint.html [ Failure ]
+webkit.org/b/169918 compositing/overflow/ancestor-overflow.html [ Failure ]
+webkit.org/b/169918 compositing/overflow/clipping-behaviour-change-is-not-propagated-to-descendants.html [ Failure ]
+webkit.org/b/169918 compositing/overflow/clipping-behaviour-change-is-not-propagated-to-descendants2.html [ Failure ]
+webkit.org/b/169918 compositing/overflow/overflow-auto-with-touch-toggle.html [ Failure ]
+webkit.org/b/169918 compositing/overflow/overflow-auto-with-touch.html [ Failure ]
+webkit.org/b/169918 compositing/overflow/overflow-overlay-with-touch.html [ Failure ]
+webkit.org/b/169918 compositing/overflow/scrolling-content-clip-to-viewport.html [ Failure ]
+webkit.org/b/169918 compositing/overflow/scrolling-without-painting.html [ Failure ]
+webkit.org/b/169918 compositing/overflow/textarea-scroll-touch.html [ Failure ]
+webkit.org/b/169918 compositing/overflow/updating-scrolling-content.html [ Failure ]
+webkit.org/b/169918 compositing/plugins/no-backing-store.html [ Failure ]
+webkit.org/b/169918 compositing/plugins/small-to-large-composited-plugin.html [ Failure ]
+webkit.org/b/169918 compositing/reflections/direct-image-object-fit-reflected.html [ Failure ]
+webkit.org/b/169918 compositing/repaint/iframes/composited-iframe-with-fixed-background-doc-repaint.html [ Failure ]
+webkit.org/b/169918 compositing/repaint/iframes/compositing-iframe-scroll-repaint.html [ Failure ]
+webkit.org/b/169918 compositing/repaint/iframes/compositing-iframe-with-fixed-background-doc-repaint.html [ Failure ]
+webkit.org/b/169918 compositing/repaint/invalidations-on-composited-layers.html [ Failure ]
+webkit.org/b/169918 compositing/repaint/positioned-movement.html [ Failure ]
+webkit.org/b/169918 compositing/repaint/repaint-on-layer-grouping-change.html [ Failure ]
+webkit.org/b/169918 compositing/repaint/resize-repaint.html [ Failure ]
+webkit.org/b/169918 compositing/rtl/rtl-fixed-overflow-scrolled.html [ Failure ]
+webkit.org/b/169918 compositing/rtl/rtl-fixed-overflow.html [ Failure ]
+webkit.org/b/169918 compositing/rtl/rtl-fixed.html [ Failure ]
+webkit.org/b/169918 compositing/rtl/rtl-iframe-absolute-overflow-scrolled.html [ Failure ]
+webkit.org/b/169918 compositing/rtl/rtl-iframe-absolute-overflow.html [ Failure ]
+webkit.org/b/169918 compositing/rtl/rtl-iframe-fixed-overflow-scrolled.html [ Failure ]
+webkit.org/b/169918 compositing/rtl/rtl-iframe-fixed-overflow.html [ Failure ]
+webkit.org/b/169918 compositing/rtl/rtl-iframe-fixed.html [ Failure ]
+webkit.org/b/169918 compositing/tiling/backface-preserve-3d-tiled.html [ Failure ]
+webkit.org/b/169918 compositing/tiling/crash-reparent-tiled-layer.html [ Failure ]
+webkit.org/b/169918 compositing/tiling/huge-layer-img.html [ Failure ]
+webkit.org/b/169918 compositing/tiling/huge-layer-with-layer-children-resize.html [ Failure ]
+webkit.org/b/169918 compositing/tiling/huge-layer-with-layer-children.html [ Failure ]
+webkit.org/b/169918 compositing/tiling/non-active-window-tiles-size.html [ Failure ]
+webkit.org/b/169918 compositing/tiling/offscreen-tiled-layer.html [ Failure ]
+webkit.org/b/169918 compositing/tiling/tile-cache-zoomed.html [ Failure ]
+webkit.org/b/169918 compositing/tiling/tiled-layer-resize.html [ Failure ]
+webkit.org/b/169918 compositing/tiling/tiled-mask-inwindow.html [ Failure ]
+webkit.org/b/169918 compositing/tiling/tiled-reflection-inwindow.html [ Failure ]
+webkit.org/b/169918 compositing/tiling/transform-origin-tiled.html [ Failure ]
+webkit.org/b/169918 compositing/video/video-object-fit.html [ Failure ]
+webkit.org/b/169918 compositing/video/video-object-position.html [ Failure ]
+webkit.org/b/169918 compositing/visibility/visibility-on-distant-descendant.html [ Failure Pass ]
+webkit.org/b/169918 compositing/visibility/visibility-image-layers.html [ Failure Pass ]
+webkit.org/b/169918 compositing/visibility/visibility-image-layers-dynamic.html [ Failure ]
+webkit.org/b/169918 compositing/backing/solid-color-with-paints-into-ancestor.html [ ImageOnlyFailure ]
+webkit.org/b/169918 compositing/contents-scale/non-decomposable-matrix.html [ ImageOnlyFailure ]
+webkit.org/b/169918 compositing/geometry/clipped-out-perspective.html [ ImageOnlyFailure ]
+webkit.org/b/169918 compositing/hidpi-compositing-vs-non-compositing-check-on-testing-framework.html [ ImageOnlyFailure ]
+webkit.org/b/169918 compositing/hidpi-subpixel-transform-origin.html [ ImageOnlyFailure ]
+webkit.org/b/169918 compositing/hidpi-transform-with-render-layer-on-fractional-pixel-value.html [ ImageOnlyFailure ]
+webkit.org/b/169918 compositing/layer-creation/deep-tree.html [ ImageOnlyFailure ]
+webkit.org/b/169918 compositing/masks/compositing-clip-path-mask-change.html [ ImageOnlyFailure ]
+webkit.org/b/169918 compositing/masks/mask-with-preserve-3d.html [ ImageOnlyFailure ]
+webkit.org/b/169918 compositing/overlap-blending/children-opacity-no-overlap.html [ ImageOnlyFailure ]
+webkit.org/b/169918 compositing/overlap-blending/nested-non-overlap-clipping.html [ ImageOnlyFailure ]
+webkit.org/b/169918 compositing/overlap-blending/nested-overlap-overflow.html [ ImageOnlyFailure ]
+webkit.org/b/169918 compositing/overlap-blending/nested-overlap.html [ ImageOnlyFailure ]
+webkit.org/b/169918 compositing/overlap-blending/reflection-opacity-huge.html [ ImageOnlyFailure ]
+webkit.org/b/169918 compositing/patterns/direct-pattern-compositing-contain.html [ ImageOnlyFailure ]
+webkit.org/b/169918 compositing/patterns/direct-pattern-compositing-cover.html [ ImageOnlyFailure ]
+webkit.org/b/169918 compositing/patterns/direct-pattern-compositing-position.html [ ImageOnlyFailure ]
+webkit.org/b/169918 compositing/patterns/direct-pattern-compositing-size.html [ ImageOnlyFailure ]
+webkit.org/b/169918 compositing/regions/floated-region-with-transformed-child.html [ ImageOnlyFailure Pass ]
+webkit.org/b/169918 compositing/regions/propagate-region-box-shadow-border-padding-for-video.html [ ImageOnlyFailure ]
+webkit.org/b/169918 compositing/regions/propagate-region-box-shadow-border-padding.html [ ImageOnlyFailure ]
+webkit.org/b/169918 compositing/regions/transform-transparent-positioned-video-inside-region.html [ ImageOnlyFailure ]
+webkit.org/b/169918 compositing/regions/z-index-update.html [ ImageOnlyFailure ]
+webkit.org/b/169918 compositing/regions/z-index.html [ ImageOnlyFailure ]
+webkit.org/b/169918 compositing/text-on-scaled-layer.html [ ImageOnlyFailure ]
+webkit.org/b/169918 compositing/text-on-scaled-surface.html [ ImageOnlyFailure ]
+webkit.org/b/169918 compositing/transitions/transform-on-large-layer.html [ ImageOnlyFailure ]
+webkit.org/b/169918 compositing/video/poster.html [ ImageOnlyFailure ]
+webkit.org/b/169918 compositing/video/video-clip-change-src.html [ ImageOnlyFailure ]
+webkit.org/b/169918 compositing/reflections/compositing-change-inside-reflection.html [ Missing Failure ]
+webkit.org/b/169918 compositing/reflections/deeply-nested-reflections.html [ Missing Failure ]
+webkit.org/b/169918 compositing/reflections/load-video-in-reflection.html [ Missing Failure ]
+webkit.org/b/169918 compositing/reflections/masked-reflection-on-composited.html [ Missing Failure ]
+webkit.org/b/169918 compositing/reflections/nested-reflection-anchor-point.html [ Missing Failure ]
+webkit.org/b/169918 compositing/reflections/nested-reflection-animated.html [ Missing Failure ]
+webkit.org/b/169918 compositing/reflections/nested-reflection-mask-change.html [ Missing Failure ]
+webkit.org/b/169918 compositing/reflections/nested-reflection-on-overflow.html [ Missing Failure ]
+webkit.org/b/169918 compositing/reflections/nested-reflection-opacity.html [ Missing Failure ]
+webkit.org/b/169918 compositing/reflections/nested-reflection-size-change.html [ Missing Failure ]
+webkit.org/b/169918 compositing/reflections/nested-reflection-transformed.html [ Missing Failure ]
+webkit.org/b/169918 compositing/reflections/nested-reflection-transformed2.html [ Missing Failure ]
+webkit.org/b/169918 compositing/reflections/nested-reflection-transition.html [ Missing Failure ]
+webkit.org/b/169918 compositing/reflections/nested-reflection.html [ Missing Failure ]
+webkit.org/b/169918 compositing/reflections/reflection-on-composited.html [ Missing Failure ]
+webkit.org/b/169918 compositing/reflections/reflection-opacity.html [ Missing Failure ]
+webkit.org/b/169918 compositing/reflections/reflection-ordering.html [ Missing Failure ]
+webkit.org/b/169918 compositing/reflections/reflection-positioning.html [ Missing Failure ]
+webkit.org/b/169918 compositing/reflections/reflection-positioning2.html [ Missing Failure ]
+webkit.org/b/169918 compositing/reflections/simple-composited-reflections.html [ Missing Failure ]
+webkit.org/b/169918 compositing/reflections/transform-inside-reflection.html [ Missing Failure ]
+webkit.org/b/169918 compositing/tiling/rotated-tiled-clamped.html [ Missing Failure ]
+webkit.org/b/169918 compositing/tiling/rotated-tiled-preserve3d-clamped.html [ Missing Failure ]
+webkit.org/b/169918 compositing/transitions/scale-transition-no-start.html [ Missing Failure ]
+webkit.org/b/169918 compositing/transitions/singular-scale-transition.html [ Missing Failure ]
+webkit.org/b/169918 compositing/visibility/visibility-composited-transforms.html [ Missing Failure ]
+webkit.org/b/169918 compositing/visibility/visibility-composited.html [ Missing Failure ]
+webkit.org/b/169918 compositing/webgl/webgl-no-alpha.html [ Missing Failure ]
+webkit.org/b/169918 compositing/webgl/webgl-reflection.html [ Missing Failure ]
+webkit.org/b/169918 compositing/plugins/composited-plugin.html [ Missing Failure ]
+webkit.org/b/169918 compositing/reflections/animation-inside-reflection.html [ Missing Failure ]
+webkit.org/b/169918 compositing/fixed-with-fixed-layout.html [ Crash ]
+webkit.org/b/169918 compositing/video/video-background-color.html [ Missing Crash ]
+
+# WebGL related failures
+webkit.org/b/169917 fast/canvas/webgl/antialiasing-enabled.html [ Failure Pass ]
+webkit.org/b/169917 fast/canvas/webgl/context-attributes-alpha-depth-stencil-antialias.html [ Failure ]
+webkit.org/b/169917 fast/canvas/webgl/copyBufferSubData.html [ Failure ]
+webkit.org/b/169917 fast/canvas/webgl/framebuffer-object-attachment.html [ Failure ]
+webkit.org/b/169917 fast/canvas/webgl/getBufferSubData-webgl1.html [ Failure ]
+webkit.org/b/169917 fast/canvas/webgl/glsl-conformance.html [ Failure ]
+webkit.org/b/169917 fast/canvas/webgl/match-page-color-space.html [ ImageOnlyFailure ]
+webkit.org/b/169917 fast/canvas/webgl/premultiplyalpha-test.html [ Failure ]
+webkit.org/b/169917 fast/canvas/webgl/read-pixels-test.html [ Failure Pass ]
+webkit.org/b/169917 fast/canvas/webgl/oes-vertex-array-object.html [ Failure Pass ]
+webkit.org/b/169917 fast/canvas/webgl/unprefixed-anisotropic-extension.html [ Failure Pass ]
+webkit.org/b/169917 webgl/1.0.2/conformance/canvas/buffer-offscreen-test.html [ Failure ]
+webkit.org/b/169917 webgl/1.0.2/conformance/context/context-attribute-preserve-drawing-buffer.html [ Failure ]
+webkit.org/b/169917 webgl/1.0.2/conformance/context/context-attributes-alpha-depth-stencil-antialias.html [ Failure ]
+webkit.org/b/169917 webgl/1.0.2/conformance/context/premultiplyalpha-test.html [ Failure ]
+webkit.org/b/169917 webgl/1.0.2/conformance/extensions/oes-texture-float.html [ Failure ]
+webkit.org/b/169917 webgl/1.0.2/conformance/reading/read-pixels-test.html [ Failure Pass ]
+webkit.org/b/169917 webgl/1.0.2/conformance/textures/copy-tex-image-2d-formats.html [ Failure ]
+webkit.org/b/169917 webgl/1.0.2/conformance/textures/texture-attachment-formats.html [ Failure ]
+webkit.org/b/169917 webgl/1.0.2/conformance/textures/texture-mips.html [ Failure ]
+webkit.org/b/169917 webgl/1.0.2/conformance/textures/texture-npot.html [ Failure ]
+webkit.org/b/169917 webgl/1.0.2/conformance/textures/texture-size-limit.html [ Failure ]
+webkit.org/b/169917 webgl/1.0.3/conformance/attribs/gl-bindAttribLocation-aliasing.html [ Failure ]
+webkit.org/b/169917 webgl/1.0.3/conformance/attribs/gl-bindAttribLocation-matrix.html [ Failure ]
+webkit.org/b/169917 webgl/1.0.3/conformance/extensions/oes-texture-half-float.html [ Failure ]
+webkit.org/b/169917 webgl/1.0.3/conformance/extensions/webgl-compressed-texture-size-limit.html [ Failure ]
+webkit.org/b/169917 webgl/1.0.3/conformance/glsl/misc/shaders-with-invariance.html [ Failure ]
+webkit.org/b/169917 webgl/1.0.3/conformance/glsl/misc/shaders-with-name-conflicts.html [ Failure ]
+webkit.org/b/169917 webgl/1.0.3/conformance/renderbuffers/feedback-loop.html [ Failure ]
+webkit.org/b/169917 webgl/1.0.3/conformance/rendering/point-no-attributes.html [ Failure ]
+webkit.org/b/169917 webgl/1.0.3/conformance/textures/texture-copying-feedback-loops.html [ Failure ]
+webkit.org/b/169917 webgl/many-contexts-access-after-loss.html [ Failure ]
+webkit.org/b/169917 webgl/many-contexts.html [ Failure ]
+webkit.org/b/169917 webgl/max-active-contexts-console-warning.html [ Failure ]
+webkit.org/b/169917 webgl/max-active-contexts-gc.html [ Failure ]
+webkit.org/b/169917 webgl/max-active-contexts-oldest-context-lost.html [ Failure ]
+webkit.org/b/169917 webgl/webgl-vertex-array-object-defined.html [ Failure ]
+webkit.org/b/169917 webgl/webgl-border.html [ ImageOnlyFailure ]
+webkit.org/b/169917 webgl/webgl-box-shadow.html [ ImageOnlyFailure ]
+# WebGL flaky tests
+webkit.org/b/169917 webgl/1.0.2/conformance/canvas/drawingbuffer-test.html [ Failure Pass ]
+webkit.org/b/169917 webgl/1.0.2/conformance/extensions/oes-vertex-array-object.html [ Failure Pass ]
+webkit.org/b/169917 webgl/1.0.2/conformance/textures/texture-formats-test.html [ Failure Pass ]
+webkit.org/b/169917 webgl/1.0.3/conformance/context/context-hidden-alpha.html [ Failure Pass ]
+webkit.org/b/169917 compositing/overlap-blending/children-opacity-huge.html [ ImageOnlyFailure Pass ]
+webkit.org/b/169917 compositing/video/video-border-radius.html [ ImageOnlyFailure Pass ]
+# WebGL timeouts or slow tests.
+webkit.org/b/169917 fast/canvas/webgl/oes-texture-half-float.html [ Slow ]
+webkit.org/b/169917 webgl/1.0.2/conformance/context/context-creation-and-destruction.html [ Timeout ]
+webkit.org/b/169917 webgl/1.0.2/conformance/extensions/oes-texture-float-with-video.html [ Timeout ]
+webkit.org/b/169917 webgl/1.0.2/conformance/glsl/misc/shader-uniform-packing-restrictions.html [ Slow ]
+webkit.org/b/169917 webgl/1.0.2/conformance/glsl/misc/shader-with-non-reserved-words.html [ Slow ]
+webkit.org/b/169917 webgl/1.0.2/conformance/rendering/multisample-corruption.html [ Timeout ]
+webkit.org/b/169917 webgl/1.0.2/conformance/textures/tex-image-and-sub-image-2d-with-video-rgb565.html [ Timeout ]
+webkit.org/b/169917 webgl/1.0.2/conformance/textures/tex-image-and-sub-image-2d-with-video-rgba4444.html [ Timeout ]
+webkit.org/b/169917 webgl/1.0.2/conformance/textures/tex-image-and-sub-image-2d-with-video-rgba5551.html [ Timeout ]
+webkit.org/b/169917 webgl/1.0.2/conformance/textures/tex-image-and-sub-image-2d-with-video.html [ Timeout ]
+webkit.org/b/169917 webgl/1.0.2/conformance/uniforms/gl-uniform-arrays.html [ Slow ]
+webkit.org/b/169917 webgl/1.0.3/conformance/extensions/oes-texture-half-float-with-video.html [ Timeout ]
+webkit.org/b/169917 webgl/1.0.3/conformance/glsl/bugs/complex-glsl-does-not-crash.html [ Slow ]
+webkit.org/b/169917 webgl/1.0.3/conformance/glsl/bugs/temp-expressions-should-not-crash.html [ Slow ]
+webkit.org/b/169917 webgl/1.0.3/conformance/textures/texture-upload-size.html [ Timeout ]
+webkit.org/b/169917 webgl/1.0.2/conformance/uniforms/out-of-bounds-uniform-array-access.html [ Slow ]
+webkit.org/b/169917 webgl/1.0.2/conformance/ogles/GL/atan/atan_001_to_008.html [ Slow ]
+webkit.org/b/169917 webgl/1.0.2/conformance/uniforms/uniform-default-values.html [ Slow ]
+webkit.org/b/169917 webgl/1.0.2/conformance/ogles/GL/pow/pow_009_to_016.html [ Slow ]
+webkit.org/b/169917 webgl/1.0.2/conformance/ogles/GL/pow/pow_017_to_024.html [ Slow ]
+webkit.org/b/169917 webgl/1.0.2/conformance/ogles/GL/reflect/reflect_001_to_006.html [ Slow ]
+webkit.org/b/169917 webgl/1.0.2/conformance/ogles/GL/refract/refract_001_to_006.html [ Slow ]
+webkit.org/b/169917 webgl/1.0.2/conformance/ogles/GL/swizzlers/swizzlers_097_to_104.html [ Slow ]
+webkit.org/b/169917 webgl/1.0.2/conformance/ogles/GL/log/log_001_to_008.html [ Slow ]
+webkit.org/b/169917 webgl/1.0.3/conformance/uniforms/uniform-values-per-program.html [ Slow ]
+webkit.org/b/169917 webgl/1.0.3/conformance/context/context-eviction-with-garbage-collection.html [ Slow ]
+webkit.org/b/169917 webgl/1.0.3/conformance/glsl/misc/struct-nesting-of-variable-names.html [ Slow ]
+webkit.org/b/169917 webgl/max-active-contexts-webglcontextlost-prevent-default.html [ Timeout ]
+# WebGL crashes
+webkit.org/b/169917 fast/canvas/webgl/webgl-draw-buffers.html [ Failure Crash ]
+webkit.org/b/169917 webgl/1.0.3/conformance/extensions/webgl-draw-buffers.html [ Crash ]
+
+# WebGL 2.0 still not enabled
+webkit.org/b/166536 webgl/webgl2-rendering-context-defined.html [ Skip ]
+webkit.org/b/166536 webgl/webgl2-rendering-context-obtain.html [ Skip ]
+webkit.org/b/166536 fast/canvas/webgl/webgl2-buffer-targets.html [ Skip ]
+webkit.org/b/166536 fast/canvas/webgl/webgl2-buffers.html [ Skip ]
+webkit.org/b/166536 fast/canvas/webgl/webgl2-context-creation.html [ Skip ]
+webkit.org/b/166536 fast/canvas/webgl/webgl2-runtime-flag.html [ Skip ]
+webkit.org/b/166536 fast/canvas/webgl/webgl2-texStorage.html [ Skip ]
+webkit.org/b/166536 fast/canvas/webgl/webgl2-texture-upload-enums.html [ Skip ]
 
 # These tests reference specific fonts on Mac port.
 Bug(GTK) fast/text/font-weights.html [ WontFix ]
diff --git a/LayoutTests/platform/gtk/compositing/animation/state-at-end-event-transform-layer-expected.png b/LayoutTests/platform/gtk/compositing/animation/state-at-end-event-transform-layer-expected.png
new file mode 100644
index 0000000..2e53fa9
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/animation/state-at-end-event-transform-layer-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/animation/state-at-end-event-transform-layer-expected.txt b/LayoutTests/platform/gtk/compositing/animation/state-at-end-event-transform-layer-expected.txt
new file mode 100644
index 0000000..747633b
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/animation/state-at-end-event-transform-layer-expected.txt
@@ -0,0 +1,15 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x159
+  RenderBlock {HTML} at (0,0) size 800x159
+    RenderBody {BODY} at (8,16) size 784x135
+      RenderBlock {P} at (0,0) size 784x17
+        RenderText {#text} at (0,0) size 399x17
+          text run at (0,0) width 399: "At the end of the test the green box should obscure the red box."
+      RenderBlock {DIV} at (0,135) size 784x0
+layer at (8,49) size 402x102
+  RenderBlock (relative positioned) {DIV} at (0,33) size 402x102 [border: (1px solid #000000)]
+layer at (19,50) size 100x100
+  RenderBlock (positioned) {DIV} at (11,1) size 100x100 [bgcolor=#FF0000]
+layer at (9,50) size 100x100
+  RenderBlock (positioned) {DIV} at (1,1) size 100x100 [bgcolor=#008000]
diff --git a/LayoutTests/platform/gtk/compositing/backing/backface-visibility-in-3dtransformed-expected.txt b/LayoutTests/platform/gtk/compositing/backing/backface-visibility-in-3dtransformed-expected.txt
new file mode 100644
index 0000000..b922336
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/backing/backface-visibility-in-3dtransformed-expected.txt
@@ -0,0 +1,29 @@
+Should be several layers here.
+
+(GraphicsLayer
+  (anchor 0.00 0.00)
+  (bounds 800.00 600.00)
+  (children 1
+    (GraphicsLayer
+      (bounds 800.00 600.00)
+      (contentsOpaque 1)
+      (children 1
+        (GraphicsLayer
+          (position 8.00 49.00)
+          (bounds 122.00 122.00)
+          (drawsContent 1)
+          (transform [1.00 0.00 0.00 0.00] [0.00 1.00 0.00 0.00] [0.00 0.00 1.00 0.00] [0.00 0.00 10.00 1.00])
+          (children 1
+            (GraphicsLayer
+              (position 11.00 11.00)
+              (bounds 100.00 100.00)
+              (contentsOpaque 1)
+              (backfaceVisibility hidden)
+            )
+          )
+        )
+      )
+    )
+  )
+)
+
diff --git a/LayoutTests/platform/gtk/compositing/backing/child-layer-no-backing-expected.txt b/LayoutTests/platform/gtk/compositing/backing/child-layer-no-backing-expected.txt
new file mode 100644
index 0000000..73b0eb0
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/backing/child-layer-no-backing-expected.txt
@@ -0,0 +1,38 @@
+Grandchild content
+(GraphicsLayer
+  (anchor 0.00 0.00)
+  (bounds 785.00 1091.00)
+  (children 1
+    (GraphicsLayer
+      (bounds 785.00 1091.00)
+      (contentsOpaque 1)
+      (children 5
+        (GraphicsLayer
+          (position 18.00 10.00)
+          (bounds 200.00 200.00)
+        )
+        (GraphicsLayer
+          (position 18.00 220.00)
+          (bounds 200.00 200.00)
+        )
+        (GraphicsLayer
+          (position 18.00 430.00)
+          (bounds 200.00 200.00)
+        )
+        (GraphicsLayer
+          (position 18.00 640.00)
+          (anchor 0.50 0.46)
+          (bounds 200.00 217.00)
+          (drawsContent 1)
+        )
+        (GraphicsLayer
+          (position 18.00 850.00)
+          (anchor 0.50 0.50)
+          (bounds 202.00 202.00)
+          (drawsContent 1)
+        )
+      )
+    )
+  )
+)
+
diff --git a/LayoutTests/platform/gtk/compositing/backing/inline-block-no-backing-expected.txt b/LayoutTests/platform/gtk/compositing/backing/inline-block-no-backing-expected.txt
new file mode 100644
index 0000000..9d081b7
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/backing/inline-block-no-backing-expected.txt
@@ -0,0 +1,72 @@

+
+ (GraphicsLayer
+  (anchor 0.00 0.00)
+  (bounds 800.00 600.00)
+  (children 1
+    (GraphicsLayer
+      (bounds 800.00 600.00)
+      (contentsOpaque 1)
+      (children 4
+        (GraphicsLayer
+          (position 18.00 18.00)
+          (bounds 160.00 320.00)
+          (drawsContent 1)
+          (children 2
+            (GraphicsLayer
+              (position 18.00 10.00)
+              (bounds 120.00 120.00)
+            )
+            (GraphicsLayer
+              (position 10.00 153.00)
+              (bounds 120.00 120.00)
+            )
+          )
+        )
+        (GraphicsLayer
+          (position 202.00 18.00)
+          (bounds 160.00 320.00)
+          (children 2
+            (GraphicsLayer
+              (position 10.00 10.00)
+              (bounds 120.00 120.00)
+            )
+            (GraphicsLayer
+              (position 10.00 153.00)
+              (bounds 120.00 120.00)
+            )
+          )
+        )
+        (GraphicsLayer
+          (position 386.00 18.00)
+          (bounds 160.00 320.00)
+          (children 2
+            (GraphicsLayer
+              (position 10.00 10.00)
+              (bounds 120.00 120.00)
+            )
+            (GraphicsLayer
+              (position 10.00 153.00)
+              (bounds 120.00 120.00)
+            )
+          )
+        )
+        (GraphicsLayer
+          (position 570.00 18.00)
+          (bounds 160.00 320.00)
+          (children 2
+            (GraphicsLayer
+              (position 10.00 10.00)
+              (bounds 120.00 120.00)
+            )
+            (GraphicsLayer
+              (position 10.00 153.00)
+              (bounds 120.00 120.00)
+            )
+          )
+        )
+      )
+    )
+  )
+)
+
diff --git a/LayoutTests/platform/gtk/compositing/backing/no-backing-for-clip-expected.txt b/LayoutTests/platform/gtk/compositing/backing/no-backing-for-clip-expected.txt
new file mode 100644
index 0000000..ffb586f
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/backing/no-backing-for-clip-expected.txt
@@ -0,0 +1,44 @@
+This layer should not have backing store.
+This layer should not have backing store.
+(GraphicsLayer
+  (anchor 0.00 0.00)
+  (bounds 800.00 600.00)
+  (children 1
+    (GraphicsLayer
+      (bounds 800.00 600.00)
+      (contentsOpaque 1)
+      (children 1
+        (GraphicsLayer
+          (position 8.00 8.00)
+          (bounds 342.00 238.00)
+          (children 1
+            (GraphicsLayer
+              (position 1.00 1.00)
+              (bounds 340.00 236.00)
+              (children 1
+                (GraphicsLayer
+                  (position 20.00 37.00)
+                  (bounds 320.00 179.00)
+                  (children 1
+                    (GraphicsLayer
+                      (position 1.00 1.00)
+                      (bounds 340.00 177.00)
+                      (children 1
+                        (GraphicsLayer
+                          (position 30.00 47.00)
+                          (bounds 100.00 100.00)
+                          (contentsOpaque 1)
+                        )
+                      )
+                    )
+                  )
+                )
+              )
+            )
+          )
+        )
+      )
+    )
+  )
+)
+
diff --git a/LayoutTests/platform/gtk/compositing/backing/no-backing-for-clip-overhang-expected.txt b/LayoutTests/platform/gtk/compositing/backing/no-backing-for-clip-overhang-expected.txt
new file mode 100644
index 0000000..cce343f
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/backing/no-backing-for-clip-overhang-expected.txt
@@ -0,0 +1,39 @@
+Text here
+(GraphicsLayer
+  (anchor 0.00 0.00)
+  (bounds 800.00 600.00)
+  (children 1
+    (GraphicsLayer
+      (bounds 800.00 600.00)
+      (contentsOpaque 1)
+      (children 1
+        (GraphicsLayer
+          (position 18.00 10.00)
+          (bounds 102.00 102.00)
+          (drawsContent 1)
+          (children 1
+            (GraphicsLayer
+              (position 21.00 21.00)
+              (bounds 300.00 100.00)
+              (contentsOpaque 1)
+              (drawsContent 1)
+              (children 1
+                (GraphicsLayer
+                  (bounds 300.00 100.00)
+                  (children 1
+                    (GraphicsLayer
+                      (position 0.00 17.00)
+                      (bounds 10.00 10.00)
+                      (contentsOpaque 1)
+                    )
+                  )
+                )
+              )
+            )
+          )
+        )
+      )
+    )
+  )
+)
+
diff --git a/LayoutTests/platform/gtk/compositing/backing/no-backing-for-clip-overlap-expected.txt b/LayoutTests/platform/gtk/compositing/backing/no-backing-for-clip-overlap-expected.txt
new file mode 100644
index 0000000..d0f443d
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/backing/no-backing-for-clip-overlap-expected.txt
@@ -0,0 +1,50 @@
+This layer should not have backing store.
+This layer should have backing store.
+(GraphicsLayer
+  (anchor 0.00 0.00)
+  (bounds 800.00 600.00)
+  (children 1
+    (GraphicsLayer
+      (bounds 800.00 600.00)
+      (contentsOpaque 1)
+      (children 2
+        (GraphicsLayer
+          (position 8.00 8.00)
+          (bounds 342.00 179.00)
+          (children 1
+            (GraphicsLayer
+              (position 1.00 1.00)
+              (bounds 340.00 177.00)
+              (children 1
+                (GraphicsLayer
+                  (position 30.00 47.00)
+                  (bounds 100.00 100.00)
+                  (contentsOpaque 1)
+                )
+              )
+            )
+          )
+        )
+        (GraphicsLayer
+          (position 8.00 177.00)
+          (bounds 342.00 179.00)
+          (drawsContent 1)
+          (children 1
+            (GraphicsLayer
+              (position 1.00 1.00)
+              (bounds 340.00 177.00)
+              (children 1
+                (GraphicsLayer
+                  (position 30.00 47.00)
+                  (bounds 100.00 100.00)
+                  (contentsOpaque 1)
+                )
+              )
+            )
+          )
+        )
+      )
+    )
+  )
+)
+
diff --git a/LayoutTests/platform/gtk/compositing/backing/replaced-child-no-backing-expected.txt b/LayoutTests/platform/gtk/compositing/backing/replaced-child-no-backing-expected.txt
new file mode 100644
index 0000000..373d2e5
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/backing/replaced-child-no-backing-expected.txt
@@ -0,0 +1,25 @@
+
+(GraphicsLayer
+  (anchor 0.00 0.00)
+  (bounds 800.00 600.00)
+  (children 1
+    (GraphicsLayer
+      (bounds 800.00 600.00)
+      (contentsOpaque 1)
+      (children 2
+        (GraphicsLayer
+          (position 18.00 10.00)
+          (anchor 0.50 0.49)
+          (bounds 200.00 203.00)
+          (drawsContent 1)
+        )
+        (GraphicsLayer
+          (position 18.00 220.00)
+          (anchor 0.50 0.49)
+          (bounds 200.00 203.00)
+        )
+      )
+    )
+  )
+)
+
diff --git a/LayoutTests/platform/gtk/compositing/color-matching/image-color-matching-expected.png b/LayoutTests/platform/gtk/compositing/color-matching/image-color-matching-expected.png
new file mode 100644
index 0000000..9c5267c
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/color-matching/image-color-matching-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/color-matching/image-color-matching-expected.txt b/LayoutTests/platform/gtk/compositing/color-matching/image-color-matching-expected.txt
new file mode 100644
index 0000000..c701769
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/color-matching/image-color-matching-expected.txt
@@ -0,0 +1,22 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x543
+  RenderBlock {HTML} at (0,0) size 800x543
+    RenderBody {BODY} at (8,16) size 784x519 [color=#FFFFFF] [bgcolor=#000000]
+      RenderBlock {P} at (0,0) size 784x17
+        RenderText {#text} at (0,0) size 205x17
+          text run at (0,0) width 205: "Images should all look the same."
+      RenderBlock {DIV} at (0,33) size 784x243
+        RenderImage {IMG} at (0,0) size 360x240
+        RenderText {#text} at (360,226) size 4x17
+          text run at (360,226) width 4: " "
+        RenderImage {IMG} at (364,0) size 360x240
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {DIV} at (0,276) size 784x243
+        RenderText {#text} at (360,226) size 4x17
+          text run at (360,226) width 4: " "
+        RenderText {#text} at (0,0) size 0x0
+layer at (8,292) size 360x240
+  RenderImage {IMG} at (0,0) size 360x240
+layer at (372,292) size 360x240
+  RenderImage {IMG} at (364,0) size 360x240
diff --git a/LayoutTests/platform/gtk/compositing/color-matching/pdf-image-match-expected.png b/LayoutTests/platform/gtk/compositing/color-matching/pdf-image-match-expected.png
new file mode 100644
index 0000000..32ac15b
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/color-matching/pdf-image-match-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/color-matching/pdf-image-match-expected.txt b/LayoutTests/platform/gtk/compositing/color-matching/pdf-image-match-expected.txt
new file mode 100644
index 0000000..3dfde3c
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/color-matching/pdf-image-match-expected.txt
@@ -0,0 +1,12 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x80
+  RenderBlock {HTML} at (0,0) size 800x80
+    RenderBody {BODY} at (8,16) size 784x56
+      RenderBlock {P} at (0,0) size 784x17
+        RenderText {#text} at (0,0) size 160x17
+          text run at (0,0) width 160: "This test should not crash"
+      RenderBlock (anonymous) at (0,33) size 784x23
+        RenderText {#text} at (0,0) size 0x0
+layer at (8,49) size 20x20
+  RenderImage {IMG} at (0,0) size 20x20
diff --git a/LayoutTests/platform/gtk/compositing/compositing-visible-descendant-expected.png b/LayoutTests/platform/gtk/compositing/compositing-visible-descendant-expected.png
new file mode 100644
index 0000000..f72341f
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/compositing-visible-descendant-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/compositing-visible-descendant-expected.txt b/LayoutTests/platform/gtk/compositing/compositing-visible-descendant-expected.txt
new file mode 100644
index 0000000..b400b23
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/compositing-visible-descendant-expected.txt
@@ -0,0 +1,14 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x600
+  RenderBlock {HTML} at (0,0) size 800x600
+    RenderBody {BODY} at (8,8) size 784x576
+      RenderBlock {P} at (0,0) size 784x17
+        RenderText {#text} at (0,0) size 256x17
+          text run at (0,0) width 256: "You should see one green square below."
+layer at (20,40) size 100x100
+  RenderBlock (positioned) {DIV} at (20,40) size 100x100 [bgcolor=#FF0000]
+layer at (20,40) size 100x100
+  RenderBlock (positioned) {DIV} at (20,40) size 100x100
+layer at (20,40) size 100x100
+  RenderBlock (relative positioned) {DIV} at (0,0) size 100x100 [bgcolor=#008000]
diff --git a/LayoutTests/platform/gtk/compositing/direct-image-compositing-expected.png b/LayoutTests/platform/gtk/compositing/direct-image-compositing-expected.png
new file mode 100644
index 0000000..231913e
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/direct-image-compositing-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/direct-image-compositing-expected.txt b/LayoutTests/platform/gtk/compositing/direct-image-compositing-expected.txt
new file mode 100644
index 0000000..9e4c1fe
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/direct-image-compositing-expected.txt
@@ -0,0 +1,67 @@
+layer at (0,0) size 785x746
+  RenderView at (0,0) size 785x600
+layer at (0,0) size 785x746
+  RenderBlock {HTML} at (0,0) size 785x746
+    RenderBody {BODY} at (8,21) size 769x109
+      RenderBlock {H1} at (0,0) size 769x36
+        RenderText {#text} at (0,0) size 389x36
+          text run at (0,0) width 389: "Image optimisation in layers"
+      RenderBlock {P} at (0,57) size 769x52
+        RenderText {#text} at (0,0) size 749x51
+          text run at (0,0) width 595: "This test exercises direct compositing of images with hardware acceleration. The visual results "
+          text run at (595,0) width 34: "using"
+          text run at (0,17) width 683: "ACCELERATED_COMPOSITING and regular TOT should be identical. Running this test manually with "
+          text run at (683,17) width 66: "the correct"
+          text run at (0,34) width 442: "debug options will show which elements are directly composited. See "
+        RenderInline {A} at (0,0) size 305x17 [color=#0000EE]
+          RenderText {#text} at (442,34) size 305x17
+            text run at (442,34) width 305: "https://bugs.webkit.org/show_bug.cgi?id=23361"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock (floating) {DIV} at (0,124) size 260x201
+        RenderText {#text} at (150,0) size 106x68
+          text run at (150,0) width 106: "Basic image - no"
+          text run at (150,17) width 83: "style - can be"
+          text run at (150,34) width 47: "directly"
+          text run at (150,51) width 72: "composited"
+      RenderBlock (floating) {DIV} at (260,124) size 260x201
+        RenderText {#text} at (160,0) size 100x68
+          text run at (160,0) width 100: "5px blue border"
+          text run at (160,17) width 88: "- can NOT be"
+          text run at (160,34) width 47: "directly"
+          text run at (160,51) width 72: "composited"
+      RenderBlock (floating) {DIV} at (0,324) size 260x201
+        RenderText {#text} at (160,0) size 79x68
+          text run at (160,0) width 79: "margin - can"
+          text run at (160,17) width 53: "NOT be"
+          text run at (160,34) width 47: "directly"
+          text run at (160,51) width 72: "composited"
+      RenderBlock (floating) {DIV} at (260,324) size 260x201
+        RenderText {#text} at (150,0) size 109x51
+          text run at (150,0) width 109: "solid background"
+          text run at (150,17) width 101: "- can be directly"
+          text run at (150,34) width 72: "composited"
+      RenderBlock (floating) {DIV} at (0,524) size 260x201
+        RenderText {#text} at (150,0) size 104x68
+          text run at (150,0) width 75: "background"
+          text run at (150,17) width 73: "image - can"
+          text run at (150,34) width 104: "NOT be directly"
+          text run at (150,51) width 72: "composited"
+      RenderBlock (floating) {DIV} at (260,524) size 260x201
+        RenderText {#text} at (150,0) size 83x85
+          text run at (150,0) width 67: "rotated but"
+          text run at (150,17) width 81: "otherwise no"
+          text run at (150,34) width 83: "style - can be"
+          text run at (150,51) width 47: "directly"
+          text run at (150,68) width 72: "composited"
+layer at (8,146) size 150x150
+  RenderImage {IMG} at (0,0) size 150x150
+layer at (268,146) size 160x160
+  RenderImage {IMG} at (0,0) size 160x160 [border: (5px solid #0000FF)]
+layer at (13,351) size 150x150
+  RenderImage {IMG} at (5,5) size 150x150
+layer at (268,346) size 150x150
+  RenderImage {IMG} at (0,0) size 150x150 [bgcolor=#808080]
+layer at (8,546) size 150x150
+  RenderImage {IMG} at (0,0) size 150x150 [bgcolor=#FFA500]
+layer at (268,546) size 150x150
+  RenderImage {IMG} at (0,0) size 150x150
diff --git a/LayoutTests/platform/gtk/compositing/generated-content-expected.png b/LayoutTests/platform/gtk/compositing/generated-content-expected.png
new file mode 100644
index 0000000..a9ecfff
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/generated-content-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/generated-content-expected.txt b/LayoutTests/platform/gtk/compositing/generated-content-expected.txt
new file mode 100644
index 0000000..b9ddcc7
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/generated-content-expected.txt
@@ -0,0 +1,17 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x292
+  RenderBlock {HTML} at (0,0) size 800x292
+    RenderBody {BODY} at (8,16) size 784x268
+      RenderBlock {P} at (0,0) size 784x17
+        RenderInline {A} at (0,0) size 305x17 [color=#0000EE]
+          RenderText {#text} at (0,0) size 305x17
+            text run at (0,0) width 305: "https://bugs.webkit.org/show_bug.cgi?id=26095"
+      RenderBlock {P} at (0,33) size 784x17
+        RenderText {#text} at (0,0) size 388x17
+          text run at (0,0) width 388: "Tests that a 3D transform on a generated node does not crash."
+      RenderBlock {DIV} at (0,66) size 202x202 [border: (1px solid #000000)]
+layer at (9,83) size 200x200
+  RenderBlock (generated) at (1,1) size 200x200
+    RenderText at (0,0) size 65x17
+      text run at (0,0) width 65: "Generated"
diff --git a/LayoutTests/platform/gtk/compositing/geometry/abs-position-inside-opacity-expected.png b/LayoutTests/platform/gtk/compositing/geometry/abs-position-inside-opacity-expected.png
new file mode 100644
index 0000000..d309acb
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/abs-position-inside-opacity-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/geometry/abs-position-inside-opacity-expected.txt b/LayoutTests/platform/gtk/compositing/geometry/abs-position-inside-opacity-expected.txt
new file mode 100644
index 0000000..02d1fa4b
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/abs-position-inside-opacity-expected.txt
@@ -0,0 +1,20 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x600
+  RenderBlock {HTML} at (0,0) size 800x600
+    RenderBody {BODY} at (8,8) size 784x542
+      RenderBlock {P} at (0,0) size 784x17
+        RenderText {#text} at (0,0) size 329x17
+          text run at (0,0) width 329: "You should see two green boxes below, with no red"
+layer at (58,75) size 120x120
+  RenderBlock (relative positioned) {DIV} at (50,67) size 120x120 [border: (1px solid #000000)]
+layer at (69,86) size 100x100
+  RenderBlock {DIV} at (11,11) size 100x100 [bgcolor=#FF0000]
+layer at (69,86) size 100x100
+  RenderBlock (positioned) {DIV} at (11,11) size 100x100 [bgcolor=#008000]
+layer at (58,245) size 120x120
+  RenderBlock (relative positioned) {DIV} at (50,237) size 120x120 [border: (1px solid #000000)]
+layer at (69,256) size 100x100
+  RenderBlock {DIV} at (11,11) size 100x100 [bgcolor=#FF0000]
+layer at (69,256) size 100x100
+  RenderBlock (positioned) {DIV} at (11,11) size 100x100 [bgcolor=#008000]
diff --git a/LayoutTests/platform/gtk/compositing/geometry/clipping-foreground-expected.png b/LayoutTests/platform/gtk/compositing/geometry/clipping-foreground-expected.png
new file mode 100644
index 0000000..7a913b9
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/clipping-foreground-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/geometry/clipping-foreground-expected.txt b/LayoutTests/platform/gtk/compositing/geometry/clipping-foreground-expected.txt
new file mode 100644
index 0000000..a203414
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/clipping-foreground-expected.txt
@@ -0,0 +1,58 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x600
+  RenderBlock {HTML} at (0,0) size 800x600
+    RenderBody {BODY} at (8,8) size 784x584
+      RenderBlock {P} at (0,0) size 784x17
+        RenderText {#text} at (0,0) size 518x17
+          text run at (0,0) width 518: "The layering and positions of the boxes should not be affected by oveflow:hidden."
+      RenderBlock (anonymous) at (0,33) size 784x320
+        RenderText {#text} at (320,146) size 4x17
+          text run at (320,146) width 4: " "
+        RenderText {#text} at (0,0) size 0x0
+layer at (68,101) size 200x200 layerType: background only
+layer at (28,61) size 150x150
+  RenderBlock (positioned) zI: -1 {DIV} at (-40,-40) size 150x150 [color=#808080] [bgcolor=#C86464] [border: (2px solid #000000)]
+    RenderText zI: -1 {#text} at (22,22) size 106x39
+      text run at (22,22) width 106: "Behind"
+    RenderText zI: -1 {#text} at (0,0) size 0x0
+layer at (50,143) size 100x100
+  RenderBlock (positioned) {DIV} at (22,82) size 100x100 [bgcolor=#008000] [border: (2px solid #000000)]
+    RenderText {#text} at (22,22) size 55x40
+      text run at (22,22) width 55: "Behind"
+      text run at (22,42) width 53: "behind"
+layer at (68,101) size 200x200 layerType: foreground only
+  RenderBlock (relative positioned) {DIV} at (60,60) size 200x200 [color=#0000FF] [bgcolor=#FFFFFFCC] [border: (10px solid #000000)]
+    RenderText {#text} at (30,30) size 126x78
+      text run at (30,30) width 59: "Box"
+      text run at (30,69) width 126: "contents"
+    RenderText {#text} at (0,0) size 0x0
+    RenderText {#text} at (0,0) size 0x0
+layer at (158,191) size 150x150
+  RenderBlock (positioned) zI: 1 {DIV} at (90,90) size 150x150 [color=#808080] [bgcolor=#C8C880] [border: (2px solid #000000)]
+    RenderText zI: 1 {#text} at (22,22) size 86x78
+      text run at (22,22) width 33: "In"
+      text run at (22,61) width 86: "Front"
+layer at (392,101) size 200x200 clip at (402,111) size 180x180 scrollWidth 230 scrollHeight 230 layerType: background only
+layer at (352,61) size 150x150 backgroundClip at (402,111) size 180x180 clip at (402,111) size 180x180
+  RenderBlock (positioned) zI: -1 {DIV} at (-40,-40) size 150x150 [color=#808080] [bgcolor=#C86464] [border: (2px solid #000000)]
+    RenderText zI: -1 {#text} at (22,22) size 106x39
+      text run at (22,22) width 106: "Behind"
+    RenderText zI: -1 {#text} at (0,0) size 0x0
+layer at (374,143) size 100x100 backgroundClip at (402,111) size 180x180 clip at (402,111) size 180x180
+  RenderBlock (positioned) {DIV} at (22,82) size 100x100 [bgcolor=#008000] [border: (2px solid #000000)]
+    RenderText {#text} at (22,22) size 55x40
+      text run at (22,22) width 55: "Behind"
+      text run at (22,42) width 53: "behind"
+layer at (392,101) size 200x200 clip at (402,111) size 180x180 scrollWidth 230 scrollHeight 230 layerType: foreground only
+  RenderBlock (relative positioned) {DIV} at (384,60) size 200x200 [color=#0000FF] [bgcolor=#FFFFFFCC] [border: (10px solid #000000)]
+    RenderText {#text} at (30,30) size 126x78
+      text run at (30,30) width 59: "Box"
+      text run at (30,69) width 126: "contents"
+    RenderText {#text} at (0,0) size 0x0
+    RenderText {#text} at (0,0) size 0x0
+layer at (482,191) size 150x150 backgroundClip at (402,111) size 180x180 clip at (402,111) size 180x180
+  RenderBlock (positioned) zI: 1 {DIV} at (90,90) size 150x150 [color=#808080] [bgcolor=#C8C880] [border: (2px solid #000000)]
+    RenderText zI: 1 {#text} at (22,22) size 86x78
+      text run at (22,22) width 33: "In"
+      text run at (22,61) width 86: "Front"
diff --git a/LayoutTests/platform/gtk/compositing/geometry/composited-html-size-expected.png b/LayoutTests/platform/gtk/compositing/geometry/composited-html-size-expected.png
new file mode 100644
index 0000000..8074684
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/composited-html-size-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/geometry/composited-html-size-expected.txt b/LayoutTests/platform/gtk/compositing/geometry/composited-html-size-expected.txt
new file mode 100644
index 0000000..a41aaad
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/composited-html-size-expected.txt
@@ -0,0 +1,12 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x36 layerType: background only
+layer at (10,10) size 100x100
+  RenderBlock (positioned) zI: -1 {DIV} at (10,10) size 100x100 [bgcolor=#0000FF]
+layer at (10,10) size 100x17
+  RenderBlock {DIV} at (0,0) size 100x17
+    RenderText {#text} at (0,0) size 81x17
+      text run at (0,0) width 81: "Compositing"
+layer at (0,0) size 800x36 layerType: foreground only
+  RenderBlock {HTML} at (0,0) size 800x36
+    RenderBody {BODY} at (8,8) size 784x20 [bgcolor=#C0C0C0]
diff --git a/LayoutTests/platform/gtk/compositing/geometry/composited-in-columns-expected.png b/LayoutTests/platform/gtk/compositing/geometry/composited-in-columns-expected.png
new file mode 100644
index 0000000..da2f4f0
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/composited-in-columns-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/geometry/composited-in-columns-expected.txt b/LayoutTests/platform/gtk/compositing/geometry/composited-in-columns-expected.txt
new file mode 100644
index 0000000..6d43b2c
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/composited-in-columns-expected.txt
@@ -0,0 +1,37 @@
+ (GraphicsLayer
+  (anchor 0.00 0.00)
+  (bounds 800.00 600.00)
+  (children 1
+    (GraphicsLayer
+      (bounds 800.00 600.00)
+      (contentsOpaque 1)
+      (children 2
+        (GraphicsLayer
+          (position 14.00 160.00)
+          (bounds 210.00 60.00)
+          (drawsContent 1)
+          (children 1
+            (GraphicsLayer
+              (position 5.00 5.00)
+              (bounds 50.00 50.00)
+              (contentsOpaque 1)
+            )
+          )
+        )
+        (GraphicsLayer
+          (position 272.00 87.00)
+          (bounds 210.00 60.00)
+          (drawsContent 1)
+          (children 1
+            (GraphicsLayer
+              (position 5.00 5.00)
+              (bounds 50.00 50.00)
+              (contentsOpaque 1)
+            )
+          )
+        )
+      )
+    )
+  )
+)
+
diff --git a/LayoutTests/platform/gtk/compositing/geometry/fixed-in-composited-expected.png b/LayoutTests/platform/gtk/compositing/geometry/fixed-in-composited-expected.png
new file mode 100644
index 0000000..ae1d337
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/fixed-in-composited-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/geometry/fixed-in-composited-expected.txt b/LayoutTests/platform/gtk/compositing/geometry/fixed-in-composited-expected.txt
new file mode 100644
index 0000000..8a36127
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/fixed-in-composited-expected.txt
@@ -0,0 +1,31 @@
+layer at (0,0) size 785x2000
+  RenderView at (0,0) size 785x600
+layer at (0,0) size 785x2000
+  RenderBlock {HTML} at (0,0) size 785x2000
+    RenderBody {BODY} at (0,0) size 785x2000
+      RenderBlock {P} at (0,210) size 785x17
+        RenderText {#text} at (0,0) size 188x17
+          text run at (0,0) width 188: "You should see no red above."
+layer at (20,70) size 100x100
+  RenderBlock (positioned) {DIV} at (20,70) size 100x100 [bgcolor=#FF0000]
+layer at (220,120) size 100x100
+  RenderBlock (positioned) {DIV} at (220,120) size 100x100 [bgcolor=#FF0000]
+layer at (420,120) size 100x100
+  RenderBlock (positioned) {DIV} at (420,120) size 100x100 [bgcolor=#FF0000]
+layer at (0,0) size 60x60
+  RenderBlock {DIV} at (0,0) size 60x60 [bgcolor=#0000FF33]
+layer at (95,145) size 50x50
+  RenderBlock (positioned) zI: 1 {DIV} at (95,145) size 50x50
+layer at (20,70) size 100x100
+  RenderBlock (positioned) {DIV} at (20,20) size 100x100 [bgcolor=#008000]
+layer at (200,100) size 50x50
+  RenderBlock (positioned) zI: 1 {DIV} at (200,100) size 50x50
+layer at (220,120) size 100x100
+  RenderBlock (positioned) {DIV} at (20,20) size 100x100 [bgcolor=#008000]
+layer at (400,100) size 50x50
+  RenderBlock (positioned) zI: 1 {DIV} at (400,100) size 50x50
+layer at (400,100) size 100x100
+  RenderBlock {DIV} at (0,0) size 100x100
+layer at (420,120) size 100x100
+  RenderBlock (positioned) {DIV} at (20,20) size 100x100 [bgcolor=#008000]
+scrolled to 0,50
diff --git a/LayoutTests/platform/gtk/compositing/geometry/fixed-position-expected.png b/LayoutTests/platform/gtk/compositing/geometry/fixed-position-expected.png
new file mode 100644
index 0000000..d86fd42
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/fixed-position-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/geometry/fixed-position-expected.txt b/LayoutTests/platform/gtk/compositing/geometry/fixed-position-expected.txt
new file mode 100644
index 0000000..6b1336b
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/fixed-position-expected.txt
@@ -0,0 +1,14 @@
+layer at (0,0) size 1008x1016
+  RenderView at (0,0) size 785x585
+layer at (0,0) size 785x1016
+  RenderBlock {HTML} at (0,0) size 785x1016
+    RenderBody {BODY} at (8,8) size 1000x1000
+layer at (50,166) size 439x17
+  RenderBlock (positioned) {P} at (50,166) size 439x17
+    RenderText {#text} at (0,0) size 439x17
+      text run at (0,0) width 439: "You should see a green square in the top left corner of an orange box."
+layer at (50,50) size 100x100
+  RenderBlock (positioned) {DIV} at (0,0) size 100x100 [bgcolor=#FFA500]
+layer at (50,50) size 50x50
+  RenderBlock {DIV} at (0,0) size 50x50 [bgcolor=#008000]
+scrolled to 50,50
diff --git a/LayoutTests/platform/gtk/compositing/geometry/horizontal-scroll-composited-expected.png b/LayoutTests/platform/gtk/compositing/geometry/horizontal-scroll-composited-expected.png
new file mode 100644
index 0000000..907fb73
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/horizontal-scroll-composited-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/geometry/horizontal-scroll-composited-expected.txt b/LayoutTests/platform/gtk/compositing/geometry/horizontal-scroll-composited-expected.txt
new file mode 100644
index 0000000..a51d9cd
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/horizontal-scroll-composited-expected.txt
@@ -0,0 +1,8 @@
+layer at (0,0) size 1014x822
+  RenderView at (0,0) size 785x585
+layer at (0,0) size 785x822
+  RenderBlock {HTML} at (0,0) size 785x822
+    RenderBody {BODY} at (8,8) size 600x806
+layer at (8,8) size 1006x806
+  RenderBlock {DIV} at (0,0) size 1006x806 [border: (3px solid #FF0000)]
+scrolled to 229,0
diff --git a/LayoutTests/platform/gtk/compositing/geometry/layer-due-to-layer-children-deep-expected.png b/LayoutTests/platform/gtk/compositing/geometry/layer-due-to-layer-children-deep-expected.png
new file mode 100644
index 0000000..a0d11f1
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/layer-due-to-layer-children-deep-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/geometry/layer-due-to-layer-children-deep-expected.txt b/LayoutTests/platform/gtk/compositing/geometry/layer-due-to-layer-children-deep-expected.txt
new file mode 100644
index 0000000..f4ffd7b
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/layer-due-to-layer-children-deep-expected.txt
@@ -0,0 +1,19 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x308
+  RenderBlock {HTML} at (0,0) size 800x308
+layer at (8,8) size 784x292
+  RenderBody {BODY} at (8,8) size 784x292
+layer at (8,8) size 342x292
+  RenderBlock (relative positioned) {DIV} at (0,0) size 342x292 [border: (1px solid #000000)]
+    RenderBlock (anonymous) at (21,21) size 300x17
+      RenderText {#text} at (0,0) size 174x17
+        text run at (0,0) width 174: "This content is in the parent"
+layer at (39,46) size 250x220
+  RenderBlock (relative positioned) {DIV} at (21,38) size 250x220 [bgcolor=#0000FF]
+layer at (49,56) size 200x200
+  RenderBlock (relative positioned) {DIV} at (0,0) size 200x200 [bgcolor=#FFFF00]
+layer at (149,56) size 250x100
+  RenderBlock (relative positioned) {DIV} at (0,0) size 250x100 [bgcolor=#008000]
+    RenderText {#text} at (0,0) size 182x17
+      text run at (0,0) width 182: "Box should have perspective"
diff --git a/LayoutTests/platform/gtk/compositing/geometry/layer-due-to-layer-children-expected.png b/LayoutTests/platform/gtk/compositing/geometry/layer-due-to-layer-children-expected.png
new file mode 100644
index 0000000..5b99229
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/layer-due-to-layer-children-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/geometry/layer-due-to-layer-children-expected.txt b/LayoutTests/platform/gtk/compositing/geometry/layer-due-to-layer-children-expected.txt
new file mode 100644
index 0000000..71dd71f
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/layer-due-to-layer-children-expected.txt
@@ -0,0 +1,15 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x208
+  RenderBlock {HTML} at (0,0) size 800x208
+layer at (8,8) size 784x192
+  RenderBody {BODY} at (8,8) size 784x192
+layer at (8,8) size 242x192
+  RenderBlock (relative positioned) {DIV} at (0,0) size 242x192 [border: (1px solid #000000)]
+    RenderBlock (anonymous) at (21,21) size 200x17
+      RenderText {#text} at (0,0) size 174x17
+        text run at (0,0) width 174: "This content is in the parent"
+layer at (129,46) size 250x100
+  RenderBlock (relative positioned) {DIV} at (21,38) size 250x100 [bgcolor=#008000]
+    RenderText {#text} at (0,0) size 182x17
+      text run at (0,0) width 182: "Box should have perspective"
diff --git a/LayoutTests/platform/gtk/compositing/geometry/outline-change-expected.png b/LayoutTests/platform/gtk/compositing/geometry/outline-change-expected.png
new file mode 100644
index 0000000..8934173
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/outline-change-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/geometry/outline-change-expected.txt b/LayoutTests/platform/gtk/compositing/geometry/outline-change-expected.txt
new file mode 100644
index 0000000..8d444da
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/outline-change-expected.txt
@@ -0,0 +1,13 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x253
+  RenderBlock {HTML} at (0,0) size 800x253
+    RenderBody {BODY} at (8,16) size 784x229
+      RenderBlock {P} at (0,0) size 784x17
+        RenderText {#text} at (0,0) size 299x17
+          text run at (0,0) width 299: "Adding outline should not affect layer positions"
+      RenderBlock {DIV} at (0,219) size 10x10
+layer at (58,83) size 102x102
+  RenderBlock (relative positioned) {DIV} at (50,67) size 102x102 [border: (1px solid #000000)]
+layer at (34,59) size 52x52
+  RenderBlock (positioned) {DIV} at (-24,-24) size 52x52 [border: (1px solid #0000FF)]
diff --git a/LayoutTests/platform/gtk/compositing/geometry/partial-layout-update-expected.png b/LayoutTests/platform/gtk/compositing/geometry/partial-layout-update-expected.png
new file mode 100644
index 0000000..2ac841d
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/partial-layout-update-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/geometry/partial-layout-update-expected.txt b/LayoutTests/platform/gtk/compositing/geometry/partial-layout-update-expected.txt
new file mode 100644
index 0000000..47284e6
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/partial-layout-update-expected.txt
@@ -0,0 +1,16 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x600
+  RenderBlock {HTML} at (0,0) size 800x600
+    RenderBody {BODY} at (8,8) size 784x584
+      RenderBlock {P} at (0,0) size 784x17
+        RenderText {#text} at (0,0) size 361x17
+          text run at (0,0) width 361: "The green box should always obscure the red box below."
+layer at (8,41) size 402x202 clip at (9,42) size 400x200
+  RenderBlock (relative positioned) {DIV} at (0,33) size 402x202 [border: (1px solid #000000)]
+layer at (9,42) size 200x200
+  RenderBlock (positioned) zI: 3 {DIV} at (1,1) size 200x200 [bgcolor=#BBBBBB]
+layer at (9,42) size 100x100
+  RenderBlock (positioned) {DIV} at (0,0) size 100x100 [bgcolor=#FF0000]
+layer at (9,42) size 100x100
+  RenderBlock {DIV} at (0,0) size 100x100 [bgcolor=#008000]
diff --git a/LayoutTests/platform/gtk/compositing/geometry/root-layer-update-expected.png b/LayoutTests/platform/gtk/compositing/geometry/root-layer-update-expected.png
new file mode 100644
index 0000000..612fb05
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/root-layer-update-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/geometry/root-layer-update-expected.txt b/LayoutTests/platform/gtk/compositing/geometry/root-layer-update-expected.txt
new file mode 100644
index 0000000..579bd5c
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/root-layer-update-expected.txt
@@ -0,0 +1,20 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x168
+  RenderBlock {HTML} at (0,0) size 800x168
+    RenderBody {BODY} at (100,0) size 600x152
+      RenderBlock {P} at (0,118) size 600x34
+        RenderInline {A} at (0,0) size 149x17 [color=#0000EE]
+          RenderText {#text} at (0,0) size 149x17
+            text run at (0,0) width 149: "rdar://problem/7026010"
+        RenderBR {BR} at (149,0) size 0x17
+        RenderText {#text} at (0,17) size 465x17
+          text run at (0,17) width 465: "Test for the root layer getting correctly positioned. You should see no red."
+layer at (350,1) size 100x100
+  RenderBlock (positioned) {DIV} at (350,1) size 100x100 [bgcolor=#FF0000]
+layer at (-100,0) size 300x100 backgroundClip at (0,0) size 800x600 clip at (0,0) size 800x600
+  RenderBlock (positioned) {DIV} at (-100,0) size 300x100 [bgcolor=#808080]
+layer at (100,0) size 600x102
+  RenderBlock (relative positioned) {DIV} at (0,0) size 600x102 [border: (1px solid #000000)]
+layer at (350,1) size 100x100
+  RenderBlock {DIV} at (250,1) size 100x100 [bgcolor=#008000]
diff --git a/LayoutTests/platform/gtk/compositing/geometry/transfrom-origin-on-zero-size-layer-expected.png b/LayoutTests/platform/gtk/compositing/geometry/transfrom-origin-on-zero-size-layer-expected.png
new file mode 100644
index 0000000..08de04d
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/transfrom-origin-on-zero-size-layer-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/geometry/transfrom-origin-on-zero-size-layer-expected.txt b/LayoutTests/platform/gtk/compositing/geometry/transfrom-origin-on-zero-size-layer-expected.txt
new file mode 100644
index 0000000..d8688f2
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/transfrom-origin-on-zero-size-layer-expected.txt
@@ -0,0 +1,17 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x600
+  RenderBlock {HTML} at (0,0) size 800x600
+    RenderBody {BODY} at (0,0) size 800x584
+      RenderBlock {P} at (0,0) size 800x17
+        RenderText {#text} at (0,0) size 31x17
+          text run at (0,0) width 31: "Bug "
+        RenderInline {A} at (0,0) size 40x17 [color=#0000EE]
+          RenderText {#text} at (31,0) size 40x17
+            text run at (31,0) width 40: "29495"
+        RenderText {#text} at (71,0) size 327x17
+          text run at (71,0) width 327: ". You should see one green box below, with no red."
+layer at (10,60) size 50x50
+  RenderBlock (positioned) {DIV} at (10,60) size 50x50 [bgcolor=#FF0000]
+layer at (10,10) size 100x100
+  RenderBlock (positioned) {DIV} at (0,0) size 100x100 [bgcolor=#008000]
diff --git a/LayoutTests/platform/gtk/compositing/geometry/vertical-scroll-composited-expected.png b/LayoutTests/platform/gtk/compositing/geometry/vertical-scroll-composited-expected.png
new file mode 100644
index 0000000..bdf9f09
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/vertical-scroll-composited-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/geometry/vertical-scroll-composited-expected.txt b/LayoutTests/platform/gtk/compositing/geometry/vertical-scroll-composited-expected.txt
new file mode 100644
index 0000000..999fcd0
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/vertical-scroll-composited-expected.txt
@@ -0,0 +1,8 @@
+layer at (0,0) size 962x1122
+  RenderView at (0,0) size 785x585
+layer at (0,0) size 785x616
+  RenderBlock {HTML} at (0,0) size 785x616
+    RenderBody {BODY} at (8,8) size 769x600
+layer at (8,8) size 806x1006
+  RenderBlock {DIV} at (0,0) size 806x1006 [border: (3px solid #FF0000)]
+scrolled to 0,200
diff --git a/LayoutTests/platform/gtk/compositing/geometry/video-fixed-scrolling-expected.png b/LayoutTests/platform/gtk/compositing/geometry/video-fixed-scrolling-expected.png
new file mode 100644
index 0000000..bfc972f
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/video-fixed-scrolling-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/geometry/video-fixed-scrolling-expected.txt b/LayoutTests/platform/gtk/compositing/geometry/video-fixed-scrolling-expected.txt
new file mode 100644
index 0000000..6b0c24b
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/video-fixed-scrolling-expected.txt
@@ -0,0 +1,15 @@
+layer at (0,0) size 785x1016
+  RenderView at (0,0) size 785x600
+layer at (0,0) size 785x1016
+  RenderBlock {HTML} at (0,0) size 785x1016
+    RenderBody {BODY} at (8,8) size 769x1000
+      RenderBlock (anonymous) at (0,0) size 769x383
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {P} at (0,399) size 769x17
+        RenderText {#text} at (0,0) size 445x17
+          text run at (0,0) width 445: "The blue bar should be in front of the video, and at the top of the page."
+layer at (8,88) size 400x300
+  RenderVideo {VIDEO} at (0,80) size 400x300
+layer at (0,50) size 500x60
+  RenderBlock (positioned) {DIV} at (0,0) size 500x60 [bgcolor=#0000FFCC]
+scrolled to 0,50
diff --git a/LayoutTests/platform/gtk/compositing/geometry/video-opacity-overlay-expected.png b/LayoutTests/platform/gtk/compositing/geometry/video-opacity-overlay-expected.png
new file mode 100644
index 0000000..370a912
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/video-opacity-overlay-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/geometry/video-opacity-overlay-expected.txt b/LayoutTests/platform/gtk/compositing/geometry/video-opacity-overlay-expected.txt
new file mode 100644
index 0000000..1a630fc
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/geometry/video-opacity-overlay-expected.txt
@@ -0,0 +1,18 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x359
+  RenderBlock {HTML} at (0,0) size 800x359
+    RenderBody {BODY} at (8,16) size 784x335
+      RenderBlock {P} at (0,0) size 784x17
+        RenderText {#text} at (0,0) size 294x17
+          text run at (0,0) width 294: "The orange bar should be in front of the video."
+layer at (8,49) size 402x302
+  RenderBlock (relative positioned) {DIV} at (0,33) size 402x302 [border: (1px solid #000000)]
+    RenderBlock (anonymous) at (1,1) size 400x303
+      RenderText {#text} at (0,0) size 0x0
+layer at (9,50) size 400x300
+  RenderVideo {VIDEO} at (0,0) size 400x300
+layer at (9,353) size 10x10
+  RenderBlock {DIV} at (1,304) size 10x10 [bgcolor=#008000]
+layer at (9,290) size 400x60
+  RenderBlock (positioned) {DIV} at (1,241) size 400x60 [bgcolor=#FFA500]
diff --git a/LayoutTests/platform/gtk/compositing/iframes/composited-iframe-alignment-expected.png b/LayoutTests/platform/gtk/compositing/iframes/composited-iframe-alignment-expected.png
new file mode 100644
index 0000000..dcb2821
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/iframes/composited-iframe-alignment-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/iframes/composited-iframe-alignment-expected.txt b/LayoutTests/platform/gtk/compositing/iframes/composited-iframe-alignment-expected.txt
new file mode 100644
index 0000000..c86e952
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/iframes/composited-iframe-alignment-expected.txt
@@ -0,0 +1,22 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x67
+  RenderBlock {HTML} at (0,0) size 800x67
+    RenderBody {BODY} at (8,8) size 784x51
+      RenderText {#text} at (0,0) size 770x34
+        text run at (0,0) width 594: "Simple test of composited iframe content. There should be a blue box with a gray background "
+        text run at (594,0) width 176: "inside the black border. The"
+        text run at (0,17) width 384: "gray background should fit perfectly within the block border "
+        text run at (384,17) width 89: "with no gaps. "
+      RenderBR {BR} at (0,0) size 0x0
+      RenderBR {BR} at (0,34) size 0x17
+      RenderText {#text} at (0,0) size 0x0
+layer at (100,100) size 440x340
+  RenderIFrame {IFRAME} at (100,100) size 440x340 [border: (20px solid #000000)]
+    layer at (0,0) size 400x300
+      RenderView at (0,0) size 400x300
+    layer at (0,0) size 400x230
+      RenderBlock {HTML} at (0,0) size 400x230
+        RenderBody {BODY} at (8,10) size 384x210 [bgcolor=#C0C0C0]
+    layer at (18,10) size 210x210
+      RenderBlock {DIV} at (10,0) size 210x210 [bgcolor=#0000FF]
diff --git a/LayoutTests/platform/gtk/compositing/iframes/iframe-copy-on-scroll-expected.png b/LayoutTests/platform/gtk/compositing/iframes/iframe-copy-on-scroll-expected.png
new file mode 100644
index 0000000..7cfffb7
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/iframes/iframe-copy-on-scroll-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/iframes/iframe-copy-on-scroll-expected.txt b/LayoutTests/platform/gtk/compositing/iframes/iframe-copy-on-scroll-expected.txt
new file mode 100644
index 0000000..3e0d1dd
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/iframes/iframe-copy-on-scroll-expected.txt
@@ -0,0 +1,18 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x49
+  RenderBlock {HTML} at (0,0) size 800x49
+    RenderBody {BODY} at (8,16) size 784x17
+      RenderBlock {P} at (0,0) size 784x17
+        RenderText {#text} at (0,0) size 376x17
+          text run at (0,0) width 376: "In pixel results, the blue box should be scrolled out of view."
+layer at (8,49) size 324x227
+  RenderBlock (positioned) zI: 1 {DIV} at (8,49) size 324x227
+    RenderIFrame {IFRAME} at (10,10) size 304x204 [border: (2px inset #000000)]
+      layer at (0,0) size 285x1018
+        RenderView at (0,0) size 285x200
+      layer at (0,0) size 285x1018
+        RenderBlock {HTML} at (0,0) size 285x1018
+          RenderBody {BODY} at (8,10) size 269x1000 [bgcolor=#C0C0C0]
+            RenderBlock {DIV} at (10,0) size 110x110 [bgcolor=#0000FF]
+    RenderText zI: 1 {#text} at (0,0) size 0x0
diff --git a/LayoutTests/platform/gtk/compositing/iframes/iframe-in-composited-layer-expected.png b/LayoutTests/platform/gtk/compositing/iframes/iframe-in-composited-layer-expected.png
new file mode 100644
index 0000000..5998b28
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/iframes/iframe-in-composited-layer-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/iframes/iframe-in-composited-layer-expected.txt b/LayoutTests/platform/gtk/compositing/iframes/iframe-in-composited-layer-expected.txt
new file mode 100644
index 0000000..cd94576
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/iframes/iframe-in-composited-layer-expected.txt
@@ -0,0 +1,18 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x600
+  RenderBlock {HTML} at (0,0) size 800x600
+    RenderBody {BODY} at (8,8) size 784x584
+layer at (8,8) size 400x400
+  RenderBlock {DIV} at (0,0) size 400x400 [bgcolor=#FFFFE0]
+    RenderIFrame {IFRAME} at (7,7) size 386x386 [border: (3px solid #000000)]
+      layer at (0,0) size 900x900
+        RenderView at (0,0) size 365x365
+      layer at (0,0) size 900x900
+        RenderBlock (relative positioned) {HTML} at (0,0) size 900x900
+          RenderBody {BODY} at (8,8) size 884x349
+      layer at (0,0) size 100x100
+        RenderBlock (positioned) {DIV} at (0,0) size 100x100 [bgcolor=#FF0000]
+      layer at (800,800) size 100x100
+        RenderBlock (positioned) {DIV} at (800,800) size 100x100 [bgcolor=#008000]
+    RenderText {#text} at (0,0) size 0x0
diff --git a/LayoutTests/platform/gtk/compositing/iframes/invisible-nested-iframe-show-expected.txt b/LayoutTests/platform/gtk/compositing/iframes/invisible-nested-iframe-show-expected.txt
new file mode 100644
index 0000000..d3046b9c
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/iframes/invisible-nested-iframe-show-expected.txt
@@ -0,0 +1,97 @@
+
+(GraphicsLayer
+  (anchor 0.00 0.00)
+  (bounds 800.00 600.00)
+  (children 1
+    (GraphicsLayer
+      (bounds 800.00 600.00)
+      (contentsOpaque 1)
+      (children 2
+        (GraphicsLayer
+          (bounds 366.00 216.00)
+          (drawsContent 1)
+          (children 1
+            (GraphicsLayer
+              (position 23.00 23.00)
+              (children 2
+                (GraphicsLayer
+                  (anchor 0.00 0.00)
+                  (bounds 285.00 150.00)
+                  (children 1
+                    (GraphicsLayer
+                      (children 1
+                        (GraphicsLayer
+                          (anchor 0.00 0.00)
+                          (bounds 285.00 191.00)
+                          (children 1
+                            (GraphicsLayer
+                              (bounds 285.00 191.00)
+                              (drawsContent 1)
+                              (children 1
+                                (GraphicsLayer
+                                  (position 8.00 8.00)
+                                  (bounds 252.00 172.00)
+                                  (drawsContent 1)
+                                  (children 1
+                                    (GraphicsLayer
+                                      (position 1.00 1.00)
+                                      (children 1
+                                        (GraphicsLayer
+                                          (anchor 0.00 0.00)
+                                          (bounds 250.00 170.00)
+                                          (children 1
+                                            (GraphicsLayer
+                                              (children 1
+                                                (GraphicsLayer
+                                                  (anchor 0.00 0.00)
+                                                  (bounds 250.00 230.00)
+                                                  (children 1
+                                                    (GraphicsLayer
+                                                      (bounds 250.00 230.00)
+                                                      (drawsContent 1)
+                                                      (children 1
+                                                        (GraphicsLayer
+                                                          (position 18.00 10.00)
+                                                          (bounds 210.00 210.00)
+                                                          (contentsOpaque 1)
+                                                        )
+                                                      )
+                                                    )
+                                                  )
+                                                )
+                                              )
+                                            )
+                                          )
+                                        )
+                                      )
+                                    )
+                                  )
+                                )
+                              )
+                            )
+                          )
+                        )
+                      )
+                    )
+                  )
+                )
+                (GraphicsLayer
+                  (position 285.00 0.00)
+                  (bounds 15.00 150.00)
+                  (drawsContent 1)
+                )
+              )
+            )
+          )
+        )
+        (GraphicsLayer
+          (position 18.00 201.00)
+          (bounds 210.00 210.00)
+          (contentsOpaque 1)
+          (transform [1.00 0.00 0.00 0.00] [0.00 1.00 0.00 0.00] [0.00 0.00 1.00 0.00] [0.00 0.00 1.00 1.00])
+        )
+      )
+    )
+  )
+)
+
diff --git a/LayoutTests/platform/gtk/compositing/iframes/resizer-expected.txt b/LayoutTests/platform/gtk/compositing/iframes/resizer-expected.txt
new file mode 100644
index 0000000..5b692a4
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/iframes/resizer-expected.txt
@@ -0,0 +1,58 @@
+
+(GraphicsLayer
+  (anchor 0.00 0.00)
+  (bounds 800.00 600.00)
+  (children 1
+    (GraphicsLayer
+      (bounds 800.00 600.00)
+      (contentsOpaque 1)
+      (children 1
+        (GraphicsLayer
+          (position 8.00 8.00)
+          (bounds 304.00 154.00)
+          (drawsContent 1)
+          (children 1
+            (GraphicsLayer
+              (position 2.00 2.00)
+              (children 2
+                (GraphicsLayer
+                  (anchor 0.00 0.00)
+                  (bounds 285.00 150.00)
+                  (children 1
+                    (GraphicsLayer
+                      (children 1
+                        (GraphicsLayer
+                          (anchor 0.00 0.00)
+                          (bounds 285.00 230.00)
+                          (children 1
+                            (GraphicsLayer
+                              (bounds 285.00 230.00)
+                              (drawsContent 1)
+                              (children 1
+                                (GraphicsLayer
+                                  (position 18.00 10.00)
+                                  (bounds 210.00 210.00)
+                                  (contentsOpaque 1)
+                                )
+                              )
+                            )
+                          )
+                        )
+                      )
+                    )
+                  )
+                )
+                (GraphicsLayer
+                  (position 285.00 0.00)
+                  (bounds 15.00 150.00)
+                  (drawsContent 1)
+                )
+              )
+            )
+          )
+        )
+      )
+    )
+  )
+)
+
diff --git a/LayoutTests/platform/gtk/compositing/images/direct-image-background-color-expected.png b/LayoutTests/platform/gtk/compositing/images/direct-image-background-color-expected.png
new file mode 100644
index 0000000..34a1a32
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/images/direct-image-background-color-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/images/direct-image-background-color-expected.txt b/LayoutTests/platform/gtk/compositing/images/direct-image-background-color-expected.txt
new file mode 100644
index 0000000..70341e0
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/images/direct-image-background-color-expected.txt
@@ -0,0 +1,11 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x600
+  RenderBlock {HTML} at (0,0) size 800x600
+    RenderBody {BODY} at (8,20) size 784x564
+      RenderImage {IMG} at (20,0) size 280x200 [bgcolor=#0000807F]
+      RenderBlock {P} at (0,440) size 784x17
+        RenderText {#text} at (0,0) size 242x17
+          text run at (0,0) width 242: "Top and bottom should look the same."
+layer at (28,240) size 280x200
+  RenderImage {IMG} at (20,220) size 280x200 [bgcolor=#0000807F]
diff --git a/LayoutTests/platform/gtk/compositing/layer-creation/fixed-position-scroll-expected.png b/LayoutTests/platform/gtk/compositing/layer-creation/fixed-position-scroll-expected.png
new file mode 100644
index 0000000..fb3e1c2
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/layer-creation/fixed-position-scroll-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/layer-creation/fixed-position-scroll-expected.txt b/LayoutTests/platform/gtk/compositing/layer-creation/fixed-position-scroll-expected.txt
new file mode 100644
index 0000000..633c8cf
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/layer-creation/fixed-position-scroll-expected.txt
@@ -0,0 +1 @@
+For this test to pass, you should not see a red line when scroll position is less or equal to 64px from the top.
diff --git a/LayoutTests/platform/gtk/compositing/layer-creation/overlap-animation-container-expected.txt b/LayoutTests/platform/gtk/compositing/layer-creation/overlap-animation-container-expected.txt
new file mode 100644
index 0000000..9e6bb60
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/layer-creation/overlap-animation-container-expected.txt
@@ -0,0 +1,94 @@
+Before:
+(GraphicsLayer
+  (anchor 0.00 0.00)
+  (bounds 785.00 802.00)
+  (children 1
+    (GraphicsLayer
+      (bounds 785.00 802.00)
+      (contentsOpaque 1)
+      (children 3
+        (GraphicsLayer
+          (position 18.00 120.00)
+          (bounds 100.00 100.00)
+          (contentsOpaque 1)
+          (transform [1.00 0.00 0.00 0.00] [0.00 1.00 0.00 0.00] [0.00 0.00 1.00 0.00] [0.00 -110.00 0.00 1.00])
+        )
+        (GraphicsLayer
+          (position 46.00 230.00)
+          (bounds 146.00 452.00)
+          (drawsContent 1)
+          (children 1
+            (GraphicsLayer
+              (position 23.00 11.00)
+              (bounds 100.00 100.00)
+              (contentsOpaque 1)
+              (transform [1.00 0.00 0.00 0.00] [0.00 1.00 0.00 0.00] [0.00 0.00 1.00 0.00] [0.00 0.00 -1.00 1.00])
+            )
+          )
+        )
+        (GraphicsLayer
+          (position 18.00 692.00)
+          (bounds 100.00 100.00)
+          (contentsOpaque 1)
+        )
+      )
+    )
+  )
+)
+
+After:
+(GraphicsLayer
+  (anchor 0.00 0.00)
+  (bounds 785.00 802.00)
+  (children 1
+    (GraphicsLayer
+      (bounds 785.00 802.00)
+      (contentsOpaque 1)
+      (children 3
+        (GraphicsLayer
+          (position 18.00 120.00)
+          (bounds 100.00 100.00)
+          (contentsOpaque 1)
+          (transform [1.00 0.00 0.00 0.00] [0.00 1.00 0.00 0.00] [0.00 0.00 1.00 0.00] [0.00 -110.00 0.00 1.00])
+        )
+        (GraphicsLayer
+          (position 58.00 230.00)
+          (bounds 122.00 452.00)
+          (contentsOpaque 1)
+          (drawsContent 1)
+          (children 4
+            (GraphicsLayer
+              (position 11.00 11.00)
+              (bounds 100.00 100.00)
+              (contentsOpaque 1)
+              (transform [1.00 0.00 0.00 0.00] [0.00 1.00 0.00 0.00] [0.00 0.00 1.00 0.00] [0.00 0.00 -1.00 1.00])
+            )
+            (GraphicsLayer
+              (position 10.00 120.00)
+              (bounds 102.00 102.00)
+              (drawsContent 1)
+              (transform [0.71 0.71 0.00 0.00] [-0.71 0.71 0.00 0.00] [0.00 0.00 1.00 0.00] [0.00 0.00 0.00 1.00])
+            )
+            (GraphicsLayer
+              (position 10.00 230.00)
+              (bounds 102.00 102.00)
+              (drawsContent 1)
+              (transform [0.71 0.71 0.00 0.00] [-0.71 0.71 0.00 0.00] [0.00 0.00 1.00 0.00] [0.00 0.00 0.00 1.00])
+            )
+            (GraphicsLayer
+              (position 10.00 340.00)
+              (bounds 102.00 102.00)
+              (drawsContent 1)
+            )
+          )
+        )
+        (GraphicsLayer
+          (position 18.00 692.00)
+          (bounds 100.00 100.00)
+          (contentsOpaque 1)
+        )
+      )
+    )
+  )
+)
+
diff --git a/LayoutTests/platform/gtk/compositing/layer-creation/overlap-animation-expected.txt b/LayoutTests/platform/gtk/compositing/layer-creation/overlap-animation-expected.txt
new file mode 100644
index 0000000..c13f820
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/layer-creation/overlap-animation-expected.txt
@@ -0,0 +1,36 @@
+(GraphicsLayer
+  (anchor 0.00 0.00)
+  (bounds 800.00 600.00)
+  (children 1
+    (GraphicsLayer
+      (bounds 800.00 600.00)
+      (contentsOpaque 1)
+      (children 1
+        (GraphicsLayer
+          (position 8.00 8.00)
+          (bounds 122.00 242.00)
+          (drawsContent 1)
+          (children 1
+            (GraphicsLayer
+              (position 1.00 1.00)
+              (bounds 120.00 240.00)
+              (children 2
+                (GraphicsLayer
+                  (position 10.00 10.00)
+                  (bounds 100.00 100.00)
+                  (contentsOpaque 1)
+                )
+                (GraphicsLayer
+                  (position 10.00 120.00)
+                  (bounds 100.00 100.00)
+                  (contentsOpaque 1)
+                )
+              )
+            )
+          )
+        )
+      )
+    )
+  )
+)
+
diff --git a/LayoutTests/platform/gtk/compositing/layer-creation/will-change-layer-creation-expected.txt b/LayoutTests/platform/gtk/compositing/layer-creation/will-change-layer-creation-expected.txt
new file mode 100644
index 0000000..c0cb5e4
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/layer-creation/will-change-layer-creation-expected.txt
@@ -0,0 +1,53 @@
+transform opacity transform, background transform, opacity -webkit-filter
+opacity
+transform
+-webkit-filter
+transform-style
+perspective
+background, clip-path, position, z-index, -webkit-mask
+(GraphicsLayer
+  (anchor 0.00 0.00)
+  (bounds 800.00 600.00)
+  (children 1
+    (GraphicsLayer
+      (bounds 800.00 600.00)
+      (contentsOpaque 1)
+      (children 6
+        (GraphicsLayer
+          (position 102.00 8.00)
+          (bounds 50.00 17.00)
+          (drawsContent 1)
+        )
+        (GraphicsLayer
+          (position 339.00 8.00)
+          (bounds 118.00 17.00)
+          (drawsContent 1)
+        )
+        (GraphicsLayer
+          (position 477.00 8.00)
+          (bounds 82.00 17.00)
+          (drawsContent 1)
+        )
+        (GraphicsLayer
+          (position 18.00 35.00)
+          (bounds 764.00 17.00)
+          (contentsOpaque 1)
+          (drawsContent 1)
+        )
+        (GraphicsLayer
+          (position 18.00 62.00)
+          (bounds 764.00 17.00)
+          (contentsOpaque 1)
+          (drawsContent 1)
+        )
+        (GraphicsLayer
+          (position 18.00 89.00)
+          (bounds 764.00 17.00)
+          (contentsOpaque 1)
+          (drawsContent 1)
+        )
+      )
+    )
+  )
+)
+
diff --git a/LayoutTests/platform/gtk/compositing/layer-creation/will-change-on-normal-flow-content-expected.txt b/LayoutTests/platform/gtk/compositing/layer-creation/will-change-on-normal-flow-content-expected.txt
new file mode 100644
index 0000000..8799c16
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/layer-creation/will-change-on-normal-flow-content-expected.txt
@@ -0,0 +1,28 @@
+opacity
+mask
+backdrop-filter
+filter
+clip-path
+(GraphicsLayer
+(anchor 0.00 0.00)
+(bounds 800.00 600.00)
+(children 1
+(GraphicsLayer
+(bounds 800.00 600.00)
+(contentsOpaque 1)
+(children 2
+(GraphicsLayer
+(position 8.00 8.00)
+(bounds 784.00 17.00)
+(drawsContent 1)
+)
+(GraphicsLayer
+(position 8.00 59.00)
+(bounds 784.00 17.00)
+(drawsContent 1)
+)
+)
+)
+)
+)
+
diff --git a/LayoutTests/platform/gtk/compositing/layers-inside-overflow-scroll-expected.png b/LayoutTests/platform/gtk/compositing/layers-inside-overflow-scroll-expected.png
new file mode 100644
index 0000000..5f63bfa
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/layers-inside-overflow-scroll-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/layers-inside-overflow-scroll-expected.txt b/LayoutTests/platform/gtk/compositing/layers-inside-overflow-scroll-expected.txt
new file mode 100644
index 0000000..1f95af1
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/layers-inside-overflow-scroll-expected.txt
@@ -0,0 +1,15 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x426
+  RenderBlock {HTML} at (0,0) size 800x426
+    RenderBody {BODY} at (8,16) size 784x400
+      RenderBlock {P} at (0,0) size 784x17
+        RenderText {#text} at (0,0) size 437x17
+          text run at (0,0) width 437: "The red box in the overflow:scroll div should be scrolled out of view."
+      RenderBlock {DIV} at (10,33) size 302x205 [border: (1px solid #000000)]
+        RenderText {#text} at (0,0) size 0x0
+layer at (19,50) size 300x200
+  RenderVideo {VIDEO} at (1,1) size 300x200
+layer at (18,264) size 302x152 clip at (19,265) size 285x150 scrollY 100 scrollHeight 500
+  RenderBlock {DIV} at (10,248) size 302x152 [border: (1px solid #000000)]
+    RenderBlock {DIV} at (1,1) size 285x500
diff --git a/LayoutTests/platform/gtk/compositing/masks/direct-image-mask-expected.png b/LayoutTests/platform/gtk/compositing/masks/direct-image-mask-expected.png
new file mode 100644
index 0000000..2b10e0c
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/masks/direct-image-mask-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/masks/direct-image-mask-expected.txt b/LayoutTests/platform/gtk/compositing/masks/direct-image-mask-expected.txt
new file mode 100644
index 0000000..fef299c
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/masks/direct-image-mask-expected.txt
@@ -0,0 +1,16 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x600
+  RenderBlock {HTML} at (0,0) size 800x600
+    RenderBody {BODY} at (8,8) size 784x584
+      RenderBlock {P} at (0,0) size 784x17
+        RenderText {#text} at (0,0) size 581x17
+          text run at (0,0) width 581: "Testing reflections on directly composited images. Left and right sides should look the same."
+      RenderBlock (anonymous) at (0,33) size 784x167
+        RenderText {#text} at (224,150) size 4x17
+          text run at (224,150) width 4: " "
+        RenderText {#text} at (0,0) size 0x0
+layer at (28,61) size 184x124
+  RenderImage {IMG} at (20,20) size 184x124
+layer at (256,61) size 184x124
+  RenderImage {IMG} at (248,20) size 184x124
diff --git a/LayoutTests/platform/gtk/compositing/masks/masked-ancestor-expected.png b/LayoutTests/platform/gtk/compositing/masks/masked-ancestor-expected.png
new file mode 100644
index 0000000..b60bf41
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/masks/masked-ancestor-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/masks/masked-ancestor-expected.txt b/LayoutTests/platform/gtk/compositing/masks/masked-ancestor-expected.txt
new file mode 100644
index 0000000..28950e6
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/masks/masked-ancestor-expected.txt
@@ -0,0 +1,20 @@
+layer at (0,0) size 785x614
+  RenderView at (0,0) size 785x600
+layer at (0,0) size 785x614
+  RenderBlock {HTML} at (0,0) size 785x614
+    RenderBody {BODY} at (8,8) size 769x598
+      RenderBlock {P} at (0,0) size 769x17
+        RenderText {#text} at (0,0) size 524x17
+          text run at (0,0) width 524: "Testing masks on compositing layers. Left and right columns should look the same."
+      RenderBlock (anonymous) at (0,33) size 769x565
+        RenderText {#text} at (262,548) size 4x17
+          text run at (262,548) width 4: " "
+        RenderText {#text} at (0,0) size 0x0
+layer at (8,41) size 262x562
+  RenderBlock {DIV} at (0,0) size 262x562 [border: (1px solid #000000)]
+layer at (39,72) size 200x200
+  RenderBlock (relative positioned) {DIV} at (31,31) size 200x200 [bgcolor=#6464FFCC] [border: (10px solid #000000)]
+layer at (274,41) size 262x562
+  RenderBlock {DIV} at (266,0) size 262x562 [border: (1px solid #000000)]
+layer at (305,72) size 200x200
+  RenderBlock (relative positioned) {DIV} at (31,31) size 200x200 [bgcolor=#6464FFCC] [border: (10px solid #000000)]
diff --git a/LayoutTests/platform/gtk/compositing/masks/multiple-masks-expected.png b/LayoutTests/platform/gtk/compositing/masks/multiple-masks-expected.png
new file mode 100644
index 0000000..6eaa75d
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/masks/multiple-masks-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/masks/multiple-masks-expected.txt b/LayoutTests/platform/gtk/compositing/masks/multiple-masks-expected.txt
new file mode 100644
index 0000000..3e15345
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/masks/multiple-masks-expected.txt
@@ -0,0 +1,18 @@
+layer at (0,0) size 785x614
+  RenderView at (0,0) size 785x600
+layer at (0,0) size 785x614
+  RenderBlock {HTML} at (0,0) size 785x614
+    RenderBody {BODY} at (8,8) size 769x598
+      RenderBlock {P} at (0,0) size 769x17
+        RenderText {#text} at (0,0) size 524x17
+          text run at (0,0) width 524: "Testing masks on compositing layers. Left and right columns should look the same."
+      RenderBlock (anonymous) at (0,33) size 769x565
+        RenderBlock {DIV} at (0,0) size 262x562 [border: (1px solid #000000)]
+        RenderText {#text} at (262,548) size 4x17
+          text run at (262,548) width 4: " "
+        RenderBlock {DIV} at (266,0) size 262x562 [border: (1px solid #000000)]
+        RenderText {#text} at (0,0) size 0x0
+layer at (39,72) size 200x200
+  RenderBlock (relative positioned) {DIV} at (31,31) size 200x200 [bgcolor=#6464FFCC] [border: (10px solid #000000)]
+layer at (305,72) size 200x200
+  RenderBlock (relative positioned) {DIV} at (31,31) size 200x200 [bgcolor=#6464FFCC] [border: (10px solid #000000)]
diff --git a/LayoutTests/platform/gtk/compositing/masks/simple-composited-mask-expected.png b/LayoutTests/platform/gtk/compositing/masks/simple-composited-mask-expected.png
new file mode 100644
index 0000000..4d7d8b1
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/masks/simple-composited-mask-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/masks/simple-composited-mask-expected.txt b/LayoutTests/platform/gtk/compositing/masks/simple-composited-mask-expected.txt
new file mode 100644
index 0000000..ae6a695
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/masks/simple-composited-mask-expected.txt
@@ -0,0 +1,22 @@
+layer at (0,0) size 785x614
+  RenderView at (0,0) size 785x600
+layer at (0,0) size 785x614
+  RenderBlock {HTML} at (0,0) size 785x614
+    RenderBody {BODY} at (8,8) size 769x598
+      RenderBlock {P} at (0,0) size 769x17
+        RenderText {#text} at (0,0) size 524x17
+          text run at (0,0) width 524: "Testing masks on compositing layers. Left and right columns should look the same."
+      RenderBlock (anonymous) at (0,33) size 769x565
+        RenderBlock {DIV} at (0,0) size 262x562 [border: (1px solid #000000)]
+        RenderText {#text} at (262,548) size 4x17
+          text run at (262,548) width 4: " "
+        RenderBlock {DIV} at (266,0) size 262x562 [border: (1px solid #000000)]
+        RenderText {#text} at (0,0) size 0x0
+layer at (39,72) size 200x200
+  RenderBlock (relative positioned) {DIV} at (31,31) size 200x200 [bgcolor=#6464FFCC] [border: (10px solid #000000)]
+layer at (39,302) size 200x200
+  RenderBlock (relative positioned) {DIV} at (31,261) size 200x200 [bgcolor=#6464FFCC] [border: (10px solid #000000)]
+layer at (305,72) size 200x200
+  RenderBlock (relative positioned) {DIV} at (31,31) size 200x200 [bgcolor=#6464FFCC] [border: (10px solid #000000)]
+layer at (305,302) size 200x200
+  RenderBlock (relative positioned) {DIV} at (31,261) size 200x200 [bgcolor=#6464FFCC] [border: (10px solid #000000)]
diff --git a/LayoutTests/platform/gtk/compositing/media-controls-bar-appearance-expected.txt b/LayoutTests/platform/gtk/compositing/media-controls-bar-appearance-expected.txt
new file mode 100644
index 0000000..a7a5d1f
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/media-controls-bar-appearance-expected.txt
@@ -0,0 +1,27 @@
+These elements should not get their own layers.
+
+These elements explicitly request layers.
+
+(GraphicsLayer
+  (anchor 0.00 0.00)
+  (bounds 800.00 600.00)
+  (children 1
+    (GraphicsLayer
+      (bounds 800.00 600.00)
+      (contentsOpaque 1)
+      (children 2
+        (GraphicsLayer
+          (position 8.00 298.00)
+          (bounds 100.00 100.00)
+          (drawsContent 1)
+        )
+        (GraphicsLayer
+          (position 8.00 398.00)
+          (bounds 100.00 100.00)
+          (drawsContent 1)
+        )
+      )
+    )
+  )
+)
+
diff --git a/LayoutTests/platform/gtk/compositing/overflow/composited-scrolling-creates-a-stacking-container-expected.txt b/LayoutTests/platform/gtk/compositing/overflow/composited-scrolling-creates-a-stacking-container-expected.txt
new file mode 100644
index 0000000..9eda6e1
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/overflow/composited-scrolling-creates-a-stacking-container-expected.txt
@@ -0,0 +1,56 @@
+(GraphicsLayer
+  (anchor 0.00 0.00)
+  (bounds 800.00 600.00)
+  (children 1
+    (GraphicsLayer
+      (bounds 800.00 600.00)
+      (contentsOpaque 1)
+      (children 1
+        (GraphicsLayer
+          (position 28.00 20.00)
+          (bounds 202.00 202.00)
+          (drawsContent 1)
+          (children 4
+            (GraphicsLayer
+              (position 1.00 1.00)
+              (bounds 185.00 185.00)
+              (children 1
+                (GraphicsLayer
+                  (bounds 200.00 300.00)
+                  (drawsContent 1)
+                  (children 2
+                    (GraphicsLayer
+                      (bounds 200.00 300.00)
+                      (drawsContent 1)
+                    )
+                    (GraphicsLayer
+                      (bounds 200.00 150.00)
+                      (contentsOpaque 1)
+                    )
+                  )
+                )
+              )
+            )
+            (GraphicsLayer
+              (position 1.00 186.00)
+              (bounds 185.00 15.00)
+              (drawsContent 1)
+            )
+            (GraphicsLayer
+              (position 186.00 1.00)
+              (bounds 15.00 185.00)
+              (drawsContent 1)
+            )
+            (GraphicsLayer
+              (position 186.00 186.00)
+              (bounds 15.00 15.00)
+              (drawsContent 1)
+            )
+          )
+        )
+      )
+    )
+  )
+)
+
+
diff --git a/LayoutTests/platform/gtk/compositing/overflow/composited-scrolling-paint-phases-expected.txt b/LayoutTests/platform/gtk/compositing/overflow/composited-scrolling-paint-phases-expected.txt
new file mode 100644
index 0000000..621be23
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/overflow/composited-scrolling-paint-phases-expected.txt
@@ -0,0 +1,96 @@
+(GraphicsLayer
+  (anchor 0.00 0.00)
+  (bounds 800.00 600.00)
+  (paintingPhases
+    GraphicsLayerPaintBackground
+    GraphicsLayerPaintForeground
+  )
+  (children 1
+    (GraphicsLayer
+      (bounds 800.00 600.00)
+      (contentsOpaque 1)
+      (paintingPhases
+        GraphicsLayerPaintBackground
+        GraphicsLayerPaintForeground
+      )
+      (children 1
+        (GraphicsLayer
+          (position 28.00 20.00)
+          (bounds 202.00 202.00)
+          (drawsContent 1)
+          (paintingPhases
+            GraphicsLayerPaintBackground
+            GraphicsLayerPaintCompositedScroll
+          )
+          (children 4
+            (GraphicsLayer
+              (position 1.00 1.00)
+              (bounds 185.00 185.00)
+              (paintingPhases
+                GraphicsLayerPaintBackground
+                GraphicsLayerPaintForeground
+              )
+              (children 1
+                (GraphicsLayer
+                  (bounds 185.00 715.00)
+                  (drawsContent 1)
+                  (paintingPhases
+                    GraphicsLayerPaintOverflowContents
+                    GraphicsLayerPaintCompositedScroll
+                  )
+                  (children 2
+                    (GraphicsLayer
+                      (position 0.00 10.00)
+                      (bounds 80.00 10.00)
+                      (contentsOpaque 1)
+                      (paintingPhases
+                        GraphicsLayerPaintBackground
+                        GraphicsLayerPaintForeground
+                      )
+                    )
+                    (GraphicsLayer
+                      (bounds 185.00 715.00)
+                      (drawsContent 1)
+                      (paintingPhases
+                        GraphicsLayerPaintForeground
+                      )
+                    )
+                  )
+                )
+              )
+            )
+            (GraphicsLayer
+              (position 1.00 186.00)
+              (bounds 185.00 15.00)
+              (drawsContent 1)
+              (paintingPhases
+                GraphicsLayerPaintBackground
+                GraphicsLayerPaintForeground
+              )
+            )
+            (GraphicsLayer
+              (position 186.00 1.00)
+              (bounds 15.00 185.00)
+              (drawsContent 1)
+              (paintingPhases
+                GraphicsLayerPaintBackground
+                GraphicsLayerPaintForeground
+              )
+            )
+            (GraphicsLayer
+              (position 186.00 186.00)
+              (bounds 15.00 15.00)
+              (drawsContent 1)
+              (paintingPhases
+                GraphicsLayerPaintBackground
+                GraphicsLayerPaintForeground
+              )
+            )
+          )
+        )
+      )
+    )
+  )
+)
+
+
diff --git a/LayoutTests/platform/gtk/compositing/overflow/fixed-position-ancestor-clip-expected.png b/LayoutTests/platform/gtk/compositing/overflow/fixed-position-ancestor-clip-expected.png
new file mode 100644
index 0000000..6554935
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/overflow/fixed-position-ancestor-clip-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/overflow/fixed-position-ancestor-clip-expected.txt b/LayoutTests/platform/gtk/compositing/overflow/fixed-position-ancestor-clip-expected.txt
new file mode 100644
index 0000000..400c9fa
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/overflow/fixed-position-ancestor-clip-expected.txt
@@ -0,0 +1,14 @@
+layer at (0,0) size 1008x1016
+  RenderView at (0,0) size 785x585
+layer at (0,0) size 785x1016
+  RenderBlock {HTML} at (0,0) size 785x1016
+    RenderBody {BODY} at (8,8) size 1000x1000
+layer at (50,166) size 318x17
+  RenderBlock (positioned) {P} at (50,166) size 318x17
+    RenderText {#text} at (0,0) size 318x17
+      text run at (0,0) width 318: "You should see a single green square, with no red."
+layer at (58,58) size 100x100
+  RenderBlock (positioned) {DIV} at (8,8) size 100x100 [bgcolor=#FF0000]
+layer at (58,58) size 100x100
+  RenderBlock {DIV} at (0,0) size 100x100 [bgcolor=#008000]
+scrolled to 50,50
diff --git a/LayoutTests/platform/gtk/compositing/overflow/nested-scrolling-expected.png b/LayoutTests/platform/gtk/compositing/overflow/nested-scrolling-expected.png
new file mode 100644
index 0000000..42b8264
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/overflow/nested-scrolling-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/overflow/nested-scrolling-expected.txt b/LayoutTests/platform/gtk/compositing/overflow/nested-scrolling-expected.txt
new file mode 100644
index 0000000..257fb4a
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/overflow/nested-scrolling-expected.txt
@@ -0,0 +1,54 @@
+layer at (0,0) size 785x835
+  RenderView at (0,0) size 785x600
+layer at (0,0) size 785x835
+  RenderBlock {HTML} at (0,0) size 785x835
+    RenderBody {BODY} at (8,8) size 769x819
+      RenderBlock (anonymous) at (0,0) size 769x17
+        RenderText {#text} at (0,0) size 82x17
+          text run at (0,0) width 82: "Text outside."
+layer at (8,25) size 702x802 clip at (9,26) size 685x785 scrollHeight 1286
+  RenderBlock {DIV} at (0,17) size 702x802 [border: (1px solid #000000)]
+    RenderBlock {P} at (1,17) size 685x165
+      RenderText {#text} at (0,8) size 674x149
+        text run at (0,8) width 642: "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et"
+        text run at (0,41) width 670: "dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex"
+        text run at (0,74) width 674: "ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat"
+        text run at (0,107) width 672: "nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim"
+        text run at (0,140) width 93: "id est laborum."
+    RenderBlock {P} at (1,230) size 685x165
+      RenderText {#text} at (0,8) size 674x149
+        text run at (0,8) width 642: "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et"
+        text run at (0,41) width 670: "dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex"
+        text run at (0,74) width 674: "ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat"
+        text run at (0,107) width 672: "nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim"
+        text run at (0,140) width 93: "id est laborum."
+    RenderBlock {P} at (1,861) size 685x165
+      RenderText {#text} at (0,8) size 674x149
+        text run at (0,8) width 642: "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et"
+        text run at (0,41) width 670: "dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex"
+        text run at (0,74) width 674: "ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat"
+        text run at (0,107) width 672: "nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim"
+        text run at (0,140) width 93: "id est laborum."
+    RenderBlock {P} at (1,1074) size 685x165
+      RenderText {#text} at (0,8) size 674x149
+        text run at (0,8) width 642: "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et"
+        text run at (0,41) width 670: "dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex"
+        text run at (0,74) width 674: "ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat"
+        text run at (0,107) width 672: "nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim"
+        text run at (0,140) width 93: "id est laborum."
+layer at (19,468) size 602x402 backgroundClip at (19,468) size 602x343 clip at (20,469) size 585x342 scrollHeight 442
+  RenderBlock {DIV} at (11,443) size 602x402 [border: (1px solid #000000)]
+    RenderBlock {P} at (1,17) size 585x165
+      RenderText {#text} at (0,8) size 584x149
+        text run at (0,8) width 584: "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut"
+        text run at (0,41) width 574: "labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco"
+        text run at (0,74) width 559: "laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in"
+        text run at (0,107) width 569: "voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat"
+        text run at (0,140) width 465: "non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
+    RenderBlock {P} at (1,230) size 585x165
+      RenderText {#text} at (0,8) size 584x149
+        text run at (0,8) width 584: "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut"
+        text run at (0,41) width 574: "labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco"
+        text run at (0,74) width 559: "laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in"
+        text run at (0,107) width 569: "voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat"
+        text run at (0,140) width 465: "non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
diff --git a/LayoutTests/platform/gtk/compositing/overflow/overflow-compositing-descendant-expected.png b/LayoutTests/platform/gtk/compositing/overflow/overflow-compositing-descendant-expected.png
new file mode 100644
index 0000000..306bda0
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/overflow/overflow-compositing-descendant-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/overflow/overflow-compositing-descendant-expected.txt b/LayoutTests/platform/gtk/compositing/overflow/overflow-compositing-descendant-expected.txt
new file mode 100644
index 0000000..82a8db5
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/overflow/overflow-compositing-descendant-expected.txt
@@ -0,0 +1,17 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x49
+  RenderBlock {HTML} at (0,0) size 800x49
+    RenderBody {BODY} at (8,16) size 784x17
+      RenderBlock {P} at (0,0) size 784x17
+        RenderText {#text} at (0,0) size 467x17
+          text run at (0,0) width 467: "You should see a green box under the video. If you see red, the test failed."
+layer at (8,49) size 132x222 clip at (9,50) size 130x220 scrollHeight 223
+  RenderBlock (positioned) {DIV} at (8,49) size 132x222 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
+    RenderBlock (anonymous) at (11,11) size 110x103
+      RenderText {#text} at (0,0) size 0x0
+    RenderBlock {DIV} at (11,114) size 100x100 [bgcolor=#FF0000]
+layer at (19,60) size 100x100
+  RenderVideo {VIDEO} at (0,0) size 100x100 [bgcolor=#000000]
+layer at (19,163) size 100x100
+  RenderBlock (relative positioned) {DIV} at (11,114) size 100x100 [bgcolor=#008000]
diff --git a/LayoutTests/platform/gtk/compositing/overflow/overflow-positioning-expected.png b/LayoutTests/platform/gtk/compositing/overflow/overflow-positioning-expected.png
new file mode 100644
index 0000000..dc7cec4
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/overflow/overflow-positioning-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/overflow/overflow-positioning-expected.txt b/LayoutTests/platform/gtk/compositing/overflow/overflow-positioning-expected.txt
new file mode 100644
index 0000000..adf344b
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/overflow/overflow-positioning-expected.txt
@@ -0,0 +1,14 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x435
+  RenderBlock {HTML} at (0,0) size 800x435
+    RenderBody {BODY} at (100,100) size 600x235
+      RenderBlock {P} at (0,0) size 600x17
+        RenderText {#text} at (0,0) size 469x17
+          text run at (0,0) width 469: "Things should not jump around when the green square starts the transition."
+layer at (100,133) size 202x202 clip at (101,134) size 200x200
+  RenderBlock (relative positioned) {DIV} at (0,33) size 202x202 [border: (1px solid #000000)]
+layer at (101,134) size 200x100
+  RenderBlock (relative positioned) {DIV} at (1,1) size 200x100 [bgcolor=#80800033]
+layer at (101,134) size 150x150
+  RenderBlock (positioned) {DIV} at (1,1) size 150x150 [bgcolor=#008000]
diff --git a/LayoutTests/platform/gtk/compositing/overflow/overflow-scroll-expected.png b/LayoutTests/platform/gtk/compositing/overflow/overflow-scroll-expected.png
new file mode 100644
index 0000000..6c2c38a
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/overflow/overflow-scroll-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/overflow/overflow-scroll-expected.txt b/LayoutTests/platform/gtk/compositing/overflow/overflow-scroll-expected.txt
new file mode 100644
index 0000000..a4e5bdd
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/overflow/overflow-scroll-expected.txt
@@ -0,0 +1,128 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x582
+  RenderBlock {HTML} at (0,0) size 800x582
+    RenderBody {BODY} at (8,16) size 784x558
+      RenderBlock {P} at (0,0) size 784x17
+        RenderText {#text} at (0,0) size 242x17
+          text run at (0,0) width 242: "All of the boxes should look the same."
+      RenderBlock (anonymous) at (0,33) size 784x525
+        RenderText {#text} at (172,158) size 4x17
+          text run at (172,158) width 4: " "
+        RenderText {#text} at (348,158) size 4x17
+          text run at (348,158) width 4: " "
+        RenderText {#text} at (524,158) size 4x17
+          text run at (524,158) width 4: " "
+        RenderText {#text} at (700,158) size 4x17
+          text run at (700,158) width 4: " "
+        RenderBR {BR} at (0,0) size 0x0
+        RenderText {#text} at (172,333) size 4x17
+          text run at (172,333) width 4: " "
+        RenderText {#text} at (348,333) size 4x17
+          text run at (348,333) width 4: " "
+        RenderText {#text} at (524,333) size 4x17
+          text run at (524,333) width 4: " "
+        RenderText {#text} at (700,333) size 4x17
+          text run at (700,333) width 4: " "
+        RenderBR {BR} at (0,0) size 0x0
+        RenderText {#text} at (172,508) size 4x17
+          text run at (172,508) width 4: " "
+        RenderText {#text} at (348,508) size 4x17
+          text run at (348,508) width 4: " "
+        RenderText {#text} at (524,508) size 4x17
+          text run at (524,508) width 4: " "
+        RenderText {#text} at (0,0) size 0x0
+layer at (18,59) size 152x152 clip at (19,60) size 135x135 scrollY 50 scrollWidth 210 scrollHeight 510
+  RenderBlock {DIV} at (10,10) size 152x152 [border: (1px solid #000000)]
+layer at (194,59) size 152x152 clip at (195,60) size 135x135 scrollY 50 scrollWidth 210 scrollHeight 510
+  RenderBlock {DIV} at (186,10) size 152x152 [border: (1px solid #000000)]
+layer at (19,10) size 210x510 backgroundClip at (19,60) size 135x135 clip at (19,60) size 135x135
+  RenderBlock {DIV} at (1,1) size 210x510 [bgcolor=#808080]
+    RenderBlock {P} at (5,29) size 200x52
+      RenderText {#text} at (0,0) size 194x52
+        text run at (0,0) width 194: "This is the inner div"
+        text run at (0,26) width 112: "that scrolls."
+layer at (195,10) size 210x510 backgroundClip at (195,60) size 135x135 clip at (195,60) size 135x135
+  RenderBlock (relative positioned) {DIV} at (1,1) size 210x510 [bgcolor=#808080]
+    RenderBlock {P} at (5,29) size 200x52
+      RenderText {#text} at (0,0) size 194x52
+        text run at (0,0) width 194: "This is the inner div"
+        text run at (0,26) width 112: "that scrolls."
+layer at (370,59) size 152x152 clip at (371,60) size 135x135 scrollY 50 scrollWidth 210 scrollHeight 510
+  RenderBlock (relative positioned) {DIV} at (362,10) size 152x152 [border: (1px solid #000000)]
+layer at (371,10) size 210x510 backgroundClip at (371,60) size 135x135 clip at (371,60) size 135x135
+  RenderBlock {DIV} at (1,1) size 210x510 [bgcolor=#808080]
+    RenderBlock {P} at (5,29) size 200x52
+      RenderText {#text} at (0,0) size 194x52
+        text run at (0,0) width 194: "This is the inner div"
+        text run at (0,26) width 112: "that scrolls."
+layer at (546,59) size 152x152 clip at (547,60) size 135x135 scrollY 50 scrollWidth 210 scrollHeight 510
+  RenderBlock (relative positioned) {DIV} at (538,10) size 152x152 [border: (1px solid #000000)]
+layer at (547,10) size 210x510 backgroundClip at (547,60) size 135x135 clip at (547,60) size 135x135
+  RenderBlock (relative positioned) {DIV} at (1,1) size 210x510 [bgcolor=#808080]
+    RenderBlock {P} at (5,29) size 200x52
+      RenderText {#text} at (0,0) size 194x52
+        text run at (0,0) width 194: "This is the inner div"
+        text run at (0,26) width 112: "that scrolls."
+layer at (18,234) size 152x152 clip at (19,235) size 135x135 scrollY 50 scrollWidth 210 scrollHeight 510
+  RenderBlock {DIV} at (10,185) size 152x152 [border: (1px solid #000000)]
+    RenderBlock {DIV} at (1,1) size 210x510 [bgcolor=#808080]
+      RenderBlock {P} at (5,29) size 200x52
+        RenderText {#text} at (0,0) size 194x52
+          text run at (0,0) width 194: "This is the inner div"
+          text run at (0,26) width 112: "that scrolls."
+layer at (194,234) size 152x152 clip at (195,235) size 135x135 scrollY 50 scrollWidth 210 scrollHeight 510
+  RenderBlock {DIV} at (186,185) size 152x152 [border: (1px solid #000000)]
+layer at (195,185) size 210x510 backgroundClip at (195,235) size 135x135 clip at (195,235) size 135x135
+  RenderBlock (relative positioned) {DIV} at (1,1) size 210x510 [bgcolor=#808080]
+    RenderBlock {P} at (5,29) size 200x52
+      RenderText {#text} at (0,0) size 194x52
+        text run at (0,0) width 194: "This is the inner div"
+        text run at (0,26) width 112: "that scrolls."
+layer at (370,234) size 152x152 clip at (371,235) size 135x135 scrollY 50 scrollWidth 210 scrollHeight 510
+  RenderBlock {DIV} at (362,185) size 152x152 [border: (1px solid #000000)]
+layer at (371,185) size 210x510 backgroundClip at (371,235) size 135x135 clip at (371,235) size 135x135
+  RenderBlock {DIV} at (1,1) size 210x510 [bgcolor=#808080]
+    RenderBlock {P} at (5,29) size 200x52
+      RenderText {#text} at (0,0) size 194x52
+        text run at (0,0) width 194: "This is the inner div"
+        text run at (0,26) width 112: "that scrolls."
+layer at (546,234) size 152x152 clip at (547,235) size 135x135 scrollY 50 scrollWidth 210 scrollHeight 510
+  RenderBlock {DIV} at (538,185) size 152x152 [border: (1px solid #000000)]
+layer at (547,185) size 210x510 backgroundClip at (547,235) size 135x135 clip at (547,235) size 135x135
+  RenderBlock (relative positioned) {DIV} at (1,1) size 210x510 [bgcolor=#808080]
+    RenderBlock {P} at (5,29) size 200x52
+      RenderText {#text} at (0,0) size 194x52
+        text run at (0,0) width 194: "This is the inner div"
+        text run at (0,26) width 112: "that scrolls."
+layer at (18,409) size 152x152 clip at (19,410) size 135x135 scrollY 50 scrollWidth 210 scrollHeight 510
+  RenderBlock (relative positioned) {DIV} at (10,360) size 152x152 [border: (1px solid #000000)]
+    RenderBlock {DIV} at (1,1) size 210x510 [bgcolor=#808080]
+      RenderBlock {P} at (5,29) size 200x52
+        RenderText {#text} at (0,0) size 194x52
+          text run at (0,0) width 194: "This is the inner div"
+          text run at (0,26) width 112: "that scrolls."
+layer at (194,409) size 152x152 clip at (195,410) size 135x135 scrollY 50 scrollWidth 210 scrollHeight 510
+  RenderBlock (relative positioned) {DIV} at (186,360) size 152x152 [border: (1px solid #000000)]
+layer at (195,360) size 210x510 backgroundClip at (195,410) size 135x135 clip at (195,410) size 135x135
+  RenderBlock (relative positioned) {DIV} at (1,1) size 210x510 [bgcolor=#808080]
+    RenderBlock {P} at (5,29) size 200x52
+      RenderText {#text} at (0,0) size 194x52
+        text run at (0,0) width 194: "This is the inner div"
+        text run at (0,26) width 112: "that scrolls."
+layer at (370,409) size 152x152 clip at (371,410) size 135x135 scrollY 50 scrollWidth 210 scrollHeight 510
+  RenderBlock (relative positioned) {DIV} at (362,360) size 152x152 [border: (1px solid #000000)]
+layer at (371,360) size 210x510 backgroundClip at (371,410) size 135x135 clip at (371,410) size 135x135
+  RenderBlock {DIV} at (1,1) size 210x510 [bgcolor=#808080]
+    RenderBlock {P} at (5,29) size 200x52
+      RenderText {#text} at (0,0) size 194x52
+        text run at (0,0) width 194: "This is the inner div"
+        text run at (0,26) width 112: "that scrolls."
+layer at (546,409) size 152x152 clip at (547,410) size 135x135 scrollY 50 scrollWidth 210 scrollHeight 510
+  RenderBlock (relative positioned) {DIV} at (538,360) size 152x152 [border: (1px solid #000000)]
+layer at (547,360) size 210x510 backgroundClip at (547,410) size 135x135 clip at (547,410) size 135x135
+  RenderBlock (relative positioned) {DIV} at (1,1) size 210x510 [bgcolor=#808080]
+    RenderBlock {P} at (5,29) size 200x52
+      RenderText {#text} at (0,0) size 194x52
+        text run at (0,0) width 194: "This is the inner div"
+        text run at (0,26) width 112: "that scrolls."
diff --git a/LayoutTests/platform/gtk/compositing/overflow/parent-overflow-expected.png b/LayoutTests/platform/gtk/compositing/overflow/parent-overflow-expected.png
new file mode 100644
index 0000000..9f187bf
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/overflow/parent-overflow-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/overflow/parent-overflow-expected.txt b/LayoutTests/platform/gtk/compositing/overflow/parent-overflow-expected.txt
new file mode 100644
index 0000000..83638b5
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/overflow/parent-overflow-expected.txt
@@ -0,0 +1,26 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x222
+  RenderBlock {HTML} at (0,0) size 800x222
+    RenderBody {BODY} at (8,16) size 784x198
+      RenderBlock {P} at (0,0) size 784x17
+        RenderText {#text} at (0,0) size 362x17
+          text run at (0,0) width 362: "Gray box should be clipped by black border in each case."
+      RenderBlock (anonymous) at (0,33) size 784x165
+        RenderText {#text} at (162,148) size 4x17
+          text run at (162,148) width 4: " "
+        RenderText {#text} at (328,148) size 4x17
+          text run at (328,148) width 4: " "
+        RenderText {#text} at (0,0) size 0x0
+layer at (28,69) size 122x122 clip at (29,70) size 120x120 scrollHeight 320
+  RenderBlock {DIV} at (20,20) size 122x122 [border: (1px solid #000000)]
+layer at (39,80) size 100x300 backgroundClip at (29,70) size 120x120 clip at (29,70) size 120x120
+  RenderBlock {DIV} at (11,11) size 100x300 [bgcolor=#808080]
+layer at (194,69) size 122x122 clip at (195,70) size 120x120 scrollHeight 320
+  RenderBlock (relative positioned) {DIV} at (186,20) size 122x122 [border: (1px solid #000000)]
+layer at (205,80) size 100x300 backgroundClip at (195,70) size 120x120 clip at (195,70) size 120x120
+  RenderBlock {DIV} at (11,11) size 100x300 [bgcolor=#808080]
+layer at (360,69) size 122x122 clip at (361,70) size 120x120 scrollHeight 320
+  RenderBlock (relative positioned) {DIV} at (352,20) size 122x122 [border: (1px solid #000000)]
+layer at (371,80) size 100x300 backgroundClip at (361,70) size 120x120 clip at (361,70) size 120x120
+  RenderBlock {DIV} at (11,11) size 100x300 [bgcolor=#808080]
diff --git a/LayoutTests/platform/gtk/compositing/overflow/remove-overflow-crash2-expected.png b/LayoutTests/platform/gtk/compositing/overflow/remove-overflow-crash2-expected.png
new file mode 100644
index 0000000..18cc2ac
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/overflow/remove-overflow-crash2-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/overflow/remove-overflow-crash2-expected.txt b/LayoutTests/platform/gtk/compositing/overflow/remove-overflow-crash2-expected.txt
new file mode 100644
index 0000000..5c6a219
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/overflow/remove-overflow-crash2-expected.txt
@@ -0,0 +1,90 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x218
+  RenderBlock {HTML} at (0,0) size 800x218
+    RenderBody {BODY} at (8,8) size 784x202
+layer at (8,8) size 103x202 clip at (9,9) size 86x185 scrollHeight 1394
+  RenderBlock {DIV} at (0,0) size 103x202 [border: (1px solid #000000)]
+    RenderText {#text} at (1,1) size 86x1394
+      text run at (1,1) width 84: "Lorem ipsum"
+      text run at (1,18) width 51: "dolor sit"
+      text run at (1,35) width 34: "amet,"
+      text run at (1,52) width 71: "consectetur"
+      text run at (1,69) width 68: "adipisicing"
+      text run at (1,86) width 68: "elit, sed do"
+      text run at (1,103) width 53: "eiusmod"
+      text run at (1,120) width 44: "tempor"
+      text run at (1,137) width 79: "incididunt ut"
+      text run at (1,154) width 54: "labore et"
+      text run at (1,171) width 86: "dolore magna"
+      text run at (1,188) width 62: "aliqua. Ut"
+      text run at (1,205) width 50: "enim ad"
+      text run at (1,222) width 40: "minim"
+      text run at (1,239) width 80: "veniam, quis"
+      text run at (1,256) width 47: "nostrud"
+      text run at (1,273) width 73: "exercitation"
+      text run at (1,290) width 50: "ullamco"
+      text run at (1,307) width 84: "laboris nisi ut"
+      text run at (1,324) width 80: "aliquip ex ea"
+      text run at (1,341) width 63: "commodo"
+      text run at (1,358) width 67: "consequat."
+      text run at (1,375) width 60: "Duis aute"
+      text run at (1,392) width 82: "irure dolor in"
+      text run at (1,409) width 83: "reprehenderit"
+      text run at (1,426) width 74: "in voluptate"
+      text run at (1,443) width 57: "velit esse"
+      text run at (1,460) width 83: "cillum dolore"
+      text run at (1,477) width 55: "eu fugiat"
+      text run at (1,494) width 31: "nulla"
+      text run at (1,511) width 52: "pariatur."
+      text run at (1,528) width 64: "Excepteur"
+      text run at (1,545) width 80: "sint occaecat"
+      text run at (1,562) width 85: "cupidatat non"
+      text run at (1,579) width 86: "proident, sunt"
+      text run at (1,596) width 74: "in culpa qui"
+      text run at (1,613) width 40: "officia"
+      text run at (1,630) width 53: "deserunt"
+      text run at (1,647) width 71: "mollit anim"
+      text run at (1,664) width 33: "id est"
+      text run at (1,681) width 56: "laborum."
+      text run at (1,698) width 84: "Lorem ipsum"
+      text run at (1,715) width 51: "dolor sit"
+      text run at (1,732) width 34: "amet,"
+      text run at (1,749) width 71: "consectetur"
+      text run at (1,766) width 68: "adipisicing"
+      text run at (1,783) width 68: "elit, sed do"
+      text run at (1,800) width 53: "eiusmod"
+      text run at (1,817) width 44: "tempor"
+      text run at (1,834) width 79: "incididunt ut"
+      text run at (1,851) width 54: "labore et"
+      text run at (1,868) width 86: "dolore magna"
+      text run at (1,885) width 62: "aliqua. Ut"
+      text run at (1,902) width 50: "enim ad"
+      text run at (1,919) width 40: "minim"
+      text run at (1,936) width 80: "veniam, quis"
+      text run at (1,953) width 47: "nostrud"
+      text run at (1,970) width 73: "exercitation"
+      text run at (1,987) width 50: "ullamco"
+      text run at (1,1004) width 84: "laboris nisi ut"
+      text run at (1,1021) width 80: "aliquip ex ea"
+      text run at (1,1038) width 63: "commodo"
+      text run at (1,1055) width 67: "consequat."
+      text run at (1,1072) width 60: "Duis aute"
+      text run at (1,1089) width 82: "irure dolor in"
+      text run at (1,1106) width 83: "reprehenderit"
+      text run at (1,1123) width 74: "in voluptate"
+      text run at (1,1140) width 57: "velit esse"
+      text run at (1,1157) width 83: "cillum dolore"
+      text run at (1,1174) width 55: "eu fugiat"
+      text run at (1,1191) width 31: "nulla"
+      text run at (1,1208) width 52: "pariatur."
+      text run at (1,1225) width 64: "Excepteur"
+      text run at (1,1242) width 80: "sint occaecat"
+      text run at (1,1259) width 85: "cupidatat non"
+      text run at (1,1276) width 86: "proident, sunt"
+      text run at (1,1293) width 74: "in culpa qui"
+      text run at (1,1310) width 40: "officia"
+      text run at (1,1327) width 53: "deserunt"
+      text run at (1,1344) width 71: "mollit anim"
+      text run at (1,1361) width 33: "id est"
+      text run at (1,1378) width 56: "laborum."
diff --git a/LayoutTests/platform/gtk/compositing/overflow/scroll-ancestor-update-expected.png b/LayoutTests/platform/gtk/compositing/overflow/scroll-ancestor-update-expected.png
new file mode 100644
index 0000000..173244f
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/overflow/scroll-ancestor-update-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/overflow/scroll-ancestor-update-expected.txt b/LayoutTests/platform/gtk/compositing/overflow/scroll-ancestor-update-expected.txt
new file mode 100644
index 0000000..bd04a17
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/overflow/scroll-ancestor-update-expected.txt
@@ -0,0 +1,22 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x103
+  RenderBlock {HTML} at (0,0) size 800x103
+    RenderBody {BODY} at (0,0) size 800x103
+      RenderText {#text} at (0,0) size 0x0
+layer at (0,0) size 100x100
+  RenderVideo {VIDEO} at (0,0) size 100x100
+layer at (50,50) size 100x100
+  RenderBlock (positioned) {DIV} at (50,50) size 100x100 [bgcolor=#FF0000]
+layer at (50,50) size 200x200
+  RenderBlock (positioned) {DIV} at (50,50) size 200x200
+    RenderBlock {P} at (0,218) size 200x51
+      RenderText {#text} at (0,0) size 191x51
+        text run at (0,0) width 191: "The green box should obscure"
+        text run at (0,17) width 180: "the red box, and move when"
+        text run at (0,34) width 141: "you drag the scrollbar."
+layer at (50,50) size 202x202 clip at (51,51) size 185x200 scrollY 50 scrollHeight 550
+  RenderBlock {DIV} at (0,0) size 202x202 [border: (1px solid #000000)]
+    RenderBlock {DIV} at (1,51) size 185x500
+layer at (51,51) size 100x100
+  RenderBlock (relative positioned) {DIV} at (0,0) size 100x100 [bgcolor=#008000]
diff --git a/LayoutTests/platform/gtk/compositing/overflow/scrollbar-painting-expected.png b/LayoutTests/platform/gtk/compositing/overflow/scrollbar-painting-expected.png
new file mode 100644
index 0000000..7074656
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/overflow/scrollbar-painting-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/overflow/scrollbar-painting-expected.txt b/LayoutTests/platform/gtk/compositing/overflow/scrollbar-painting-expected.txt
new file mode 100644
index 0000000..f7b61b5
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/overflow/scrollbar-painting-expected.txt
@@ -0,0 +1,14 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x269
+  RenderBlock {HTML} at (0,0) size 800x269
+    RenderBody {BODY} at (8,16) size 784x243
+      RenderBlock {P} at (0,0) size 784x17
+        RenderText {#text} at (0,0) size 476x17
+          text run at (0,0) width 476: "You should see scrollbars on the gray square, and a resizer control below it."
+layer at (18,49) size 100x100 clip at (18,49) size 85x85 scrollWidth 500 scrollHeight 500
+  RenderBlock (relative positioned) {DIV} at (10,33) size 100x100
+layer at (18,49) size 500x500 backgroundClip at (18,49) size 85x85 clip at (18,49) size 85x85
+  RenderBlock {DIV} at (0,0) size 500x500 [bgcolor=#808080]
+layer at (18,159) size 100x100
+  RenderBlock {DIV} at (10,143) size 100x100
diff --git a/LayoutTests/platform/gtk/compositing/overflow/theme-affects-visual-overflow-expected.png b/LayoutTests/platform/gtk/compositing/overflow/theme-affects-visual-overflow-expected.png
new file mode 100644
index 0000000..b6c6ab9
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/overflow/theme-affects-visual-overflow-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/overflow/theme-affects-visual-overflow-expected.txt b/LayoutTests/platform/gtk/compositing/overflow/theme-affects-visual-overflow-expected.txt
new file mode 100644
index 0000000..0e1972b
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/overflow/theme-affects-visual-overflow-expected.txt
@@ -0,0 +1,17 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x37
+  RenderBlock {HTML} at (0,0) size 800x37
+    RenderBody {BODY} at (8,8) size 784x21
+layer at (8,8) size 784x21
+  RenderBlock {DIV} at (0,0) size 784x21
+    RenderText {#text} at (19,2) size 4x17
+      text run at (19,2) width 4: " "
+    RenderBlock {SPAN} at (23,16) size 20x0
+    RenderText {#text} at (43,2) size 4x17
+      text run at (43,2) width 4: " "
+    RenderText {#text} at (0,0) size 0x0
+layer at (10,11) size 15x15
+  RenderBlock (relative positioned) {INPUT} at (2,3) size 15x15
+layer at (57,11) size 15x15
+  RenderBlock (relative positioned) {INPUT} at (49,3) size 15x15
diff --git a/LayoutTests/platform/gtk/compositing/reflections/reflection-in-composited-expected.png b/LayoutTests/platform/gtk/compositing/reflections/reflection-in-composited-expected.png
new file mode 100644
index 0000000..277a885
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/reflections/reflection-in-composited-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/reflections/reflection-in-composited-expected.txt b/LayoutTests/platform/gtk/compositing/reflections/reflection-in-composited-expected.txt
new file mode 100644
index 0000000..dbdbe68
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/reflections/reflection-in-composited-expected.txt
@@ -0,0 +1,21 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x600
+  RenderBlock {HTML} at (0,0) size 800x600
+    RenderBody {BODY} at (8,8) size 784x576
+      RenderBlock {P} at (0,0) size 784x17
+        RenderText {#text} at (0,0) size 410x17
+          text run at (0,0) width 410: "Reflection should not be cropped by being in a composited layer."
+      RenderBlock {P} at (0,289) size 784x17
+        RenderText {#text} at (0,0) size 240x17
+          text run at (0,0) width 240: "This is the next paragraph in the page."
+layer at (208,75) size 342x172
+  RenderBlock {DIV} at (200,67) size 342x172 [border: (1px solid #000000)]
+    RenderBlock {P} at (21,27) size 300x17
+      RenderText {#text} at (0,0) size 228x17
+        text run at (0,0) width 228: "This element has a composited layer"
+layer at (349,116) size 260x69
+  RenderBlock (positioned) {DIV} at (141,41) size 260x69 [bgcolor=#DDDDDD]
+    RenderBlock {P} at (10,26) size 240x17
+      RenderText {#text} at (0,0) size 223x17
+        text run at (0,0) width 223: "This is a positioned, reflected child."
diff --git a/LayoutTests/platform/gtk/compositing/repaint/become-overlay-composited-layer-expected.png b/LayoutTests/platform/gtk/compositing/repaint/become-overlay-composited-layer-expected.png
new file mode 100644
index 0000000..a7df140
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/repaint/become-overlay-composited-layer-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/repaint/become-overlay-composited-layer-expected.txt b/LayoutTests/platform/gtk/compositing/repaint/become-overlay-composited-layer-expected.txt
new file mode 100644
index 0000000..ae036c4
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/repaint/become-overlay-composited-layer-expected.txt
@@ -0,0 +1,17 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x600
+  RenderBlock {HTML} at (0,0) size 800x600
+    RenderBody {BODY} at (8,8) size 784x584
+      RenderBlock {P} at (0,0) size 784x17
+        RenderInline {A} at (0,0) size 149x17 [color=#0000EE]
+          RenderText {#text} at (0,0) size 149x17
+            text run at (0,0) width 149: "rdar://problem/6983207"
+        RenderText {#text} at (149,0) size 396x17
+          text run at (149,0) width 396: "Should not leave blue box behind after moving to the top right."
+layer at (8,41) size 502x102
+  RenderBlock (relative positioned) {DIV} at (0,33) size 502x102 [border: (1px solid #000000)]
+layer at (259,42) size 250x100
+  RenderBlock (positioned) {DIV} at (251,1) size 250x100 [bgcolor=#0000FF]
+layer at (9,42) size 50x50
+  RenderBlock (positioned) {DIV} at (1,1) size 50x50 [bgcolor=#000000]
diff --git a/LayoutTests/platform/gtk/compositing/repaint/composited-document-element-expected.png b/LayoutTests/platform/gtk/compositing/repaint/composited-document-element-expected.png
new file mode 100644
index 0000000..2288eab
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/repaint/composited-document-element-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/repaint/composited-document-element-expected.txt b/LayoutTests/platform/gtk/compositing/repaint/composited-document-element-expected.txt
new file mode 100644
index 0000000..9342fd8
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/repaint/composited-document-element-expected.txt
@@ -0,0 +1,9 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x49
+  RenderBlock {HTML} at (0,0) size 800x49
+layer at (8,16) size 784x17
+  RenderBody {BODY} at (8,16) size 784x17
+    RenderBlock {P} at (0,0) size 784x17
+      RenderText {#text} at (0,0) size 354x17
+        text run at (0,0) width 354: "In a pixel test, you should see a plain white background."
diff --git a/LayoutTests/platform/gtk/compositing/repaint/content-into-overflow-expected.png b/LayoutTests/platform/gtk/compositing/repaint/content-into-overflow-expected.png
new file mode 100644
index 0000000..2926017
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/repaint/content-into-overflow-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/repaint/content-into-overflow-expected.txt b/LayoutTests/platform/gtk/compositing/repaint/content-into-overflow-expected.txt
new file mode 100644
index 0000000..a008d84
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/repaint/content-into-overflow-expected.txt
@@ -0,0 +1,22 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x460
+  RenderBlock {HTML} at (0,0) size 800x460
+    RenderBody {BODY} at (8,20) size 784x420
+layer at (28,20) size 120x420
+  RenderBlock {DIV} at (20,0) size 120x420
+layer at (28,28) size 106x106
+  RenderBlock (positioned) {DIV} at (0,8) size 106x106 [border: (3px solid #008000)]
+    RenderBlock {DIV} at (3,3) size 100x50
+      RenderBlock {DIV} at (0,0) size 100x50
+layer at (28,178) size 106x106
+  RenderBlock (positioned) {DIV} at (0,158) size 106x106 [border: (3px solid #008000)]
+    RenderBlock {DIV} at (3,3) size 50x100
+      RenderBlock {DIV} at (0,0) size 50x100
+layer at (28,328) size 100x100
+  RenderBlock (positioned) {DIV} at (0,308) size 100x100
+    RenderBlock {DIV} at (0,0) size 100x100 [bgcolor=#008000]
+      RenderBlock {DIV} at (0,80) size 100x20
+layer at (28,328) size 100x0
+  RenderBlock (relative positioned) {DIV} at (0,0) size 100x0
+    RenderBlock (floating) {DIV} at (0,0) size 100x80
diff --git a/LayoutTests/platform/gtk/compositing/repaint/layer-repaint-expected.png b/LayoutTests/platform/gtk/compositing/repaint/layer-repaint-expected.png
new file mode 100644
index 0000000..3346f33
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/repaint/layer-repaint-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/repaint/layer-repaint-expected.txt b/LayoutTests/platform/gtk/compositing/repaint/layer-repaint-expected.txt
new file mode 100644
index 0000000..d81edc6
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/repaint/layer-repaint-expected.txt
@@ -0,0 +1,11 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x359
+  RenderBlock {HTML} at (0,0) size 800x359
+    RenderBody {BODY} at (8,16) size 784x335
+      RenderBlock {P} at (0,0) size 784x17
+        RenderText {#text} at (0,0) size 431x17
+          text run at (0,0) width 431: "Test for repaint in a composited layer. You should see no red below."
+layer at (8,49) size 202x302
+  RenderBlock {DIV} at (0,33) size 202x302 [border: (1px solid #000000)]
+    RenderBlock {DIV} at (51,51) size 100x100 [bgcolor=#008000]
diff --git a/LayoutTests/platform/gtk/compositing/repaint/layer-repaint-rects-expected.png b/LayoutTests/platform/gtk/compositing/repaint/layer-repaint-rects-expected.png
new file mode 100644
index 0000000..3d304c4
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/repaint/layer-repaint-rects-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/repaint/layer-repaint-rects-expected.txt b/LayoutTests/platform/gtk/compositing/repaint/layer-repaint-rects-expected.txt
new file mode 100644
index 0000000..ea46830
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/repaint/layer-repaint-rects-expected.txt
@@ -0,0 +1,16 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x49
+  RenderBlock {HTML} at (0,0) size 800x49
+    RenderBody {BODY} at (0,16) size 800x17
+      RenderBlock {P} at (0,0) size 800x17
+        RenderText {#text} at (0,0) size 656x17
+          text run at (0,0) width 656: "Tests repaint after a layer stops compositing. You should see no red below after the end of the transition."
+layer at (0,100) size 402x232
+  RenderBlock (positioned) {DIV} at (0,100) size 402x232 [border: (1px solid #000000)]
+layer at (1,111) size 200x100
+  RenderBlock (positioned) {DIV} at (1,11) size 200x100 [bgcolor=#8888FF]
+layer at (1,221) size 200x100
+  RenderBlock (positioned) {DIV} at (1,121) size 200x100 [bgcolor=#FF0000]
+layer at (1,221) size 200x100
+  RenderBlock (positioned) {DIV} at (1,221) size 200x100 [bgcolor=#008000]
diff --git a/LayoutTests/platform/gtk/compositing/repaint/newly-composited-on-scroll-expected.png b/LayoutTests/platform/gtk/compositing/repaint/newly-composited-on-scroll-expected.png
new file mode 100644
index 0000000..833b1ce
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/repaint/newly-composited-on-scroll-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/repaint/newly-composited-on-scroll-expected.txt b/LayoutTests/platform/gtk/compositing/repaint/newly-composited-on-scroll-expected.txt
new file mode 100644
index 0000000..139597f
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/repaint/newly-composited-on-scroll-expected.txt
@@ -0,0 +1,2 @@
+
+
diff --git a/LayoutTests/platform/gtk/compositing/repaint/opacity-between-absolute-expected.png b/LayoutTests/platform/gtk/compositing/repaint/opacity-between-absolute-expected.png
new file mode 100644
index 0000000..46b703a
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/repaint/opacity-between-absolute-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/repaint/opacity-between-absolute-expected.txt b/LayoutTests/platform/gtk/compositing/repaint/opacity-between-absolute-expected.txt
new file mode 100644
index 0000000..903f253
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/repaint/opacity-between-absolute-expected.txt
@@ -0,0 +1,14 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x259
+  RenderBlock {HTML} at (0,0) size 800x259
+    RenderBody {BODY} at (8,16) size 784x235
+      RenderBlock {P} at (0,0) size 784x17
+        RenderText {#text} at (0,0) size 423x17
+          text run at (0,0) width 423: "This test should not assert, and you should see a fully green square."
+layer at (8,49) size 202x202
+  RenderBlock (relative positioned) {DIV} at (0,33) size 202x202 [border: (1px solid #000000)]
+layer at (29,70) size 52x52
+  RenderBlock {DIV} at (21,21) size 52x52 [border: (1px solid #000000)]
+layer at (109,150) size 80x80
+  RenderBlock (positioned) {DIV} at (101,101) size 80x80 [bgcolor=#008000]
diff --git a/LayoutTests/platform/gtk/compositing/repaint/opacity-between-absolute2-expected.png b/LayoutTests/platform/gtk/compositing/repaint/opacity-between-absolute2-expected.png
new file mode 100644
index 0000000..2de4434
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/repaint/opacity-between-absolute2-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/repaint/opacity-between-absolute2-expected.txt b/LayoutTests/platform/gtk/compositing/repaint/opacity-between-absolute2-expected.txt
new file mode 100644
index 0000000..8798790
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/repaint/opacity-between-absolute2-expected.txt
@@ -0,0 +1,15 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x259
+  RenderBlock {HTML} at (0,0) size 800x259
+    RenderBody {BODY} at (8,16) size 784x235
+      RenderBlock {P} at (0,0) size 784x17
+        RenderText {#text} at (0,0) size 423x17
+          text run at (0,0) width 423: "This test should not assert, and you should see a fully green square."
+layer at (8,49) size 202x202
+  RenderBlock (relative positioned) {DIV} at (0,33) size 202x202 [border: (1px solid #000000)]
+    RenderBlock {DIV} at (21,21) size 52x52 [border: (1px solid #000000)]
+layer at (50,91) size 52x52
+  RenderBlock {DIV} at (21,21) size 52x52 [border: (1px solid #000000)]
+layer at (109,150) size 80x80
+  RenderBlock (positioned) {DIV} at (101,101) size 80x80 [bgcolor=#008000]
diff --git a/LayoutTests/platform/gtk/compositing/repaint/overflow-into-content-expected.png b/LayoutTests/platform/gtk/compositing/repaint/overflow-into-content-expected.png
new file mode 100644
index 0000000..085eb6c
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/repaint/overflow-into-content-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/repaint/overflow-into-content-expected.txt b/LayoutTests/platform/gtk/compositing/repaint/overflow-into-content-expected.txt
new file mode 100644
index 0000000..4b3f83b
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/repaint/overflow-into-content-expected.txt
@@ -0,0 +1,21 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x460
+  RenderBlock {HTML} at (0,0) size 800x460
+    RenderBody {BODY} at (8,20) size 784x420
+layer at (28,20) size 120x420
+  RenderBlock {DIV} at (20,0) size 120x420
+layer at (28,28) size 56x106
+  RenderBlock (positioned) {DIV} at (0,8) size 56x106 [border: (3px solid #008000)]
+    RenderBlock {DIV} at (3,3) size 50x50
+      RenderBlock {DIV} at (0,0) size 100x50
+layer at (28,178) size 106x56
+  RenderBlock (positioned) {DIV} at (0,158) size 106x56 [border: (3px solid #008000)]
+    RenderBlock {DIV} at (3,3) size 50x50
+      RenderBlock {DIV} at (0,0) size 50x100
+layer at (28,328) size 100x80
+  RenderBlock (positioned) {DIV} at (0,308) size 100x80
+    RenderBlock {DIV} at (0,0) size 100x0 [bgcolor=#008000]
+layer at (28,328) size 100x0
+  RenderBlock (relative positioned) {DIV} at (0,0) size 100x0
+    RenderBlock (floating) {DIV} at (0,0) size 100x80
diff --git a/LayoutTests/platform/gtk/compositing/rtl/rtl-iframe-absolute-expected.txt b/LayoutTests/platform/gtk/compositing/rtl/rtl-iframe-absolute-expected.txt
new file mode 100644
index 0000000..77d4e03
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/rtl/rtl-iframe-absolute-expected.txt
@@ -0,0 +1,50 @@
+(GraphicsLayer
+  (anchor 0.00 0.00)
+  (bounds 800.00 600.00)
+  (children 1
+    (GraphicsLayer
+      (bounds 800.00 600.00)
+      (contentsOpaque 1)
+      (children 1
+        (GraphicsLayer
+          (bounds 400.00 400.00)
+          (drawsContent 1)
+          (children 1
+            (GraphicsLayer
+              (children 1
+                (GraphicsLayer
+                  (anchor 0.00 0.00)
+                  (bounds 400.00 400.00)
+                  (children 1
+                    (GraphicsLayer
+                      (children 1
+                        (GraphicsLayer
+                          (anchor 0.00 0.00)
+                          (bounds 400.00 400.00)
+                          (children 1
+                            (GraphicsLayer
+                              (bounds 400.00 400.00)
+                              (drawsContent 1)
+                              (children 1
+                                (GraphicsLayer
+                                  (position 50.00 50.00)
+                                  (bounds 100.00 100.00)
+                                  (contentsOpaque 1)
+                                )
+                              )
+                            )
+                          )
+                        )
+                      )
+                    )
+                  )
+                )
+              )
+            )
+          )
+        )
+      )
+    )
+  )
+)
+
diff --git a/LayoutTests/platform/gtk/compositing/rtl/rtl-iframe-relative-expected.txt b/LayoutTests/platform/gtk/compositing/rtl/rtl-iframe-relative-expected.txt
new file mode 100644
index 0000000..30ba6d9
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/rtl/rtl-iframe-relative-expected.txt
@@ -0,0 +1,50 @@
+(GraphicsLayer
+  (anchor 0.00 0.00)
+  (bounds 800.00 600.00)
+  (children 1
+    (GraphicsLayer
+      (bounds 800.00 600.00)
+      (contentsOpaque 1)
+      (children 1
+        (GraphicsLayer
+          (bounds 400.00 400.00)
+          (drawsContent 1)
+          (children 1
+            (GraphicsLayer
+              (children 1
+                (GraphicsLayer
+                  (anchor 0.00 0.00)
+                  (bounds 400.00 400.00)
+                  (children 1
+                    (GraphicsLayer
+                      (children 1
+                        (GraphicsLayer
+                          (anchor 0.00 0.00)
+                          (bounds 400.00 400.00)
+                          (children 1
+                            (GraphicsLayer
+                              (bounds 400.00 400.00)
+                              (drawsContent 1)
+                              (children 1
+                                (GraphicsLayer
+                                  (position 242.00 58.00)
+                                  (bounds 100.00 100.00)
+                                  (contentsOpaque 1)
+                                )
+                              )
+                            )
+                          )
+                        )
+                      )
+                    )
+                  )
+                )
+              )
+            )
+          )
+        )
+      )
+    )
+  )
+)
+
diff --git a/LayoutTests/platform/gtk/compositing/rtl/rtl-overflow-scrolling-expected.txt b/LayoutTests/platform/gtk/compositing/rtl/rtl-overflow-scrolling-expected.txt
new file mode 100644
index 0000000..6b692b3
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/rtl/rtl-overflow-scrolling-expected.txt
@@ -0,0 +1,8 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x600
+  RenderBlock {HTML} at (0,0) size 800x600
+    RenderBody {BODY} at (8,8) size 784x584
+layer at (8,8) size 300x300 clip at (23,8) size 285x285 scrollWidth 1000 scrollHeight 1000
+  RenderBlock {DIV} at (0,0) size 300x300
+    RenderBlock {DIV} at (-700,0) size 1000x1000 [bgcolor=#008000]
diff --git a/LayoutTests/platform/gtk/compositing/rtl/rtl-scrolling-with-transformed-descendants-expected.txt b/LayoutTests/platform/gtk/compositing/rtl/rtl-scrolling-with-transformed-descendants-expected.txt
new file mode 100644
index 0000000..ba8e069
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/rtl/rtl-scrolling-with-transformed-descendants-expected.txt
@@ -0,0 +1,26 @@
+    
+(GraphicsLayer
+  (anchor 0.00 0.00)
+  (bounds 800.00 600.00)
+  (children 1
+    (GraphicsLayer
+      (bounds 800.00 600.00)
+      (contentsOpaque 1)
+      (children 1
+        (GraphicsLayer
+          (position 10.00 10.00)
+          (bounds 400.00 203.00)
+          (children 1
+            (GraphicsLayer
+              (position 96.00 0.00)
+              (anchor 0.00 0.00)
+              (bounds 150.00 200.00)
+              (contentsOpaque 1)
+            )
+          )
+        )
+      )
+    )
+  )
+)
+
diff --git a/LayoutTests/platform/gtk/compositing/self-painting-layers-expected.png b/LayoutTests/platform/gtk/compositing/self-painting-layers-expected.png
new file mode 100644
index 0000000..ffc2b9a
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/self-painting-layers-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/self-painting-layers-expected.txt b/LayoutTests/platform/gtk/compositing/self-painting-layers-expected.txt
new file mode 100644
index 0000000..a0151fb
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/self-painting-layers-expected.txt
@@ -0,0 +1,23 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x426
+  RenderBlock {HTML} at (0,0) size 800x426
+    RenderBody {BODY} at (8,16) size 784x400
+      RenderBlock {P} at (0,0) size 784x17
+        RenderText {#text} at (0,0) size 326x17
+          text run at (0,0) width 326: "You should not see double text when the div scrolls"
+      RenderBlock {DIV} at (10,33) size 302x205 [border: (1px solid #000000)]
+        RenderText {#text} at (0,0) size 0x0
+layer at (19,50) size 300x200
+  RenderVideo {VIDEO} at (1,1) size 300x200
+layer at (18,264) size 302x152 clip at (19,265) size 285x150 scrollY 24 scrollHeight 500
+  RenderBlock {DIV} at (10,248) size 302x152 [border: (1px solid #000000)]
+    RenderBlock {DIV} at (1,1) size 285x500
+      RenderText {#text} at (0,6) size 107x36
+        text run at (0,6) width 107: "Scrolled"
+      RenderBR {BR} at (107,6) size 0x36
+      RenderText {#text} at (0,54) size 48x36
+        text run at (0,54) width 48: "text"
+      RenderBR {BR} at (48,54) size 0x36
+      RenderText {#text} at (0,102) size 63x36
+        text run at (0,102) width 63: "here."
diff --git a/LayoutTests/platform/gtk/compositing/shadows/shadow-drawing-expected.png b/LayoutTests/platform/gtk/compositing/shadows/shadow-drawing-expected.png
new file mode 100644
index 0000000..82a72a0
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/shadows/shadow-drawing-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/shadows/shadow-drawing-expected.txt b/LayoutTests/platform/gtk/compositing/shadows/shadow-drawing-expected.txt
new file mode 100644
index 0000000..884b3b1
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/shadows/shadow-drawing-expected.txt
@@ -0,0 +1,25 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x309
+  RenderBlock {HTML} at (0,0) size 800x309
+    RenderBody {BODY} at (8,16) size 784x285
+      RenderBlock {P} at (0,0) size 784x17
+        RenderText {#text} at (0,0) size 262x17
+          text run at (0,0) width 262: "Left and right sides should look the same."
+      RenderBlock (anonymous) at (0,33) size 784x252
+        RenderBlock {DIV} at (50,50) size 202x152 [border: (1px solid #000000)]
+        RenderText {#text} at (302,148) size 4x17
+          text run at (302,148) width 4: " "
+        RenderText {#text} at (0,0) size 0x0
+layer at (59,137) size 200x82
+  RenderBlock {P} at (1,38) size 200x83 [color=#0000FF]
+    RenderText {#text} at (22,0) size 156x82
+      text run at (22,0) width 156: "Shadowed"
+      text run at (72,41) width 56: "text"
+layer at (364,99) size 202x152
+  RenderBlock {DIV} at (356,50) size 202x152 [border: (1px solid #000000)]
+layer at (365,137) size 200x82
+  RenderBlock {P} at (1,38) size 200x83 [color=#0000FF]
+    RenderText {#text} at (22,0) size 156x82
+      text run at (22,0) width 156: "Shadowed"
+      text run at (72,41) width 56: "text"
diff --git a/LayoutTests/platform/gtk/compositing/sibling-positioning-expected.png b/LayoutTests/platform/gtk/compositing/sibling-positioning-expected.png
new file mode 100644
index 0000000..9908ad7
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/sibling-positioning-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/sibling-positioning-expected.txt b/LayoutTests/platform/gtk/compositing/sibling-positioning-expected.txt
new file mode 100644
index 0000000..9adbcf9
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/sibling-positioning-expected.txt
@@ -0,0 +1,18 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x292
+  RenderBlock {HTML} at (0,0) size 800x292
+    RenderBody {BODY} at (8,8) size 784x268
+      RenderBlock {P} at (0,218) size 784x17
+        RenderInline {A} at (0,0) size 305x17 [color=#0000EE]
+          RenderText {#text} at (0,0) size 305x17
+            text run at (0,0) width 305: "https://bugs.webkit.org/show_bug.cgi?id=26430"
+      RenderBlock {P} at (0,251) size 784x17
+        RenderText {#text} at (0,0) size 270x17
+          text run at (0,0) width 270: "Green box should not move when hovered"
+layer at (8,8) size 202x202
+  RenderBlock (relative positioned) {DIV} at (0,0) size 202x202 [border: (1px solid #000000)]
+layer at (59,59) size 60x60
+  RenderBlock (positioned) {DIV} at (51,51) size 60x60 [bgcolor=#008000]
+layer at (-41,-41) size 100x100 backgroundClip at (0,0) size 800x600 clip at (0,0) size 800x600
+  RenderBlock (positioned) {DIV} at (-49,-49) size 100x100 [bgcolor=#808080]
diff --git a/LayoutTests/platform/gtk/compositing/text-on-large-layer-expected.png b/LayoutTests/platform/gtk/compositing/text-on-large-layer-expected.png
new file mode 100644
index 0000000..c4779a9
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/text-on-large-layer-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/text-on-large-layer-expected.txt b/LayoutTests/platform/gtk/compositing/text-on-large-layer-expected.txt
new file mode 100644
index 0000000..daa5d9f
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/text-on-large-layer-expected.txt
@@ -0,0 +1,12 @@
+layer at (0,0) size 2003x10001
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x8
+  RenderBlock {HTML} at (0,0) size 800x8
+    RenderBody {BODY} at (8,8) size 784x0
+layer at (3,1) size 2000x10000
+  RenderBlock (positioned) {DIV} at (3,1) size 2000x10000
+    RenderText {#text} at (0,0) size 543x17
+      text run at (0,0) width 543: "This is some text inside a very large composited layer to test that it is rendered sharply."
+    RenderBR {BR} at (543,0) size 0x17
+    RenderText {#text} at (0,17) size 212x17
+      text run at (0,17) width 212: "The test passes if this text is crisp."
diff --git a/LayoutTests/platform/gtk/compositing/tiling/huge-layer-add-remove-child-expected.txt b/LayoutTests/platform/gtk/compositing/tiling/huge-layer-add-remove-child-expected.txt
new file mode 100644
index 0000000..9190ff4
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/tiling/huge-layer-add-remove-child-expected.txt
@@ -0,0 +1,71 @@
+The yellow box should be large enough to scroll off the bottom. At the start there should be no child. After 100ms a red box is added and after 100ms more it should be removed. This tests that we can support very large compositing layers with dynamically added and removed child compositing layers.
+
+First (no children):
+(GraphicsLayer
+  (anchor 0.00 0.00)
+  (bounds 785.00 5126.00)
+  (children 1
+    (GraphicsLayer
+      (bounds 785.00 5126.00)
+      (contentsOpaque 1)
+      (children 1
+        (GraphicsLayer
+          (position 8.00 83.00)
+          (bounds 502.00 5002.00)
+          (contentsOpaque 1)
+          (drawsContent 1)
+        )
+      )
+    )
+  )
+)
+
+
+Second (child added):
+(GraphicsLayer
+  (anchor 0.00 0.00)
+  (bounds 785.00 5126.00)
+  (children 1
+    (GraphicsLayer
+      (bounds 785.00 5126.00)
+      (contentsOpaque 1)
+      (children 1
+        (GraphicsLayer
+          (position 8.00 83.00)
+          (bounds 502.00 5002.00)
+          (contentsOpaque 1)
+          (drawsContent 1)
+          (children 1
+            (GraphicsLayer
+              (position 51.00 401.00)
+              (bounds 200.00 200.00)
+              (contentsOpaque 1)
+            )
+          )
+        )
+      )
+    )
+  )
+)
+
+
+Third (child removed):
+(GraphicsLayer
+  (anchor 0.00 0.00)
+  (bounds 785.00 5126.00)
+  (children 1
+    (GraphicsLayer
+      (bounds 785.00 5126.00)
+      (contentsOpaque 1)
+      (children 1
+        (GraphicsLayer
+          (position 8.00 83.00)
+          (bounds 502.00 5002.00)
+          (contentsOpaque 1)
+          (drawsContent 1)
+        )
+      )
+    )
+  )
+)
+
diff --git a/LayoutTests/platform/gtk/compositing/tiling/visiblerect-accumulated-offset-expected.png b/LayoutTests/platform/gtk/compositing/tiling/visiblerect-accumulated-offset-expected.png
new file mode 100644
index 0000000..4725428
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/tiling/visiblerect-accumulated-offset-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/tiling/visiblerect-accumulated-offset-expected.txt b/LayoutTests/platform/gtk/compositing/tiling/visiblerect-accumulated-offset-expected.txt
new file mode 100644
index 0000000..4f30dec
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/tiling/visiblerect-accumulated-offset-expected.txt
@@ -0,0 +1,8 @@
+layer at (0,0) size 811x811
+  RenderView at (0,0) size 785x585
+layer at (0,0) size 785x618
+  RenderBlock {HTML} at (0,0) size 785x618
+    RenderBody {BODY} at (8,8) size 769x602
+      RenderBlock {DIV} at (0,0) size 602x602 [border: (1px solid #000000)]
+layer at (9,9) size 202x202 clip at (10,10) size 200x200 scrollWidth 1000 scrollHeight 202
+  RenderBlock {DIV} at (1,1) size 202x202 [border: (1px solid #000000)]
diff --git a/LayoutTests/platform/gtk/compositing/visibility/layer-visible-content-expected.txt b/LayoutTests/platform/gtk/compositing/visibility/layer-visible-content-expected.txt
new file mode 100644
index 0000000..96e9e5b
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/visibility/layer-visible-content-expected.txt
@@ -0,0 +1,32 @@
+(GraphicsLayer
+  (anchor 0.00 0.00)
+  (bounds 800.00 600.00)
+  (children 1
+    (GraphicsLayer
+      (bounds 800.00 600.00)
+      (contentsOpaque 1)
+      (children 2
+        (GraphicsLayer
+          (bounds 200.00 200.00)
+          (drawsContent 1)
+          (children 1
+            (GraphicsLayer
+              (bounds 200.00 200.00)
+              (children 1
+                (GraphicsLayer
+                  (bounds 10.00 10.00)
+                )
+              )
+            )
+          )
+        )
+        (GraphicsLayer
+          (bounds 800.00 16.00)
+          (opacity 0.00)
+          (drawsContent 1)
+        )
+      )
+    )
+  )
+)
+
diff --git a/LayoutTests/platform/gtk/compositing/webgl/webgl-background-color-expected.png b/LayoutTests/platform/gtk/compositing/webgl/webgl-background-color-expected.png
new file mode 100644
index 0000000..156b102
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/webgl/webgl-background-color-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/webgl/webgl-background-color-expected.txt b/LayoutTests/platform/gtk/compositing/webgl/webgl-background-color-expected.txt
new file mode 100644
index 0000000..66b5a30
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/webgl/webgl-background-color-expected.txt
@@ -0,0 +1,13 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x532
+  RenderBlock {HTML} at (0,0) size 800x532
+    RenderBody {BODY} at (8,20) size 784x496
+      RenderBlock {DIV} at (20,0) size 240x200 [bgcolor=#0000807F]
+      RenderBlock (anonymous) at (0,220) size 784x243
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {P} at (0,479) size 784x17
+        RenderText {#text} at (0,0) size 242x17
+          text run at (0,0) width 242: "Top and bottom should look the same."
+layer at (28,260) size 240x200
+  RenderHTMLCanvas {CANVAS} at (20,20) size 240x200 [bgcolor=#0000807F]
diff --git a/LayoutTests/platform/gtk/compositing/webgl/webgl-nonpremultiplied-blend-expected.png b/LayoutTests/platform/gtk/compositing/webgl/webgl-nonpremultiplied-blend-expected.png
new file mode 100644
index 0000000..dc14b60
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/webgl/webgl-nonpremultiplied-blend-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/compositing/webgl/webgl-nonpremultiplied-blend-expected.txt b/LayoutTests/platform/gtk/compositing/webgl/webgl-nonpremultiplied-blend-expected.txt
new file mode 100644
index 0000000..9f97118
--- /dev/null
+++ b/LayoutTests/platform/gtk/compositing/webgl/webgl-nonpremultiplied-blend-expected.txt
@@ -0,0 +1,13 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x259
+  RenderBlock {HTML} at (0,0) size 800x259
+    RenderBody {BODY} at (8,8) size 784x243
+      RenderText {#text} at (240,226) size 4x17
+        text run at (240,226) width 4: " "
+      RenderText {#text} at (0,0) size 0x0
+      RenderText {#text} at (0,0) size 0x0
+layer at (28,28) size 200x200
+  RenderHTMLCanvas {CANVAS} at (20,20) size 200x200 [bgcolor=#00008000]
+layer at (272,28) size 200x200
+  RenderHTMLCanvas {CANVAS} at (264,20) size 200x200 [bgcolor=#00008000]
diff --git a/LayoutTests/platform/gtk/css3/blending/background-blend-mode-default-value-expected.png b/LayoutTests/platform/gtk/css3/blending/background-blend-mode-default-value-expected.png
new file mode 100644
index 0000000..783e9c1
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/background-blend-mode-default-value-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/css3/blending/background-blend-mode-default-value-expected.txt b/LayoutTests/platform/gtk/css3/blending/background-blend-mode-default-value-expected.txt
new file mode 100644
index 0000000..a8cd0f3
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/background-blend-mode-default-value-expected.txt
@@ -0,0 +1,7 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x430
+  RenderBlock {HTML} at (0,0) size 800x430
+    RenderBody {BODY} at (8,10) size 784x410
+      RenderBlock {DIV} at (10,0) size 200x200 [bgcolor=#008000]
+      RenderBlock {DIV} at (10,210) size 200x200 [bgcolor=#008000]
diff --git a/LayoutTests/platform/gtk/css3/blending/background-blend-mode-different-image-formats-expected.png b/LayoutTests/platform/gtk/css3/blending/background-blend-mode-different-image-formats-expected.png
new file mode 100644
index 0000000..41962b6
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/background-blend-mode-different-image-formats-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/css3/blending/background-blend-mode-different-image-formats-expected.txt b/LayoutTests/platform/gtk/css3/blending/background-blend-mode-different-image-formats-expected.txt
new file mode 100644
index 0000000..a8cd0f3
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/background-blend-mode-different-image-formats-expected.txt
@@ -0,0 +1,7 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x430
+  RenderBlock {HTML} at (0,0) size 800x430
+    RenderBody {BODY} at (8,10) size 784x410
+      RenderBlock {DIV} at (10,0) size 200x200 [bgcolor=#008000]
+      RenderBlock {DIV} at (10,210) size 200x200 [bgcolor=#008000]
diff --git a/LayoutTests/platform/gtk/css3/blending/background-blend-mode-gif-color-2-expected.png b/LayoutTests/platform/gtk/css3/blending/background-blend-mode-gif-color-2-expected.png
new file mode 100644
index 0000000..f5883da
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/background-blend-mode-gif-color-2-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/css3/blending/background-blend-mode-gif-color-2-expected.txt b/LayoutTests/platform/gtk/css3/blending/background-blend-mode-gif-color-2-expected.txt
new file mode 100644
index 0000000..6978cc7
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/background-blend-mode-gif-color-2-expected.txt
@@ -0,0 +1,16 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x428
+  RenderBlock {HTML} at (0,0) size 800x428
+    RenderBody {BODY} at (8,8) size 784x0
+      RenderBlock (floating) {DIV} at (5,5) size 130x130 [bgcolor=#008000]
+      RenderBlock (floating) {DIV} at (145,5) size 130x130 [bgcolor=#008000]
+      RenderBlock (floating) {DIV} at (285,5) size 130x130 [bgcolor=#008000]
+      RenderBlock (floating) {DIV} at (425,5) size 130x130 [bgcolor=#008000]
+      RenderBlock (floating) {DIV} at (565,5) size 130x130 [bgcolor=#008000]
+      RenderBlock (floating) {DIV} at (5,145) size 130x130 [bgcolor=#008000]
+      RenderBlock (floating) {DIV} at (145,145) size 130x130 [bgcolor=#008000]
+      RenderBlock (floating) {DIV} at (285,145) size 130x130 [bgcolor=#008000]
+      RenderBlock (floating) {DIV} at (425,145) size 130x130 [bgcolor=#008000]
+      RenderBlock (floating) {DIV} at (565,145) size 130x130 [bgcolor=#008000]
+      RenderBlock (floating) {DIV} at (5,285) size 130x130 [bgcolor=#008000]
diff --git a/LayoutTests/platform/gtk/css3/blending/background-blend-mode-gif-color-expected.png b/LayoutTests/platform/gtk/css3/blending/background-blend-mode-gif-color-expected.png
new file mode 100644
index 0000000..23dd860
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/background-blend-mode-gif-color-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/css3/blending/background-blend-mode-gif-color-expected.txt b/LayoutTests/platform/gtk/css3/blending/background-blend-mode-gif-color-expected.txt
new file mode 100644
index 0000000..6978cc7
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/background-blend-mode-gif-color-expected.txt
@@ -0,0 +1,16 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x428
+  RenderBlock {HTML} at (0,0) size 800x428
+    RenderBody {BODY} at (8,8) size 784x0
+      RenderBlock (floating) {DIV} at (5,5) size 130x130 [bgcolor=#008000]
+      RenderBlock (floating) {DIV} at (145,5) size 130x130 [bgcolor=#008000]
+      RenderBlock (floating) {DIV} at (285,5) size 130x130 [bgcolor=#008000]
+      RenderBlock (floating) {DIV} at (425,5) size 130x130 [bgcolor=#008000]
+      RenderBlock (floating) {DIV} at (565,5) size 130x130 [bgcolor=#008000]
+      RenderBlock (floating) {DIV} at (5,145) size 130x130 [bgcolor=#008000]
+      RenderBlock (floating) {DIV} at (145,145) size 130x130 [bgcolor=#008000]
+      RenderBlock (floating) {DIV} at (285,145) size 130x130 [bgcolor=#008000]
+      RenderBlock (floating) {DIV} at (425,145) size 130x130 [bgcolor=#008000]
+      RenderBlock (floating) {DIV} at (565,145) size 130x130 [bgcolor=#008000]
+      RenderBlock (floating) {DIV} at (5,285) size 130x130 [bgcolor=#008000]
diff --git a/LayoutTests/platform/gtk/css3/blending/background-blend-mode-image-color-expected.png b/LayoutTests/platform/gtk/css3/blending/background-blend-mode-image-color-expected.png
new file mode 100644
index 0000000..221dda5
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/background-blend-mode-image-color-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/css3/blending/background-blend-mode-image-color-expected.txt b/LayoutTests/platform/gtk/css3/blending/background-blend-mode-image-color-expected.txt
new file mode 100644
index 0000000..a0d0433
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/background-blend-mode-image-color-expected.txt
@@ -0,0 +1,18 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x436
+  RenderBlock {HTML} at (0,0) size 800x436
+    RenderBody {BODY} at (8,16) size 784x0
+      RenderBlock {UL} at (0,0) size 784x0
+        RenderBlock (floating) {LI} at (45,5) size 130x130 [bgcolor=#008000]
+        RenderBlock (floating) {LI} at (185,5) size 130x130 [bgcolor=#008000]
+        RenderBlock (floating) {LI} at (325,5) size 130x130 [bgcolor=#008000]
+        RenderBlock (floating) {LI} at (465,5) size 130x130 [bgcolor=#008000]
+        RenderBlock (floating) {LI} at (605,5) size 130x130 [bgcolor=#008000]
+        RenderBlock (floating) {LI} at (45,145) size 130x130 [bgcolor=#008000]
+        RenderBlock (floating) {LI} at (185,145) size 130x130 [bgcolor=#008000]
+        RenderBlock (floating) {LI} at (325,145) size 130x130 [bgcolor=#008000]
+        RenderBlock (floating) {LI} at (465,145) size 130x130 [bgcolor=#008000]
+        RenderBlock (floating) {LI} at (605,145) size 130x130 [bgcolor=#008000]
+        RenderBlock (floating) {LI} at (45,285) size 130x130 [bgcolor=#008000]
+        RenderBlock (floating) {LI} at (185,285) size 130x130 [bgcolor=#008000]
diff --git a/LayoutTests/platform/gtk/css3/blending/background-blend-mode-image-image-expected.png b/LayoutTests/platform/gtk/css3/blending/background-blend-mode-image-image-expected.png
new file mode 100644
index 0000000..03a1b47
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/background-blend-mode-image-image-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/css3/blending/background-blend-mode-image-image-expected.txt b/LayoutTests/platform/gtk/css3/blending/background-blend-mode-image-image-expected.txt
new file mode 100644
index 0000000..bc7c007
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/background-blend-mode-image-image-expected.txt
@@ -0,0 +1,19 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x436
+  RenderBlock {HTML} at (0,0) size 800x436
+    RenderBody {BODY} at (8,16) size 784x0
+      RenderBlock {UL} at (0,0) size 784x0
+        RenderBlock (floating) {LI} at (45,5) size 130x130
+        RenderBlock (floating) {LI} at (185,5) size 130x130
+        RenderBlock (floating) {LI} at (325,5) size 130x130
+        RenderBlock (floating) {LI} at (605,5) size 130x130
+        RenderBlock (floating) {LI} at (45,145) size 130x130
+        RenderBlock (floating) {LI} at (185,145) size 130x130
+        RenderBlock (floating) {LI} at (325,145) size 130x130
+        RenderBlock (floating) {LI} at (465,145) size 130x130
+        RenderBlock (floating) {LI} at (605,145) size 130x130
+        RenderBlock (floating) {LI} at (45,285) size 130x130
+        RenderBlock (floating) {LI} at (185,285) size 130x130
+layer at (473,21) size 130x130
+  RenderBlock (floating) {LI} at (465,5) size 130x130
diff --git a/LayoutTests/platform/gtk/css3/blending/background-blend-mode-single-layer-no-blending-expected.png b/LayoutTests/platform/gtk/css3/blending/background-blend-mode-single-layer-no-blending-expected.png
new file mode 100644
index 0000000..09f432b
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/background-blend-mode-single-layer-no-blending-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/css3/blending/background-blend-mode-single-layer-no-blending-expected.txt b/LayoutTests/platform/gtk/css3/blending/background-blend-mode-single-layer-no-blending-expected.txt
new file mode 100644
index 0000000..48e6aae
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/background-blend-mode-single-layer-no-blending-expected.txt
@@ -0,0 +1,6 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x216
+  RenderBlock {HTML} at (0,0) size 800x216
+    RenderBody {BODY} at (8,8) size 784x200
+      RenderBlock {DIV} at (0,0) size 200x200
diff --git a/LayoutTests/platform/gtk/css3/blending/blend-mode-background-expected.png b/LayoutTests/platform/gtk/css3/blending/blend-mode-background-expected.png
new file mode 100644
index 0000000..2103cc8
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/blend-mode-background-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/css3/blending/blend-mode-background-expected.txt b/LayoutTests/platform/gtk/css3/blending/blend-mode-background-expected.txt
new file mode 100644
index 0000000..4271380
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/blend-mode-background-expected.txt
@@ -0,0 +1,6 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x100
+  RenderBlock {HTML} at (0,0) size 800x100
+    RenderBody {BODY} at (8,20) size 784x60 [bgcolor=#0000FF]
+      RenderBlock {DIV} at (20,0) size 60x60 [bgcolor=#FF0000]
diff --git a/LayoutTests/platform/gtk/css3/blending/blend-mode-isolation-flags-remove-non-stacking-context-blending-expected.png b/LayoutTests/platform/gtk/css3/blending/blend-mode-isolation-flags-remove-non-stacking-context-blending-expected.png
new file mode 100644
index 0000000..d9d56ed
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/blend-mode-isolation-flags-remove-non-stacking-context-blending-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/css3/blending/blend-mode-isolation-flags-remove-non-stacking-context-blending-expected.txt b/LayoutTests/platform/gtk/css3/blending/blend-mode-isolation-flags-remove-non-stacking-context-blending-expected.txt
new file mode 100644
index 0000000..f217f56
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/blend-mode-isolation-flags-remove-non-stacking-context-blending-expected.txt
@@ -0,0 +1,9 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x116
+  RenderBlock {HTML} at (0,0) size 800x116
+    RenderBody {BODY} at (8,8) size 784x100
+layer at (8,8) size 100x100
+  RenderBlock (relative positioned) {DIV} at (0,0) size 100x100 [bgcolor=#00FF00]
+layer at (58,8) size 100x100
+  RenderBlock (relative positioned) {DIV} at (0,0) size 100x100 [bgcolor=#FFFF00]
diff --git a/LayoutTests/platform/gtk/css3/blending/blend-mode-isolation-flags-remove-stacking-context-blending-expected.png b/LayoutTests/platform/gtk/css3/blending/blend-mode-isolation-flags-remove-stacking-context-blending-expected.png
new file mode 100644
index 0000000..d9d56ed
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/blend-mode-isolation-flags-remove-stacking-context-blending-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/css3/blending/blend-mode-isolation-flags-remove-stacking-context-blending-expected.txt b/LayoutTests/platform/gtk/css3/blending/blend-mode-isolation-flags-remove-stacking-context-blending-expected.txt
new file mode 100644
index 0000000..f217f56
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/blend-mode-isolation-flags-remove-stacking-context-blending-expected.txt
@@ -0,0 +1,9 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x116
+  RenderBlock {HTML} at (0,0) size 800x116
+    RenderBody {BODY} at (8,8) size 784x100
+layer at (8,8) size 100x100
+  RenderBlock (relative positioned) {DIV} at (0,0) size 100x100 [bgcolor=#00FF00]
+layer at (58,8) size 100x100
+  RenderBlock (relative positioned) {DIV} at (0,0) size 100x100 [bgcolor=#FFFF00]
diff --git a/LayoutTests/platform/gtk/css3/blending/svg-blend-layer-blend-expected.png b/LayoutTests/platform/gtk/css3/blending/svg-blend-layer-blend-expected.png
new file mode 100644
index 0000000..7857713
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/svg-blend-layer-blend-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/css3/blending/svg-blend-layer-blend-expected.txt b/LayoutTests/platform/gtk/css3/blending/svg-blend-layer-blend-expected.txt
new file mode 100644
index 0000000..3dcb053
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/svg-blend-layer-blend-expected.txt
@@ -0,0 +1,15 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x460
+  RenderBlock {HTML} at (0,0) size 800x460
+    RenderBody {BODY} at (8,16) size 784x436
+      RenderBlock {P} at (0,0) size 784x17
+        RenderText {#text} at (0,0) size 534x17
+          text run at (0,0) width 534: "Test for isolation caused by blending. This test passes if the whole rectangle is green."
+      RenderBlock (anonymous) at (0,33) size 784x403
+        RenderSVGRoot {svg} at (8,49) size 160x160
+          RenderSVGContainer {g} at (8,49) size 160x160 [transform={m=((4.00,0.00)(0.00,4.00)) t=(0.00,0.00)}]
+            RenderSVGRect {rect} at (8,49) size 160x160 [fill={[type=SOLID] [color=#00FF00]}] [x=0.00] [y=0.00] [width=40.00] [height=40.00]
+            RenderSVGContainer {g} at (48,89) size 80x80
+              RenderSVGRect {rect} at (48,89) size 80x80 [fill={[type=SOLID] [color=#00FF00]}] [x=10.00] [y=10.00] [width=20.00] [height=20.00]
+        RenderText {#text} at (0,0) size 0x0
diff --git a/LayoutTests/platform/gtk/css3/blending/svg-blend-layer-filter-expected.png b/LayoutTests/platform/gtk/css3/blending/svg-blend-layer-filter-expected.png
new file mode 100644
index 0000000..95dc26f
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/svg-blend-layer-filter-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/css3/blending/svg-blend-layer-filter-expected.txt b/LayoutTests/platform/gtk/css3/blending/svg-blend-layer-filter-expected.txt
new file mode 100644
index 0000000..fc828d3
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/svg-blend-layer-filter-expected.txt
@@ -0,0 +1,20 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x460
+  RenderBlock {HTML} at (0,0) size 800x460
+    RenderBody {BODY} at (8,16) size 784x436
+      RenderBlock {P} at (0,0) size 784x17
+        RenderText {#text} at (0,0) size 519x17
+          text run at (0,0) width 519: "Test for isolation caused by a filter. This test passes if the whole rectangle is green."
+      RenderBlock (anonymous) at (0,33) size 784x403
+        RenderSVGRoot {svg} at (8,49) size 160x160
+          RenderSVGHiddenContainer {defs} at (0,0) size 0x0
+            RenderSVGResourceFilter {filter} [id="f1"] [filterUnits=objectBoundingBox] [primitiveUnits=userSpaceOnUse]
+              [feGaussianBlur stdDeviation="15.00, 15.00"]
+                [SourceGraphic]
+          RenderSVGContainer {g} at (8,49) size 160x160 [transform={m=((4.00,0.00)(0.00,4.00)) t=(0.00,0.00)}]
+            RenderSVGRect {rect} at (8,49) size 160x160 [fill={[type=SOLID] [color=#00FF00]}] [x=0.00] [y=0.00] [width=40.00] [height=40.00]
+            RenderSVGContainer {g} at (48,89) size 96x96
+              [filter="f1"] RenderSVGResourceFilter {filter} at (10,10) size 24x24
+              RenderSVGRect {rect} at (48,89) size 80x80 [fill={[type=SOLID] [color=#00FF00]}] [x=10.00] [y=10.00] [width=20.00] [height=20.00]
+        RenderText {#text} at (0,0) size 0x0
diff --git a/LayoutTests/platform/gtk/css3/blending/svg-blend-layer-mask-expected.png b/LayoutTests/platform/gtk/css3/blending/svg-blend-layer-mask-expected.png
new file mode 100644
index 0000000..68067bd
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/svg-blend-layer-mask-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/css3/blending/svg-blend-layer-mask-expected.txt b/LayoutTests/platform/gtk/css3/blending/svg-blend-layer-mask-expected.txt
new file mode 100644
index 0000000..8128d25
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/svg-blend-layer-mask-expected.txt
@@ -0,0 +1,19 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x460
+  RenderBlock {HTML} at (0,0) size 800x460
+    RenderBody {BODY} at (8,16) size 784x436
+      RenderBlock {P} at (0,0) size 784x17
+        RenderText {#text} at (0,0) size 523x17
+          text run at (0,0) width 523: "Test for isolation caused by a mask. This test passes if the whole rectangle is green."
+      RenderBlock (anonymous) at (0,33) size 784x403
+        RenderSVGRoot {svg} at (8,49) size 160x160
+          RenderSVGHiddenContainer {defs} at (0,0) size 0x0
+            RenderSVGResourceMasker {mask} [id="msk"] [maskUnits=objectBoundingBox] [maskContentUnits=userSpaceOnUse]
+              RenderSVGRect {rect} at (18,59) size 20x20 [fill={[type=SOLID] [color=#FFFFFF]}] [x=10.00] [y=10.00] [width=20.00] [height=20.00]
+          RenderSVGContainer {g} at (8,49) size 160x160 [transform={m=((4.00,0.00)(0.00,4.00)) t=(0.00,0.00)}]
+            RenderSVGRect {rect} at (8,49) size 160x160 [fill={[type=SOLID] [color=#00FF00]}] [x=0.00] [y=0.00] [width=40.00] [height=40.00]
+            RenderSVGContainer {g} at (48,89) size 80x80
+              [masker="msk"] RenderSVGResourceMasker {mask} at (10,10) size 20x20
+              RenderSVGRect {rect} at (48,89) size 80x80 [fill={[type=SOLID] [color=#00FF00]}] [x=10.00] [y=10.00] [width=20.00] [height=20.00]
+        RenderText {#text} at (0,0) size 0x0
diff --git a/LayoutTests/platform/gtk/css3/blending/svg-blend-layer-opacity-expected.png b/LayoutTests/platform/gtk/css3/blending/svg-blend-layer-opacity-expected.png
new file mode 100644
index 0000000..5b1cee6
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/svg-blend-layer-opacity-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/css3/blending/svg-blend-layer-opacity-expected.txt b/LayoutTests/platform/gtk/css3/blending/svg-blend-layer-opacity-expected.txt
new file mode 100644
index 0000000..474db6e
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/svg-blend-layer-opacity-expected.txt
@@ -0,0 +1,15 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x460
+  RenderBlock {HTML} at (0,0) size 800x460
+    RenderBody {BODY} at (8,16) size 784x436
+      RenderBlock {P} at (0,0) size 784x17
+        RenderText {#text} at (0,0) size 525x17
+          text run at (0,0) width 525: "Test for isolation caused by opacity. This test passes if the whole rectangle is green."
+      RenderBlock (anonymous) at (0,33) size 784x403
+        RenderSVGRoot {svg} at (8,49) size 160x160
+          RenderSVGContainer {g} at (8,49) size 160x160 [transform={m=((4.00,0.00)(0.00,4.00)) t=(0.00,0.00)}]
+            RenderSVGRect {rect} at (8,49) size 160x160 [fill={[type=SOLID] [color=#00FF00]}] [x=0.00] [y=0.00] [width=40.00] [height=40.00]
+            RenderSVGContainer {g} at (48,89) size 80x80 [opacity=0.50]
+              RenderSVGRect {rect} at (48,89) size 80x80 [fill={[type=SOLID] [color=#00FF00]}] [x=10.00] [y=10.00] [width=20.00] [height=20.00]
+        RenderText {#text} at (0,0) size 0x0
diff --git a/LayoutTests/platform/gtk/css3/blending/svg-blend-layer-shadow-expected.png b/LayoutTests/platform/gtk/css3/blending/svg-blend-layer-shadow-expected.png
new file mode 100644
index 0000000..dda6860
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/svg-blend-layer-shadow-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/css3/blending/svg-blend-layer-shadow-expected.txt b/LayoutTests/platform/gtk/css3/blending/svg-blend-layer-shadow-expected.txt
new file mode 100644
index 0000000..265698f
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/svg-blend-layer-shadow-expected.txt
@@ -0,0 +1,15 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x460
+  RenderBlock {HTML} at (0,0) size 800x460
+    RenderBody {BODY} at (8,16) size 784x436
+      RenderBlock {P} at (0,0) size 784x17
+        RenderText {#text} at (0,0) size 614x17
+          text run at (0,0) width 614: "Test for isolation caused by a webkit-svg-shadow. This test passes if the whole rectangle is green."
+      RenderBlock (anonymous) at (0,33) size 784x403
+        RenderSVGRoot {svg} at (8,49) size 160x160
+          RenderSVGContainer {g} at (8,49) size 160x160 [transform={m=((4.00,0.00)(0.00,4.00)) t=(0.00,0.00)}]
+            RenderSVGRect {rect} at (8,49) size 160x160 [fill={[type=SOLID] [color=#00FF00]}] [x=0.00] [y=0.00] [width=40.00] [height=40.00]
+            RenderSVGContainer {g} at (24,65) size 128x128
+              RenderSVGRect {rect} at (40,81) size 96x96 [fill={[type=SOLID] [color=#00FF00]}] [x=10.00] [y=10.00] [width=20.00] [height=20.00]
+        RenderText {#text} at (0,0) size 0x0
diff --git a/LayoutTests/platform/gtk/css3/blending/svg-blend-multiply-alpha-expected.png b/LayoutTests/platform/gtk/css3/blending/svg-blend-multiply-alpha-expected.png
new file mode 100644
index 0000000..2e20cc0
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/svg-blend-multiply-alpha-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/css3/blending/svg-blend-multiply-alpha-expected.txt b/LayoutTests/platform/gtk/css3/blending/svg-blend-multiply-alpha-expected.txt
new file mode 100644
index 0000000..ed36e8d
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/svg-blend-multiply-alpha-expected.txt
@@ -0,0 +1,27 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x419
+  RenderBlock {HTML} at (0,0) size 800x419
+    RenderBody {BODY} at (8,8) size 784x403
+      RenderSVGRoot {svg} at (8,8) size 160x160
+        RenderSVGHiddenContainer {defs} at (0,0) size 0x0
+          RenderSVGContainer {g} at (8,8) size 40x40
+            RenderSVGRect {rect} at (8,8) size 10x40 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=10.00] [height=40.00]
+            RenderSVGRect {rect} at (18,8) size 10x40 [fill={[type=SOLID] [color=#00FF00]}] [x=10.00] [y=0.00] [width=10.00] [height=40.00]
+            RenderSVGRect {rect} at (28,8) size 10x40 [fill={[type=SOLID] [color=#0000FF]}] [x=20.00] [y=0.00] [width=10.00] [height=40.00]
+            RenderSVGRect {rect} at (38,8) size 10x40 [fill={[type=SOLID] [color=#7F7F00]}] [x=30.00] [y=0.00] [width=10.00] [height=40.00]
+          RenderSVGRect {rect} at (8,8) size 10x10 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=10.00] [height=10.00]
+        RenderSVGContainer {g} at (8,8) size 160x160 [transform={m=((4.00,0.00)(0.00,4.00)) t=(0.00,0.00)}]
+          RenderSVGContainer {use} at (8,8) size 160x160
+            RenderSVGContainer {g} at (8,8) size 160x160
+              RenderSVGRect {rect} at (8,8) size 40x160 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=10.00] [height=40.00]
+              RenderSVGRect {rect} at (48,8) size 40x160 [fill={[type=SOLID] [color=#00FF00]}] [x=10.00] [y=0.00] [width=10.00] [height=40.00]
+              RenderSVGRect {rect} at (88,8) size 40x160 [fill={[type=SOLID] [color=#0000FF]}] [x=20.00] [y=0.00] [width=10.00] [height=40.00]
+              RenderSVGRect {rect} at (128,8) size 40x160 [fill={[type=SOLID] [color=#7F7F00]}] [x=30.00] [y=0.00] [width=10.00] [height=40.00]
+          RenderSVGContainer {use} at (8,8) size 160x160 [transform={m=((0.00,1.00)(-1.00,0.00)) t=(40.00,0.00)}] [opacity=0.50]
+            RenderSVGContainer {g} at (8,8) size 160x160
+              RenderSVGRect {rect} at (8,8) size 160x40 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=10.00] [height=40.00]
+              RenderSVGRect {rect} at (8,48) size 160x40 [fill={[type=SOLID] [color=#00FF00]}] [x=10.00] [y=0.00] [width=10.00] [height=40.00]
+              RenderSVGRect {rect} at (8,88) size 160x40 [fill={[type=SOLID] [color=#0000FF]}] [x=20.00] [y=0.00] [width=10.00] [height=40.00]
+              RenderSVGRect {rect} at (8,128) size 160x40 [fill={[type=SOLID] [color=#7F7F00]}] [x=30.00] [y=0.00] [width=10.00] [height=40.00]
+      RenderText {#text} at (0,0) size 0x0
diff --git a/LayoutTests/platform/gtk/css3/blending/svg-blend-normal-expected.png b/LayoutTests/platform/gtk/css3/blending/svg-blend-normal-expected.png
new file mode 100644
index 0000000..41dacfd
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/svg-blend-normal-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/css3/blending/svg-blend-normal-expected.txt b/LayoutTests/platform/gtk/css3/blending/svg-blend-normal-expected.txt
new file mode 100644
index 0000000..33015bd
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/svg-blend-normal-expected.txt
@@ -0,0 +1,27 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x419
+  RenderBlock {HTML} at (0,0) size 800x419
+    RenderBody {BODY} at (8,8) size 784x403
+      RenderSVGRoot {svg} at (8,8) size 160x160
+        RenderSVGHiddenContainer {defs} at (0,0) size 0x0
+          RenderSVGContainer {g} at (8,8) size 40x40
+            RenderSVGRect {rect} at (8,8) size 10x40 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=10.00] [height=40.00]
+            RenderSVGRect {rect} at (18,8) size 10x40 [fill={[type=SOLID] [color=#00FF00]}] [x=10.00] [y=0.00] [width=10.00] [height=40.00]
+            RenderSVGRect {rect} at (28,8) size 10x40 [fill={[type=SOLID] [color=#0000FF]}] [x=20.00] [y=0.00] [width=10.00] [height=40.00]
+            RenderSVGRect {rect} at (38,8) size 10x40 [fill={[type=SOLID] [color=#7F7F00]}] [x=30.00] [y=0.00] [width=10.00] [height=40.00]
+          RenderSVGRect {rect} at (8,8) size 10x10 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=10.00] [height=10.00]
+        RenderSVGContainer {g} at (8,8) size 160x160 [transform={m=((4.00,0.00)(0.00,4.00)) t=(0.00,0.00)}]
+          RenderSVGContainer {use} at (8,8) size 160x160
+            RenderSVGContainer {g} at (8,8) size 160x160
+              RenderSVGRect {rect} at (8,8) size 40x160 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=10.00] [height=40.00]
+              RenderSVGRect {rect} at (48,8) size 40x160 [fill={[type=SOLID] [color=#00FF00]}] [x=10.00] [y=0.00] [width=10.00] [height=40.00]
+              RenderSVGRect {rect} at (88,8) size 40x160 [fill={[type=SOLID] [color=#0000FF]}] [x=20.00] [y=0.00] [width=10.00] [height=40.00]
+              RenderSVGRect {rect} at (128,8) size 40x160 [fill={[type=SOLID] [color=#7F7F00]}] [x=30.00] [y=0.00] [width=10.00] [height=40.00]
+          RenderSVGContainer {use} at (8,8) size 160x160 [transform={m=((0.00,1.00)(-1.00,0.00)) t=(40.00,0.00)}]
+            RenderSVGContainer {g} at (8,8) size 160x160
+              RenderSVGRect {rect} at (8,8) size 160x40 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=10.00] [height=40.00]
+              RenderSVGRect {rect} at (8,48) size 160x40 [fill={[type=SOLID] [color=#00FF00]}] [x=10.00] [y=0.00] [width=10.00] [height=40.00]
+              RenderSVGRect {rect} at (8,88) size 160x40 [fill={[type=SOLID] [color=#0000FF]}] [x=20.00] [y=0.00] [width=10.00] [height=40.00]
+              RenderSVGRect {rect} at (8,128) size 160x40 [fill={[type=SOLID] [color=#7F7F00]}] [x=30.00] [y=0.00] [width=10.00] [height=40.00]
+      RenderText {#text} at (0,0) size 0x0
diff --git a/LayoutTests/platform/gtk/css3/blending/svg-blend-plus-darker-expected.png b/LayoutTests/platform/gtk/css3/blending/svg-blend-plus-darker-expected.png
new file mode 100644
index 0000000..41dacfd
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/svg-blend-plus-darker-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/css3/blending/svg-blend-plus-darker-expected.txt b/LayoutTests/platform/gtk/css3/blending/svg-blend-plus-darker-expected.txt
new file mode 100644
index 0000000..33015bd
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/svg-blend-plus-darker-expected.txt
@@ -0,0 +1,27 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x419
+  RenderBlock {HTML} at (0,0) size 800x419
+    RenderBody {BODY} at (8,8) size 784x403
+      RenderSVGRoot {svg} at (8,8) size 160x160
+        RenderSVGHiddenContainer {defs} at (0,0) size 0x0
+          RenderSVGContainer {g} at (8,8) size 40x40
+            RenderSVGRect {rect} at (8,8) size 10x40 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=10.00] [height=40.00]
+            RenderSVGRect {rect} at (18,8) size 10x40 [fill={[type=SOLID] [color=#00FF00]}] [x=10.00] [y=0.00] [width=10.00] [height=40.00]
+            RenderSVGRect {rect} at (28,8) size 10x40 [fill={[type=SOLID] [color=#0000FF]}] [x=20.00] [y=0.00] [width=10.00] [height=40.00]
+            RenderSVGRect {rect} at (38,8) size 10x40 [fill={[type=SOLID] [color=#7F7F00]}] [x=30.00] [y=0.00] [width=10.00] [height=40.00]
+          RenderSVGRect {rect} at (8,8) size 10x10 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=10.00] [height=10.00]
+        RenderSVGContainer {g} at (8,8) size 160x160 [transform={m=((4.00,0.00)(0.00,4.00)) t=(0.00,0.00)}]
+          RenderSVGContainer {use} at (8,8) size 160x160
+            RenderSVGContainer {g} at (8,8) size 160x160
+              RenderSVGRect {rect} at (8,8) size 40x160 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=10.00] [height=40.00]
+              RenderSVGRect {rect} at (48,8) size 40x160 [fill={[type=SOLID] [color=#00FF00]}] [x=10.00] [y=0.00] [width=10.00] [height=40.00]
+              RenderSVGRect {rect} at (88,8) size 40x160 [fill={[type=SOLID] [color=#0000FF]}] [x=20.00] [y=0.00] [width=10.00] [height=40.00]
+              RenderSVGRect {rect} at (128,8) size 40x160 [fill={[type=SOLID] [color=#7F7F00]}] [x=30.00] [y=0.00] [width=10.00] [height=40.00]
+          RenderSVGContainer {use} at (8,8) size 160x160 [transform={m=((0.00,1.00)(-1.00,0.00)) t=(40.00,0.00)}]
+            RenderSVGContainer {g} at (8,8) size 160x160
+              RenderSVGRect {rect} at (8,8) size 160x40 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=10.00] [height=40.00]
+              RenderSVGRect {rect} at (8,48) size 160x40 [fill={[type=SOLID] [color=#00FF00]}] [x=10.00] [y=0.00] [width=10.00] [height=40.00]
+              RenderSVGRect {rect} at (8,88) size 160x40 [fill={[type=SOLID] [color=#0000FF]}] [x=20.00] [y=0.00] [width=10.00] [height=40.00]
+              RenderSVGRect {rect} at (8,128) size 160x40 [fill={[type=SOLID] [color=#7F7F00]}] [x=30.00] [y=0.00] [width=10.00] [height=40.00]
+      RenderText {#text} at (0,0) size 0x0
diff --git a/LayoutTests/platform/gtk/css3/blending/svg-blend-plus-lighter-expected.png b/LayoutTests/platform/gtk/css3/blending/svg-blend-plus-lighter-expected.png
new file mode 100644
index 0000000..41dacfd
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/svg-blend-plus-lighter-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/css3/blending/svg-blend-plus-lighter-expected.txt b/LayoutTests/platform/gtk/css3/blending/svg-blend-plus-lighter-expected.txt
new file mode 100644
index 0000000..33015bd
--- /dev/null
+++ b/LayoutTests/platform/gtk/css3/blending/svg-blend-plus-lighter-expected.txt
@@ -0,0 +1,27 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x419
+  RenderBlock {HTML} at (0,0) size 800x419
+    RenderBody {BODY} at (8,8) size 784x403
+      RenderSVGRoot {svg} at (8,8) size 160x160
+        RenderSVGHiddenContainer {defs} at (0,0) size 0x0
+          RenderSVGContainer {g} at (8,8) size 40x40
+            RenderSVGRect {rect} at (8,8) size 10x40 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=10.00] [height=40.00]
+            RenderSVGRect {rect} at (18,8) size 10x40 [fill={[type=SOLID] [color=#00FF00]}] [x=10.00] [y=0.00] [width=10.00] [height=40.00]
+            RenderSVGRect {rect} at (28,8) size 10x40 [fill={[type=SOLID] [color=#0000FF]}] [x=20.00] [y=0.00] [width=10.00] [height=40.00]
+            RenderSVGRect {rect} at (38,8) size 10x40 [fill={[type=SOLID] [color=#7F7F00]}] [x=30.00] [y=0.00] [width=10.00] [height=40.00]
+          RenderSVGRect {rect} at (8,8) size 10x10 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=10.00] [height=10.00]
+        RenderSVGContainer {g} at (8,8) size 160x160 [transform={m=((4.00,0.00)(0.00,4.00)) t=(0.00,0.00)}]
+          RenderSVGContainer {use} at (8,8) size 160x160
+            RenderSVGContainer {g} at (8,8) size 160x160
+              RenderSVGRect {rect} at (8,8) size 40x160 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=10.00] [height=40.00]
+              RenderSVGRect {rect} at (48,8) size 40x160 [fill={[type=SOLID] [color=#00FF00]}] [x=10.00] [y=0.00] [width=10.00] [height=40.00]
+              RenderSVGRect {rect} at (88,8) size 40x160 [fill={[type=SOLID] [color=#0000FF]}] [x=20.00] [y=0.00] [width=10.00] [height=40.00]
+              RenderSVGRect {rect} at (128,8) size 40x160 [fill={[type=SOLID] [color=#7F7F00]}] [x=30.00] [y=0.00] [width=10.00] [height=40.00]
+          RenderSVGContainer {use} at (8,8) size 160x160 [transform={m=((0.00,1.00)(-1.00,0.00)) t=(40.00,0.00)}]
+            RenderSVGContainer {g} at (8,8) size 160x160
+              RenderSVGRect {rect} at (8,8) size 160x40 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=10.00] [height=40.00]
+              RenderSVGRect {rect} at (8,48) size 160x40 [fill={[type=SOLID] [color=#00FF00]}] [x=10.00] [y=0.00] [width=10.00] [height=40.00]
+              RenderSVGRect {rect} at (8,88) size 160x40 [fill={[type=SOLID] [color=#0000FF]}] [x=20.00] [y=0.00] [width=10.00] [height=40.00]
+              RenderSVGRect {rect} at (8,128) size 160x40 [fill={[type=SOLID] [color=#7F7F00]}] [x=30.00] [y=0.00] [width=10.00] [height=40.00]
+      RenderText {#text} at (0,0) size 0x0
diff --git a/LayoutTests/platform/gtk/fast/canvas/webgl/css-webkit-canvas-expected.png b/LayoutTests/platform/gtk/fast/canvas/webgl/css-webkit-canvas-expected.png
new file mode 100644
index 0000000..9192505
--- /dev/null
+++ b/LayoutTests/platform/gtk/fast/canvas/webgl/css-webkit-canvas-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/fast/canvas/webgl/css-webkit-canvas-expected.txt b/LayoutTests/platform/gtk/fast/canvas/webgl/css-webkit-canvas-expected.txt
new file mode 100644
index 0000000..d7faa2e
--- /dev/null
+++ b/LayoutTests/platform/gtk/fast/canvas/webgl/css-webkit-canvas-expected.txt
@@ -0,0 +1,6 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x600
+  RenderBlock {HTML} at (0,0) size 800x600
+    RenderBody {BODY} at (8,8) size 784x584
+      RenderImage {DIV} at (0,0) size 204x204 [border: (2px solid #000000)]
diff --git a/LayoutTests/platform/gtk/fast/canvas/webgl/css-webkit-canvas-repaint-expected.png b/LayoutTests/platform/gtk/fast/canvas/webgl/css-webkit-canvas-repaint-expected.png
new file mode 100644
index 0000000..9192505
--- /dev/null
+++ b/LayoutTests/platform/gtk/fast/canvas/webgl/css-webkit-canvas-repaint-expected.png
Binary files differ
diff --git a/LayoutTests/platform/gtk/fast/canvas/webgl/css-webkit-canvas-repaint-expected.txt b/LayoutTests/platform/gtk/fast/canvas/webgl/css-webkit-canvas-repaint-expected.txt
new file mode 100644
index 0000000..d7faa2e
--- /dev/null
+++ b/LayoutTests/platform/gtk/fast/canvas/webgl/css-webkit-canvas-repaint-expected.txt
@@ -0,0 +1,6 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x600
+  RenderBlock {HTML} at (0,0) size 800x600
+    RenderBody {BODY} at (8,8) size 784x584
+      RenderImage {DIV} at (0,0) size 204x204 [border: (2px solid #000000)]