Bug 1367363 - Update stylo-vs-stylo reftest expectations draft
authorShing Lyu <slyu@mozilla.com>
Thu, 25 May 2017 16:44:44 +0800
changeset 584960 6c856f0e4e4108cfd5c1dde516dbed821a13d2fb
parent 584959 7ea7a84434822ff5274545cdbe9f551f902ced40
child 630584 0286ba1a1eaffedbc84ea244e425fec028fb8ed5
push id60955
push userbmo:shing.lyu@gmail.com
push dateFri, 26 May 2017 09:18:24 +0000
bugs1367363
milestone55.0a1
Bug 1367363 - Update stylo-vs-stylo reftest expectations MozReview-Commit-ID: DVO2R2RQuiK
layout/reftests/bidi/reftest.list
layout/reftests/bugs/reftest.list
layout/reftests/counter-style/reftest.list
layout/reftests/css-display/reftest.list
layout/reftests/css-grid/reftest.list
layout/reftests/css-import/reftest.list
layout/reftests/css-mediaqueries/reftest.list
layout/reftests/css-parsing/reftest.list
layout/reftests/css-placeholder/input/reftest.list
layout/reftests/css-placeholder/reftest.list
layout/reftests/css-ruby/reftest.list
layout/reftests/css-selectors/reftest.list
layout/reftests/css-valuesandunits/reftest.list
layout/reftests/dom/reftest.list
layout/reftests/first-letter/reftest.list
layout/reftests/first-line/reftest.list
layout/reftests/font-face/reftest.list
layout/reftests/font-features/reftest.list
layout/reftests/font-loading-api/reftest.list
layout/reftests/forms/fieldset/reftest.list
layout/reftests/forms/input/number/reftest.list
layout/reftests/forms/legend/reftest.list
layout/reftests/forms/reftest.list
layout/reftests/forms/textarea/reftest.list
layout/reftests/image/reftest.list
layout/reftests/mathml/reftest.list
layout/reftests/native-theme/reftest.list
layout/reftests/pagination/reftest.list
layout/reftests/pixel-rounding/reftest.list
layout/reftests/printing/reftest.list
layout/reftests/scoped-style/reftest.list
layout/reftests/svg/as-image/reftest.list
layout/reftests/svg/reftest.list
layout/reftests/svg/smil/container/reftest.list
layout/reftests/svg/smil/event/reftest.list
layout/reftests/svg/smil/reftest.list
layout/reftests/svg/smil/repeat/reftest.list
layout/reftests/svg/smil/restart/reftest.list
layout/reftests/svg/smil/style/reftest.list
layout/reftests/svg/smil/syncbase/reftest.list
layout/reftests/svg/text/reftest.list
layout/reftests/tab-size/reftest.list
layout/reftests/text-overflow/reftest.list
layout/reftests/text/reftest.list
layout/reftests/transform/reftest.list
layout/reftests/w3c-css/received/reftest.list
layout/reftests/w3c-css/submitted/align3/reftest.list
layout/reftests/w3c-css/submitted/lists-3/reftest.list
layout/reftests/w3c-css/submitted/ruby/reftest.list
layout/reftests/w3c-css/submitted/text-decor-3/reftest.list
layout/reftests/webcomponents/reftest.list
layout/reftests/webkit-gradient/reftest.list
layout/reftests/writing-mode/reftest.list
--- a/layout/reftests/bidi/reftest.list
+++ b/layout/reftests/bidi/reftest.list
@@ -111,17 +111,17 @@ fails-if(webrender) == 413928-1.html 413
 == 612843-1.html 612843-1-ref.html
 == 613149-1a.html 613149-1-ref.html
 == 613149-1b.html 613149-1-ref.html
 fuzzy-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)&&!layersGPUAccelerated&&!azureSkia,36,2) == 613149-2a.html 613149-2-ref.html
 fuzzy-if(Android,24,1) fuzzy-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)&&!layersGPUAccelerated&&!azureSkia,36,2) == 613149-2b.html 613149-2-ref.html
 == 613157-1.html 613157-1-ref.html
 fuzzy-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)&&!layersGPUAccelerated&&!azureSkia,255,6) == 613157-2.html 613157-2-ref.html
 == 662288-1.html 662288-1-ref.html
-fails-if(styloVsGecko) == 670226-1.html 670226-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == 670226-1.html 670226-1-ref.html
 == 676245-1.html 676245-1-ref.html
 fuzzy-if(skiaContent,1,3) fails-if(styloVsGecko) == 698291-1.html 698291-1-ref.html
 == 698706-1.html 698706-1-ref.html
 == 704837-1.html 704837-1-ref.html
 == 712600-1.html 712600-1-ref.html
 == 712600-2.html 712600-2-ref.html
 == 712600-2-dyn.html 712600-2-ref.html
 == 712600-3.html 712600-3-ref.html
@@ -164,12 +164,12 @@ fuzzy-if(Android,254,557) == brackets-2a
 == brackets-2b-ltr.html brackets-2b-ltr-ref.html
 == brackets-2b-rtl.html brackets-2b-rtl-ref.html
 == brackets-2c-ltr.html brackets-2c-ltr-ref.html
 fuzzy-if(Android,254,231) == brackets-2c-rtl.html brackets-2c-rtl-ref.html
 == brackets-3a-ltr.html brackets-3a-ltr-ref.html
 == brackets-3a-rtl.html brackets-3a-rtl-ref.html
 == brackets-3b-ltr.html brackets-3b-ltr-ref.html
 == brackets-3b-rtl.html brackets-3b-rtl-ref.html
-fails-if(styloVsGecko) == 1217833-1.html 1217833-1-ref.html
-fails-if(styloVsGecko) == 1217833-2.html 1217833-2-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == 1217833-1.html 1217833-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == 1217833-2.html 1217833-2-ref.html
 == 1231175-1.html 1231175-1-ref.html
 == 1366623-1.html 1366623-1-ref.html
--- a/layout/reftests/bugs/reftest.list
+++ b/layout/reftests/bugs/reftest.list
@@ -89,20 +89,20 @@ fails-if(styloVsGecko) != 82711-1-ref.ht
 fails-if(styloVsGecko) != 82711-1-ref.html 82711-3-ref.html
 fails-if(styloVsGecko) != 82711-2-ref.html 82711-3-ref.html
 fuzzy-if(Android,4,1) == 84400-1.html 84400-1-ref.html
 fuzzy-if(skiaContent,2,13) == 84400-2.html 84400-2-ref.html
 == 97777-1.html 97777-1-ref.html
 == 97777-2.html 97777-2-ref.html
 == 98223-1.html 98223-1-ref.html
 == 98223-2.html 98223-2-ref.html
-fails-if(styloVsGecko) == 99850-1a.html 99850-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == 99850-1a.html 99850-1-ref.html
 random == 99850-1b.html 99850-1-ref.html # bug 471629
-fails-if(styloVsGecko) == 99850-1c.html 99850-1-ref.html
-fails-if(styloVsGecko) == 99850-1d.html 99850-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == 99850-1c.html 99850-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == 99850-1d.html 99850-1-ref.html
 == 105030-1.html 105030-1-ref.html
 == 109735-1.html 109735-1-ref.html
 == 116882-1.html 116882-1-ref.html
 == 120834-1a.html 120834-1-ref.html
 == 120834-2a.html 120834-2-ref.html
 == 120834-2b.html 120834-2-ref.html
 == 120834-2c.html 120834-2-ref.html
 == 120834-2d.html 120834-2-ref.html
@@ -461,17 +461,17 @@ fuzzy-if(skiaContent,2,3) == 339289-1.ht
 == 345267-1d.html 345267-1-ref.html
 != 345563-sub.xhtml 345563-sup.xhtml
 fuzzy-if(skiaContent,4,2) == 346774-1a.html 346774-1-ref.html
 fuzzy-if(skiaContent,4,2) == 346774-1b.html 346774-1-ref.html
 fuzzy-if(skiaContent,4,2) == 346774-1c.html 346774-1-ref.html
 == 347348-1.xhtml 347348-1-ref.xhtml
 == 347496-1.xhtml 347496-1-ref.xhtml
 == 347912-1.html 347912-1-ref.html
-fails-if(styloVsGecko) == 348049-1.xhtml 348049-1-ref.xhtml
+fails-if(styloVsGecko) fails-if(stylo) == 348049-1.xhtml 348049-1-ref.xhtml
 == 348516-1.html 348516-1-ref.html
 == 348516-2.html 348516-2-ref.html
 != 348516-2.html 348516-2-notref.html
 != 348516-3.html 348516-3-notref.html
 == 348597-1.html 348597-ref.html
 == 348809-1a.html 348809-1-ref.html
 == 348809-1b.html 348809-1-ref.html
 == 348809-1c.html 348809-1-ref.html
@@ -784,17 +784,17 @@ fails-if(!styloVsGecko) == 387344-1.html
 skip-if(!winWidget) == 391045.html 391045-ref.html # windows-specific Uniscribe bug, trailing period is matched against different fonts on Mac/Linux (see 396137)
 == 391140-1.html 391140-1-ref.html
 == 391412-1a.html 391412-1-ref.html
 == 391412-1b.html 391412-1-ref.html
 == 391909-1.html 391909-1-ref.html
 skip-if(Android) == 391979.html 391979-ref.html
 == 391994-1.html 391994-1-ref.html
 == 392047.html 392047-ref.html
-fails-if(styloVsGecko) == 392435-1.html 392435-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == 392435-1.html 392435-1-ref.html
 == 393330-1.html 393330-1-ref.html
 == 393490-1.html 393490-1-ref.html
 == 393517-1.xhtml about:blank  # crash test
 fuzzy-if(skiaContent,1,600) == 393649-1.html 393649-1-ref.html
 == 393655-1.html 393655-1-ref.html
 == 393655-2.html 393655-2-ref.html
 == 393655-3.html 393655-3-ref.html
 == 393655-4.html 393655-4-ref.html
@@ -841,17 +841,17 @@ fails-if(winWidget) fails-if(cocoaWidget
 == 400171-1a.html 400171-1-ref.html
 == 400171-1b.html 400171-1-ref.html
 == 400171-1c.html 400171-1-ref.html
 == 400171-2a.html 400171-2-ref.html
 == 400171-2b.html 400171-2-ref.html
 == 400171-2c.html 400171-2-ref.html
 == 400421-1.html 400421-1-ref.html
 == 400813-1.html 400813-1-ref.html
-fails-if(styloVsGecko) == 400826-1.html 400826-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == 400826-1.html 400826-1-ref.html
 == 401946-1.xul about:blank
 == 402338-1.html 402338-1-ref.html
 == 402567-1.html 402567-1-ref.html
 == 402567-2.html 402567-2-ref.html
 == 402567-3.html 402567-3-ref.html
 fuzzy-if(gtkWidget,2,40) == 402567-4.html 402567-4-ref.html
 fuzzy-if(skiaContent,2,5) == 402629-1.html 402629-1-ref.html
 fuzzy-if(skiaContent,2,5) == 402629-2.html 402629-2-ref.html
@@ -976,17 +976,17 @@ fuzzy-if(Android,11,17) == 413361-1.html
 == 413840-ltr-offsets.html 413840-ltr-offsets-ref.html
 == 413840-rtl-offsets.html 413840-rtl-offsets-ref.html
 == 413840-pushed-line-bullet.html 413840-pushed-line-bullet-ref.html
 == 413840-bullet-first-line.html 413840-bullet-first-line-ref.html
 == 413982.html 413982-ref.html
 == 414123.xhtml 414123-ref.xhtml
 == 414638.html 414638-ref.html
 == 414851-1.html 414851-1-ref.html
-fails-if(styloVsGecko) == 416106-1.xhtml 416106-1-ref.xhtml
+fails-if(styloVsGecko) fails-if(stylo) == 416106-1.xhtml 416106-1-ref.xhtml
 == 416752-1.html 416752-1-ref.html
 == 417178-1.html 417178-1-ref.html
 == 417246-1.html 417246-1-ref.html
 == 417676.html 417676-ref.html
 asserts(1) asserts-if(styloVsGecko,2) == 418574-1.html 418574-1-ref.html # bug 478135
 asserts(1) asserts-if(styloVsGecko,2) == 418574-2.html 418574-2-ref.html # bug 478135
 == 418766-1a.html 418766-1-ref.html
 == 418766-1b.html 418766-1-ref.html
@@ -1240,17 +1240,17 @@ fuzzy-if(skiaContent,1,12000) == 461512-
 == 466258-1.html 466258-1-ref.html
 == 466395-1.html 466395-1-ref.html
 == 466395-2.html 466395-2-ref.html
 == 467084-1.html 467084-1-ref.html
 == 467084-2.html 467084-2-ref.html
 == 467444-1.html 467444-1-ref.html
 == 467460-1.html 467460-1-ref.html
 == 468473-1.xul 468473-1-ref.xul
-fails-if(styloVsGecko) == 468546-1.xhtml 468546-1-ref.xhtml
+fails-if(styloVsGecko) fails-if(stylo) == 468546-1.xhtml 468546-1-ref.xhtml
 == 471356-1.html 471356-1-ref.html
 == 471594-1.xhtml 471594-1-ref.html
 fuzzy(255,15) == 472020-1a.xul 472020-1-ref.xul
 fails-if(!styloVsGecko) == 472020-1b.xul 472020-1-ref.xul
 fails-if(!styloVsGecko) == 472020-2.xul 472020-2-ref.xul
 == 472500-1.xul 472500-1-ref.xul
 == 472769-1a.html 472769-1-ref.html
 == 472769-1b.html 472769-1-ref.html
@@ -1316,18 +1316,18 @@ fails-if(Android) == 481024-1a.html 4810
 fails-if(Android) == 481024-1b.html 481024-1-ref.html
 fails-if(Android) == 481024-1c.html 481024-1-ref.html
 == 481024-1d.html 481024-1-ref.html
 == 481024-1e.html 481024-1-ref.html
 != 481948-1.html 481948-1-ref.html
 != 481948-2.html 481948-2-ref.html
 fails-if(Android) random-if(winWidget) fails-if(gtkWidget&&!styloVsGecko) == 481948-3.html 481948-3-ref.html # questionable test, see bug 488364
 == 482398-1.html 482398-1-ref.html
-random-if(d2d) fails-if(styloVsGecko) == 482592-1a.xhtml 482592-1-ref.html # bug 586771
-random-if(d2d) fails-if(styloVsGecko) == 482592-1b.xhtml 482592-1-ref.html # bug 586771
+random-if(d2d) fails-if(styloVsGecko) fails-if(stylo) == 482592-1a.xhtml 482592-1-ref.html # bug 586771
+random-if(d2d) fails-if(styloVsGecko) fails-if(stylo) == 482592-1b.xhtml 482592-1-ref.html # bug 586771
 random-if(winWidget) fuzzy-if(skiaContent,1,5) == 482659-1a.html 482659-1-ref.html
 fuzzy-if(skiaContent,1,5) == 482659-1b.html 482659-1-ref.html
 fuzzy-if(skiaContent,1,5) == 482659-1c.html 482659-1-ref.html
 fuzzy-if(skiaContent,1,5) == 482659-1d.html 482659-1-ref.html
 == 483565.xul 483565-ref.xul
 == 484256-1.html 484256-1-ref.html
 == 484256-2.html 484256-1-ref.html
 == 485012-1.html 485012-1-ref.html
@@ -1359,18 +1359,18 @@ pref(browser.display.focus_ring_width,1)
 pref(browser.display.focus_ring_width,1) == 491180-2.html 491180-2-ref.html
 == 491323-1.xul 491323-1-ref.xul
 == 492239-1.xul 492239-1-ref.xul
 == 492661-1.html 492661-1-ref.html
 == 493968-1.html 493968-1-ref.html
 == 494667-1.html 494667-1-ref.html
 == 494667-2.html 494667-2-ref.html
 == 495274-1.html 495274-1-ref.html
-fails-if(styloVsGecko) == 495354-1a.xhtml 495354-1-ref.xhtml
-fails-if(styloVsGecko) == 495354-1b.xhtml 495354-1-ref.xhtml
+fails-if(styloVsGecko) fails-if(stylo) == 495354-1a.xhtml 495354-1-ref.xhtml
+fails-if(styloVsGecko) fails-if(stylo) == 495354-1b.xhtml 495354-1-ref.xhtml
 == 495385-1a.html 495385-1-ref.html
 == 495385-1b.html 495385-1-ref.html
 == 495385-1c.html 495385-1-ref.html
 == 495385-1d.html 495385-1-ref.html
 == 495385-1e.html 495385-1-ref.html
 == 495385-1f.html 495385-1-ref.html
 == 495385-2a.html 495385-2-ref.html
 == 495385-2b.html 495385-2-ref.html
@@ -1379,17 +1379,17 @@ fails-if(styloVsGecko) == 495354-1b.xhtm
 == 495385-2e.html 495385-2-ref.html
 pref(dom.use_xbl_scopes_for_remote_xul,true) == 495385-2f.xhtml 495385-2-ref.html
 == 495385-2g.html 495385-2-ref.html
 == 495385-2h.html 495385-2-ref.html
 == 495385-2i.html 495385-2-ref.html
 == 495385-3.html 495385-3-ref.html
 == 495385-4.html 495385-4-ref.html
 fails-if(styloVsGecko) == 495385-5.html 495385-5-ref.html
-fails-if(styloVsGecko) == 496032-1.html 496032-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == 496032-1.html 496032-1-ref.html
 == 496840-1.html 496840-1-ref.html
 fuzzy-if(skiaContent,1,17000) == 498228-1.xul 498228-1-ref.xul
 == 501037.html 501037-ref.html
 == 501257-1a.html 501257-1-ref.html
 == 501257-1b.html 501257-1-ref.html
 == 501257-1.xhtml 501257-1-ref.xhtml
 == 501627-1.html 501627-1-ref.html
 == 502288-1.html 502288-1-ref.html
@@ -1550,17 +1550,17 @@ needs-focus == 568441.html 568441-ref.ht
 == 569006-1.html 569006-1-ref.html
 == 571281-1a.html 571281-1-ref.html
 == 571281-1b.html 571281-1-ref.html
 == 571281-1c.html 571281-1-ref.html
 == 571347-1a.html 571347-1-ref.html
 == 571347-1b.html 571347-1-ref.html
 == 571347-2a.html 571347-2-ref.html
 == 571347-2b.html 571347-2-ref.html
-fails-if(styloVsGecko) == 571347-2c.html 571347-2-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == 571347-2c.html 571347-2-ref.html
 == 571347-2d.html 571347-2-ref.html
 == 571347-3.html 571347-3-ref.html
 == 572598-1.html 572598-ref.html
 == 574898-1.html 574898-ref.html
 # 574907 is a windows-only issue, result on other platforms depends on details of font support
 random-if(!winWidget) random-if(/^Windows\x20NT\x2010\.0/.test(http.oscpu)) == 574907-1.html 574907-1-ref.html # Bug 1258240
 random-if(!winWidget) random-if(/^Windows\x20NT\x2010\.0/.test(http.oscpu)) == 574907-2.html 574907-2-ref.html # Bug 1258240
 # 574907-3 only worked under directwrite, and even there it now depends on the rendering mode; marking as random for now
@@ -1582,18 +1582,18 @@ fuzzy-if(Android,3,256) == 582037-2a.htm
 fuzzy-if(Android,3,256) == 582037-2b.html 582037-2-ref.html
 asserts(1-2) asserts-if(styloVsGecko,4) == 582146-1.html about:blank
 == 582476-1.svg 582476-1-ref.svg
 == 584400-dash-length.svg 584400-dash-length-ref.svg
 == 584699-1.html 584699-1-ref.html
 fuzzy-if(Android,2,48) == 585598-2.xhtml 585598-2-ref.xhtml
 == 586400-1.html 586400-1-ref.html
 fuzzy-if(d2d,52,1051) == 586683-1.html 586683-1-ref.html
-fails-if(styloVsGecko) == 589615-1a.xhtml 589615-1-ref.html
-fails-if(styloVsGecko) == 589615-1b.html 589615-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == 589615-1a.xhtml 589615-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == 589615-1b.html 589615-1-ref.html
 == 589672-1.html 589672-1-ref.html
 != 589682-1.html 589682-1-notref.html
 pref(dom.meta-viewport.enabled,true) skip-if(Android) == 593243-1.html 593243-1-ref.html # bug 593168
 pref(dom.meta-viewport.enabled,true) skip-if(Android) == 593243-2.html 593243-2-ref.html # bug 593168
 == 593544-1.html 593544-1-ref.html
 random-if(Android) == 594333-1.html 594333-1-ref.html
 == 594624-1.html 594624-1-ref.html
 == 594737-1.html 594737-1-ref.html
@@ -1644,17 +1644,17 @@ skip-if(Android) == 621253-1-internalFil
 HTTP(..) == 621253-2-externalFilter.html 621253-2-ref.html
 == 621253-2-internalFilter.html 621253-2-ref.html
 random-if(winWidget) == 621918-1.svg 621918-1-ref.svg # 1-pixel diacritic positioning discrepancy in rotated text (may depend on platform fonts)
 random-if(winWidget) HTTP(..) == 621918-2.svg 621918-2-ref.svg # same 1px issue as above, and HTTP(..) for filters.svg, used to mask antialiasing issues where glyphs touch
 fuzzy-if(d2d,5,1) == 622585-1.html 622585-1-ref.html # bug 789402
 fuzzy-if(Android,8,300) fuzzy-if(skiaContent,1,40000) == 625409-1.html 625409-1-ref.html
 == 627393-1.html about:blank
 fuzzy-if(skiaContent,1,500) == 630835-1.html about:blank
-fails-if(styloVsGecko) == 631352-1.html 631352-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == 631352-1.html 631352-1-ref.html
 skip-if(!haveTestPlugin) fails-if(Android) fuzzy-if(winWidget&&!layersGPUAccelerated,102,535) fuzzy-if(skiaContent&&!Android,102,11000) HTTP == 632423-1.html 632423-1-ref.html
 skip-if(Android) random-if(winWidget||OSX==1010) == 632781-verybig.html 632781-ref.html
 == 632781-normalsize.html 632781-ref.html
 fuzzy-if(d2d&&/^Windows\x20NT\x206\.2/.test(http.oscpu),1,559) fuzzy-if(!isDebugBuild&&gtkWidget&&/^Linux\x20i686/.test(http.oscpu),102,140) == 633344-1.html 633344-1-ref.html # bug 1103623, Linux32 from GCC update
 fuzzy-if(skiaContent,1,500) == 634232-1.html 634232-1-ref.html
 fuzzy-if(skiaContent,3,120000) == 635302-1.html 635302-1-ref.html
 fuzzy(1,68) fuzzy-if(gtkWidget,1,70) fails-if(Android) fuzzy-if(skiaContent&&!Android,1,300) == 635373-1.html 635373-1-ref.html
 random-if(d2d) fails-if(Android) fuzzy-if(winWidget&&!d2d,20,118) fuzzy-if(skiaContent&&!Android,2,550) == 635373-2.html 635373-2-ref.html
@@ -1662,17 +1662,17 @@ random-if(d2d) fails-if(Android) fuzzy-i
 HTTP(..) == 635639-1.html 635639-1-ref.html
 HTTP(..) == 635639-2.html 635639-2-ref.html
 random == 637597-1.html 637597-1-ref.html # bug 637597 was never really fixed!
 fuzzy-if(Android,8,500) == 637852-1.html 637852-1-ref.html
 fuzzy-if(Android,8,500) fuzzy-if(skiaContent,2,1) == 637852-2.html 637852-2-ref.html
 fuzzy-if(Android,8,500) == 637852-3.html 637852-3-ref.html
 == 641770-1.html 641770-1-ref.html
 == 641856-1.html 641856-1-ref.html
-fails-if(styloVsGecko) == 645491-1.html 645491-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == 645491-1.html 645491-1-ref.html
 == 645647-1.html 645647-1-ref.html
 == 645647-2.html 645647-2-ref.html
 == 645768-1.html 645768-1-ref.html
 fails-if(layersGPUAccelerated&&cocoaWidget) fuzzy-if(!layersGPUAccelerated,41,260) fuzzy-if(skiaContent,57,11000) == 650228-1.html 650228-1-ref.html # Quartz alpha blending doesn't match GL alpha blending
 needs-focus == 652301-1a.html 652301-1-ref.html
 needs-focus == 652301-1b.html 652301-1-ref.html
 fuzzy-if(skiaContent,2,5) == 652775-1.html 652775-1-ref.html
 HTTP == 652991-1a.html 652991-1-ref.html
@@ -1699,35 +1699,35 @@ fails-if(styloVsGecko) == 670467-2.html 
 == 690164-1.html 690164-1-ref.html
 == 690643-1.html 690643-1-ref.html
 != 691087-1.html 691087-1-ref.html
 == 691571-1.html 691571-1-ref.html
 fuzzy-if(skiaContent,1,200) == 696307-1.html 696307-1-ref.html
 fuzzy-if(skiaContent,1,550) == 696739-1.html 696739-1-ref.html
 needs-focus fails-if(styloVsGecko) == 703186-1.html 703186-1-ref.html
 needs-focus == 703186-2.html 703186-2-ref.html
-needs-focus fails-if(styloVsGecko) != 703186-1.html 703186-2.html
+needs-focus fails-if(styloVsGecko) fails-if(stylo) != 703186-1.html 703186-2.html
 == 711359-1.html 711359-1-ref.html
 == 712849-1.html 712849-1-ref.html
 == 713856-static.html  713856-ref.html
 == 713856-dynamic.html 713856-ref.html
 == 714519-1-as.html 714519-1-ref.html
 == 714519-1-q.html 714519-1-ref.html
 == 714519-2-as.html 714519-2-ref.html
 == 714519-2-q.html 714519-2-ref.html
 fuzzy-if(true,1,21) fuzzy-if(d2d,68,173) fuzzy-if(cocoaWidget,1,170) == 718521.html 718521-ref.html # bug 773482
 == 720987.html 720987-ref.html
 == 722888-1.html 722888-1-ref.html
 fuzzy(2,40000) == 722923-1.html 722923-1-ref.html
 == 723484-1.html 723484-1-ref.html
 random-if(Android) == 728983-1.html 728983-1-ref.html
 == 729143-1.html 729143-1-ref.html
-fails-if(styloVsGecko) == 731521-1.html 731521-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == 731521-1.html 731521-1-ref.html
 needs-focus fails-if(styloVsGecko) == 731726-1.html 731726-1-ref.html
-fails-if(styloVsGecko) == 735481-1.html 735481-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == 735481-1.html 735481-1-ref.html
 fuzzy-if(cocoaWidget,1,300000) fuzzy-if(skiaContent,2,300000) == 745934-1.html 745934-1-ref.html
 == 748692-1a.html 748692-1-ref.html
 == 748692-1b.html 748692-1-ref.html
 == 748803-1.html 748803-1-ref.html
 == 750551-1.html 750551-1-ref.html
 fuzzy-if(skiaContent,1,1) fails-if(styloVsGecko) == 751012-1a.html 751012-1-ref.html
 fuzzy-if(skiaContent,1,1) fails-if(styloVsGecko) == 751012-1b.html 751012-1-ref.html
 random-if(Android) == 753329-1.html about:blank
@@ -1774,21 +1774,21 @@ fuzzy-if(OSX,1,364) fuzzy-if(skiaContent
 == 848421-1.html 848421-1-ref.html
 == 849407-1.html 849407-1-ref.html
 == 849996-1.html 849996-1-ref.html
 == 858803-1.html 858803-1-ref.html
 == 860242-1.html 860242-1-ref.html
 != 860370.html 860370-notref.html
 == 871338-1.html 871338-1-ref.html
 == 875060-1.html 875060-1-ref.html
-fails-if(styloVsGecko) == 883987-1a.html 883987-1-ref.html
-fails-if(styloVsGecko) == 883987-1b.html 883987-1-ref.html
-fails-if(styloVsGecko) == 883987-1c.html 883987-1-ref.html
-fails-if(styloVsGecko) == 883987-1d.html 883987-1-ref.html
-fails-if(styloVsGecko) == 883987-1e.html 883987-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == 883987-1a.html 883987-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == 883987-1b.html 883987-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == 883987-1c.html 883987-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == 883987-1d.html 883987-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == 883987-1e.html 883987-1-ref.html
 == 883987-1f.html 883987-1-ref.html
 == 890495-1.html 890495-1-ref.html
 == 894931-1.html 894931-1-ref.html
 == 897491-1.html 897491-1-ref.html
 == 897491-2.html 897491-2-ref.html
 fuzzy(2,10000) fuzzy-if(Android,5,10000) == 902330-1.html 902330-1-ref.html
 fuzzy-if(Android,8,400) fails-if(webrender) == 906199-1.html 906199-1-ref.html
 == 921716-1.html 921716-1-ref.html
@@ -1806,17 +1806,17 @@ fuzzy-if(Android,1,1) fuzzy-if(skiaConte
 fuzzy-if(skiaContent,1,5) == 956513-1.svg 956513-1-ref.svg
 == 944291-1.html 944291-1-ref.html
 == 950436-1.html 950436-1-ref.html
 == 957770-1.svg 957770-1-ref.svg
 == 960277-1.html 960277-1-ref.html
 fuzzy-if(skiaContent,1,80) == 961887-1.html 961887-1-ref.html
 == 961887-2.html 961887-2-ref.html
 == 961887-3.html 961887-3-ref.html
-pref(layout.css.overflow-clip-box.enabled,true) fuzzy(50,145) fuzzy-if(asyncPan&&!layersGPUAccelerated,102,3712) fails-if(styloVsGecko) == 966992-1.html 966992-1-ref.html
+pref(layout.css.overflow-clip-box.enabled,true) fuzzy(50,145) fuzzy-if(asyncPan&&!layersGPUAccelerated,102,3712) fails-if(styloVsGecko) fails-if(stylo) == 966992-1.html 966992-1-ref.html
 skip-if(Android) == 966510-1.html 966510-1-ref.html # scrollable elements other than the root probably won't work well on android until bug 776030 is fixed
 skip-if(Android) == 966510-2.html 966510-2-ref.html # same as above
 fuzzy-if(skiaContent,1,123) == 978911-1.svg 978911-1-ref.svg
 == 983084-1.html 983084-1-ref.html
 skip-if(styloVsGecko) == 983084-2.html 983084-2-ref.html
 skip-if(styloVsGecko) == 983084-3.html 983084-1-ref.html
 == 983691-1.html 983691-ref.html
 HTTP(..) == 983985-1.html 983985-1-ref.html
@@ -1947,17 +1947,17 @@ fuzzy(1,74) fails-if(gtkWidget&&!styloVs
 fuzzy-if(skiaContent,1,1) == 1202512-2.html 1202512-2-ref.html
 != 1207326-1.html about:blank
 == 1209603-1.html 1209603-1-ref.html
 == 1209994-1.html 1209994-1-ref.html
 == 1209994-2.html 1209994-2-ref.html
 == 1209994-3.html 1209994-3-ref.html
 == 1209994-4.html 1209994-4-ref.html
 == 1222226-1.html 1222226-1-ref.html
-pref(layout.css.overflow-clip-box.enabled,true) fails-if(styloVsGecko) == 1226278.html 1226278-ref.html
+pref(layout.css.overflow-clip-box.enabled,true) fails-if(styloVsGecko) fails-if(stylo) == 1226278.html 1226278-ref.html
 == 1230466.html about:blank
 random-if(gtkWidget) != 1238243-1.html 1238243-1-notref.html # may fail on Linux, depending on Korean fonts available
 == 1238243-2.html 1238243-2-ref.html
 fuzzy(100,2000) == 1239564.html 1239564-ref.html
 == 1242172-1.html 1242172-1-ref.html
 == 1242172-2.html 1242172-2-ref.html
 == 1242781.html 1242781-ref.html
 == 1263845.html 1263845-ref.html
@@ -1989,17 +1989,17 @@ fuzzy(2,40000) == 1316719-1c.html 131671
 pref(layers.advanced.background-color,1) skip-if(!webrender) fuzzy-if(webrender,27,700) == 1316719-1a.html 1316719-1-ref.html
 pref(layers.advanced.background-color,1) skip-if(!webrender) fuzzy-if(webrender,27,700) == 1316719-1b.html 1316719-1-ref.html
 pref(layers.advanced.background-color,1) skip-if(!webrender) fuzzy-if(webrender,27,700) == 1316719-1c.html 1316719-1-ref.html
 skip-if(Android) != 1318769-1.html 1318769-1-ref.html
 fails-if(styloVsGecko) == 1322512-1.html 1322512-1-ref.html
 == 1330051.svg 1330051-ref.svg
 == 1348481-1.html 1348481-ref.html
 == 1348481-2.html 1348481-ref.html
-fails-if(styloVsGecko) == 1348481-3.html 1348481-ref.html
+skip-if(styloVsGecko) fails-if(stylo) == 1348481-3.html 1348481-ref.html
 == 1352464-1.html 1352464-1-ref.html
 == 1358375-1.html 1358375-ref.html
 == 1358375-2.html 1358375-ref.html
 == 1358375-3.html 1358375-ref.html
 == 1364280-1.html 1364280-1-ref.html
 == 1364280-2a.html 1364280-2-ref.html
 == 1364280-2b.html 1364280-2-ref.html
 == 1364280-2c.html 1364280-2-ref.html
--- a/layout/reftests/counter-style/reftest.list
+++ b/layout/reftests/counter-style/reftest.list
@@ -26,10 +26,10 @@ fails-if(webrender) == descriptor-range-
 fails-if(webrender) == descriptor-pad-invalid.html      descriptor-pad-invalid-ref.html
 fails-if(webrender) == descriptor-fallback.html         descriptor-fallback-ref.html
 fails-if(webrender) == descriptor-symbols-invalid.html  descriptor-symbols-invalid-ref.html
 == name-case-sensitivity.html       name-case-sensitivity-ref.html
 fails-if(webrender) == dependent-builtin.html           dependent-builtin-ref.html
 == redefine-builtin.html            redefine-builtin-ref.html
 == redefine-attr-mapping.html       redefine-attr-mapping-ref.html
 == disclosure-styles.html           disclosure-styles-ref.html
-fails-if(styloVsGecko) == symbols-function.html            symbols-function-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == symbols-function.html            symbols-function-ref.html
 == symbols-function-invalid.html    symbols-function-invalid-ref.html
--- a/layout/reftests/css-display/reftest.list
+++ b/layout/reftests/css-display/reftest.list
@@ -1,32 +1,32 @@
 # Tests for CSS Display spec features.
 # http://dev.w3.org/csswg/css-display
 
 fuzzy-if(Android,8,604) == display-contents-acid.html display-contents-acid-ref.html
 fuzzy-if(Android,8,604) == display-contents-acid-dyn-1.html display-contents-acid-ref.html
 fuzzy-if(Android,8,604) == display-contents-acid-dyn-2.html display-contents-acid-ref.html
 fuzzy-if(Android,8,604) == display-contents-acid-dyn-3.html display-contents-acid-ref.html
-skip-if(styloVsGecko) == display-contents-generated-content.html display-contents-generated-content-ref.html
-skip-if(styloVsGecko) == display-contents-generated-content-2.html display-contents-generated-content-ref.html
-fails-if(styloVsGecko) == display-contents-style-inheritance-1.html display-contents-style-inheritance-1-ref.html
-fails-if(styloVsGecko) == display-contents-style-inheritance-1-stylechange.html display-contents-style-inheritance-1-ref.html
-fuzzy-if(winWidget,12,100) skip-if(styloVsGecko) == display-contents-style-inheritance-1-dom-mutations.html display-contents-style-inheritance-1-ref.html
+skip-if(styloVsGecko) skip-if(stylo) == display-contents-generated-content.html display-contents-generated-content-ref.html
+skip-if(styloVsGecko) skip-if(stylo) == display-contents-generated-content-2.html display-contents-generated-content-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == display-contents-style-inheritance-1.html display-contents-style-inheritance-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == display-contents-style-inheritance-1-stylechange.html display-contents-style-inheritance-1-ref.html
+fuzzy-if(winWidget,12,100) skip-if(styloVsGecko) skip-if(stylo) == display-contents-style-inheritance-1-dom-mutations.html display-contents-style-inheritance-1-ref.html
 == display-contents-tables.xhtml display-contents-tables-ref.xhtml
 == display-contents-tables-2.xhtml display-contents-tables-ref.xhtml
 == display-contents-tables-3.xhtml display-contents-tables-3-ref.xhtml
 == display-contents-visibility-hidden.html display-contents-visibility-hidden-ref.html
 == display-contents-visibility-hidden-2.html display-contents-visibility-hidden-ref.html
 == display-contents-495385-2d.html display-contents-495385-2d-ref.html
 fuzzy-if(Android,7,3935) == display-contents-xbl.xhtml display-contents-xbl-ref.html
-fuzzy-if(Android,7,1186) pref(dom.webcomponents.enabled,true) skip-if(styloVsGecko) == display-contents-shadow-dom-1.html display-contents-shadow-dom-1-ref.html
+fuzzy-if(Android,7,1186) pref(dom.webcomponents.enabled,true) skip-if(styloVsGecko) skip-if(stylo) == display-contents-shadow-dom-1.html display-contents-shadow-dom-1-ref.html
 == display-contents-xbl-2.xul display-contents-xbl-2-ref.xul
 asserts(1) asserts-if(styloVsGecko,2) == display-contents-xbl-3.xul display-contents-xbl-3-ref.xul # bug 1089223
 skip == display-contents-xbl-4.xul display-contents-xbl-4-ref.xul # fails (not just asserts) due to bug 1089223
 asserts(0-1) fuzzy-if(Android,8,3216) == display-contents-fieldset.html display-contents-fieldset-ref.html # bug 1089223
 asserts(1) asserts-if(styloVsGecko,2) == display-contents-xbl-5.xul display-contents-xbl-3-ref.xul # bug 1089223
 == display-contents-list-item-child.html display-contents-list-item-child-ref.html
 == display-contents-dyn-insert-text.html display-contents-dyn-insert-text-ref.html
 == display-contents-writing-mode-1.html display-contents-writing-mode-1-ref.html
 == display-contents-writing-mode-2.html display-contents-writing-mode-2-ref.html
 needs-focus == display-contents-state-change.html display-contents-state-change-ref.html
 pref(layout.css.display-flow-root.enabled,true) == display-flow-root-001.html display-flow-root-001-ref.html
-pref(layout.css.display-flow-root.enabled,false) fails-if(styloVsGecko) == display-flow-root-001.html display-flow-root-disabled-001-ref.html
+pref(layout.css.display-flow-root.enabled,false) fails-if(styloVsGecko) fails-if(stylo) == display-flow-root-001.html display-flow-root-disabled-001-ref.html
--- a/layout/reftests/css-grid/reftest.list
+++ b/layout/reftests/css-grid/reftest.list
@@ -14,29 +14,29 @@ fails-if(!styloVsGecko) skip-if(styloVsG
 == grid-placement-implicit-named-areas-001.html grid-placement-implicit-named-areas-001-ref.html
 == grid-placement-named-lines-001.html grid-placement-named-lines-001-ref.html
 == grid-placement-named-lines-002.html grid-placement-named-lines-002-ref.html
 == grid-placement-named-lines-003.html grid-placement-named-lines-003-ref.html
 == grid-track-sizing-001.html grid-track-sizing-001-ref.html
 == grid-track-sizing-002.html grid-track-sizing-002-ref.html
 == grid-abspos-items-001.html grid-abspos-items-001-ref.html
 == grid-abspos-items-002.html grid-abspos-items-002-ref.html
-fails-if(styloVsGecko) == grid-abspos-items-003.html grid-abspos-items-003-ref.html
-fails-if(styloVsGecko) == grid-abspos-items-004.html grid-abspos-items-004-ref.html
-fails-if(styloVsGecko) == grid-abspos-items-005.html grid-abspos-items-005-ref.html
-fails-if(styloVsGecko) == grid-abspos-items-006.html grid-abspos-items-006-ref.html
-fails-if(styloVsGecko) == grid-abspos-items-007.html grid-abspos-items-007-ref.html
-fails-if(styloVsGecko) == grid-abspos-items-008.html grid-abspos-items-008-ref.html
-fails-if(styloVsGecko) == grid-abspos-items-009.html grid-abspos-items-009-ref.html
-fails-if(styloVsGecko) == grid-abspos-items-010.html grid-abspos-items-010-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-abspos-items-003.html grid-abspos-items-003-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-abspos-items-004.html grid-abspos-items-004-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-abspos-items-005.html grid-abspos-items-005-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-abspos-items-006.html grid-abspos-items-006-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-abspos-items-007.html grid-abspos-items-007-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-abspos-items-008.html grid-abspos-items-008-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-abspos-items-009.html grid-abspos-items-009-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-abspos-items-010.html grid-abspos-items-010-ref.html
 == grid-abspos-items-011.html grid-abspos-items-011-ref.html
 == grid-abspos-items-012.html grid-abspos-items-012-ref.html
 == grid-abspos-items-013.html grid-abspos-items-013-ref.html
-fails-if(styloVsGecko) == grid-abspos-items-014.html grid-abspos-items-014-ref.html
-fails-if(styloVsGecko) == grid-abspos-items-015.html grid-abspos-items-015-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-abspos-items-014.html grid-abspos-items-014-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-abspos-items-015.html grid-abspos-items-015-ref.html
 == grid-order-abspos-items-001.html grid-order-abspos-items-001-ref.html
 == grid-order-placement-auto-001.html grid-order-placement-auto-001-ref.html
 fuzzy-if(skiaContent,1,200) == grid-order-placement-definite-001.html grid-order-placement-definite-001-ref.html
 skip-if(Android) == grid-placement-definite-implicit-001.html grid-placement-definite-implicit-001-ref.html
 == grid-placement-definite-implicit-002.html grid-placement-definite-implicit-002-ref.html
 skip-if(Android) fuzzy-if(winWidget,1,32) == grid-placement-auto-implicit-001.html grid-placement-auto-implicit-001-ref.html
 == grid-placement-abspos-implicit-001.html grid-placement-abspos-implicit-001-ref.html
 == rtl-grid-placement-definite-001.html rtl-grid-placement-definite-001-ref.html
@@ -49,147 +49,147 @@ skip-if(Android) fuzzy-if(winWidget,1,32
 == grid-item-sizing-percent-003.html grid-item-sizing-percent-003-ref.html
 == grid-item-sizing-percent-004.html grid-item-sizing-percent-004-ref.html
 == grid-item-sizing-px-001.html grid-item-sizing-percent-001-ref.html
 == grid-item-dir-001.html grid-item-dir-001-ref.html
 fuzzy-if(winWidget,70,130) fuzzy-if(cocoaWidget,85,180) == grid-col-max-sizing-max-content-001.html grid-col-max-sizing-max-content-001-ref.html
 fuzzy-if(winWidget,70,130) fuzzy-if(cocoaWidget,85,180) == grid-col-max-sizing-max-content-002.html grid-col-max-sizing-max-content-002-ref.html
 == grid-min-max-content-sizing-001.html grid-min-max-content-sizing-001-ref.html
 == grid-min-max-content-sizing-002.html grid-min-max-content-sizing-002-ref.html
-fuzzy-if(winWidget,1,36) == grid-auto-min-sizing-definite-001.html grid-auto-min-sizing-definite-001-ref.html
+fuzzy-if(winWidget,1,36) fails-if(stylo) == grid-auto-min-sizing-definite-001.html grid-auto-min-sizing-definite-001-ref.html
 == grid-auto-min-sizing-intrinsic-001.html grid-auto-min-sizing-intrinsic-001-ref.html
 == grid-auto-min-sizing-intrinsic-002.html grid-auto-min-sizing-intrinsic-002-ref.html
 == grid-auto-min-sizing-intrinsic-003.html grid-auto-min-sizing-intrinsic-003-ref.html
 == grid-auto-min-sizing-intrinsic-004.html grid-auto-min-sizing-intrinsic-004-ref.html
 == grid-auto-min-sizing-transferred-size-001.html grid-auto-min-sizing-transferred-size-001-ref.html
 == grid-auto-min-sizing-transferred-size-002.html grid-auto-min-sizing-transferred-size-002-ref.html
-== grid-auto-min-sizing-transferred-size-003.html grid-auto-min-sizing-transferred-size-003-ref.html
-== grid-auto-min-sizing-transferred-size-004.html grid-auto-min-sizing-transferred-size-004-ref.html
+fails-if(stylo) == grid-auto-min-sizing-transferred-size-003.html grid-auto-min-sizing-transferred-size-003-ref.html
+fails-if(stylo) == grid-auto-min-sizing-transferred-size-004.html grid-auto-min-sizing-transferred-size-004-ref.html
 == grid-auto-min-sizing-min-content-min-size-001.html grid-auto-min-sizing-min-content-min-size-001-ref.html
 == grid-auto-min-sizing-min-content-min-size-002.html grid-auto-min-sizing-min-content-min-size-002-ref.html
-== grid-auto-min-sizing-min-content-min-size-003.html grid-auto-min-sizing-min-content-min-size-003-ref.html
-== grid-auto-min-sizing-min-content-min-size-004.html grid-auto-min-sizing-min-content-min-size-004-ref.html
+fails-if(stylo) == grid-auto-min-sizing-min-content-min-size-003.html grid-auto-min-sizing-min-content-min-size-003-ref.html
+fails-if(stylo) == grid-auto-min-sizing-min-content-min-size-004.html grid-auto-min-sizing-min-content-min-size-004-ref.html
 == grid-min-content-min-sizing-transferred-size-001.html grid-min-content-min-sizing-transferred-size-001-ref.html
 == grid-min-content-min-sizing-transferred-size-002.html grid-min-content-min-sizing-transferred-size-002-ref.html
 == grid-min-content-min-sizing-transferred-size-003.html grid-min-content-min-sizing-transferred-size-003-ref.html
-== grid-min-content-min-sizing-transferred-size-004.html grid-min-content-min-sizing-transferred-size-004-ref.html
+fails-if(stylo) == grid-min-content-min-sizing-transferred-size-004.html grid-min-content-min-sizing-transferred-size-004-ref.html
 skip-if(Android) == grid-auto-min-sizing-percent-001.html grid-auto-min-sizing-percent-001-ref.html # bug 1305716
 == grid-track-intrinsic-sizing-001.html grid-track-intrinsic-sizing-001-ref.html
 == grid-track-intrinsic-sizing-002.html grid-track-intrinsic-sizing-002-ref.html
 == grid-track-intrinsic-sizing-003.html grid-track-intrinsic-sizing-003-ref.html
 == grid-track-intrinsic-sizing-004.html grid-track-intrinsic-sizing-004-ref.html
-== grid-track-percent-sizing-001.html grid-track-percent-sizing-001-ref.html
-fails-if(styloVsGecko) == grid-track-fit-content-sizing-001.html grid-track-fit-content-sizing-001-ref.html
+fails-if(stylo) == grid-track-percent-sizing-001.html grid-track-percent-sizing-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-track-fit-content-sizing-001.html grid-track-fit-content-sizing-001-ref.html
 == grid-track-fit-content-sizing-002.html grid-track-fit-content-sizing-002-ref.html
 == grid-max-sizing-flex-001.html grid-max-sizing-flex-001-ref.html
 == grid-max-sizing-flex-002.html grid-max-sizing-flex-002-ref.html
 == grid-max-sizing-flex-003.html grid-max-sizing-flex-003-ref.html
 == grid-max-sizing-flex-004.html grid-max-sizing-flex-004-ref.html
 == grid-max-sizing-flex-005.html grid-max-sizing-flex-005-ref.html
 == grid-max-sizing-flex-006.html grid-max-sizing-flex-006-ref.html
-fails-if(styloVsGecko) == grid-max-sizing-flex-007.html grid-max-sizing-flex-007-ref.html
-fails-if(styloVsGecko) == grid-max-sizing-flex-008.html grid-max-sizing-flex-008-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-max-sizing-flex-007.html grid-max-sizing-flex-007-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-max-sizing-flex-008.html grid-max-sizing-flex-008-ref.html
 == grid-flex-min-sizing-001.html grid-flex-min-sizing-001-ref.html
 == grid-flex-min-sizing-002.html grid-flex-min-sizing-002-ref.html
-fails-if(styloVsGecko) == grid-item-align-001.html grid-item-align-001-ref.html
-fails-if(styloVsGecko) == grid-item-align-002.html grid-item-align-002-ref.html
-fails-if(styloVsGecko) == grid-item-align-003.html grid-item-align-003-ref.html
-fails-if(styloVsGecko) == grid-item-justify-001.html grid-item-justify-001-ref.html
-fails-if(styloVsGecko) == grid-item-justify-002.html grid-item-justify-002-ref.html
-fails-if(styloVsGecko) == grid-item-stretch-001.html grid-item-stretch-001-ref.html
-fails-if(styloVsGecko) == grid-item-intrinsic-ratio-stretch-001.html grid-item-intrinsic-ratio-stretch-001-ref.html
-fails-if(styloVsGecko) == grid-item-intrinsic-ratio-stretch-002.html grid-item-intrinsic-ratio-stretch-002-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-align-001.html grid-item-align-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-align-002.html grid-item-align-002-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-align-003.html grid-item-align-003-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-justify-001.html grid-item-justify-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-justify-002.html grid-item-justify-002-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-stretch-001.html grid-item-stretch-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-intrinsic-ratio-stretch-001.html grid-item-intrinsic-ratio-stretch-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-intrinsic-ratio-stretch-002.html grid-item-intrinsic-ratio-stretch-002-ref.html
 fails-if(styloVsGecko) == grid-item-intrinsic-ratio-stretch-003.html grid-item-intrinsic-ratio-stretch-003-ref.html
-fails-if(styloVsGecko) == grid-item-intrinsic-ratio-stretch-004.html grid-item-intrinsic-ratio-stretch-004-ref.html
-fails-if(styloVsGecko) == grid-item-intrinsic-ratio-stretch-005.html grid-item-intrinsic-ratio-stretch-005-ref.html
-fails-if(styloVsGecko) == grid-item-intrinsic-ratio-stretch-006.html grid-item-intrinsic-ratio-stretch-006-ref.html
-fails-if(styloVsGecko) == grid-item-intrinsic-ratio-stretch-007.html grid-item-intrinsic-ratio-stretch-007-ref.html
-fails-if(styloVsGecko) == grid-item-intrinsic-ratio-normal-001.html grid-item-intrinsic-ratio-normal-001-ref.html
-fails-if(styloVsGecko) == grid-item-intrinsic-ratio-normal-002.html grid-item-intrinsic-ratio-normal-002-ref.html
-fails-if(styloVsGecko) == grid-item-intrinsic-ratio-normal-003.html grid-item-intrinsic-ratio-normal-003-ref.html
-fails-if(styloVsGecko) == grid-item-intrinsic-ratio-normal-004.html grid-item-intrinsic-ratio-normal-004-ref.html
-fails-if(styloVsGecko) == grid-item-intrinsic-ratio-normal-005.html grid-item-intrinsic-ratio-normal-005-ref.html
-fails-if(styloVsGecko) == grid-item-intrinsic-size-normal-001.html grid-item-intrinsic-size-normal-001-ref.html
-fails-if(styloVsGecko) == grid-item-intrinsic-size-normal-002.html grid-item-intrinsic-size-normal-002-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-intrinsic-ratio-stretch-004.html grid-item-intrinsic-ratio-stretch-004-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-intrinsic-ratio-stretch-005.html grid-item-intrinsic-ratio-stretch-005-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-intrinsic-ratio-stretch-006.html grid-item-intrinsic-ratio-stretch-006-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-intrinsic-ratio-stretch-007.html grid-item-intrinsic-ratio-stretch-007-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-intrinsic-ratio-normal-001.html grid-item-intrinsic-ratio-normal-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-intrinsic-ratio-normal-002.html grid-item-intrinsic-ratio-normal-002-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-intrinsic-ratio-normal-003.html grid-item-intrinsic-ratio-normal-003-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-intrinsic-ratio-normal-004.html grid-item-intrinsic-ratio-normal-004-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-intrinsic-ratio-normal-005.html grid-item-intrinsic-ratio-normal-005-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-intrinsic-size-normal-001.html grid-item-intrinsic-size-normal-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-intrinsic-size-normal-002.html grid-item-intrinsic-size-normal-002-ref.html
 == grid-item-auto-min-size-clamp-001.html grid-item-auto-min-size-clamp-001-ref.html
 == grid-item-auto-min-size-clamp-002.html grid-item-auto-min-size-clamp-002-ref.html
 == grid-item-auto-min-size-clamp-003.html grid-item-auto-min-size-clamp-003-ref.html
 == grid-item-auto-min-size-clamp-004.html grid-item-auto-min-size-clamp-004-ref.html
 == grid-item-auto-min-size-clamp-005.html grid-item-auto-min-size-clamp-005-ref.html
 == grid-item-auto-min-size-clamp-006.html grid-item-auto-min-size-clamp-006-ref.html
 == grid-item-auto-min-size-clamp-007.html grid-item-auto-min-size-clamp-007-ref.html
-fails-if(styloVsGecko) == grid-item-overflow-stretch-001.html grid-item-overflow-stretch-001-ref.html
-fails-if(styloVsGecko) == grid-item-overflow-stretch-002.html grid-item-overflow-stretch-002-ref.html
-fails-if(styloVsGecko) == grid-item-overflow-stretch-003.html grid-item-overflow-stretch-003-ref.html
-fails-if(styloVsGecko) == grid-item-overflow-stretch-004.html grid-item-overflow-stretch-004-ref.html
-fails-if(styloVsGecko) == grid-item-overflow-stretch-005.html grid-item-overflow-stretch-005-ref.html
-fails-if(styloVsGecko) == grid-item-overflow-stretch-006.html grid-item-overflow-stretch-006-ref.html
-fails-if(styloVsGecko) == grid-item-canvas-001.html grid-item-canvas-001-ref.html
-skip-if(Android) fails-if(styloVsGecko) == grid-item-button-001.html grid-item-button-001-ref.html
-fails-if(styloVsGecko) == grid-item-table-stretch-001.html grid-item-table-stretch-001-ref.html
-fails-if(styloVsGecko) == grid-item-table-stretch-002.html grid-item-table-stretch-002-ref.html
-fails-if(styloVsGecko) == grid-item-table-stretch-003.html grid-item-table-stretch-003-ref.html
-fails-if(styloVsGecko) == grid-item-table-stretch-004.html grid-item-table-stretch-004-ref.html
-fails-if(styloVsGecko) == grid-item-fieldset-stretch-001.html grid-item-fieldset-stretch-001-ref.html
-skip-if(Android) fails-if(styloVsGecko) == grid-item-video-stretch-001.html grid-item-video-stretch-001-ref.html # Huh, Android doesn't have webm support?
-skip-if(Android) fails-if(styloVsGecko) == grid-item-video-stretch-002.html grid-item-video-stretch-002-ref.html # Huh, Android doesn't have webm support?
-fails-if(styloVsGecko) == grid-item-input-stretch-001.html grid-item-input-stretch-001-ref.html
-fails-if(styloVsGecko) == grid-item-self-baseline-001.html grid-item-self-baseline-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-overflow-stretch-001.html grid-item-overflow-stretch-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-overflow-stretch-002.html grid-item-overflow-stretch-002-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-overflow-stretch-003.html grid-item-overflow-stretch-003-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-overflow-stretch-004.html grid-item-overflow-stretch-004-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-overflow-stretch-005.html grid-item-overflow-stretch-005-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-overflow-stretch-006.html grid-item-overflow-stretch-006-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-canvas-001.html grid-item-canvas-001-ref.html
+skip-if(Android) fails-if(styloVsGecko) fails-if(stylo) == grid-item-button-001.html grid-item-button-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-table-stretch-001.html grid-item-table-stretch-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-table-stretch-002.html grid-item-table-stretch-002-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-table-stretch-003.html grid-item-table-stretch-003-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-table-stretch-004.html grid-item-table-stretch-004-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-fieldset-stretch-001.html grid-item-fieldset-stretch-001-ref.html
+skip-if(Android) fails-if(styloVsGecko) fails-if(stylo) == grid-item-video-stretch-001.html grid-item-video-stretch-001-ref.html # Huh, Android doesn't have webm support?
+skip-if(Android) fails-if(styloVsGecko) fails-if(stylo) == grid-item-video-stretch-002.html grid-item-video-stretch-002-ref.html # Huh, Android doesn't have webm support?
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-input-stretch-001.html grid-item-input-stretch-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-self-baseline-001.html grid-item-self-baseline-001-ref.html
 random-if(http.oscpu!="Linux\u0020i686") fails-if(styloVsGecko) == grid-item-content-baseline-001.html grid-item-content-baseline-001-ref.html # depends on exact Ahem baseline font metrics which seems to differ between platforms: bug 1310792
 random-if(http.oscpu!="Linux\u0020i686") fails-if(styloVsGecko) == grid-item-content-baseline-002.html grid-item-content-baseline-002-ref.html # ditto
 random-if(http.oscpu!="Linux\u0020i686") fails-if(styloVsGecko) == grid-item-mixed-baseline-001.html grid-item-mixed-baseline-001-ref.html # ditto
 random-if(http.oscpu!="Linux\u0020i686") fails-if(styloVsGecko) == grid-item-mixed-baseline-002.html grid-item-mixed-baseline-002-ref.html # ditto
 random-if(http.oscpu!="Linux\u0020i686") fails-if(styloVsGecko) == grid-item-mixed-baseline-003.html grid-item-mixed-baseline-003-ref.html # ditto
-skip-if(!gtkWidget) fails-if(styloVsGecko) == grid-item-mixed-baseline-004.html grid-item-mixed-baseline-004-ref.html # ditto
-fails-if(styloVsGecko) == grid-align-content-001.html grid-align-content-001-ref.html
-fails-if(styloVsGecko) == grid-justify-content-001.html grid-justify-content-001-ref.html
+skip-if(!gtkWidget) fails-if(styloVsGecko) fails-if(stylo) == grid-item-mixed-baseline-004.html grid-item-mixed-baseline-004-ref.html # ditto
+fails-if(styloVsGecko) fails-if(stylo) == grid-align-content-001.html grid-align-content-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-justify-content-001.html grid-justify-content-001-ref.html
 skip-if(Android&&isDebugBuild) == grid-justify-content-002.html grid-justify-content-002-ref.html # Bug 1245884 - slow
 skip-if(Android&&isDebugBuild) == grid-justify-content-003.html grid-justify-content-003-ref.html # Bug 1245884 - slow
-skip-if(!gtkWidget) fails-if(styloVsGecko) == grid-container-baselines-001.html grid-container-baselines-001-ref.html
-skip-if(!gtkWidget) fails-if(styloVsGecko) == grid-container-baselines-002.html grid-container-baselines-002-ref.html
-skip-if(!gtkWidget) fails-if(styloVsGecko) == grid-container-baselines-003.html grid-container-baselines-003-ref.html
+skip-if(!gtkWidget) fails-if(styloVsGecko) fails-if(stylo) == grid-container-baselines-001.html grid-container-baselines-001-ref.html
+skip-if(!gtkWidget) fails-if(styloVsGecko) fails-if(stylo) == grid-container-baselines-002.html grid-container-baselines-002-ref.html
+skip-if(!gtkWidget) fails-if(styloVsGecko) fails-if(stylo) == grid-container-baselines-003.html grid-container-baselines-003-ref.html
 == grid-container-baselines-004.html grid-container-baselines-004-ref.html
 == grid-container-synthesized-baseline-001-ref.html grid-container-synthesized-baseline-001-ref.html
 skip-if(Android&&isDebugBuild) == grid-column-gap-001.html grid-column-gap-001-ref.html # Bug 1245884 - slow
 == grid-column-gap-002.html grid-column-gap-002-ref.html
 == grid-column-gap-003.html grid-column-gap-003-ref.html
 fails-if(styloVsGecko) == grid-column-gap-004.html grid-column-gap-004-ref.html
-fails-if(styloVsGecko) == grid-row-gap-001.html grid-row-gap-001-ref.html
-fails-if(styloVsGecko) == grid-percent-grid-gap-001.html grid-percent-grid-gap-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-row-gap-001.html grid-row-gap-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-percent-grid-gap-001.html grid-percent-grid-gap-001-ref.html
 skip-if(Android&&isDebugBuild) == grid-row-gap-002.html grid-row-gap-002-ref.html # Bug 1245884 - slow
 skip-if(Android&&isDebugBuild) == grid-row-gap-003.html grid-row-gap-003-ref.html # Bug 1245884 - slow
 skip-if(Android&&isDebugBuild) == grid-row-gap-004.html grid-row-gap-004-ref.html # Bug 1245884 - slow
 fails-if(styloVsGecko) == grid-row-gap-005.html grid-row-gap-005-ref.html
 == grid-container-overflow-001.html grid-container-overflow-001-ref.html
-fails-if(styloVsGecko) == grid-item-margin-left-auto-001.html grid-item-margin-left-auto-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-margin-left-auto-001.html grid-item-margin-left-auto-001-ref.html
 fails-if(styloVsGecko) == grid-item-margin-left-auto-002.html grid-item-margin-left-auto-002-ref.html
 fails-if(styloVsGecko) == grid-item-margin-left-auto-003.html grid-item-margin-left-auto-003-ref.html
 fails-if(styloVsGecko) == grid-item-margin-left-auto-004.html grid-item-margin-left-auto-004-ref.html
 fails-if(styloVsGecko) == grid-item-margin-left-right-auto-001.html grid-item-margin-left-right-auto-001-ref.html
 fails-if(styloVsGecko) == grid-item-margin-left-right-auto-002.html grid-item-margin-left-right-auto-002-ref.html
 fails-if(styloVsGecko) == grid-item-margin-left-right-auto-003.html grid-item-margin-left-right-auto-003-ref.html
 fails-if(styloVsGecko) == grid-item-margin-left-right-auto-004.html grid-item-margin-left-right-auto-004-ref.html
-fails-if(styloVsGecko) == grid-item-margin-right-auto-001.html grid-item-margin-right-auto-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-item-margin-right-auto-001.html grid-item-margin-right-auto-001-ref.html
 fails-if(styloVsGecko) == grid-item-margin-right-auto-002.html grid-item-margin-right-auto-002-ref.html
 fails-if(styloVsGecko) == grid-item-margin-right-auto-003.html grid-item-margin-right-auto-003-ref.html
 fails-if(styloVsGecko) == grid-item-margin-right-auto-004.html grid-item-margin-right-auto-004-ref.html
-fails-if(styloVsGecko) == grid-container-min-max-width-height-001.html grid-container-min-max-width-height-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-container-min-max-width-height-001.html grid-container-min-max-width-height-001-ref.html
 == grid-clamping-001.html grid-clamping-001-ref.html
 == grid-clamping-002.html grid-clamping-002-ref.html
 == grid-repeat-auto-fill-fit-001.html grid-repeat-auto-fill-fit-001-ref.html
 == grid-repeat-auto-fill-fit-002.html grid-repeat-auto-fill-fit-002-ref.html
 == grid-repeat-auto-fill-fit-003.html grid-repeat-auto-fill-fit-003-ref.html
 == grid-repeat-auto-fill-fit-004.html grid-repeat-auto-fill-fit-004-ref.html
 == grid-repeat-auto-fill-fit-005.html grid-repeat-auto-fill-fit-005-ref.html
 == grid-repeat-auto-fill-fit-006.html grid-repeat-auto-fill-fit-006-ref.html
 == grid-repeat-auto-fill-fit-007.html grid-repeat-auto-fill-fit-007-ref.html
 == grid-repeat-auto-fill-fit-008.html grid-repeat-auto-fill-fit-008-ref.html
 == grid-repeat-auto-fill-fit-009.html grid-repeat-auto-fill-fit-009-ref.html
-fails-if(styloVsGecko) == grid-repeat-auto-fill-fit-010.html grid-repeat-auto-fill-fit-010-ref.html
-fails-if(styloVsGecko) == grid-repeat-auto-fill-fit-011.html grid-repeat-auto-fill-fit-010-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-repeat-auto-fill-fit-010.html grid-repeat-auto-fill-fit-010-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-repeat-auto-fill-fit-011.html grid-repeat-auto-fill-fit-010-ref.html
 == grid-item-blockifying-001.html grid-item-blockifying-001-ref.html
 == grid-fragmentation-001.html grid-fragmentation-001-ref.html
 == grid-fragmentation-002.html grid-fragmentation-002-ref.html
 == grid-fragmentation-003.html grid-fragmentation-003-ref.html
 == grid-fragmentation-004.html grid-fragmentation-004-ref.html
 == grid-fragmentation-005.html grid-fragmentation-005-ref.html
 == grid-fragmentation-006.html grid-fragmentation-006-ref.html
 == grid-fragmentation-007.html grid-fragmentation-007-ref.html
--- a/layout/reftests/css-import/reftest.list
+++ b/layout/reftests/css-import/reftest.list
@@ -1,10 +1,10 @@
 == 290018-1.html 290018-ref.html
 == 436261-1.html 436261-ref.html
 == 436261-2.html 436261-ref.html
-fails-if(styloVsGecko) == 436261-3.html 436261-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == 436261-3.html 436261-ref.html
 == 444723-1.html 444723-ref.html
 == 444723-2.html 444723-ref.html
-fails-if(styloVsGecko) == 445415-1a.xhtml 445415-1-ref.xhtml
+fails-if(styloVsGecko) fails-if(stylo) == 445415-1a.xhtml 445415-1-ref.xhtml
 == 445415-1b.xhtml 445415-1-ref.xhtml
 == 445415-2a.xhtml 445415-2-ref.xhtml
-fails-if(styloVsGecko) == 445415-2b.xhtml 445415-2-ref.xhtml
+fails-if(styloVsGecko) fails-if(stylo) == 445415-2b.xhtml 445415-2-ref.xhtml
--- a/layout/reftests/css-mediaqueries/reftest.list
+++ b/layout/reftests/css-mediaqueries/reftest.list
@@ -11,9 +11,9 @@ fuzzy-if(Android,8,454) == mq_print_maxh
 == mq_print_maxwidth.xhtml mq_print-ref.xhtml
 
 == mq_print_maxwidth_updown.xhtml mq_print-ref.xhtml
 == mq_print_maxheight_updown.xhtml mq_print-ref.xhtml
 == mq_print_minheight_updown.xhtml mq_print-ref.xhtml
 == mq_print_minwidth_updown.xhtml mq_print-ref.xhtml
 
 == scoped-mq-update.html scoped-mq-update-ref.html
-fails-if(styloVsGecko) == system-metrics-1.html system-metrics-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == system-metrics-1.html system-metrics-1-ref.html
--- a/layout/reftests/css-parsing/reftest.list
+++ b/layout/reftests/css-parsing/reftest.list
@@ -1,9 +1,9 @@
 == at-rule-013.html at-rule-013-ref.html
-fails-if(styloVsGecko) == invalid-url-handling.xhtml invalid-url-handling-ref.xhtml
+fails-if(styloVsGecko) fails-if(stylo) == invalid-url-handling.xhtml invalid-url-handling-ref.xhtml
 == pseudo-elements-1.html pseudo-elements-1-ref.html
 == invalid-attr-1.html invalid-attr-1-ref.html
 == at-rule-error-handling-import-1.html at-rule-error-handling-ref.html
 == at-rule-error-handling-media-1.html at-rule-error-handling-ref.html
 == invalid-font-face-descriptor-1.html invalid-font-face-descriptor-1-ref.html
 == two-dash-identifiers.html two-dash-identifiers-ref.html
 == supports-moz-bool-pref.html supports-moz-bool-pref-ref.html
--- a/layout/reftests/css-placeholder/input/reftest.list
+++ b/layout/reftests/css-placeholder/input/reftest.list
@@ -3,26 +3,26 @@
 # text colour without changing the caret which means that the tested page has
 # a black caret with a grey text and the reference has a grey caret with grey
 # text. The only thing that is doable is to make the caret grey in the tested
 # page but that would make the test moot because a failure wouldn't be seen.
 # A real way to fix this would be to be able to style the caret or to implement
 # ::value (bug 648643), depending of the ::value behaviour (it could change the
 # caret colour and the text colour or just the text colour).
 
-fails-if(styloVsGecko) == placeholder-simple.html placeholder-simple-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == placeholder-simple.html placeholder-simple-ref.html
 # needs-focus == placeholder-focus.html placeholder-focus-ref.html
-needs-focus fails-if(styloVsGecko) == placeholder-blur.html placeholder-simple-ref.html
+needs-focus fails-if(styloVsGecko) fails-if(stylo) == placeholder-blur.html placeholder-simple-ref.html
 == placeholder-value.html placeholder-value-ref.html
 == placeholder-empty-string.html placeholder-empty-string-ref.html
-fails-if(styloVsGecko) == placeholder-add.html placeholder-simple-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == placeholder-add.html placeholder-simple-ref.html
 == placeholder-removal.html input-ref.html
 == placeholder-value-set.html placeholder-value-ref.html
-fails-if(styloVsGecko) == placeholder-value-unset.html placeholder-simple-ref.html
-fails-if(styloVsGecko) == placeholder-value-reset.html placeholder-simple-ref.html
-fails-if(styloVsGecko) == placeholder-type-change-1.html placeholder-simple-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == placeholder-value-unset.html placeholder-simple-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == placeholder-value-reset.html placeholder-simple-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == placeholder-type-change-1.html placeholder-simple-ref.html
 == placeholder-type-change-2.html placeholder-button-ref.html
 == placeholdershown.html placeholdershown-ref.html
-fails-if(styloVsGecko) == css-display.html placeholder-simple-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == css-display.html placeholder-simple-ref.html
 # We can't check except by verifying that the output is different.
 # Same reasons as focus issues explained above.
 fails-if(styloVsGecko) != css-opacity.html placeholder-simple-ref.html
 fails-if(styloVsGecko) != css-text-align.html placeholder-simple-ref.html
--- a/layout/reftests/css-placeholder/reftest.list
+++ b/layout/reftests/css-placeholder/reftest.list
@@ -1,7 +1,7 @@
 include input/reftest.list
 include textarea/reftest.list
 
-fuzzy-if(skiaContent,1,4) fails-if(styloVsGecko) == css-restrictions.html css-restrictions-ref.html
-fails-if(styloVsGecko) == css-simple-styling.html css-simple-styling-ref.html
+fuzzy-if(skiaContent,1,4) fails-if(styloVsGecko) fails-if(stylo) == css-restrictions.html css-restrictions-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == css-simple-styling.html css-simple-styling-ref.html
 fails-if(styloVsGecko) != css-background.html css-background-ref.html
 fuzzy-if(skiaContent,1,180) fails-if(styloVsGecko) == ignore-pseudo-class.html ignore-pseudo-class-ref.html
--- a/layout/reftests/css-ruby/reftest.list
+++ b/layout/reftests/css-ruby/reftest.list
@@ -1,55 +1,55 @@
 == bidi-1.html bidi-1-ref.html
 == bidi-2.html bidi-2-ref.html
 == box-generation-1.html box-generation-1-ref.html
 == box-generation-2.html box-generation-2-ref.html
 == box-generation-3.html box-generation-3-ref.html
 == box-generation-4.html box-generation-4-ref.html
 == box-generation-5.html box-generation-5-ref.html
-fails-if(styloVsGecko) == box-properties-1.html box-properties-1-ref.html
-fails-if(styloVsGecko) == box-properties-2.html box-properties-2-ref.html
-fails-if(styloVsGecko) == box-properties-3.html box-properties-3-ref.html
-fails-if(styloVsGecko) == box-properties-4.html box-properties-4-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == box-properties-1.html box-properties-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == box-properties-2.html box-properties-2-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == box-properties-3.html box-properties-3-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == box-properties-4.html box-properties-4-ref.html
 == dynamic-insertion-1.html dynamic-insertion-1-ref.html
 == dynamic-insertion-2.html dynamic-insertion-2-ref.html
 fails-if(styloVsGecko) == dynamic-insertion-3.html dynamic-insertion-3-ref.html
 == dynamic-removal-1.html dynamic-removal-1-ref.html
 == dynamic-removal-2.html dynamic-removal-2-ref.html
 == dynamic-removal-3.html dynamic-removal-3-ref.html
 == float-handling.html float-handling-ref.html
 test-pref(dom.meta-viewport.enabled,true) test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.forceEnabled,true) test-pref(font.size.inflation.lineThreshold,0) == inflated-ruby-1.html inflated-ruby-1-ref.html
 == intra-level-whitespace-1.html intra-level-whitespace-1-ref.html
 == intra-level-whitespace-2.html intra-level-whitespace-2-ref.html
 == intra-level-whitespace-3.html intra-level-whitespace-3-ref.html
 == intrinsic-isize-1.html intrinsic-isize-1-ref.html
 == intrinsic-isize-2.html intrinsic-isize-2-ref.html
-fails-if(styloVsGecko) == justification-1.html justification-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == justification-1.html justification-1-ref.html
 fails-if(styloVsGecko) == justification-2.html justification-2-ref.html
 fuzzy-if(winWidget,255,792) == lang-specific-style-1.html lang-specific-style-1-ref.html # bug 1134947
 == line-breaking-1.html line-breaking-1-ref.html
-fails-if(styloVsGecko) == line-breaking-2.html line-breaking-2-ref.html
-fuzzy-if(/^Windows\x20NT\x2010\.0/.test(http.oscpu),3,2) skip-if(styloVsGecko) == line-break-suppression-1.html line-break-suppression-1-ref.html
-fuzzy-if(/^Windows\x20NT\x2010\.0/.test(http.oscpu),3,2) skip-if(styloVsGecko) == line-break-suppression-2.html line-break-suppression-2-ref.html
-skip-if(styloVsGecko) == line-break-suppression-3.html line-break-suppression-3-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == line-breaking-2.html line-breaking-2-ref.html
+fuzzy-if(/^Windows\x20NT\x2010\.0/.test(http.oscpu),3,2) skip-if(styloVsGecko) skip-if(stylo) == line-break-suppression-1.html line-break-suppression-1-ref.html
+fuzzy-if(/^Windows\x20NT\x2010\.0/.test(http.oscpu),3,2) skip-if(styloVsGecko) skip-if(stylo) == line-break-suppression-2.html line-break-suppression-2-ref.html
+skip-if(styloVsGecko) skip-if(stylo) == line-break-suppression-3.html line-break-suppression-3-ref.html
 == line-break-suppression-4.html line-break-suppression-4-ref.html
 == line-break-suppression-5.html line-break-suppression-5-ref.html
 == line-height-1.html line-height-1-ref.html
 == line-height-2.html line-height-2-ref.html
 == line-height-3.html line-height-3-ref.html
 == line-height-4.html line-height-4-ref.html
-test-pref(font.minimum-size.ja,16) fails-if(styloVsGecko) == min-font-size-1.html min-font-size-1-ref.html
+test-pref(font.minimum-size.ja,16) fails-if(styloVsGecko) fails-if(stylo) == min-font-size-1.html min-font-size-1-ref.html
 skip-if(styloVsGecko) load nested-ruby-1.html
 == no-transform.html no-transform-ref.html
-fails-if(styloVsGecko) == relative-positioning-1.html relative-positioning-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == relative-positioning-1.html relative-positioning-1-ref.html
 == relative-positioning-2.html relative-positioning-2-ref.html
-fails-if(styloVsGecko) == ruby-align-1.html ruby-align-1-ref.html
-fails-if(styloVsGecko) == ruby-align-1a.html ruby-align-1-ref.html
-fails-if(styloVsGecko) == ruby-align-2.html ruby-align-2-ref.html
-fails-if(styloVsGecko) == ruby-align-2a.html ruby-align-2-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == ruby-align-1.html ruby-align-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == ruby-align-1a.html ruby-align-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == ruby-align-2.html ruby-align-2-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == ruby-align-2a.html ruby-align-2-ref.html
 == ruby-position-horizontal.html ruby-position-horizontal-ref.html
 == ruby-position-vertical-lr.html ruby-position-vertical-lr-ref.html
 == ruby-position-vertical-rl.html ruby-position-vertical-rl-ref.html
 != ruby-reflow-1-opaqueruby.html ruby-reflow-1-noruby.html
 fuzzy-if(/^Windows\x20NT\x2010\.0/.test(http.oscpu),13,1) == ruby-reflow-1-transparentruby.html ruby-reflow-1-noruby.html
 == ruby-span-1.html ruby-span-1-ref.html
 == ruby-whitespace-1.html ruby-whitespace-1-ref.html
 == ruby-whitespace-2.html ruby-whitespace-2-ref.html
--- a/layout/reftests/css-selectors/reftest.list
+++ b/layout/reftests/css-selectors/reftest.list
@@ -1,6 +1,6 @@
 == state-dependent-in-any.html state-dependent-in-any-ref.html
 == attr-case-insensitive-1.html attr-case-insensitive-1-ref.html
 == sibling-combinators-on-anon-content-1.xhtml sibling-combinators-on-anon-content-ref.xhtml
 == sibling-combinators-on-anon-content-2.xhtml sibling-combinators-on-anon-content-ref.xhtml
-fails-if(styloVsGecko) == nth-child-1.html nth-child-ref.html
-fails-if(styloVsGecko) == nth-child-2.html nth-child-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == nth-child-1.html nth-child-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == nth-child-2.html nth-child-ref.html
--- a/layout/reftests/css-valuesandunits/reftest.list
+++ b/layout/reftests/css-valuesandunits/reftest.list
@@ -4,12 +4,12 @@
 == unit-rem-iframe.html unit-rem-ref-iframe.html
 == unit-rem-root-fontsize.html unit-rem-ref-root-fontsize.html
 == unit-rem-root-fontsize.html unit-rem-ref2-root-fontsize.html
 == unit-rem-root-width.html unit-rem-ref-root-width.html
 == unit-rem.svg unit-rem-ref.svg
 == unit-vh-vw.html unit-vh-vw-ref.html
 == unit-vh-vw-zoom.html unit-vh-vw-zoom-ref.html
 == unit-vh-vw-overflow-auto.html unit-vh-vw-overflow-auto-ref.html
-fails-if(styloVsGecko) == unit-vh-vw-overflow-scroll.html unit-vh-vw-overflow-scroll-ref.html
-fails-if(styloVsGecko) == unit-vh-vw-overflow-scroll-x.html unit-vh-vw-overflow-scroll-x-ref.html
-fails-if(styloVsGecko) == unit-vh-vw-overflow-scroll-y.html unit-vh-vw-overflow-scroll-y-ref.html
-skip-if(Android) != unit-vh-vw-overflow-auto.html unit-vh-vw-overflow-scroll.html
+fails-if(styloVsGecko) fails-if(stylo) == unit-vh-vw-overflow-scroll.html unit-vh-vw-overflow-scroll-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == unit-vh-vw-overflow-scroll-x.html unit-vh-vw-overflow-scroll-x-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == unit-vh-vw-overflow-scroll-y.html unit-vh-vw-overflow-scroll-y-ref.html
+skip-if(Android) fails-if(stylo) != unit-vh-vw-overflow-auto.html unit-vh-vw-overflow-scroll.html
--- a/layout/reftests/dom/reftest.list
+++ b/layout/reftests/dom/reftest.list
@@ -44,12 +44,12 @@
 == multipleinsertionpoints-insertmultiple.xhtml multipleinsertionpoints-ref.xhtml
 
 # test appending some nodes whose frame construction should be done lazily
 # followed by appending a node that might not be done lazily
 == multipleappendwithxul.xhtml multipleappendwithxul-ref.xhtml
 == multipleappendwithinput.xhtml multipleappendwithinput-ref.xhtml
 == multipleappendwitheditable.xhtml multipleappendwitheditable-ref.xhtml
 
-fails-if(styloVsGecko) == xbl-children-1.xhtml xbl-children-1-ref.xhtml
+fails-if(styloVsGecko) fails-if(stylo) == xbl-children-1.xhtml xbl-children-1-ref.xhtml
 == xbl-children-2.xhtml about:blank
 == xbl-children-3.xhtml xbl-children-3-ref.html
 == xbl-children-4.xhtml about:blank
--- a/layout/reftests/first-letter/reftest.list
+++ b/layout/reftests/first-letter/reftest.list
@@ -17,46 +17,46 @@
 fails-if(!styloVsGecko) == quote-1b.html quote-1-ref.html # bug 509685
 fails-if(!styloVsGecko) == quote-1c.html quote-1-ref.html # bug 509685
 == quote-1c.html quote-1b.html
 fails-if(!styloVsGecko) == quote-1d.html quote-1-ref.html
 == quote-1d.html quote-1b.html
 fails-if(!styloVsGecko) == quote-1e.html quote-1-ref.html # bug 509685
 == quote-1e.html quote-1b.html
 == quote-1f.html quote-1-ref.html
-fails-if(!styloVsGecko) fails-if(styloVsGecko) == dynamic-1.html dynamic-1-ref.html # bug 8253
+fails-if(!stylo) fails-if(styloVsGecko) == dynamic-1.html dynamic-1-ref.html # bug 8253
 random-if(d2d) == dynamic-2.html dynamic-2-ref.html
-fails-if(styloVsGecko) asserts-if(styloVsGecko,6) == dynamic-3a.html dynamic-3-ref.html
-fails-if(styloVsGecko) asserts-if(styloVsGecko,6) == dynamic-3b.html dynamic-3-ref.html
+fails-if(styloVsGecko) asserts-if(styloVsGecko,6) asserts-if(stylo,6) fails-if(stylo) == dynamic-3a.html dynamic-3-ref.html
+fails-if(styloVsGecko) asserts-if(styloVsGecko,6) asserts-if(stylo,6) fails-if(stylo) == dynamic-3b.html dynamic-3-ref.html
 == 23605-1.html 23605-1-ref.html
 == 23605-2.html 23605-2-ref.html
 == 23605-3.html 23605-3-ref.html
 == 23605-4.html 23605-4-ref.html
 == 23605-5.html 23605-5-ref.html
 == 23605-6.html 23605-6-ref.html
 != 229764-1.html 229764-ref.html
-fails-if(styloVsGecko) == 229764-2.html 229764-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == 229764-2.html 229764-ref.html
 == 329069-1.html 329069-1-ref.html
 fails-if(Android) == 329069-2.html 329069-2-ref.html # Bug 999139
 == 329069-3.html 329069-3-ref.html
 == 329069-4.html 329069-4-ref.html
 HTTP(..) == 329069-5.html 329069-5-ref.html
 == 342120-1.xhtml 342120-1-ref.xhtml
-fails-if(styloVsGecko) asserts-if(styloVsGecko,6) == 379799-1.html 379799-1-ref.html
+fails-if(styloVsGecko) asserts-if(styloVsGecko,6) asserts-if(stylo,6) fails-if(stylo) == 379799-1.html 379799-1-ref.html
 == 399941-1.html 399941-1-ref.html
 == 399941-2.html 399941-2-ref.html
 == 399941-3.html 399941-3-ref.html
 == 399941-4.html 399941-4-ref.html
 == 399941-5.html 399941-5-ref.html
 == 399941-6.html 399941-6-ref.html
 == 399941-7.html 399941-7-ref.html
 == 399941-8.html 399941-8-ref.html
 == 399941-9.html 399941-9-ref.html
 == 429968-1a.html 429968-1-ref.html
-fails-if(styloVsGecko) == 429968-1b.html 429968-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == 429968-1b.html 429968-1-ref.html
 == 429968-2a.html 429968-2-ref.html
 == 429968-2b.html 429968-2-ref.html
 == 429968-2c.html 429968-2-ref.html
 == 441418-1.html 441418-1-ref.html
 == 469227-1.html 469227-1-ref.html
 == 484400-1.html 484400-1-ref.html
 == 594303-1.html 594303-1-ref.html
 fails-if(winWidget||cocoaWidget) == 617869-1.html 617869-1-ref.html
--- a/layout/reftests/first-line/reftest.list
+++ b/layout/reftests/first-line/reftest.list
@@ -1,16 +1,16 @@
 # basic functionality
-fails-if(styloVsGecko) == basic-1.html basic-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == basic-1.html basic-ref.html
 
 # handling of out-of-flows when ::first-line happens
 == out-of-flow-1a.html out-of-flow-1-ref.html
-fails-if(styloVsGecko) == out-of-flow-1b.html out-of-flow-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == out-of-flow-1b.html out-of-flow-1-ref.html
 == out-of-flow-1c.html out-of-flow-1-ref.html
-fails fails-if(styloVsGecko) == out-of-flow-1d.html out-of-flow-1-ref.html # bug 396645
+fails-if(!stylo) fails-if(styloVsGecko) == out-of-flow-1d.html out-of-flow-1-ref.html # bug 396645
 
 # parent style context correct
 == parent-style-1.html parent-style-1-ref.html
 == parent-style-2.html parent-style-2-ref.html
 == parent-style-3.html parent-style-3-ref.html
 
 # stress-tests
 skip-if(styloVsGecko) load stress-1.html # assertion test
@@ -20,18 +20,18 @@ load stress-4.html # assertion/crash tes
 load stress-5.html # assertion/crash test
 load stress-6.html # assertion/crash test
 load stress-7.html # assertion/crash test
 == stress-8.html stress-8-ref.html # assertion/crash test
 == stress-9.html stress-9-ref.html # assertion/crash test
 load stress-10.html # crash test
 == stress-11.xhtml stress-11-ref.xhtml
 
-fails-if(styloVsGecko) == border-not-apply.html border-not-apply-ref.html
-fails-if(styloVsGecko) == 287088-1.html 287088-1-ref.html
-fails-if(styloVsGecko) == 287088-2.html 287088-2-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == border-not-apply.html border-not-apply-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == 287088-1.html 287088-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == 287088-2.html 287088-2-ref.html
 fails-if(styloVsGecko) == 403177-1.html 403177-1-ref.html
-fails-if(styloVsGecko) == 469227-2.html 469227-2-ref.html
-fails-if(styloVsGecko) == 469227-3.html 469227-3-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == 469227-2.html 469227-2-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == 469227-3.html 469227-3-ref.html
 
-fails-if(styloVsGecko) == restyle-inside-first-line.html restyle-inside-first-line-ref.html
-fails-if(styloVsGecko) == font-styles.html font-styles-ref.html
-fuzzy-if(OSX==1010,1,2) fails-if(styloVsGecko) == font-styles-nooverflow.html font-styles-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == restyle-inside-first-line.html restyle-inside-first-line-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == font-styles.html font-styles-ref.html
+fuzzy-if(OSX==1010,1,2) fails-if(styloVsGecko) fails-if(stylo) == font-styles-nooverflow.html font-styles-ref.html
--- a/layout/reftests/font-face/reftest.list
+++ b/layout/reftests/font-face/reftest.list
@@ -86,18 +86,18 @@ random-if(cocoaWidget) skip-if(styloVsGe
 skip-if(styloVsGecko) HTTP(..) == insert-rule-1a.html insert-rule-1-ref.html
 skip-if(styloVsGecko) HTTP(..) == insert-rule-1b.html insert-rule-1-ref.html
 skip-if(styloVsGecko) HTTP(..) == delete-rule-1.html delete-rule-1-ref.html
 random-if(styloVsGecko) HTTP(..) == media-query-add-1.html media-query-add-1-ref.html
 random-if(styloVsGecko) HTTP(..) == media-query-remove-1.html media-query-remove-1-ref.html
 HTTP(..) != media-query-add-1-ref.html media-query-remove-1-ref.html
 
 HTTP(..) == ahem-metrics-1.html ahem-metrics-1-ref.html
-skip-if(styloVsGecko) HTTP(..) == ex-unit-1.html ex-unit-1-ref.html
-skip-if(styloVsGecko) HTTP(..) == ex-unit-1-dynamic.html ex-unit-1-ref.html
+skip-if(styloVsGecko) fails-if(stylo) HTTP(..) == ex-unit-1.html ex-unit-1-ref.html
+skip-if(styloVsGecko) skip-if(stylo) HTTP(..) == ex-unit-1-dynamic.html ex-unit-1-ref.html
 
 == local-1.html local-1-ref.html
 == local-styled-1.html local-styled-1-ref.html
 
 HTTP(..) == synthetic-weight-style.html synthetic-weight-style-ref.html
 HTTP(..) == synthetic-variations.html synthetic-variations-ref.html
 
 # Leak test
--- a/layout/reftests/font-features/reftest.list
+++ b/layout/reftests/font-features/reftest.list
@@ -29,42 +29,42 @@ HTTP(..) == font-features-hlig-4.html fo
 HTTP(..) != font-features-hlig-5.html font-features-hlig.html
 HTTP(..) == font-features-ligatures-none.html font-features-noliga.html
 
 # check that feature in style rule overrides @font-face
 HTTP(..) == font-features-hlig-3.html font-features-noliga.html
 
 # compare font-language-override rendering to lang-tagged rendering
 HTTP(..) == font-features-turkish-override-1.html font-features-turkish.html
-fails-if(styloVsGecko) HTTP(..) == font-features-turkish-override-2.html font-features-turkish.html
+fails-if(styloVsGecko) fails-if(stylo) HTTP(..) == font-features-turkish-override-2.html font-features-turkish.html
 
 # check use of font-language-override to override explicit lang tag
 HTTP(..) == font-features-turkish-override-3.html font-features-ref.html
-fails-if(styloVsGecko) HTTP(..) == font-features-turkish-override-4.html font-features-ref.html
+fails-if(styloVsGecko) fails-if(stylo) HTTP(..) == font-features-turkish-override-4.html font-features-ref.html
 HTTP(..) == font-features-turkish-override-5.html font-features-turkish.html
 
 # check that last value wins if a feature is repeated
 HTTP(..) == font-features-order-1.html font-features-ref.html
 HTTP(..) == font-features-order-2.html font-features-noliga.html
 
 # check priority of feature settings vs. font-variant subproperty
 HTTP(..) == font-features-order-3.html font-features-noliga.html
 HTTP(..) == font-features-order-4.html font-features-noliga.html
 HTTP(..) == font-features-order-5.html font-features-hlig.html
 
 # check priority involving feature settings and font-variant-alternates
-fails-if(styloVsGecko) HTTP(..) == alternates-order.html alternates-order-ref.html
+fails-if(styloVsGecko) fails-if(stylo) HTTP(..) == alternates-order.html alternates-order-ref.html
 
 # check that font-specific values line up with @font-face feature settings
 HTTP(..) == annotations.html annotations-ref.html
 
 # font-variant subproperties
 # test for specific features being on and others off, based on prop values
 # (debug problems with font-variant-debug.html which displays all props)
-fails-if(styloVsGecko) HTTP(..) == font-variant-alternates.html font-variant-alternates-ref.html
+fails-if(styloVsGecko) fails-if(stylo) HTTP(..) == font-variant-alternates.html font-variant-alternates-ref.html
 HTTP(..) == font-variant-caps.html font-variant-caps-ref.html
 HTTP(..) == font-variant-east-asian.html font-variant-east-asian-ref.html
 HTTP(..) == font-variant-ligatures.html font-variant-ligatures-ref.html
 HTTP(..) == font-variant-numeric.html font-variant-numeric-ref.html
 HTTP(..) == font-variant-position.html font-variant-position-ref.html
 
 # font-kerning
 HTTP(..) != font-kerning-normal.html font-kerning-none.html
--- a/layout/reftests/font-loading-api/reftest.list
+++ b/layout/reftests/font-loading-api/reftest.list
@@ -1,11 +1,11 @@
 default-preferences pref(layout.css.font-loading-api.enabled,true)
 
 HTTP(..) == dynamic-insert-1.html dynamic-insert-1-ref.html
 HTTP(..) == dynamic-remove-1.html dynamic-remove-1-ref.html
-fails-if(styloVsGecko) HTTP(..) == ex-unit-1.html ../font-face/ex-unit-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) HTTP(..) == ex-unit-1.html ../font-face/ex-unit-1-ref.html
 fuzzy-if(skiaContent,2,10) HTTP(..) == multiple-sets-1.html multiple-sets-1-ref.html
 HTTP(..) == name-collision.html ../font-face/name-collision-ref.html
 HTTP(..) == order-1.html ../font-face/order-1-ref.html
 HTTP(..) == src-list-1.html ../font-face/src-list-1-ref.html
 HTTP(..) == src-list-2.html ../font-face/src-list-2-ref.html
 HTTP(..) == src-list-data-1.html ../font-face/src-list-data-ref.html
--- a/layout/reftests/forms/fieldset/reftest.list
+++ b/layout/reftests/forms/fieldset/reftest.list
@@ -1,26 +1,26 @@
 fuzzy-if(skiaContent,2,13) == dynamic-legend-scroll-1.html dynamic-legend-scroll-1-ref.html
 == fieldset-hidden-1.html fieldset-hidden-1-ref.html
 == fieldset-intrinsic-width-1.html fieldset-intrinsic-width-1-ref.html
 == fieldset-percentage-padding-1.html fieldset-percentage-padding-1-ref.html
-fails-if(styloVsGecko) == fieldset-scroll-1.html fieldset-scroll-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == fieldset-scroll-1.html fieldset-scroll-1-ref.html
 == fieldset-scrolled-1.html fieldset-scrolled-1-ref.html
 == fieldset-overflow-auto-1.html fieldset-overflow-auto-1-ref.html
 fuzzy-if(winWidget&&!layersGPUAccelerated,140,276) == positioned-container-1.html positioned-container-1-ref.html
 == relpos-legend-1.html relpos-legend-1-ref.html
 == relpos-legend-2.html relpos-legend-2-ref.html
 == relpos-legend-3.html relpos-legend-3-ref.html
 == relpos-legend-4.html relpos-legend-4-ref.html
 == sticky-legend-1.html sticky-legend-1-ref.html
 fuzzy-if(skiaContent,1,40768) == abs-pos-child-sizing.html abs-pos-child-sizing-ref.html
 == overflow-hidden.html overflow-hidden-ref.html
 == legend-rtl.html legend-rtl-ref.html
-fails-if(styloVsGecko) == fieldset-grid-001.html fieldset-grid-001-ref.html
-fails-if(styloVsGecko) == fieldset-flexbox-001.html fieldset-flexbox-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == fieldset-grid-001.html fieldset-grid-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == fieldset-flexbox-001.html fieldset-flexbox-001-ref.html
 == fieldset-min-width-1a.html fieldset-min-width-1-ref.html
 == fieldset-min-width-1b.html fieldset-min-width-1-ref.html
 == fieldset-min-width-2a.html fieldset-min-width-2-ref.html
 == fieldset-min-width-2b.html fieldset-min-width-2-ref.html
 == legend-overlapping-right-border-1.html legend-overlapping-right-border-1-ref.html
 == fieldset-border-image-1a.html fieldset-border-image-1-ref.html
 == fieldset-border-image-1b.html fieldset-border-image-1-ref.html
 == fieldset-border-image-2a.html fieldset-border-image-2-ref.html
--- a/layout/reftests/forms/input/number/reftest.list
+++ b/layout/reftests/forms/input/number/reftest.list
@@ -31,25 +31,25 @@ skip-if(Android) == number-min-height-1.
 skip-if(Android) == number-min-height-2.html number-min-height-2-ref.html
 skip-if(Android) == number-max-height-1.html number-max-height-1-ref.html
 skip-if(Android) == number-max-height-2.html number-max-height-2-ref.html
 
 # number of significant fractional digits:
 == number-significant-fractional-digits.html number-significant-fractional-digits-ref.html
 
 # focus
-fuzzy-if(skiaContent,2,5) needs-focus skip-if(styloVsGecko) == focus-handling.html focus-handling-ref.html
+fuzzy-if(skiaContent,2,5) needs-focus skip-if(styloVsGecko) fails-if(stylo) == focus-handling.html focus-handling-ref.html
 
 # select
 fuzzy-if(skiaContent,1,1) skip-if(styloVsGecko) == number-selected.html number-selected-ref.html
 
 # pseudo-elements not usable from content:
 == number-pseudo-elements.html number-pseudo-elements-ref.html
 
-fails-if(styloVsGecko) == number-placeholder.html number-placeholder-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == number-placeholder.html number-placeholder-ref.html
 
 # check that if the anonymous text control is reframed, we reframe the whole
 # number control (the fuzzy is for the top-right and bottom-left of the border
 # bevel which gets slightly different antialiasing after invalidation):
 fuzzy(128,4) == number-reframe-anon-text-field.html number-reframe-anon-text-field-ref.html
 
 == pseudo-classes.html about:blank
 
--- a/layout/reftests/forms/legend/reftest.list
+++ b/layout/reftests/forms/legend/reftest.list
@@ -1,4 +1,4 @@
 == legend.html legend-ref.html
-fuzzy-if(skiaContent,1,7) pref(dom.webcomponents.enabled,true) fails-if(styloVsGecko) == shadow-dom.html shadow-dom-ref.html
+fuzzy-if(skiaContent,1,7) pref(dom.webcomponents.enabled,true) fails-if(styloVsGecko) fails-if(stylo) == shadow-dom.html shadow-dom-ref.html
 == 1273433.html 1273433-ref.html
-fails-if(styloVsGecko) == 1339287.html 1339287-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == 1339287.html 1339287-ref.html
--- a/layout/reftests/forms/reftest.list
+++ b/layout/reftests/forms/reftest.list
@@ -1,13 +1,13 @@
 fuzzy-if(skiaContent,1,10) fails-if(styloVsGecko) HTTP(..) == text-control-baseline-1.html text-control-baseline-1-ref.html
 fuzzy-if(cocoaWidget,16,64) fuzzy-if(Android,52,64) fuzzy-if(/^Windows\x20NT\x206\.1/.test(http.oscpu),104,224) fuzzy-if(/^Windows\x20NT\x206\.2/.test(http.oscpu),88,400) == display-block-baselines-1.html display-block-baselines-1-ref.html # anti-aliasing issues
 == display-block-baselines-2.html display-block-baselines-2-ref.html
 fails-if(styloVsGecko) == display-block-baselines-3.html display-block-baselines-3-ref.html
-fails-if(styloVsGecko) == display-block-baselines-4.html display-block-baselines-4-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == display-block-baselines-4.html display-block-baselines-4-ref.html
 fuzzy-if(Android,4,8) fuzzy-if(skiaContent,7,2) == display-block-baselines-5.html display-block-baselines-5-ref.html
 
 # button element
 include button/reftest.list
 
 # legend element
 include legend/reftest.list
 
--- a/layout/reftests/forms/textarea/reftest.list
+++ b/layout/reftests/forms/textarea/reftest.list
@@ -1,14 +1,14 @@
 skip-if(Android) fails-if(styloVsGecko) == resize.html resize-ref.html
 # an offset seems to apply to the native resizer on windows so skip this test for now
-skip-if(Android) skip-if(winWidget) fuzzy-if(cocoaWidget,1,33) fuzzy-if(skiaContent&&!winWidget&&!Android,5,10) fails-if(styloVsGecko) == resize-background.html resize-background-ref.html
-skip-if(Android) fails-if(styloVsGecko) != ltr.html rtl.html
+skip-if(Android) skip-if(winWidget) fuzzy-if(cocoaWidget,1,33) fuzzy-if(skiaContent&&!winWidget&&!Android,5,10) fails-if(styloVsGecko) fails-if(stylo) == resize-background.html resize-background-ref.html
+skip-if(Android) fails-if(styloVsGecko) fails-if(stylo) != ltr.html rtl.html
 skip-if(Android) != ltr-scrollbar.html rtl-scrollbar.html
 skip-if(Android) != in-ltr-doc-scrollbar.html in-rtl-doc-scrollbar.html
-skip-if(Android) fails-if(styloVsGecko) != ltr.html no-resize.html
-skip-if(Android) fails-if(xulRuntime.widgetToolkit=="gtk2") fails-if(styloVsGecko) != rtl.html no-resize.html # bug 834724
+skip-if(Android) fails-if(styloVsGecko) fails-if(stylo) != ltr.html no-resize.html
+skip-if(Android) fails-if(xulRuntime.widgetToolkit=="gtk2") fails-if(styloVsGecko) fails-if(stylo) != rtl.html no-resize.html # bug 834724
 fuzzy-if(skiaContent,1,1) fails-if(styloVsGecko) == rtl.html rtl-dynamic-attr.html
 fuzzy-if(skiaContent,1,1) fails-if(styloVsGecko) == rtl.html rtl-dynamic-style.html
 fails-if(styloVsGecko) == rtl.html in-dynamic-rtl-doc.html
 fuzzy-if(skiaContent,1,3) fails-if(styloVsGecko) == setvalue-framereconstruction-1.html setvalue-framereconstruction-ref.html
-fuzzy-if(asyncPan&&!layersGPUAccelerated,102,4168) fails-if(styloVsGecko) == padding-scrollbar-placement.html padding-scrollbar-placement-ref.html
+fuzzy-if(asyncPan&&!layersGPUAccelerated,102,4168) fails-if(styloVsGecko) fails-if(stylo) == padding-scrollbar-placement.html padding-scrollbar-placement-ref.html
 fails-if(styloVsGecko) == various-cols.html various-cols-ref.html
--- a/layout/reftests/image/reftest.list
+++ b/layout/reftests/image/reftest.list
@@ -38,29 +38,29 @@ fuzzy(1,1) == image-orientation-explicit
 fuzzy(1,1) == image-orientation-explicit.html?180      image-orientation-ref.html?180
 fuzzy(1,1) == image-orientation-explicit.html?270      image-orientation-ref.html?270
 fuzzy(1,1) == image-orientation-explicit.html?0&flip   image-orientation-ref.html?0&flip
 fuzzy(1,1) == image-orientation-explicit.html?90&flip  image-orientation-ref.html?90&flip
 fuzzy(1,1) == image-orientation-explicit.html?180&flip image-orientation-ref.html?180&flip
 fuzzy(1,1) == image-orientation-explicit.html?270&flip image-orientation-ref.html?270&flip
 
 # Tests for image-orientation used with non-axis-aligned angles:
-fuzzy(1,1) fails-if(styloVsGecko) == image-orientation-explicit.html?-45      image-orientation-ref.html?0
+fuzzy(1,1) fails-if(styloVsGecko) fails-if(stylo) == image-orientation-explicit.html?-45      image-orientation-ref.html?0
 fuzzy(1,1) == image-orientation-explicit.html?-15      image-orientation-ref.html?0
 fuzzy(1,1) == image-orientation-explicit.html?15       image-orientation-ref.html?0
 fuzzy(1,1) == image-orientation-explicit.html?45       image-orientation-ref.html?90
 fuzzy(1,1) == image-orientation-explicit.html?75       image-orientation-ref.html?90
 fuzzy(1,1) == image-orientation-explicit.html?105      image-orientation-ref.html?90
 fuzzy(1,1) == image-orientation-explicit.html?135      image-orientation-ref.html?180
 fuzzy(1,1) == image-orientation-explicit.html?165      image-orientation-ref.html?180
 fuzzy(1,1) == image-orientation-explicit.html?195      image-orientation-ref.html?180
 fuzzy(1,1) == image-orientation-explicit.html?225      image-orientation-ref.html?270
 fuzzy(1,1) == image-orientation-explicit.html?255      image-orientation-ref.html?270
 fuzzy(1,1) == image-orientation-explicit.html?285      image-orientation-ref.html?270
-fuzzy(1,1) fails-if(styloVsGecko) == image-orientation-explicit.html?315      image-orientation-ref.html?0
+fuzzy(1,1) fails-if(styloVsGecko) fails-if(stylo) == image-orientation-explicit.html?315      image-orientation-ref.html?0
 fuzzy(1,1) == image-orientation-explicit.html?345      image-orientation-ref.html?0
 
 # Tests for image-orientation used on generated content:
 fuzzy(1,1) == image-orientation-generated-content.html?from-image image-orientation-generated-content-ref.html?270&flip
 fuzzy(1,1) == image-orientation-generated-content.html?0          image-orientation-generated-content-ref.html?0
 fuzzy(1,1) == image-orientation-generated-content.html?90         image-orientation-generated-content-ref.html?90
 fuzzy(1,1) == image-orientation-generated-content.html?180        image-orientation-generated-content-ref.html?180
 fuzzy(1,1) == image-orientation-generated-content.html?270        image-orientation-generated-content-ref.html?270
--- a/layout/reftests/mathml/reftest.list
+++ b/layout/reftests/mathml/reftest.list
@@ -6,18 +6,18 @@ random-if(gtkWidget) == dir-3.html dir-3
 == dir-6.html dir-6-ref.html
 == dir-6a.html dir-6a-ref.html
 == dir-7.html dir-7-ref.html
 fails-if(!styloVsGecko) == dir-8.html dir-8-ref.html
 fails-if(!styloVsGecko) == dir-9.html dir-9-ref.html # Bug 787215
 == dir-10.html dir-10-ref.html
 == dir-11.html dir-11-ref.html
 == css-spacing-1.html css-spacing-1-ref.html
-pref(mathml.disabled,true) fails-if(styloVsGecko) == disabled-scriptlevel-1.html disabled-scriptlevel-1-ref.html
-pref(mathml.disabled,true) fails-if(styloVsGecko) == disabled-scriptlevel-1.xhtml disabled-scriptlevel-1-ref.xhtml
+pref(mathml.disabled,true) fails-if(styloVsGecko) fails-if(stylo) == disabled-scriptlevel-1.html disabled-scriptlevel-1-ref.html
+pref(mathml.disabled,true) fails-if(styloVsGecko) fails-if(stylo) == disabled-scriptlevel-1.xhtml disabled-scriptlevel-1-ref.xhtml
 == displaystyle-1.html displaystyle-1-ref.html
 == displaystyle-2.html displaystyle-2-ref.html
 == displaystyle-3.html displaystyle-3-ref.html
 == displaystyle-4.html displaystyle-4-ref.html
 random-if(smallScreen&&Android) fuzzy(255,200) == mirror-op-1.html mirror-op-1-ref.html
 != mirror-op-2.html mirror-op-2-ref.html
 != mirror-op-3.html mirror-op-3-ref.html
 != mirror-op-4.html mirror-op-4-ref.html
@@ -285,22 +285,22 @@ fuzzy-if(d2d,7,1) == menclose-6-updiagon
 == menclose-6-phasorangle.html menclose-6-ref.html
 == mmultiscript-align.html mmultiscript-align-ref.html
 fails-if(winWidget) == subscript-italic-correction.html subscript-italic-correction-ref.html # bug 961482
 fails-if(Android) == mathvariant-1a.html mathvariant-1a-ref.html # Bug 1010679
 fails-if(Android) == mathvariant-1b.html mathvariant-1b-ref.html # Bug 1010679
 fails-if(Android) == mathvariant-1c.html mathvariant-1c-ref.html # Bug 1010679
 == mathvariant-1d.html mathvariant-1d-ref.html
 fails-if(Android||OSX) == mathvariant-2.html mathvariant-2-ref.html # Bugs 1010678, 1010679
-fails-if(styloVsGecko) == mathvariant-3.html mathvariant-3-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == mathvariant-3.html mathvariant-3-ref.html
 == mathvariant-4.html mathvariant-4-ref.html
 == mathvariant-5.html mathvariant-5-ref.html
 == dtls-1.html dtls-1-ref.html
-fails-if(styloVsGecko) == dtls-2.html dtls-2-ref.html # bug 1366206
-fails-if(styloVsGecko) == dtls-3.html dtls-3-ref.html # bug 1366206
+fails-if(styloVsGecko) fails-if(stylo) == dtls-2.html dtls-2-ref.html # bug 1366206
+fails-if(styloVsGecko) fails-if(stylo) == dtls-3.html dtls-3-ref.html # bug 1366206
 == ssty-1.html ssty-1-ref.html
 == ssty-2.html ssty-2-ref.html
 == ssty-3.html ssty-3-ref.html
 == ssty-4.html ssty-4-ref.html
 == mathscript-1.html mathscript-1-ref.html
 == mathscript-2.html mathscript-2-ref.html
 == mo-accent-dynamic.html mo-accent-dynamic-ref.html
 == mo-movablelimits-dynamic.html mo-movablelimits-dynamic-ref.html
@@ -364,17 +364,17 @@ fuzzy-if(OSX,1,100) fuzzy-if(skiaContent
 == mfrac-C-4.html mfrac-C-4-ref.html
 fuzzy-if(OSX,1,100) fuzzy-if(skiaContent,1,14) == mfrac-D-1.html mfrac-D-1-ref.html
 == mfrac-D-2.html mfrac-D-2-ref.html
 == mfrac-D-3.html mfrac-D-3-ref.html
 == mfrac-D-4.html mfrac-D-4-ref.html
 == mfrac-E-1.html mfrac-E-1-ref.html
 test-pref(dom.webcomponents.enabled,true) == shadow-dom-1.html shadow-dom-1-ref.html
 pref(font.size.inflation.emPerLine,25) == font-inflation-1.html font-inflation-1-ref.html
-test-pref(font.minimum-size.x-math,40) fails-if(styloVsGecko) == default-font.html default-font-ref.html
+test-pref(font.minimum-size.x-math,40) fails-if(styloVsGecko) fails-if(stylo) == default-font.html default-font-ref.html
 != radicalbar-1.html about:blank
 != radicalbar-1a.html about:blank
 != radicalbar-1b.html about:blank
 != radicalbar-1c.html about:blank
 != radicalbar-1d.html about:blank
 != radicalbar-2.html about:blank
 != radicalbar-2a.html about:blank
 != radicalbar-2b.html about:blank
--- a/layout/reftests/native-theme/reftest.list
+++ b/layout/reftests/native-theme/reftest.list
@@ -7,17 +7,17 @@
 != listbox-not-blank.html about:blank
 != radio-not-blank.html about:blank
 != text-control-not-blank.html about:blank
 fails-if(styloVsGecko) != textarea-not-blank.html about:blank
 
 # The following tests will fail if the platform does not have native
 # theme support (which all platforms should have).
 fails-if(!nativeThemePref) != text-input-native.html text-input-nonnative.html
-fuzzy-if(skiaContent,2,88) fails-if(styloVsGecko) == text-input-nonnative-when-styled.html text-input-nonnative-when-styled-ref.html
+fuzzy-if(skiaContent,2,88) fails-if(styloVsGecko) fails-if(stylo) == text-input-nonnative-when-styled.html text-input-nonnative-when-styled-ref.html
 fails-if(!nativeThemePref) fails-if(styloVsGecko) != textarea-native.html textarea-nonnative.html
 fuzzy-if(skiaContent,2,53) fails-if(styloVsGecko) == textarea-nonnative-when-styled.html textarea-nonnative-when-styled-ref.html
 fails-if(!nativeThemePref) != button-native.html button-nonnative.html
 == button-nonnative-when-styled.html button-nonnative-when-styled-ref.html
 fails-if(!nativeThemePref&&!Android) != combobox-native.html combobox-nonnative.html
 == combobox-nonnative-when-styled.html combobox-nonnative-when-styled-ref.html
 fails-if(!nativeThemePref) needs-focus != listbox-native.html listbox-nonnative.html
 needs-focus == listbox-nonnative-when-styled.html listbox-nonnative-when-styled-ref.html
--- a/layout/reftests/pagination/reftest.list
+++ b/layout/reftests/pagination/reftest.list
@@ -69,9 +69,9 @@ fuzzy-if(skiaContent,1,23) == resize-ref
 == table-caption-splitaftercaption-5.html table-caption-splitaftercaption-5-ref.html
 == table-caption-splitaftercaption-6.html table-caption-splitaftercaption-6-ref.html
 == table-caption-splitaftercaption-7.html table-caption-splitaftercaption-7-ref.html
 # == table-caption-splitaftercaption-8.html blank.html # bug 672654
 # == table-caption-splitaftercaption-9.html blank.html # bug 672654
 # == table-caption-splitaftercaption-10.html blank.html # bug 672654
 # == table-caption-splitaftercaption-11.html blank.html # bug 672654
 == column-balancing-break-inside-avoid-2.html column-balancing-break-inside-avoid-2-ref.html
-fails-if(styloVsGecko) == combobox-page-break-inside.html combobox-page-break-inside-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == combobox-page-break-inside.html combobox-page-break-inside-ref.html
--- a/layout/reftests/pixel-rounding/reftest.list
+++ b/layout/reftests/pixel-rounding/reftest.list
@@ -174,10 +174,10 @@ fuzzy-if(skiaContent,1,145) == rounded-b
 == background-image-tiling.html background-image-tiling-ref.html
 
 != border-image-width-0.html border-image-width-10.html
 == border-image-width-4.html border-image-width-0.html
 == border-image-width-9.html border-image-width-0.html
 
 == iframe-1.html iframe-1-ref.html
 
-fails-if(styloVsGecko) == viewport-units-rounding-1.html viewport-units-rounding-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == viewport-units-rounding-1.html viewport-units-rounding-1-ref.html
 == viewport-units-rounding-2.html about:blank
--- a/layout/reftests/printing/reftest.list
+++ b/layout/reftests/printing/reftest.list
@@ -18,17 +18,17 @@
 == 577450-1.html 577450-1-ref.html
 == 626395-1a.html 626395-1-ref.html
 == 626395-1b.html 626395-1-ref.html
 == 626395-2a.html 626395-2-ref.html
 == 626395-2b.html 626395-2-ref.html
 == 626395-2c.html 626395-2-ref.html
 == 626395-2d.html 626395-2-ref.html
 == 652178-1.html 652178-1-ref.html
-fails-if(styloVsGecko) == 115199-1.html 115199-1-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == 115199-1.html 115199-1-ref.html
 == 115199-2a.html 115199-2-ref.html
 == 115199-2b.html 115199-2-ref.html
 == 652178-1.html 652178-1-ref2.html
 fuzzy-if(cocoaWidget,1,5000) == 745025-1.html 745025-1-ref.html
 == 820496-1.html 820496-1-ref.html
 
 # NOTE: These tests don't yet rigorously test what they're
 # trying to test (shrink-to-fit behavior), due to bug 967311.
--- a/layout/reftests/scoped-style/reftest.list
+++ b/layout/reftests/scoped-style/reftest.list
@@ -1,57 +1,57 @@
-fails-if(styloVsGecko) == scoped-style-001.html scoped-style-001-ref.html
-fails-if(styloVsGecko) == scoped-style-002.html scoped-style-002-ref.html
-fails-if(styloVsGecko) == scoped-style-003.html scoped-style-003-ref.html
-fails-if(styloVsGecko) == scoped-style-004.html scoped-style-004-ref.html
-fails-if(styloVsGecko) == scoped-style-005.html scoped-style-005-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-001.html scoped-style-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-002.html scoped-style-002-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-003.html scoped-style-003-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-004.html scoped-style-004-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-005.html scoped-style-005-ref.html
 == scoped-style-006.html scoped-style-006-ref.html
 == scoped-style-007.html scoped-style-007-ref.html
-fails-if(styloVsGecko) == scoped-style-008.html scoped-style-008-ref.html
-fails-if(styloVsGecko) == scoped-style-009.html scoped-style-009-ref.html
-fails-if(styloVsGecko) == scoped-style-010.html scoped-style-010-ref.html
-fails-if(styloVsGecko) == scoped-style-011.html scoped-style-011-ref.html
-fails-if(styloVsGecko) == scoped-style-012.html scoped-style-012-ref.html
-fails-if(styloVsGecko) == scoped-style-013.html scoped-style-013-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-008.html scoped-style-008-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-009.html scoped-style-009-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-010.html scoped-style-010-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-011.html scoped-style-011-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-012.html scoped-style-012-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-013.html scoped-style-013-ref.html
 == scoped-style-014.html scoped-style-014-ref.html
-fails-if(styloVsGecko) == scoped-style-015.html scoped-style-015-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-015.html scoped-style-015-ref.html
 == scoped-style-016.html scoped-style-016-ref.html
-fails-if(styloVsGecko) == scoped-style-017.html scoped-style-017-ref.html
-fails-if(styloVsGecko) == scoped-style-018.html scoped-style-018-ref.html
-fails-if(styloVsGecko) == scoped-style-019.svg scoped-style-019-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-017.html scoped-style-017-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-018.html scoped-style-018-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-019.svg scoped-style-019-ref.svg
 == scoped-style-020.html scoped-style-020-ref.html
 == scoped-style-021.html scoped-style-021-ref.html
 == scoped-style-022.html scoped-style-022-ref.html
-fails-if(styloVsGecko) == scoped-style-023.html scoped-style-023-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-023.html scoped-style-023-ref.html
 == scoped-style-024.html scoped-style-024-ref.html
 == scoped-style-important-001.html scoped-style-important-001-ref.html
-fails-if(styloVsGecko) == scoped-style-important-002.html scoped-style-important-002-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-important-002.html scoped-style-important-002-ref.html
 == scoped-style-important-003.html scoped-style-important-003-ref.html
 == scoped-style-important-004.html scoped-style-important-004-ref.html
 == scoped-style-important-005.html scoped-style-important-005-ref.html
 == scoped-style-important-006.html scoped-style-important-006-ref.html
 == scoped-style-important-007.html scoped-style-important-007-ref.html
-fails-if(styloVsGecko) == scoped-style-dynamic-001.html scoped-style-dynamic-001-ref.html
-fails-if(styloVsGecko) == scoped-style-dynamic-002.html scoped-style-dynamic-002-ref.html
-fails-if(styloVsGecko) == scoped-style-dynamic-003.html scoped-style-dynamic-003-ref.html
-fails-if(styloVsGecko) == scoped-style-dynamic-004.html scoped-style-dynamic-004-ref.html
-asserts-if(styloVsGecko,1) == scoped-style-dynamic-005.html scoped-style-dynamic-005-ref.html
-skip-if(styloVsGecko) == scoped-style-dynamic-006.html scoped-style-dynamic-006-ref.html
-fails-if(styloVsGecko) == scoped-style-dynamic-007.html scoped-style-dynamic-007-ref.html
-fails-if(styloVsGecko) == scoped-style-dynamic-008.html scoped-style-dynamic-008-ref.html
-skip-if(styloVsGecko) == scoped-style-dynamic-009.html scoped-style-dynamic-009-ref.html
-asserts-if(styloVsGecko,1) == scoped-style-dynamic-010.html scoped-style-dynamic-010-ref.html
-fails-if(styloVsGecko) == scoped-style-dynamic-011.html scoped-style-dynamic-011-ref.html
-asserts-if(styloVsGecko,1) == scoped-style-dynamic-012.svg scoped-style-dynamic-012-ref.svg
-fails-if(styloVsGecko) asserts-if(styloVsGecko,1) == scoped-style-dynamic-013.svg scoped-style-dynamic-013-ref.svg
-asserts-if(styloVsGecko,1) == scoped-style-dynamic-014.svg scoped-style-dynamic-014-ref.svg
-fails-if(styloVsGecko) asserts-if(styloVsGecko,1) == scoped-style-dynamic-015.svg scoped-style-dynamic-015-ref.svg
-fails-if(styloVsGecko) == scoped-style-import.html scoped-style-import-ref.html
-fails-if(styloVsGecko) == scoped-style-media.html scoped-style-media-ref.html
-fails-if(styloVsGecko) == scoped-style-namespace.html scoped-style-namespace-ref.html
-fails-if(styloVsGecko) == scoped-style-charset.html scoped-style-charset-ref.html
-fails-if(styloVsGecko) == scoped-style-document.html scoped-style-document-ref.html
-fails-if(styloVsGecko) HTTP(..) == scoped-style-font-face.html scoped-style-font-face-ref.html
-fails-if(styloVsGecko) == scoped-style-keyframes.html scoped-style-keyframes-ref.html
-fails-if(styloVsGecko) == scoped-style-supports.html scoped-style-supports-ref.html
-pref(layout.css.scope-pseudo.enabled,true) fails-if(styloVsGecko) == scoped-style-pseudo-001.html scoped-style-pseudo-001-ref.html
-pref(layout.css.scope-pseudo.enabled,true) fails-if(styloVsGecko) == scoped-style-pseudo-002.html scoped-style-pseudo-002-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-dynamic-001.html scoped-style-dynamic-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-dynamic-002.html scoped-style-dynamic-002-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-dynamic-003.html scoped-style-dynamic-003-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-dynamic-004.html scoped-style-dynamic-004-ref.html
+asserts-if(styloVsGecko,1) asserts-if(stylo,1) == scoped-style-dynamic-005.html scoped-style-dynamic-005-ref.html
+skip-if(styloVsGecko) asserts-if(stylo,1) fails-if(stylo) == scoped-style-dynamic-006.html scoped-style-dynamic-006-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-dynamic-007.html scoped-style-dynamic-007-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-dynamic-008.html scoped-style-dynamic-008-ref.html
+skip-if(styloVsGecko) asserts-if(stylo,1) fails-if(stylo) == scoped-style-dynamic-009.html scoped-style-dynamic-009-ref.html
+asserts-if(styloVsGecko,1) asserts-if(stylo,1) == scoped-style-dynamic-010.html scoped-style-dynamic-010-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-dynamic-011.html scoped-style-dynamic-011-ref.html
+asserts-if(styloVsGecko,1) asserts-if(stylo,1) == scoped-style-dynamic-012.svg scoped-style-dynamic-012-ref.svg
+fails-if(styloVsGecko) asserts-if(styloVsGecko,1) asserts-if(stylo,1) fails-if(stylo) == scoped-style-dynamic-013.svg scoped-style-dynamic-013-ref.svg
+asserts-if(styloVsGecko,1) asserts-if(stylo,1) == scoped-style-dynamic-014.svg scoped-style-dynamic-014-ref.svg
+fails-if(styloVsGecko) asserts-if(styloVsGecko,1) asserts-if(stylo,1) fails-if(stylo) == scoped-style-dynamic-015.svg scoped-style-dynamic-015-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-import.html scoped-style-import-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-media.html scoped-style-media-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-namespace.html scoped-style-namespace-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-charset.html scoped-style-charset-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-document.html scoped-style-document-ref.html
+fails-if(styloVsGecko) fails-if(stylo) HTTP(..) == scoped-style-font-face.html scoped-style-font-face-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-keyframes.html scoped-style-keyframes-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == scoped-style-supports.html scoped-style-supports-ref.html
+pref(layout.css.scope-pseudo.enabled,true) fails-if(styloVsGecko) fails-if(stylo) == scoped-style-pseudo-001.html scoped-style-pseudo-001-ref.html
+pref(layout.css.scope-pseudo.enabled,true) fails-if(styloVsGecko) fails-if(stylo) == scoped-style-pseudo-002.html scoped-style-pseudo-002-ref.html
 pref(layout.css.scope-pseudo.enabled,true) == scoped-style-pseudo-003.html scoped-style-pseudo-003-ref.html
--- a/layout/reftests/svg/as-image/reftest.list
+++ b/layout/reftests/svg/as-image/reftest.list
@@ -52,40 +52,40 @@ fuzzy(1,2) fuzzy-if(azureSkia,1,40000) =
 == canvas-drawImage-slice-1b.html lime100x100-ref.html
 
 == canvas-drawImage-origin-clean-1.html lime100x100-ref.html
 == canvas-drawImage-transform-restored.html canvas-drawImage-transform-restored-ref.html
 
 # Context paint tests (this feature is currently not part of any spec.)
 # context-fill:
 == context-fill-01.html blue100x100-ref.html
-fails-if(styloVsGecko) test-pref(svg.context-properties.content.enabled,true) == context-fill-01.html lime100x100-ref.html
+fails-if(styloVsGecko) test-pref(svg.context-properties.content.enabled,true) fails-if(stylo) == context-fill-01.html lime100x100-ref.html
 == context-fill-02.html transparent100x100-w-border-ref.html
-fails-if(styloVsGecko) test-pref(svg.context-properties.content.enabled,true) == context-fill-02.html lime100x100-w-border-ref.html
-fails-if(styloVsGecko) test-pref(svg.context-properties.content.enabled,true) == context-fill-03.html lime100x100-50pct-ref.html
+fails-if(styloVsGecko) test-pref(svg.context-properties.content.enabled,true) fails-if(stylo) == context-fill-02.html lime100x100-w-border-ref.html
+fails-if(styloVsGecko) test-pref(svg.context-properties.content.enabled,true) fails-if(stylo) == context-fill-03.html lime100x100-50pct-ref.html
 # fuzz because on win8 the r & b components are off by one
-fails-if(styloVsGecko) fuzzy-if(winWidget,1,10000) test-pref(svg.context-properties.content.enabled,true) == context-fill-04.html lime100x100-50pct-ref.html
-fails-if(styloVsGecko) test-pref(svg.context-properties.content.enabled,true) == context-fill-05.html context-fill-or-stroke-05-ref.html
-fails-if(styloVsGecko) test-pref(svg.context-properties.content.enabled,true) == context-fill-06.html lime100x100-ref.html
-fails-if(styloVsGecko) test-pref(svg.context-properties.content.enabled,true) == context-fill-07.html context-fill-07-ref.html
+fails-if(styloVsGecko) fuzzy-if(winWidget,1,10000) test-pref(svg.context-properties.content.enabled,true) fails-if(stylo) == context-fill-04.html lime100x100-50pct-ref.html
+fails-if(styloVsGecko) test-pref(svg.context-properties.content.enabled,true) fails-if(stylo) == context-fill-05.html context-fill-or-stroke-05-ref.html
+fails-if(styloVsGecko) test-pref(svg.context-properties.content.enabled,true) fails-if(stylo) == context-fill-06.html lime100x100-ref.html
+fails-if(styloVsGecko) test-pref(svg.context-properties.content.enabled,true) fails-if(stylo) == context-fill-07.html context-fill-07-ref.html
 test-pref(svg.context-properties.content.enabled,true) == context-fill-08.html blue100x100-ref.html
-fails-if(styloVsGecko) test-pref(svg.context-properties.content.enabled,true) == context-fill-bg-image-01.html blue100x100-ref.html
+fails-if(styloVsGecko) test-pref(svg.context-properties.content.enabled,true) fails-if(stylo) == context-fill-bg-image-01.html blue100x100-ref.html
 # context-stroke:
 == context-stroke-01.html blue100x100-ref.html
-fails-if(styloVsGecko) test-pref(svg.context-properties.content.enabled,true) == context-stroke-01.html lime100x100-ref.html
+fails-if(styloVsGecko) test-pref(svg.context-properties.content.enabled,true) fails-if(stylo) == context-stroke-01.html lime100x100-ref.html
 == context-stroke-02.html transparent100x100-w-border-ref.html
-fails-if(styloVsGecko) test-pref(svg.context-properties.content.enabled,true) == context-stroke-02.html lime100x100-w-border-ref.html
-fails-if(styloVsGecko) test-pref(svg.context-properties.content.enabled,true) == context-stroke-03.html lime100x100-50pct-ref.html
+fails-if(styloVsGecko) test-pref(svg.context-properties.content.enabled,true) fails-if(stylo) == context-stroke-02.html lime100x100-w-border-ref.html
+fails-if(styloVsGecko) test-pref(svg.context-properties.content.enabled,true) fails-if(stylo) == context-stroke-03.html lime100x100-50pct-ref.html
 # fuzz because on win8 the r & b components are off by one
-fails-if(styloVsGecko) fuzzy-if(winWidget,1,10000) test-pref(svg.context-properties.content.enabled,true) == context-stroke-04.html lime100x100-50pct-ref.html
-fails-if(styloVsGecko) test-pref(svg.context-properties.content.enabled,true) == context-stroke-05.html context-fill-or-stroke-05-ref.html
-fails-if(styloVsGecko) test-pref(svg.context-properties.content.enabled,true) == context-stroke-06.html lime100x100-ref.html
+fails-if(styloVsGecko) fuzzy-if(winWidget,1,10000) test-pref(svg.context-properties.content.enabled,true) fails-if(stylo) == context-stroke-04.html lime100x100-50pct-ref.html
+fails-if(styloVsGecko) test-pref(svg.context-properties.content.enabled,true) fails-if(stylo) == context-stroke-05.html context-fill-or-stroke-05-ref.html
+fails-if(styloVsGecko) test-pref(svg.context-properties.content.enabled,true) fails-if(stylo) == context-stroke-06.html lime100x100-ref.html
 test-pref(svg.context-properties.content.enabled,true) == context-stroke-07.html context-stroke-07-ref.html
 test-pref(svg.context-properties.content.enabled,true) == context-stroke-08.html blue100x100-border-ref.html
-fails-if(styloVsGecko) test-pref(svg.context-properties.content.enabled,true) == context-stroke-bg-image-01.html blue100x100-border-ref.html
+fails-if(styloVsGecko) test-pref(svg.context-properties.content.enabled,true) fails-if(stylo) == context-stroke-bg-image-01.html blue100x100-border-ref.html
 
 # Simple <img> tests
 == img-simple-1.html  lime100x100-ref.html
 == img-simple-2.html  lime100x100-ref.html
 fuzzy-if(skiaContent,255,350) == img-simple-3.html  img-simple-3-ref.html
 == img-simple-4.html  lime100x100-ref.html
 fuzzy-if(skiaContent,255,90) == img-simple-5.html  img-simple-5-ref.html
 == img-simple-6.html  lime100x100-ref.html
--- a/layout/reftests/svg/reftest.list
+++ b/layout/reftests/svg/reftest.list
@@ -90,19 +90,19 @@ default-preferences
 == conditions-02.svg pass.svg
 == conditions-03.svg pass.svg
 == conditions-04.svg pass.svg
 == conditions-05.svg about:blank
 == conditions-07.svg pass.svg
 fuzzy-if(skiaContent,1,320) == conditions-08.svg conditions-08-ref.svg
 == conditions-09.svg conditions-09-ref.svg
 
-fails-if(styloVsGecko) == currentColor-01.svg pass.svg
-fails-if(styloVsGecko) == currentColor-02.svg pass.svg
-fails-if(styloVsGecko) == currentColor-03.svg pass.svg
+fails-if(styloVsGecko) fails-if(stylo) == currentColor-01.svg pass.svg
+fails-if(styloVsGecko) fails-if(stylo) == currentColor-02.svg pass.svg
+fails-if(styloVsGecko) fails-if(stylo) == currentColor-03.svg pass.svg
 
 == data-uri-with-filter-01.xhtml data-uri-with-filter-01-ref.svg
 == data-uri-with-gradient-01.xhtml data-uri-with-gradient-01-ref.svg
 == data-uri-with-pattern-01.xhtml pass.svg
 
 == dynamic-attr-removal-1.svg pass.svg
 == dynamic-attr-removal-2.svg pass.svg
 == dynamic-attr-change-1.svg pass.svg
@@ -284,17 +284,17 @@ fuzzy(1,5000) == mask-opacity-01.svg mas
 != mask-root-svg.svg about:blank
 == mask-transformed-01.svg mask-transformed-01-ref.svg
 == mask-transformed-02.svg pass.svg
 == mask-transformed-child-01.svg mask-transformed-child-01-ref.svg
 # fuzzy because of the differences between clipPath and mask clipping
 fuzzy-if(d2d||skiaContent,1,6400) == mask-type-01.svg mask-type-01-ref.svg
 fuzzy-if(d2d||skiaContent,1,6400) == mask-type-02.svg mask-type-01-ref.svg
 fuzzy-if(d2d||skiaContent,1,6400) == mask-type-03.svg mask-type-01-ref.svg
-fuzzy-if(d2d||skiaContent,1,6400) fails-if(styloVsGecko) == mask-type-04.svg mask-type-01-ref.svg
+fuzzy-if(d2d||skiaContent,1,6400) fails-if(styloVsGecko) fails-if(stylo) == mask-type-04.svg mask-type-01-ref.svg
 == mask-use-element-01.svg pass.svg
 
 != nested-mask-mode.svg about:blank
 == nested-viewBox-01.svg pass.svg
 fuzzy-if(skiaContent,3,448000) == nesting-invalid-01.svg nesting-invalid-01-ref.svg
 
 fuzzy-if(d2d&&/^Windows\x20NT\x20(6\.1|10\.0)/.test(http.oscpu),63,168) fuzzy-if(cocoaWidget,1,122) fuzzy-if(skiaContent,2,1000) == non-scaling-stroke-01.svg non-scaling-stroke-01-ref.svg # bug 1074161 for Win7 and OSX 10.8
 fuzzy-if(gtkWidget,1,99) fuzzy-if(!contentSameGfxBackendAsCanvas,9,99) fuzzy-if(Android,9,586) == non-scaling-stroke-02.svg non-scaling-stroke-02-ref.svg
@@ -387,17 +387,17 @@ fuzzy-if(skiaContent,1,3600) == rect-01.
 
 == rootElement-null-01.svg pass.svg
 
 == script-empty-01.svg pass.svg
 
 == selector-01.svg pass.svg
 
 == stroke-dasharray-01.svg stroke-dasharray-01-ref.svg
-fuzzy-if(skiaContent,1,340) fails-if(styloVsGecko) == stroke-dasharray-02.svg pass.svg
+fuzzy-if(skiaContent,1,340) fails-if(styloVsGecko) fails-if(stylo) == stroke-dasharray-02.svg pass.svg
 fuzzy-if(skiaContent,1,340) == stroke-dasharray-03.svg pass.svg
 == stroke-dasharray-and-pathLength-01.svg pass.svg
 == stroke-dasharray-and-text-01.svg stroke-dasharray-and-text-01-ref.svg
 == stroke-dashoffset-01.svg pass.svg
 == stroke-dashoffset-and-pathLength-01.svg pass.svg
 == stroke-linecap-circle-ellipse-01.svg stroke-linecap-circle-ellipse-01-ref.svg
 == stroke-linecap-circle-ellipse-dashed-01.svg pass.svg
 == stroke-linecap-round-w-zero-length-segs-01.svg pass.svg
--- a/layout/reftests/svg/smil/container/reftest.list
+++ b/layout/reftests/svg/smil/container/reftest.list
@@ -1,17 +1,17 @@
 # Tests related to SVG Animation (using SMIL), focusing on animation-sorting
 # to see which animation takes precedence (out of multiple animations on the
 # same attribute)
 
 random == enveloped-tree-1.xhtml enveloped-tree-1-ref.xhtml  # bug 470868
 fuzzy-if(cocoaWidget&&layersGPUAccelerated,1,3) fuzzy-if(skiaContent,1,810) == promoted-tree-1.xhtml promoted-tree-1-ref.xhtml
 random == moved-tree-1.xhtml moved-tree-1-ref.xhtml  # bug 470868
-random-if(cocoaWidget||d2d) fails-if(styloVsGecko) == deferred-anim-1.xhtml deferred-anim-1-ref.xhtml # bug 470868, bug 585484
-random-if(cocoaWidget&&layersGPUAccelerated) fails-if(styloVsGecko) == deferred-tree-1.xhtml deferred-tree-1-ref.xhtml # bug 470868
+random-if(cocoaWidget||d2d) fails-if(styloVsGecko) fails-if(stylo) == deferred-anim-1.xhtml deferred-anim-1-ref.xhtml # bug 470868, bug 585484
+random-if(cocoaWidget&&layersGPUAccelerated) fails-if(styloVsGecko) fails-if(stylo) == deferred-tree-1.xhtml deferred-tree-1-ref.xhtml # bug 470868
 random-if(cocoaWidget&&layersGPUAccelerated) fuzzy-if(skiaContent,1,530) == deferred-tree-2a.xhtml deferred-tree-2-ref.xhtml # bug 470868
 random-if(cocoaWidget&&layersGPUAccelerated) fuzzy-if(skiaContent,1,530) == deferred-tree-2b.xhtml deferred-tree-2-ref.xhtml # bug 470868
 fuzzy-if(cocoaWidget&&layersGPUAccelerated,1,16) fuzzy-if(skiaContent,1,410) == deferred-tree-3a.xhtml deferred-tree-3-ref.xhtml
 fuzzy-if(cocoaWidget&&layersGPUAccelerated,1,16) fuzzy-if(skiaContent,1,110) == deferred-tree-3b.xhtml deferred-tree-3-ref.xhtml
 fuzzy-if(cocoaWidget&&layersGPUAccelerated,1,16) fuzzy-if(skiaContent,1,110) == deferred-tree-3c.xhtml deferred-tree-3-ref.xhtml
 fuzzy-if(cocoaWidget&&layersGPUAccelerated,1,16) fuzzy-if(skiaContent,1,110) == deferred-tree-3d.xhtml deferred-tree-3-ref.xhtml
 # this will occasionally fail until we correctly clear animation effects from
 # no-longer-targeted elements
--- a/layout/reftests/svg/smil/event/reftest.list
+++ b/layout/reftests/svg/smil/event/reftest.list
@@ -1,32 +1,32 @@
 # Tests related to SVG Animation (using SMIL) that use event timing.
 
-fails-if(styloVsGecko) == event-begin-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == event-begin-offset-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == event-begin-offset-2.svg green-box-ref.svg
-fails-if(styloVsGecko) == event-begin-timeevent-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == event-begin-timeevent-2.svg green-box-ref.svg
-random-if(Android) fails-if(styloVsGecko) == event-begin-timeevent-3.svg green-box-ref.svg
-fails-if(styloVsGecko) == event-begin-load-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == event-bubble-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == event-custom-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == event-begin-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == event-begin-offset-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == event-begin-offset-2.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == event-begin-timeevent-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == event-begin-timeevent-2.svg green-box-ref.svg
+random-if(Android) fails-if(styloVsGecko) fails-if(stylo) == event-begin-timeevent-3.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == event-begin-load-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == event-bubble-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == event-custom-1.svg green-box-ref.svg
 == event-end-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == event-end-2.svg green-box-ref.svg
-fails-if(styloVsGecko) == event-end-open-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == event-end-trimmed-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == event-preventDefault-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == event-seek-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == event-target-default-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == event-target-default-2.svg green-box-ref.svg
-fails-if(styloVsGecko) == event-target-id-change-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == event-end-2.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == event-end-open-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == event-end-trimmed-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == event-preventDefault-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == event-seek-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == event-target-default-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == event-target-default-2.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == event-target-id-change-1.svg green-box-ref.svg
 == event-target-id-change-2.svg green-box-ref.svg
 == event-target-id-change-3.svg green-box-ref.svg
-fails-if(styloVsGecko) == event-target-xlink-change-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == event-target-xlink-change-1.svg green-box-ref.svg
 == event-target-xlink-change-2.svg green-box-ref.svg
-fails-if(styloVsGecko) == event-target-xlink-change-3.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == event-target-xlink-change-3.svg green-box-ref.svg
 == event-target-xlink-change-4.svg green-box-ref.svg
 == event-target-surgery-1.svg green-box-ref.svg
 == event-target-surgery-2.svg green-box-ref.svg
-fails-if(styloVsGecko) == event-target-surgery-3.svg green-box-ref.svg
-fails-if(styloVsGecko) == event-target-non-svg-1.xhtml green-box-ref.xhtml
-fails-if(styloVsGecko) == accesskey-entity-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == accesskey-entity-2.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == event-target-surgery-3.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == event-target-non-svg-1.xhtml green-box-ref.xhtml
+fails-if(styloVsGecko) fails-if(stylo) == accesskey-entity-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == accesskey-entity-2.svg green-box-ref.svg
--- a/layout/reftests/svg/smil/reftest.list
+++ b/layout/reftests/svg/smil/reftest.list
@@ -70,19 +70,19 @@ include event/reftest.list
 == anim-discrete-to-4.svg          anim-standard-ref.svg
 
 == anim-indefinite-to-1.svg        anim-standard-ref.svg
 == anim-indefinite-to-2.svg        anim-standard-ref.svg
 == anim-indefinite-to-3.svg        anim-standard-ref.svg
 == anim-indefinite-to-4.svg        anim-standard-ref.svg
 
 fails-if(!styloVsGecko) == anim-fillcolor-1.svg      anim-standard-ref.svg # bug 436296
-fails-if(styloVsGecko) == anim-fillopacity-1none.svg anim-standard-ref.svg
-fails-if(styloVsGecko) == anim-fillopacity-1css.svg  anim-standard-ref.svg
-fails-if(styloVsGecko) == anim-fillopacity-1xml.svg  anim-standard-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-fillopacity-1none.svg anim-standard-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-fillopacity-1css.svg  anim-standard-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-fillopacity-1xml.svg  anim-standard-ref.svg
 
 fuzzy-if(skiaContent,1,3600) == anim-opacity-01.svg lime.svg
 
 == anim-height-done-1a.svg anim-standard-ref.svg
 == anim-height-done-1b.svg anim-standard-ref.svg
 == anim-height-done-2.svg lime.svg
 == anim-height-interp-1.svg anim-height-interp-1-ref.svg
 == anim-height-interp-2.svg anim-height-interp-2-ref.svg
@@ -151,44 +151,44 @@ skip-if(styloVsGecko) == anim-view-01.sv
 # animate some string attributes:
 == anim-filter-href-01.svg lime.svg
 == anim-gradient-href-01.svg lime.svg
 == anim-image-href-01.svg lime.svg
 == anim-pattern-href-01.svg lime.svg
 == anim-use-href-01.svg lime.svg
 
 # animate the class attribute
-fails-if(styloVsGecko) == anim-class-01.svg lime.svg
-fails-if(styloVsGecko) == anim-class-02.svg lime.svg
-fails-if(styloVsGecko) == anim-class-03.svg lime.svg
-fails-if(styloVsGecko) == anim-class-04.svg anim-class-04-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-class-01.svg lime.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-class-02.svg lime.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-class-03.svg lime.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-class-04.svg anim-class-04-ref.svg
 
 # animate with some paint server values
-fails-if(styloVsGecko) == anim-paintserver-1.svg anim-paintserver-1-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-paintserver-1.svg anim-paintserver-1-ref.svg
 
 # animate attributes on text content children
 == anim-text-attr-01.svg anim-text-attr-01-ref.svg
 
 # animate where the base value is non-interpolatable but will be replaced anyway
-fails-if(styloVsGecko) == anim-fill-overpaintserver-1.svg lime.svg
-fails-if(styloVsGecko) == anim-fill-overpaintserver-2.svg lime.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-fill-overpaintserver-1.svg lime.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-fill-overpaintserver-2.svg lime.svg
 
 # animate where we fallback from 'additive' animation to non-additive
-fails-if(styloVsGecko) == anim-additive-fallback-1.svg anim-standard-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-additive-fallback-1.svg anim-standard-ref.svg
 
 == anim-remove-1.svg anim-standard-ref.svg
 == anim-remove-2.svg anim-standard-ref.svg
 == anim-remove-3.svg anim-standard-ref.svg
 == anim-remove-4.svg anim-standard-ref.svg
 == anim-remove-5.svg anim-standard-ref.svg
 == anim-remove-6.svg anim-standard-ref.svg
 == anim-remove-7.svg anim-standard-ref.svg
 == anim-remove-8css.svg anim-standard-ref.svg
 == anim-remove-8xml.svg anim-standard-ref.svg
-fails-if(styloVsGecko) == anim-remove-9.svg anim-standard-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-remove-9.svg anim-standard-ref.svg
 == anim-retarget-1.svg anim-standard-ref.svg
 == anim-retarget-2.svg anim-standard-ref.svg
 == anim-retarget-3.svg anim-standard-ref.svg
 == anim-retarget-4.svg anim-standard-ref.svg
 == anim-retarget-5.svg anim-standard-ref.svg
 == anim-retarget-6.svg anim-standard-ref.svg
 == anim-retarget-7.svg anim-standard-ref.svg
 == anim-retarget-8.svg anim-standard-ref.svg
@@ -243,45 +243,45 @@ fuzzy-if(cocoaWidget&&layersGPUAccelerat
 == api-sanity-1.svg lime.svg
 
 == freeze-applied-late-1.svg anim-standard-ref.svg
 == freeze-applied-late-2.svg anim-standard-ref.svg
 == freeze-applied-late-3.svg anim-standard-ref.svg
 == freeze-applied-late-4.svg anim-standard-ref.svg
 == frozen-to-anim-1.svg lime.svg
 
-fails-if(styloVsGecko) == inactivate-with-active-unchanged-1.svg anim-standard-ref.svg
-fails-if(styloVsGecko) == inactivate-with-active-unchanged-2.svg anim-standard-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == inactivate-with-active-unchanged-1.svg anim-standard-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == inactivate-with-active-unchanged-2.svg anim-standard-ref.svg
 
-fails-if(styloVsGecko) == mapped-attr-long-url-1.svg lime.svg
-fails-if(styloVsGecko) == mapped-attr-long-url-2.svg lime.svg
+fails-if(styloVsGecko) fails-if(stylo) == mapped-attr-long-url-1.svg lime.svg
+fails-if(styloVsGecko) fails-if(stylo) == mapped-attr-long-url-2.svg lime.svg
 
 == min-1.svg lime.svg
 
-fails-if(styloVsGecko) == smil-transitions-interaction-1a.svg lime.svg
-fails-if(styloVsGecko) == smil-transitions-interaction-1b.svg lime.svg
-fails-if(styloVsGecko) == smil-transitions-interaction-2a.svg lime.svg
-fails-if(styloVsGecko) == smil-transitions-interaction-2b.svg lime.svg
+fails-if(styloVsGecko) fails-if(stylo) == smil-transitions-interaction-1a.svg lime.svg
+fails-if(styloVsGecko) fails-if(stylo) == smil-transitions-interaction-1b.svg lime.svg
+fails-if(styloVsGecko) fails-if(stylo) == smil-transitions-interaction-2a.svg lime.svg
+fails-if(styloVsGecko) fails-if(stylo) == smil-transitions-interaction-2b.svg lime.svg
 == smil-transitions-interaction-3a.svg lime.svg
 == smil-transitions-interaction-3b.svg lime.svg
 == smil-transitions-interaction-4a.svg lime.svg
 == smil-transitions-interaction-4b.svg lime.svg
 
 # Test filtering of excessive times
 == filtered-instance-time-1.svg anim-standard-ref.svg
 
 # Test animation using defs element
-fails-if(styloVsGecko) == anim-defs-gradient-property.svg lime.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-defs-gradient-property.svg lime.svg
 == anim-defs-gradient-attribute.svg lime.svg
-fails-if(styloVsGecko) == anim-defs-fill.svg lime.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-defs-fill.svg lime.svg
 == anim-defs-width.svg lime.svg
 
 # Test animation that changes 'display' attribute
-fails-if(styloVsGecko) == anim-display.svg lime.svg
-fails-if(styloVsGecko) == anim-display-in-g-element.svg lime.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-display.svg lime.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-display-in-g-element.svg lime.svg
 
 # Test animation that change 'display' style value to 'none'
 == anim-change-display-none-for-ancestor-elem.html lime.html
 == anim-change-display-none-for-target-elem.html lime.html
 == anim-change-display-none-for-dynamically-appended-elem.html lime.html
-fails-if(styloVsGecko) == anim-change-display-block-for-dynamically-appended-elem.html anim-standard-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == anim-change-display-block-for-dynamically-appended-elem.html anim-standard-ref.html
 
 pref(layout.css.clip-path-shapes.enabled,true) fuzzy(63,146) == anim-clipPath-viewBox.svg anim-clipPath-viewBox-ref.svg
--- a/layout/reftests/svg/smil/repeat/reftest.list
+++ b/layout/reftests/svg/smil/repeat/reftest.list
@@ -1,3 +1,3 @@
 # Tests for repeat behaviour
-fails-if(styloVsGecko) == indefinite-repeat-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == indefinite-repeat-1.svg green-box-ref.svg
 == init-repeat-1.svg init-repeat-1-ref.svg
--- a/layout/reftests/svg/smil/restart/reftest.list
+++ b/layout/reftests/svg/smil/restart/reftest.list
@@ -1,8 +1,8 @@
 # Tests for restart behaviour
 == reset-1.svg reset-1-ref.svg
 == reset-2.svg green-box-ref.svg
-fails-if(styloVsGecko) == reset-3.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == reset-3.svg green-box-ref.svg
 == reset-4.svg green-box-ref.svg
 # reset-5.svg is no longer valid and has been removed
-fails-if(styloVsGecko) == reset-6.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == reset-6.svg green-box-ref.svg
 == reset-7.svg green-box-ref.svg
--- a/layout/reftests/svg/smil/style/reftest.list
+++ b/layout/reftests/svg/smil/style/reftest.list
@@ -1,160 +1,160 @@
 # Tests related to SVG Animation (using SMIL) of CSS properties
 
 # XXXdholbert TODO: Test color animation with "color-interpolation: linearRGB"
 # (when it's implemented)
 
 # 'color' property, from/to/by with named colors & hex values
-fails-if(styloVsGecko) == anim-css-color-1-by-ident-hex.svg         anim-css-fill-1-ref.svg
-fails-if(styloVsGecko) == anim-css-color-1-from-by-hex-hex.svg      anim-css-fill-1-ref.svg
-fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) == anim-css-color-1-from-by-ident-hex.svg    anim-css-fill-1-ref.svg
-fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) == anim-css-color-1-from-to-hex-hex.svg      anim-css-fill-1-ref.svg
-fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) == anim-css-color-1-from-to-ident-ident.svg  anim-css-fill-1-ref.svg
-fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) == anim-css-color-1-to-ident-hex.svg         anim-css-fill-1-ref.svg
-fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) == anim-css-color-1-to-ident-ident.svg       anim-css-fill-1-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-color-1-by-ident-hex.svg         anim-css-fill-1-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-color-1-from-by-hex-hex.svg      anim-css-fill-1-ref.svg
+fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) fails-if(stylo) == anim-css-color-1-from-by-ident-hex.svg    anim-css-fill-1-ref.svg
+fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) fails-if(stylo) == anim-css-color-1-from-to-hex-hex.svg      anim-css-fill-1-ref.svg
+fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) fails-if(stylo) == anim-css-color-1-from-to-ident-ident.svg  anim-css-fill-1-ref.svg
+fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) fails-if(stylo) == anim-css-color-1-to-ident-hex.svg         anim-css-fill-1-ref.svg
+fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) fails-if(stylo) == anim-css-color-1-to-ident-ident.svg       anim-css-fill-1-ref.svg
 
 # 'color' property, paced calcMode
-fails-if(styloVsGecko) == anim-css-color-2-paced-rgb.svg            anim-css-fill-2-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-color-2-paced-rgb.svg            anim-css-fill-2-ref.svg
 
 # 'color' property, animating *by* a named color
-fuzzy-if(skiaContent,1,580) fails-if(styloVsGecko) == anim-css-color-3-by-ident-ident.svg       anim-css-fill-3-ref.svg
-fuzzy-if(skiaContent,1,580) fails-if(styloVsGecko) == anim-css-color-3-from-by-ident-ident.svg  anim-css-fill-3-ref.svg
-fuzzy-if(skiaContent,1,580) fails-if(styloVsGecko) == anim-css-color-3-from-by-rgb-ident.svg    anim-css-fill-3-ref.svg
+fuzzy-if(skiaContent,1,580) fails-if(styloVsGecko) fails-if(stylo) == anim-css-color-3-by-ident-ident.svg       anim-css-fill-3-ref.svg
+fuzzy-if(skiaContent,1,580) fails-if(styloVsGecko) fails-if(stylo) == anim-css-color-3-from-by-ident-ident.svg  anim-css-fill-3-ref.svg
+fuzzy-if(skiaContent,1,580) fails-if(styloVsGecko) fails-if(stylo) == anim-css-color-3-from-by-rgb-ident.svg    anim-css-fill-3-ref.svg
 
 # 'fill' property, from/to/by with named colors & hex values
-fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) == anim-css-fill-1-by-ident-hex.svg         anim-css-fill-1-ref.svg
-fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) == anim-css-fill-1-from-by-hex-hex.svg      anim-css-fill-1-ref.svg
-fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) == anim-css-fill-1-from-by-ident-hex.svg    anim-css-fill-1-ref.svg
-fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) == anim-css-fill-1-from-to-hex-hex.svg      anim-css-fill-1-ref.svg
-fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) == anim-css-fill-1-from-to-ident-ident.svg  anim-css-fill-1-ref.svg
-fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) == anim-css-fill-1-to-ident-hex.svg         anim-css-fill-1-ref.svg
-fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) == anim-css-fill-1-to-ident-ident.svg       anim-css-fill-1-ref.svg
+fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) fails-if(stylo) == anim-css-fill-1-by-ident-hex.svg         anim-css-fill-1-ref.svg
+fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) fails-if(stylo) == anim-css-fill-1-from-by-hex-hex.svg      anim-css-fill-1-ref.svg
+fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) fails-if(stylo) == anim-css-fill-1-from-by-ident-hex.svg    anim-css-fill-1-ref.svg
+fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) fails-if(stylo) == anim-css-fill-1-from-to-hex-hex.svg      anim-css-fill-1-ref.svg
+fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) fails-if(stylo) == anim-css-fill-1-from-to-ident-ident.svg  anim-css-fill-1-ref.svg
+fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) fails-if(stylo) == anim-css-fill-1-to-ident-hex.svg         anim-css-fill-1-ref.svg
+fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) fails-if(stylo) == anim-css-fill-1-to-ident-ident.svg       anim-css-fill-1-ref.svg
 
 # 'fill' property, from/to/by, with 'currentColor' keyword
-fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) == anim-css-fill-1-by-ident-curcol.svg      anim-css-fill-1-ref.svg
-fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) == anim-css-fill-1-from-by-curcol-hex.svg   anim-css-fill-1-ref.svg
-fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) == anim-css-fill-1-from-by-hex-curcol.svg   anim-css-fill-1-ref.svg
-fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) == anim-css-fill-1-from-to-curcol-hex.svg   anim-css-fill-1-ref.svg
-fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) == anim-css-fill-1-from-to-hex-curcol.svg   anim-css-fill-1-ref.svg
-fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) == anim-css-fill-1-to-ident-curcol.svg      anim-css-fill-1-ref.svg
+fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) fails-if(stylo) == anim-css-fill-1-by-ident-curcol.svg      anim-css-fill-1-ref.svg
+fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) fails-if(stylo) == anim-css-fill-1-from-by-curcol-hex.svg   anim-css-fill-1-ref.svg
+fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) fails-if(stylo) == anim-css-fill-1-from-by-hex-curcol.svg   anim-css-fill-1-ref.svg
+fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) fails-if(stylo) == anim-css-fill-1-from-to-curcol-hex.svg   anim-css-fill-1-ref.svg
+fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) fails-if(stylo) == anim-css-fill-1-from-to-hex-curcol.svg   anim-css-fill-1-ref.svg
+fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) fails-if(stylo) == anim-css-fill-1-to-ident-curcol.svg      anim-css-fill-1-ref.svg
 
 # 'fill' property, paced calcMode
-fails-if(styloVsGecko) == anim-css-fill-2-paced-rgb.svg            anim-css-fill-2-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-fill-2-paced-rgb.svg            anim-css-fill-2-ref.svg
 
 # 'fill' property, animating *by* a named color
-fuzzy-if(skiaContent,1,580) fails-if(styloVsGecko) == anim-css-fill-3-by-ident-ident.svg       anim-css-fill-3-ref.svg
-fuzzy-if(skiaContent,1,580) fails-if(styloVsGecko) == anim-css-fill-3-from-by-ident-ident.svg  anim-css-fill-3-ref.svg
-fuzzy-if(skiaContent,1,580) fails-if(styloVsGecko) == anim-css-fill-3-from-by-rgb-ident.svg    anim-css-fill-3-ref.svg
+fuzzy-if(skiaContent,1,580) fails-if(styloVsGecko) fails-if(stylo) == anim-css-fill-3-by-ident-ident.svg       anim-css-fill-3-ref.svg
+fuzzy-if(skiaContent,1,580) fails-if(styloVsGecko) fails-if(stylo) == anim-css-fill-3-from-by-ident-ident.svg  anim-css-fill-3-ref.svg
+fuzzy-if(skiaContent,1,580) fails-if(styloVsGecko) fails-if(stylo) == anim-css-fill-3-from-by-rgb-ident.svg    anim-css-fill-3-ref.svg
 
 # check handling of overflowing color values
 # NOTE: The second test fails because we compute "from + by" as the animation
 # end-point, and we clamp that final color value (due to bug 515919) and use
 # the clamped value for interpolation.  That's earlier than the SVG spec wants
 # us to clamp -- we're only supposed to clamp *final presentation values*.
 # (Reference: SVG 1.1 Appendix F.4)
-fails-if(styloVsGecko) == anim-css-fill-overflow-1-by.svg       anim-css-fill-overflow-1-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-fill-overflow-1-by.svg       anim-css-fill-overflow-1-ref.svg
 fails == anim-css-fill-overflow-1-from-by.svg anim-css-fill-overflow-1-ref.svg
 
 # 'fill-opacity' property
-fuzzy-if(skiaContent,1,885) fails-if(styloVsGecko) == anim-css-fillopacity-1-by.svg            anim-css-fillopacity-1-ref.svg
-fuzzy-if(skiaContent,1,210) fails-if(styloVsGecko) == anim-css-fillopacity-1-from-by.svg       anim-css-fillopacity-1-ref.svg
-fails-if(styloVsGecko) == anim-css-fillopacity-1-from-to.svg       anim-css-fillopacity-1-ref.svg
-fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) == anim-css-fillopacity-1-to.svg            anim-css-fillopacity-1-ref.svg
-fails-if(styloVsGecko) == anim-css-fillopacity-2-paced.svg         anim-css-fillopacity-2-ref.svg
+fuzzy-if(skiaContent,1,885) fails-if(styloVsGecko) fails-if(stylo) == anim-css-fillopacity-1-by.svg            anim-css-fillopacity-1-ref.svg
+fuzzy-if(skiaContent,1,210) fails-if(styloVsGecko) fails-if(stylo) == anim-css-fillopacity-1-from-by.svg       anim-css-fillopacity-1-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-fillopacity-1-from-to.svg       anim-css-fillopacity-1-ref.svg
+fuzzy-if(skiaContent,1,550) fails-if(styloVsGecko) fails-if(stylo) == anim-css-fillopacity-1-to.svg            anim-css-fillopacity-1-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-fillopacity-2-paced.svg         anim-css-fillopacity-2-ref.svg
 fails == anim-css-fillopacity-3-clamp-big.svg     anim-css-fillopacity-3-ref.svg # bug 501188
-fuzzy-if(skiaContent,1,365) fails-if(styloVsGecko) == anim-css-fillopacity-3-clamp-small.svg   anim-css-fillopacity-3-ref.svg
+fuzzy-if(skiaContent,1,365) fails-if(styloVsGecko) fails-if(stylo) == anim-css-fillopacity-3-clamp-small.svg   anim-css-fillopacity-3-ref.svg
 
 # 'font' shorthand property
-fails-if(styloVsGecko) == anim-css-font-1.svg  anim-css-font-1-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-font-1.svg  anim-css-font-1-ref.svg
 
 # 'font-size' property, from/by/to with pixel values only
-fails-if(styloVsGecko) == anim-css-fontsize-1-from-by-px-px.svg    anim-css-fontsize-1-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-fontsize-1-from-by-px-px.svg    anim-css-fontsize-1-ref.svg
 == anim-css-fontsize-1-from-to-px-px.svg    anim-css-fontsize-1-ref.svg
 
 # 'font-size' property (accepts unitless values)
 == anim-css-fontsize-1-from-to-no-no.svg    anim-css-fontsize-1-ref.svg
 == anim-css-fontsize-1-from-to-no-px.svg    anim-css-fontsize-1-ref.svg
 == anim-css-fontsize-1-from-to-px-no.svg    anim-css-fontsize-1-ref.svg
 
 # 'font-size' mapped attribute (accepts unitless values)
 == anim-mapped-fontsize-1-from-to-no-no.svg anim-css-fontsize-1-ref.svg
 == anim-mapped-fontsize-1-from-to-no-px.svg anim-css-fontsize-1-ref.svg
 == anim-mapped-fontsize-1-from-to-px-no.svg anim-css-fontsize-1-ref.svg
 
 # 'font-size' property, from/by/to with percent values
-fails-if(styloVsGecko) == anim-css-fontsize-1-from-by-pct-pct.svg  anim-css-fontsize-1-ref.svg
-fails-if(styloVsGecko) == anim-css-fontsize-1-from-by-pct-px.svg   anim-css-fontsize-1-ref.svg
-fails-if(styloVsGecko) == anim-css-fontsize-1-from-by-px-pct.svg   anim-css-fontsize-1-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-fontsize-1-from-by-pct-pct.svg  anim-css-fontsize-1-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-fontsize-1-from-by-pct-px.svg   anim-css-fontsize-1-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-fontsize-1-from-by-px-pct.svg   anim-css-fontsize-1-ref.svg
 == anim-css-fontsize-1-from-to-pct-pct.svg  anim-css-fontsize-1-ref.svg
 == anim-css-fontsize-1-from-to-pct-px.svg   anim-css-fontsize-1-ref.svg
 == anim-css-fontsize-1-from-to-px-pct.svg   anim-css-fontsize-1-ref.svg
 
 # 'font-size' property, with negative addition
-fails-if(styloVsGecko) == anim-css-fontsize-2-from-by-px-px.svg    anim-css-fontsize-2-ref.svg
-fails-if(styloVsGecko) == anim-css-fontsize-2-from-by-px-em.svg    anim-css-fontsize-2-ref.svg
-fails-if(styloVsGecko) == anim-css-fontsize-2-from-by-em-em.svg    anim-css-fontsize-2-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-fontsize-2-from-by-px-px.svg    anim-css-fontsize-2-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-fontsize-2-from-by-px-em.svg    anim-css-fontsize-2-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-fontsize-2-from-by-em-em.svg    anim-css-fontsize-2-ref.svg
 
 # 'stroke-dasharray' property, from/to with pixel values only
 skip-if(!styloVsGecko) == anim-css-strokedasharray-1.svg anim-css-strokedasharray-1-ref.svg
 
 # 'stroke-width' property, from/by/to with pixel values only
-fails-if(styloVsGecko) == anim-css-strokewidth-1-by-px-px.svg        anim-css-strokewidth-1-ref.svg
-fails-if(styloVsGecko) == anim-css-strokewidth-1-from-by-px-px.svg   anim-css-strokewidth-1-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-strokewidth-1-by-px-px.svg        anim-css-strokewidth-1-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-strokewidth-1-from-by-px-px.svg   anim-css-strokewidth-1-ref.svg
 == anim-css-strokewidth-1-from-to-px-px.svg   anim-css-strokewidth-1-ref.svg
-fails-if(styloVsGecko) == anim-css-strokewidth-1-to-px-px.svg        anim-css-strokewidth-1-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-strokewidth-1-to-px-px.svg        anim-css-strokewidth-1-ref.svg
 
 # 'stroke-width' property, from/by/to with unitless values only
-fails-if(styloVsGecko) == anim-css-strokewidth-1-by-no-no.svg        anim-css-strokewidth-1-ref.svg
-fails-if(styloVsGecko) == anim-css-strokewidth-1-from-by-no-no.svg   anim-css-strokewidth-1-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-strokewidth-1-by-no-no.svg        anim-css-strokewidth-1-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-strokewidth-1-from-by-no-no.svg   anim-css-strokewidth-1-ref.svg
 == anim-css-strokewidth-1-from-to-no-no.svg   anim-css-strokewidth-1-ref.svg
-fails-if(styloVsGecko) == anim-css-strokewidth-1-to-no-no.svg        anim-css-strokewidth-1-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-strokewidth-1-to-no-no.svg        anim-css-strokewidth-1-ref.svg
 
 # 'stroke-width' property, from/by/to with percent values
 # XXXdholbert the mixed pct + px tests fail right now, because we need calc()
 # in order to interpolate between pct and non-pct values, and we don't yet
 # support calc() for stroke-width & other SVG-specific properties (Bug 594933).
-fails-if(styloVsGecko) == anim-css-strokewidth-1-by-pct-pct.svg      anim-css-strokewidth-1-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-strokewidth-1-by-pct-pct.svg      anim-css-strokewidth-1-ref.svg
 fails == anim-css-strokewidth-1-by-pct-px.svg       anim-css-strokewidth-1-ref.svg
 fails == anim-css-strokewidth-1-by-px-pct.svg       anim-css-strokewidth-1-ref.svg
-fails-if(styloVsGecko) == anim-css-strokewidth-1-from-by-pct-pct.svg anim-css-strokewidth-1-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-strokewidth-1-from-by-pct-pct.svg anim-css-strokewidth-1-ref.svg
 fails-if(!styloVsGecko) == anim-css-strokewidth-1-from-by-pct-px.svg  anim-css-strokewidth-1-ref.svg
 fails-if(!styloVsGecko) == anim-css-strokewidth-1-from-by-px-pct.svg  anim-css-strokewidth-1-ref.svg
 == anim-css-strokewidth-1-from-to-pct-pct.svg anim-css-strokewidth-1-ref.svg
 fails-if(!styloVsGecko) fails-if(styloVsGecko) == anim-css-strokewidth-1-from-to-pct-px.svg  anim-css-strokewidth-1-ref.svg
 fails-if(!styloVsGecko) fails-if(styloVsGecko) == anim-css-strokewidth-1-from-to-px-pct.svg  anim-css-strokewidth-1-ref.svg
-fails-if(styloVsGecko) == anim-css-strokewidth-1-to-pct-pct.svg      anim-css-strokewidth-1-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-strokewidth-1-to-pct-pct.svg      anim-css-strokewidth-1-ref.svg
 fails-if(!styloVsGecko) == anim-css-strokewidth-1-to-pct-px.svg       anim-css-strokewidth-1-ref.svg
 fails-if(!styloVsGecko) == anim-css-strokewidth-1-to-px-pct.svg       anim-css-strokewidth-1-ref.svg
 
 # 'stroke-width' property, from/by/to with em values
-fails-if(styloVsGecko) == anim-css-strokewidth-1-by-px-em.svg        anim-css-strokewidth-1-ref.svg
-fails-if(styloVsGecko) == anim-css-strokewidth-1-by-em-em.svg        anim-css-strokewidth-1-ref.svg
-fails-if(styloVsGecko) == anim-css-strokewidth-1-by-em-px.svg        anim-css-strokewidth-1-ref.svg
-fails-if(styloVsGecko) == anim-css-strokewidth-1-from-by-px-em.svg   anim-css-strokewidth-1-ref.svg
-fails-if(styloVsGecko) == anim-css-strokewidth-1-from-by-em-em.svg   anim-css-strokewidth-1-ref.svg
-fails-if(styloVsGecko) == anim-css-strokewidth-1-from-by-em-px.svg   anim-css-strokewidth-1-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-strokewidth-1-by-px-em.svg        anim-css-strokewidth-1-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-strokewidth-1-by-em-em.svg        anim-css-strokewidth-1-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-strokewidth-1-by-em-px.svg        anim-css-strokewidth-1-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-strokewidth-1-from-by-px-em.svg   anim-css-strokewidth-1-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-strokewidth-1-from-by-em-em.svg   anim-css-strokewidth-1-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-strokewidth-1-from-by-em-px.svg   anim-css-strokewidth-1-ref.svg
 == anim-css-strokewidth-1-from-to-px-em.svg   anim-css-strokewidth-1-ref.svg
 == anim-css-strokewidth-1-from-to-em-em.svg   anim-css-strokewidth-1-ref.svg
 == anim-css-strokewidth-1-from-to-em-px.svg   anim-css-strokewidth-1-ref.svg
-fails-if(styloVsGecko) == anim-css-strokewidth-1-to-px-em.svg        anim-css-strokewidth-1-ref.svg
-fails-if(styloVsGecko) == anim-css-strokewidth-1-to-em-em.svg        anim-css-strokewidth-1-ref.svg
-fails-if(styloVsGecko) == anim-css-strokewidth-1-to-em-px.svg        anim-css-strokewidth-1-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-strokewidth-1-to-px-em.svg        anim-css-strokewidth-1-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-strokewidth-1-to-em-em.svg        anim-css-strokewidth-1-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-strokewidth-1-to-em-px.svg        anim-css-strokewidth-1-ref.svg
 
 # 'stroke-width' property, values-array & paced calc-mode support
 == anim-css-strokewidth-2-values-em-em.svg    anim-css-strokewidth-2-ref.svg
 == anim-css-strokewidth-2-values-em-px.svg    anim-css-strokewidth-2-ref.svg
 == anim-css-strokewidth-2-values-px-em.svg    anim-css-strokewidth-2-ref.svg
 fuzzy-if(skiaContent,1,360) == anim-css-strokewidth-2-values-px-px.svg    anim-css-strokewidth-2-ref.svg
 == anim-css-strokewidth-3-paced.svg           anim-css-strokewidth-3-ref.svg
 
 # 'stroke-width' property, negative addition
-fails-if(styloVsGecko) == anim-css-strokewidth-4-from-by-px-px.svg   anim-css-strokewidth-4-ref.svg
-fails-if(styloVsGecko) == anim-css-strokewidth-4-from-by-px-em.svg   anim-css-strokewidth-4-ref.svg
-fails-if(styloVsGecko) == anim-css-strokewidth-4-from-by-em-em.svg   anim-css-strokewidth-4-ref.svg
-fuzzy-if(skiaContent,1,170) fails-if(styloVsGecko) == anim-css-strokewidth-4-from-by-no-no.svg   anim-css-strokewidth-4-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-strokewidth-4-from-by-px-px.svg   anim-css-strokewidth-4-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-strokewidth-4-from-by-px-em.svg   anim-css-strokewidth-4-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == anim-css-strokewidth-4-from-by-em-em.svg   anim-css-strokewidth-4-ref.svg
+fuzzy-if(skiaContent,1,170) fails-if(styloVsGecko) fails-if(stylo) == anim-css-strokewidth-4-from-by-no-no.svg   anim-css-strokewidth-4-ref.svg
 
 # check correct handling of "!important" values
 == important-set-1.svg  anim-standard-ref.svg
 == important-set-2.svg  anim-standard-ref.svg
 
 # check namespaced attribute
 == namespaced-property-1.svg  anim-standard-ref.svg
--- a/layout/reftests/svg/smil/syncbase/reftest.list
+++ b/layout/reftests/svg/smil/syncbase/reftest.list
@@ -1,99 +1,99 @@
 # Tests related to SVG Animation (using SMIL) that use syncbase timing.
 
 # New intervals
-fails-if(styloVsGecko) == new-interval-simple-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == new-interval-simple-2.svg green-box-ref.svg
-fails-if(styloVsGecko) == new-interval-negative-offset-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == new-interval-negative-offset-2.svg green-box-ref.svg
-fails-if(styloVsGecko) == new-interval-negative-offset-3.svg green-box-ref.svg
-fails-if(styloVsGecko) == new-interval-negative-offset-4.svg green-box-ref.svg
-fails-if(styloVsGecko) == new-interval-negative-syncbase-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == new-interval-restart-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == new-interval-restart-2.svg green-box-ref.svg
-fails-if(styloVsGecko) == new-interval-restart-3.svg green-box-ref.svg
-fails-if(styloVsGecko) == new-interval-early-end-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == new-interval-early-end-2.svg green-box-ref.svg
-fails-if(styloVsGecko) == new-interval-early-end-3.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == new-interval-simple-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == new-interval-simple-2.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == new-interval-negative-offset-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == new-interval-negative-offset-2.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == new-interval-negative-offset-3.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == new-interval-negative-offset-4.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == new-interval-negative-syncbase-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == new-interval-restart-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == new-interval-restart-2.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == new-interval-restart-3.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == new-interval-early-end-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == new-interval-early-end-2.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == new-interval-early-end-3.svg green-box-ref.svg
 == new-interval-early-end-4.svg green-box-ref.svg
-fails-if(styloVsGecko) == new-interval-early-end-5.svg green-box-ref.svg
-fails-if(styloVsGecko) == new-interval-early-end-6.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == new-interval-early-end-5.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == new-interval-early-end-6.svg green-box-ref.svg
 == new-interval-early-end-7.svg green-box-ref.svg
-fails-if(styloVsGecko) == new-interval-doubly-dependent-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == new-interval-doubly-dependent-2.svg green-box-ref.svg
-fails-if(styloVsGecko) == new-interval-doubly-dependent-3.svg green-box-ref.svg
-fails-if(styloVsGecko) == new-interval-triply-dependent-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == new-interval-triply-dependent-2.svg green-box-ref.svg
-fails-if(styloVsGecko) == new-interval-end-negative-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == new-interval-end-negative-2.svg green-box-ref.svg
-fails-if(styloVsGecko) == new-interval-end-dep-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == new-interval-chain-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == new-interval-chain-2.svg green-box-ref.svg
-fails-if(styloVsGecko) == new-interval-sample-order-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == new-interval-freeze-begin-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == new-interval-doubly-dependent-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == new-interval-doubly-dependent-2.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == new-interval-doubly-dependent-3.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == new-interval-triply-dependent-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == new-interval-triply-dependent-2.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == new-interval-end-negative-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == new-interval-end-negative-2.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == new-interval-end-dep-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == new-interval-chain-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == new-interval-chain-2.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == new-interval-sample-order-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == new-interval-freeze-begin-1.svg green-box-ref.svg
 
 # Changing intervals
-fails-if(styloVsGecko) == changed-interval-simple-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == changed-interval-simple-2.svg green-box-ref.svg
-fails-if(styloVsGecko) == changed-interval-simple-3.svg green-box-ref.svg
-fails-if(styloVsGecko) == changed-interval-simple-4.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == changed-interval-simple-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == changed-interval-simple-2.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == changed-interval-simple-3.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == changed-interval-simple-4.svg green-box-ref.svg
 == changed-interval-simple-5.svg green-box-ref.svg
-fails-if(styloVsGecko) == changed-interval-resolved-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == changed-interval-resolved-2.svg green-box-ref.svg
-fails-if(styloVsGecko) == changed-interval-sort-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == changed-interval-change-spec-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == changed-interval-change-spec-2.svg green-box-ref.svg
-fails-if(styloVsGecko) == changed-interval-change-spec-3.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == changed-interval-resolved-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == changed-interval-resolved-2.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == changed-interval-sort-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == changed-interval-change-spec-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == changed-interval-change-spec-2.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == changed-interval-change-spec-3.svg green-box-ref.svg
 == changed-interval-change-spec-4.svg green-box-ref.svg
 
 # Deleted intervals
 == deleted-interval-simple-1.svg green-box-ref.svg
 == deleted-interval-simple-2.svg green-box-ref.svg
 == deleted-interval-simple-3.svg green-box-ref.svg
 == deleted-interval-simple-4.svg green-box-ref.svg
 == deleted-interval-simple-5.svg green-box-ref.svg
 
 # Trimmed intervals
-fails-if(styloVsGecko) == trimmed-interval-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == trimmed-interval-1.svg green-box-ref.svg
 
 # Cyclic dependencies
-fails-if(styloVsGecko) == cycle-ok-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == cycle-ok-2.svg green-box-ref.svg
-fails-if(styloVsGecko) == cycle-ok-3.svg green-box-ref.svg
-fails-if(styloVsGecko) == cycle-ok-4.svg green-box-ref.svg
-fails-if(styloVsGecko) == cycle-ok-5.svg green-box-ref.svg
-fails-if(styloVsGecko) == cycle-self-ref-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == cycle-self-ref-2.svg green-box-ref.svg
-fails-if(styloVsGecko) == cycle-self-ref-3.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == cycle-ok-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == cycle-ok-2.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == cycle-ok-3.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == cycle-ok-4.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == cycle-ok-5.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == cycle-self-ref-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == cycle-self-ref-2.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == cycle-self-ref-3.svg green-box-ref.svg
 == cycle-self-ref-4.svg green-box-ref.svg
-fails-if(styloVsGecko) == cycle-self-ref-5.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == cycle-self-ref-5.svg green-box-ref.svg
 == cycle-invalid-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == cycle-invalid-2.svg green-box-ref.svg
-fails-if(styloVsGecko) == cycle-invalid-3.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == cycle-invalid-2.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == cycle-invalid-3.svg green-box-ref.svg
 == cycle-invalid-4.svg green-box-ref.svg
-fails-if(styloVsGecko) == cycle-change-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == cycle-change-2.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == cycle-change-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == cycle-change-2.svg green-box-ref.svg
 == cycle-delete-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == cycle-recursion-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == cycle-recursion-1.svg green-box-ref.svg
 == cycle-recursion-2.svg green-box-ref.svg
 
 # Animation sandwich priority
-fails-if(styloVsGecko) == sandwich-priority-1.svg green-box-ref.svg
-fails-if(styloVsGecko) == sandwich-priority-2.svg green-box-ref.svg
-fails-if(styloVsGecko) == sandwich-priority-3.svg green-box-ref.svg
-fails-if(styloVsGecko) == sandwich-priority-4.svg green-box-ref.svg
-fails-if(styloVsGecko) == sandwich-priority-5.svg green-box-ref.svg
-fails-if(styloVsGecko) == sandwich-priority-6.svg green-box-ref.svg
-fails-if(styloVsGecko) == sandwich-priority-7.svg green-box-ref.svg
-fails-if(styloVsGecko) == sandwich-priority-8.svg green-box-ref.svg
-fails-if(styloVsGecko) == sandwich-priority-9.svg green-box-ref.svg
-fails-if(styloVsGecko) == sandwich-priority-10.svg green-box-ref.svg
-fails-if(styloVsGecko) == sandwich-priority-11.svg green-box-ref.svg
-fails-if(styloVsGecko) == sandwich-priority-12.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == sandwich-priority-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == sandwich-priority-2.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == sandwich-priority-3.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == sandwich-priority-4.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == sandwich-priority-5.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == sandwich-priority-6.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == sandwich-priority-7.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == sandwich-priority-8.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == sandwich-priority-9.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == sandwich-priority-10.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == sandwich-priority-11.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == sandwich-priority-12.svg green-box-ref.svg
 
 # Cross-time container dependencies
-fails-if(styloVsGecko) == cross-container-1.xhtml green-box-ref.xhtml
+fails-if(styloVsGecko) fails-if(stylo) == cross-container-1.xhtml green-box-ref.xhtml
 == cross-container-2.xhtml green-box-ref.xhtml
-fails-if(styloVsGecko) == cross-container-3.xhtml green-box-ref.xhtml
+fails-if(styloVsGecko) fails-if(stylo) == cross-container-3.xhtml green-box-ref.xhtml
 
 # Filtering
-fails-if(styloVsGecko) == filtered-interval-1.svg green-box-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == filtered-interval-1.svg green-box-ref.svg
--- a/layout/reftests/svg/text/reftest.list
+++ b/layout/reftests/svg/text/reftest.list
@@ -142,18 +142,18 @@ fuzzy-if(/^Windows\x20NT\x2010\.0/.test(
 == ignore-margin.svg ignore-prop-ref.svg
 == ignore-padding.svg ignore-prop-ref.svg
 == ignore-vertical-align.svg ignore-vertical-align-ref.svg
 == ignore-overflow-scroll.svg ignore-prop-ref.svg
 == ignore-text-align.svg ignore-prop-ref.svg
 == ignore-text-align-2.svg ignore-text-align-2-ref.svg
 
 # pseudo-elements
-fails-if(styloVsGecko) == pseudo-first-line.svg pseudo-first-line-ref.svg
-fails-if(styloVsGecko) == pseudo-first-line-2.svg pseudo-first-line-2-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == pseudo-first-line.svg pseudo-first-line-ref.svg
+fails-if(styloVsGecko) fails-if(stylo) == pseudo-first-line-2.svg pseudo-first-line-2-ref.svg
 == pseudo-first-letter.svg pseudo-first-letter-ref.svg
 == pseudo-first-letter-2.svg pseudo-first-letter-2-ref.svg
 == ignore-before-after.svg ignore-prop-ref.svg
 
 # invalid child nodes
 == ignore-invalid-child.svg ignore-invalid-child-ref.svg
 == ignore-invalid-child-2.svg ignore-invalid-child-2-ref.svg
 
--- a/layout/reftests/tab-size/reftest.list
+++ b/layout/reftests/tab-size/reftest.list
@@ -4,9 +4,9 @@
 == tab-size-4-span.html       spaces-4.html
 == tab-size-4-spanoffset.html spaces-4-offset.html
 == tab-size-4-multiple.html   spaces-4-multiple.html
 == tab-size-1.html            spaces-1.html
 == tab-size-0.html            spaces-0.html
 == tab-size-negative.html     tab-size-initial.html
 == tab-size-change-1a.html     tab-size-change-1-ref.html
 == tab-size-change-1b.html     tab-size-change-1-ref.html
-fuzzy-if(winWidget,100,1000) fails-if(styloVsGecko) == tab-size-length.html       tab-size-length-ref.html
+fuzzy-if(winWidget,100,1000) fails-if(styloVsGecko) fails-if(stylo) == tab-size-length.html       tab-size-length-ref.html
--- a/layout/reftests/text-overflow/reftest.list
+++ b/layout/reftests/text-overflow/reftest.list
@@ -1,19 +1,19 @@
 == ellipsis-font-fallback.html ellipsis-font-fallback-ref.html
 == line-clipping.html line-clipping-ref.html
 fuzzy-if(Android,16,244) HTTP(..) == marker-basic.html marker-basic-ref.html  # Bug 1128229
-HTTP(..) == marker-string.html marker-string-ref.html
+fails-if(stylo) HTTP(..) == marker-string.html marker-string-ref.html
 skip-if(Android) HTTP(..) == bidi-simple.html bidi-simple-ref.html # Fails on Android due to anti-aliasing
 skip-if(!gtkWidget) fuzzy-if(gtkWidget,2,289) HTTP(..) == bidi-simple-scrolled.html bidi-simple-scrolled-ref.html # Fails on Windows and OSX due to anti-aliasing
 fuzzy-if(Android,24,4000) fuzzy-if(cocoaWidget,1,40) fuzzy-if(asyncPan&&!layersGPUAccelerated,140,1836) HTTP(..) == scroll-rounding.html scroll-rounding-ref.html # bug 760264
 fuzzy(2,453) fuzzy-if(skiaContent,9,2100) fails-if(gtkWidget) HTTP(..) == anonymous-block.html anonymous-block-ref.html # gtkWidget:bug 1309103
 HTTP(..) == false-marker-overlap.html false-marker-overlap-ref.html
 HTTP(..) == visibility-hidden.html visibility-hidden-ref.html
-fuzzy-if(asyncPan&&!layersGPUAccelerated,102,1724) fuzzy-if(gtkWidget,10,8) HTTP(..) == block-padding.html block-padding-ref.html
+fuzzy-if(asyncPan&&!layersGPUAccelerated,102,1724) fuzzy-if(gtkWidget,10,8) fails-if(stylo) HTTP(..) == block-padding.html block-padding-ref.html
 HTTP(..) == quirks-decorations.html quirks-decorations-ref.html
 HTTP(..) == quirks-line-height.html quirks-line-height-ref.html
 HTTP(..) == standards-decorations.html standards-decorations-ref.html
 HTTP(..) == standards-line-height.html standards-line-height-ref.html
 fuzzy-if(skiaContent,1,4200) HTTP(..) == selection.html selection-ref.html
 HTTP(..) == marker-shadow.html marker-shadow-ref.html
 == aligned-baseline.html aligned-baseline-ref.html
 skip-if(Android) fuzzy-if(skiaContent,1,5) == clipped-elements.html clipped-elements-ref.html
--- a/layout/reftests/text/reftest.list
+++ b/layout/reftests/text/reftest.list
@@ -321,17 +321,17 @@ HTTP(..) == graphite-surrogate-selection
 == hyphenation-control-2.html hyphenation-control-2-ref.html
 == hyphenation-control-3.html hyphenation-control-3-ref.html
 
 # osx-font-smoothing - with and without subpixel AA, only under OSX
 fails-if(!cocoaWidget&&!styloVsGecko) != osx-font-smoothing.html osx-font-smoothing-ref.html
 fails-if(!cocoaWidget&&!styloVsGecko) != osx-font-smoothing-2.html osx-font-smoothing-2-notref.html
 == osx-font-smoothing-2.html osx-font-smoothing-2-ref.html
 
-pref(layout.css.text-align-unsafe-value.enabled,true) fails-if(styloVsGecko) == text-align-unsafe.html text-align-unsafe-ref.html
+pref(layout.css.text-align-unsafe-value.enabled,true) fails-if(styloVsGecko) fails-if(stylo) == text-align-unsafe.html text-align-unsafe-ref.html
 
 # stray control chars should be visible by default, bug 1099557
 fails-if(styloVsGecko) != control-chars-01a.html control-chars-01-notref.html
 fails-if(styloVsGecko) != control-chars-01b.html control-chars-01-notref.html
 fails-if(styloVsGecko) != control-chars-01c.html control-chars-01-notref.html
 fails-if(styloVsGecko) != control-chars-01d.html control-chars-01-notref.html
 != control-chars-02.html control-chars-02-notref.html
 == control-chars-03a.html control-chars-03-ref.html
--- a/layout/reftests/transform/reftest.list
+++ b/layout/reftests/transform/reftest.list
@@ -135,9 +135,9 @@ pref(svg.transform-box.enabled,true) == 
 == transform-origin-svg-2a.svg transform-origin-svg-2-ref.svg
 == transform-origin-svg-2b.svg transform-origin-svg-2-ref.svg
 # Bug 1122526
 == animate-layer-scale-inherit-1.html animate-layer-scale-inherit-1-ref.html
 == animate-layer-scale-inherit-2.html animate-layer-scale-inherit-2-ref.html
 == animate-layer-scale-inherit-3.html animate-layer-scale-inherit-1-ref.html
 # Bug 1301500
 == dynamic-add-without-change-cb-1.html dynamic-add-without-change-cb-1-ref.html
-fuzzy-if(d2d,1,5) fuzzy-if(skiaContent,22,180) == table-overflowed-by-animation.html table-overflowed-by-animation-ref.html
+fuzzy-if(d2d,1,5) fuzzy-if(skiaContent,22,180) skip-if(stylo) == table-overflowed-by-animation.html table-overflowed-by-animation-ref.html
--- a/layout/reftests/w3c-css/received/reftest.list
+++ b/layout/reftests/w3c-css/received/reftest.list
@@ -214,30 +214,30 @@ fails-if(!styloVsGecko) == css-values-3/
 == css-values-3/attr-length-invalid-fallback.html css-values-3/reference/200-200-green.html
 fails-if(!styloVsGecko) == css-values-3/attr-length-valid-zero-nofallback.html css-values-3/reference/200-200-green.html
 fails-if(!styloVsGecko) == css-values-3/attr-length-valid-zero.html css-values-3/reference/200-200-green.html
 fails-if(!styloVsGecko) == css-values-3/attr-length-valid.html css-values-3/reference/200-200-green.html
 fails-if(!styloVsGecko) == css-values-3/attr-px-invalid-cast.html css-values-3/reference/200-200-green.html
 == css-values-3/attr-px-invalid-fallback.html css-values-3/reference/200-200-green.html
 fails-if(!styloVsGecko) == css-values-3/attr-px-valid.html css-values-3/reference/200-200-green.html
 == css-values-3/calc-in-calc.html css-values-3/reference/all-green.html
-fails == css-values-3/calc-in-media-queries-001.html css-values-3/reference/all-green.html
-fails == css-values-3/calc-in-media-queries-002.html css-values-3/reference/all-green.html
+fails-if(!stylo) == css-values-3/calc-in-media-queries-001.html css-values-3/reference/all-green.html
+fails-if(!stylo) == css-values-3/calc-in-media-queries-002.html css-values-3/reference/all-green.html
 == css-values-3/calc-invalid-range-clamping.html css-values-3/reference/200-200-green.html
 == css-values-3/calc-parenthesis-stack.html css-values-3/reference/all-green.html
 fuzzy-if(OSX,40,6) == css-values-3/ch-unit-001.html css-values-3/reference/ch-unit-001-ref.html
 == css-values-3/initial-background-color.html css-values-3/reference/all-green.html
 == css-values-3/vh-calc-support-pct.html css-values-3/reference/all-green.html
 == css-values-3/vh-calc-support.html css-values-3/reference/all-green.html
 == css-values-3/vh-em-inherit.html css-values-3/reference/all-green.html
 == css-values-3/vh-inherit.html css-values-3/reference/all-green.html
 == css-values-3/vh-interpolate-pct.html css-values-3/reference/all-green.html
 == css-values-3/vh-interpolate-px.html css-values-3/reference/all-green.html
 == css-values-3/vh-interpolate-vh.html css-values-3/reference/all-green.html
-fails-if(styloVsGecko) == css-values-3/vh-support-atviewport.html css-values-3/reference/all-green.html
+fails-if(styloVsGecko) fails-if(stylo) == css-values-3/vh-support-atviewport.html css-values-3/reference/all-green.html
 == css-values-3/vh-support-margin.html css-values-3/reference/all-green.html
 skip == css-values-3/vh-support-transform-origin.html css-values-3/reference/all-green.html
 skip == css-values-3/vh-support-transform-translate.html css-values-3/reference/all-green.html
 == css-values-3/vh-support.html css-values-3/reference/all-green.html
 == css-values-3/vh-zero-support.html css-values-3/reference/all-green.html
 skip == css-values-3/vh_not_refreshing_on_chrome.html css-values-3/reference/vh_not_refreshing_on_chrome-ref.html
 skip == css-values-3/vh_not_refreshing_on_chrome_iframe.html css-values-3/reference/vh_not_refreshing_on_chrome-ref.html
 == css-writing-modes-3/abs-pos-non-replaced-icb-vlr-003.xht css21/reference/ref-filled-green-100px-square.xht
@@ -1027,16 +1027,16 @@ fuzzy-if(OSX||winWidget,153,612) == css-
 fuzzy-if(OSX||winWidget,153,612) == css-writing-modes-3/writing-mode-vertical-rl-003.htm css-writing-modes-3/writing-mode-vertical-rl-003-ref.htm
 needs-focus == selectors-4/focus-within-001.html selectors-4/focus-within-001-ref.html
 needs-focus == selectors-4/focus-within-002.html selectors-4/focus-within-001-ref.html
 needs-focus == selectors-4/focus-within-003.html selectors-4/focus-within-001-ref.html
 needs-focus == selectors-4/focus-within-004.html selectors-4/focus-within-001-ref.html
 needs-focus == selectors-4/focus-within-005.html selectors-4/focus-within-001-ref.html
 needs-focus == selectors-4/focus-within-006.html selectors-4/focus-within-001-ref.html
 fails-if(!styloVsGecko) needs-focus == selectors-4/focus-within-shadow-001.html selectors-4/focus-within-shadow-001-ref.html
-pref(dom.webcomponents.enabled,true) needs-focus skip-if(styloVsGecko) == selectors-4/focus-within-shadow-002.html selectors-4/focus-within-shadow-001-ref.html
-pref(dom.webcomponents.enabled,true) needs-focus skip-if(styloVsGecko) == selectors-4/focus-within-shadow-003.html selectors-4/focus-within-shadow-001-ref.html
-pref(dom.webcomponents.enabled,true) needs-focus skip-if(styloVsGecko) == selectors-4/focus-within-shadow-004.html selectors-4/focus-within-shadow-001-ref.html
-pref(dom.webcomponents.enabled,true) needs-focus skip-if(styloVsGecko) == selectors-4/focus-within-shadow-005.html selectors-4/focus-within-shadow-001-ref.html
+pref(dom.webcomponents.enabled,true) needs-focus skip-if(styloVsGecko) skip-if(stylo) == selectors-4/focus-within-shadow-002.html selectors-4/focus-within-shadow-001-ref.html
+pref(dom.webcomponents.enabled,true) needs-focus skip-if(styloVsGecko) skip-if(stylo) == selectors-4/focus-within-shadow-003.html selectors-4/focus-within-shadow-001-ref.html
+pref(dom.webcomponents.enabled,true) needs-focus skip-if(styloVsGecko) skip-if(stylo) == selectors-4/focus-within-shadow-004.html selectors-4/focus-within-shadow-001-ref.html
+pref(dom.webcomponents.enabled,true) needs-focus skip-if(styloVsGecko) skip-if(stylo) == selectors-4/focus-within-shadow-005.html selectors-4/focus-within-shadow-001-ref.html
 == selectors-4/of-type-selectors.xhtml selectors-4/of-type-selectors-ref.xhtml
 == selectors-4/selector-required.html selectors-4/selector-required-ref.html
 == selectors-4/selectors-dir-selector-ltr-001.html selectors-4/selectors-dir-selector-ref.html
 == selectors-4/selectors-dir-selector-rtl-001.html selectors-4/selectors-dir-selector-ref.html
--- a/layout/reftests/w3c-css/submitted/align3/reftest.list
+++ b/layout/reftests/w3c-css/submitted/align3/reftest.list
@@ -45,33 +45,33 @@
 == flex-abspos-staticpos-justify-content-vertWM-001.html flex-abspos-staticpos-justify-content-vertWM-001-ref.html
 == flex-abspos-staticpos-justify-content-vertWM-002.html flex-abspos-staticpos-justify-content-vertWM-002-ref.html
 
 == flex-abspos-staticpos-justify-self-001.html flex-abspos-staticpos-justify-self-001-ref.html
 
 == flex-abspos-staticpos-margin-001.html flex-abspos-staticpos-margin-001-ref.html
 == flex-abspos-staticpos-margin-002.html flex-abspos-staticpos-margin-002-ref.html
 
-fails-if(styloVsGecko) == grid-abspos-staticpos-align-self-001.html grid-abspos-staticpos-align-self-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-abspos-staticpos-align-self-001.html grid-abspos-staticpos-align-self-001-ref.html
 == grid-abspos-staticpos-align-self-002.html grid-abspos-staticpos-align-self-002-ref.html
-fails-if(styloVsGecko) == grid-abspos-staticpos-align-self-img-001.html grid-abspos-staticpos-align-self-img-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-abspos-staticpos-align-self-img-001.html grid-abspos-staticpos-align-self-img-001-ref.html
 == grid-abspos-staticpos-align-self-img-002.html grid-abspos-staticpos-align-self-img-002-ref.html
-fails-if(styloVsGecko) == grid-abspos-staticpos-align-self-rtl-001.html grid-abspos-staticpos-align-self-rtl-001-ref.html
-fails-if(styloVsGecko) == grid-abspos-staticpos-align-self-rtl-002.html grid-abspos-staticpos-align-self-rtl-002-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-abspos-staticpos-align-self-rtl-001.html grid-abspos-staticpos-align-self-rtl-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-abspos-staticpos-align-self-rtl-002.html grid-abspos-staticpos-align-self-rtl-002-ref.html
 == grid-abspos-staticpos-align-self-rtl-003.html grid-abspos-staticpos-align-self-rtl-003-ref.html
 == grid-abspos-staticpos-align-self-rtl-004.html grid-abspos-staticpos-align-self-rtl-004-ref.html
-fails-if(styloVsGecko) == grid-abspos-staticpos-align-self-vertWM-001.html grid-abspos-staticpos-align-self-vertWM-001-ref.html
-fails-if(styloVsGecko) == grid-abspos-staticpos-align-self-vertWM-002.html grid-abspos-staticpos-align-self-vertWM-002-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-abspos-staticpos-align-self-vertWM-001.html grid-abspos-staticpos-align-self-vertWM-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-abspos-staticpos-align-self-vertWM-002.html grid-abspos-staticpos-align-self-vertWM-002-ref.html
 == grid-abspos-staticpos-align-self-vertWM-003.html grid-abspos-staticpos-align-self-vertWM-003-ref.html
 == grid-abspos-staticpos-align-self-vertWM-004.html grid-abspos-staticpos-align-self-vertWM-004-ref.html
 
-fails-if(styloVsGecko) == grid-abspos-staticpos-justify-self-001.html grid-abspos-staticpos-justify-self-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-abspos-staticpos-justify-self-001.html grid-abspos-staticpos-justify-self-001-ref.html
 == grid-abspos-staticpos-justify-self-002.html grid-abspos-staticpos-justify-self-002-ref.html
-fails-if(styloVsGecko) == grid-abspos-staticpos-justify-self-img-001.html grid-abspos-staticpos-justify-self-img-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-abspos-staticpos-justify-self-img-001.html grid-abspos-staticpos-justify-self-img-001-ref.html
 == grid-abspos-staticpos-justify-self-img-002.html grid-abspos-staticpos-justify-self-img-002-ref.html
-fails-if(styloVsGecko) == grid-abspos-staticpos-justify-self-rtl-001.html grid-abspos-staticpos-justify-self-rtl-001-ref.html
-fails-if(styloVsGecko) == grid-abspos-staticpos-justify-self-rtl-002.html grid-abspos-staticpos-justify-self-rtl-002-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-abspos-staticpos-justify-self-rtl-001.html grid-abspos-staticpos-justify-self-rtl-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-abspos-staticpos-justify-self-rtl-002.html grid-abspos-staticpos-justify-self-rtl-002-ref.html
 == grid-abspos-staticpos-justify-self-rtl-003.html grid-abspos-staticpos-justify-self-rtl-003-ref.html
 == grid-abspos-staticpos-justify-self-rtl-004.html grid-abspos-staticpos-justify-self-rtl-004-ref.html
-fails-if(styloVsGecko) == grid-abspos-staticpos-justify-self-vertWM-001.html grid-abspos-staticpos-justify-self-vertWM-001-ref.html
-fails-if(styloVsGecko) == grid-abspos-staticpos-justify-self-vertWM-002.html grid-abspos-staticpos-justify-self-vertWM-002-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-abspos-staticpos-justify-self-vertWM-001.html grid-abspos-staticpos-justify-self-vertWM-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == grid-abspos-staticpos-justify-self-vertWM-002.html grid-abspos-staticpos-justify-self-vertWM-002-ref.html
 == grid-abspos-staticpos-justify-self-vertWM-003.html grid-abspos-staticpos-justify-self-vertWM-003-ref.html
 == grid-abspos-staticpos-justify-self-vertWM-004.html grid-abspos-staticpos-justify-self-vertWM-004-ref.html
--- a/layout/reftests/w3c-css/submitted/lists-3/reftest.list
+++ b/layout/reftests/w3c-css/submitted/lists-3/reftest.list
@@ -1,3 +1,3 @@
 # Tests for list-style-type
-fails-if(styloVsGecko||webrender) == list-style-type-string-001a.html list-style-type-string-001-ref.html
-fails-if(styloVsGecko||webrender) == list-style-type-string-001b.html list-style-type-string-001-ref.html
+fails-if(styloVsGecko||webrender) fails-if(stylo) == list-style-type-string-001a.html list-style-type-string-001-ref.html
+fails-if(styloVsGecko||webrender) fails-if(stylo) == list-style-type-string-001b.html list-style-type-string-001-ref.html
--- a/layout/reftests/w3c-css/submitted/ruby/reftest.list
+++ b/layout/reftests/w3c-css/submitted/ruby/reftest.list
@@ -1,21 +1,21 @@
 # Tests for inlinizing block-level boxes
-skip-if(styloVsGecko) == ruby-inlinize-blocks-001.html ruby-inlinize-blocks-001-ref.html
-fails-if(styloVsGecko) == ruby-inlinize-blocks-002.html ruby-inlinize-blocks-002-ref.html
+skip-if(styloVsGecko) skip-if(stylo) == ruby-inlinize-blocks-001.html ruby-inlinize-blocks-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == ruby-inlinize-blocks-002.html ruby-inlinize-blocks-002-ref.html
 == ruby-inlinize-blocks-003.html ruby-inlinize-blocks-003-ref.html
-skip-if(styloVsGecko) == ruby-inlinize-blocks-004.html ruby-inlinize-blocks-004-ref.html
-skip-if(styloVsGecko) == ruby-inlinize-blocks-005.html ruby-inlinize-blocks-005-ref.html
+skip-if(styloVsGecko) skip-if(stylo) == ruby-inlinize-blocks-004.html ruby-inlinize-blocks-004-ref.html
+skip-if(styloVsGecko) skip-if(stylo) == ruby-inlinize-blocks-005.html ruby-inlinize-blocks-005-ref.html
 
 # Tests for autohiding base-identical annotations
 == ruby-autohide-001.html ruby-autohide-001-ref.html
 == ruby-autohide-002.html ruby-autohide-002-ref.html
 == ruby-autohide-003.html ruby-autohide-003-ref.html
 == ruby-autohide-004.html ruby-autohide-001-ref.html
 
 # Tests for ruby with text-combine-upright
-fails-if(styloVsGecko) == ruby-text-combine-upright-001a.html ruby-text-combine-upright-001-ref.html
-fails-if(styloVsGecko) == ruby-text-combine-upright-001b.html ruby-text-combine-upright-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == ruby-text-combine-upright-001a.html ruby-text-combine-upright-001-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == ruby-text-combine-upright-001b.html ruby-text-combine-upright-001-ref.html
 == ruby-text-combine-upright-002a.html ruby-text-combine-upright-002-ref.html
 == ruby-text-combine-upright-002b.html ruby-text-combine-upright-002-ref.html
 
 # Tests for nested ruby
 fails-if(styloVsGecko) == nested-ruby-pairing-001.html nested-ruby-pairing-001-ref.html
--- a/layout/reftests/w3c-css/submitted/text-decor-3/reftest.list
+++ b/layout/reftests/w3c-css/submitted/text-decor-3/reftest.list
@@ -1,9 +1,9 @@
-== ruby-text-decoration-01.html ruby-text-decoration-01-ref.html
+fails-if(stylo) == ruby-text-decoration-01.html ruby-text-decoration-01-ref.html
 == text-decoration-propagation-01.html text-decoration-propagation-01-ref.html
 
 # text-emphasis-style
 == text-emphasis-style-property-001.html text-emphasis-style-property-001-ref.html
 fuzzy-if(gtkWidget,3,4) fuzzy-if(skiaContent,104,80)  == text-emphasis-style-property-002.html text-emphasis-style-property-002-ref.html
 == text-emphasis-style-property-003.html text-emphasis-style-property-003-ref.html
 == text-emphasis-style-property-004.html text-emphasis-style-property-004-ref.html
 == text-emphasis-style-property-005.html text-emphasis-style-property-005-ref.html
@@ -123,9 +123,9 @@ fuzzy-if(gtkWidget,3,4) == text-emphasis
 == text-emphasis-line-height-003b.html text-emphasis-line-height-003-ref.html
 == text-emphasis-line-height-003c.html text-emphasis-line-height-003-ref.html
 == text-emphasis-line-height-003d.html text-emphasis-line-height-003-ref.html
 == text-emphasis-line-height-004a.html text-emphasis-line-height-004-ref.html
 == text-emphasis-line-height-004b.html text-emphasis-line-height-004-ref.html
 == text-emphasis-line-height-004c.html text-emphasis-line-height-004-ref.html
 == text-emphasis-line-height-004d.html text-emphasis-line-height-004-ref.html
 # END tests from support/generate-text-emphasis-line-height-tests.py
-fuzzy-if(gtkWidget,3,4) fuzzy-if(/^Windows\x20NT\x2010\.0/.test(http.oscpu),43,1) fails-if(styloVsGecko) == text-emphasis-line-height-001z.html text-emphasis-line-height-001-ref.html
+fuzzy-if(gtkWidget,3,4) fuzzy-if(/^Windows\x20NT\x2010\.0/.test(http.oscpu),43,1) fails-if(styloVsGecko) fails-if(stylo) == text-emphasis-line-height-001z.html text-emphasis-line-height-001-ref.html
--- a/layout/reftests/webcomponents/reftest.list
+++ b/layout/reftests/webcomponents/reftest.list
@@ -1,19 +1,19 @@
 pref(dom.webcomponents.enabled,true) == cross-tree-selection-1.html cross-tree-selection-1-ref.html
 pref(dom.webcomponents.enabled,true) == basic-shadow-1.html basic-shadow-1-ref.html
 pref(dom.webcomponents.enabled,true) == basic-shadow-2.html basic-shadow-2-ref.html
 pref(dom.webcomponents.enabled,true) == basic-shadow-3.html basic-shadow-3-ref.html
 pref(dom.webcomponents.enabled,true) == basic-shadow-4.html basic-shadow-4-ref.html
 pref(dom.webcomponents.enabled,true) == basic-insertion-point-1.html basic-insertion-point-1-ref.html
-pref(dom.webcomponents.enabled,true) skip-if(styloVsGecko) == basic-insertion-point-2.html basic-insertion-point-2-ref.html
+pref(dom.webcomponents.enabled,true) skip-if(styloVsGecko) skip-if(stylo) == basic-insertion-point-2.html basic-insertion-point-2-ref.html
 pref(dom.webcomponents.enabled,true) == adjacent-insertion-points-1.html adjacent-insertion-points-1-ref.html
 pref(dom.webcomponents.enabled,true) == adjacent-insertion-points-2.html adjacent-insertion-points-2-ref.html
 pref(dom.webcomponents.enabled,true) == fallback-content-1.html fallback-content-1-ref.html
 pref(dom.webcomponents.enabled,true) == remove-insertion-point-1.html remove-insertion-point-1-ref.html
 pref(dom.webcomponents.enabled,true) == nested-insertion-point-1.html nested-insertion-point-1-ref.html
-pref(dom.webcomponents.enabled,true) skip-if(styloVsGecko) == basic-shadow-element-1.html basic-shadow-element-1-ref.html
-pref(dom.webcomponents.enabled,true) skip-if(styloVsGecko) == nested-shadow-element-1.html nested-shadow-element-1-ref.html
-pref(dom.webcomponents.enabled,true) skip-if(styloVsGecko) == update-dist-node-descendants-1.html update-dist-node-descendants-1-ref.html
-pref(dom.webcomponents.enabled,true) skip-if(styloVsGecko) == input-transition-1.html input-transition-1-ref.html
+pref(dom.webcomponents.enabled,true) skip-if(styloVsGecko) skip-if(stylo) == basic-shadow-element-1.html basic-shadow-element-1-ref.html
+pref(dom.webcomponents.enabled,true) skip-if(styloVsGecko) skip-if(stylo) == nested-shadow-element-1.html nested-shadow-element-1-ref.html
+pref(dom.webcomponents.enabled,true) skip-if(styloVsGecko) skip-if(stylo) == update-dist-node-descendants-1.html update-dist-node-descendants-1-ref.html
+pref(dom.webcomponents.enabled,true) skip-if(styloVsGecko) skip-if(stylo) == input-transition-1.html input-transition-1-ref.html
 pref(dom.webcomponents.enabled,true) == dynamic-insertion-point-distribution-1.html dynamic-insertion-point-distribution-1-ref.html
 pref(dom.webcomponents.enabled,true) == dynamic-insertion-point-distribution-2.html dynamic-insertion-point-distribution-2-ref.html
 pref(dom.webcomponents.enabled,true) == remove-append-shadow-host-1.html remove-append-shadow-host-1-ref.html
--- a/layout/reftests/webkit-gradient/reftest.list
+++ b/layout/reftests/webkit-gradient/reftest.list
@@ -7,14 +7,14 @@ default-preferences pref(layout.css.pref
 # change unexpectedly.)
 == webkit-gradient-approx-radial-1.html webkit-gradient-approx-radial-1-ref.html
 
 # Tests for -webkit-gradient(linear, ...)
 == webkit-gradient-linear-1a.html webkit-gradient-linear-1-ref.html
 == webkit-gradient-linear-1b.html webkit-gradient-linear-1-ref.html
 == webkit-gradient-linear-1c.html webkit-gradient-linear-1-ref.html
 == webkit-gradient-linear-1d.html webkit-gradient-linear-1-ref.html
-fails-if(styloVsGecko) == webkit-gradient-linear-2.html webkit-gradient-linear-2-ref.html
+fails-if(styloVsGecko) fails-if(stylo) == webkit-gradient-linear-2.html webkit-gradient-linear-2-ref.html
 
 # Tests for -webkit-gradient(radial, ...)
 == webkit-gradient-radial-1a.html webkit-gradient-radial-1-ref.html
 == webkit-gradient-radial-1b.html webkit-gradient-radial-1-ref.html
 == webkit-gradient-radial-2.html webkit-gradient-radial-2-ref.html
--- a/layout/reftests/writing-mode/reftest.list
+++ b/layout/reftests/writing-mode/reftest.list
@@ -102,17 +102,17 @@ HTTP(..) == 1127488-align-end-vertical-l
 HTTP(..) == 1127488-align-left-vertical-lr-ltr.html 1127488-align-top-left-ref.html
 HTTP(..) == 1127488-align-right-vertical-lr-ltr.html 1127488-align-bottom-left-ref.html
 == 1130907-intrinsic-sizing-1.html 1130907-intrinsic-sizing-1-ref.html
 == 1130907-intrinsic-sizing-2.html 1130907-intrinsic-sizing-2-ref.html
 == 1131013-vertical-bidi.html 1131013-vertical-bidi-ref.html
 == 1133945-1-vertical-align.html 1133945-1-vertical-align-ref.html
 skip-if(Android) == 1134744-radio-checkbox-baseline-1.html 1134744-radio-checkbox-baseline-1-ref.html # Disabled on Android until bug 1352238 is fixed.
 == 1134849-orthogonal-inline.html 1134849-orthogonal-inline-ref.html
-fails-if(styloVsGecko) == 1135361-ruby-justify-1.html 1135361-ruby-justify-1-ref.html # bug 1136067
+fails-if(styloVsGecko) fails-if(stylo) == 1135361-ruby-justify-1.html 1135361-ruby-justify-1-ref.html # bug 1136067
 fuzzy-if(winWidget,255,163) fuzzy-if(skiaContent,159,111) == 1136557-1-nested-spans.html 1136557-1-nested-spans-ref.html
 fuzzy-if(winWidget,255,221) fuzzy-if(skiaContent,159,111) == 1136557-2-nested-spans.html 1136557-2-nested-spans-ref.html
 fuzzy-if(winWidget,255,236) == 1136557-3-nested-spans.html 1136557-3-nested-spans-ref.html
 == 1138356-1-button-contents-alignment.html 1138356-1-button-contents-alignment-ref.html
 != 1138356-2-button-contents-alignment.html 1138356-2-button-contents-alignment-notref.html
 
 # Font inflation behaves wrong in vertical writing mode: bug 1138495
 test-pref(dom.meta-viewport.enabled,true) test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.forceEnabled,true) test-pref(font.size.inflation.lineThreshold,0) == font-inflation-1a.html font-inflation-1-ref.html