Граф коммитов

229 Коммитов

Автор SHA1 Сообщение Дата
Andrew Osmond 248e714e1a Bug 1711579 - Add more fuzz for SW-WR reftest intermittents. r=gfx-reviewers,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D115294
2021-05-17 22:47:25 +00:00
Matt Woodrow a6d0dff2b5 Bug 1707513 - Add 'drawSnapshot' mode to reftest harness, and annotate all current failures. r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D114188
2021-05-10 00:28:01 +00:00
Alexandru Michis 4b2cad43d1 Backed out 2 changesets (bug 1707513) for causing reftest failures in partial-prerender-expansion-with-resolution-1.html
Backed out changeset f9bdd1b929f2 (bug 1707513)
Backed out changeset b76d28f3a159 (bug 1707513)
2021-05-08 22:13:23 +03:00
Matt Woodrow a77dc2167d Bug 1707513 - Add 'drawSnapshot' mode to reftest harness, and annotate all current failures. r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D114188
2021-05-08 05:52:19 +00:00
Nicolas Silva 4a1117087f Bug 1702228 - Adjust reftests. r=gw
Differential Revision: https://phabricator.services.mozilla.com/D112970
2021-04-22 10:34:55 +00:00
Nicolas Silva 6bb6d97c85 Bug 1702232 - Adjust reftest expectations. r=lsalzman
gradient-move-stops.html ends up failing because a gradient stop is offset by a small amount but it causes a large amount of pixels to differ by 255, beyond what is reasonable to mark with fuzzy thresholds.

Differential Revision: https://phabricator.services.mozilla.com/D111127
2021-04-08 08:39:17 +00:00
Lee Salzman 650f5d23bb Bug 1699884 - Restore SWGL radial gradient fast-path in cs_radial_gradient. r=jrmuizel,gfx-reviewers,nical
Bug 1687977 removed brush_radial_gradient as well as the SWGL fast-path with it. This
adds it back inside cs_radial_gradient.

Differential Revision: https://phabricator.services.mozilla.com/D109195
2021-03-20 18:24:43 +00:00
Nicolas Silva 51e89af493 Bug 1687977 - Part 11 - Adjust reftest references. r=gw
Differential Revision: https://phabricator.services.mozilla.com/D108470
2021-03-19 13:54:43 +00:00
Noemi Erli 61d6f12836 Backed out 7 changesets (bug 1687977) for causing build bustages CLOSED TREE
Backed out changeset 47f20111056a (bug 1687977)
Backed out changeset 56ef057fc29c (bug 1687977)
Backed out changeset 72bcd469b597 (bug 1687977)
Backed out changeset ddceb031f73b (bug 1687977)
Backed out changeset 526d512c6cf9 (bug 1687977)
Backed out changeset 2f392cb56f71 (bug 1687977)
Backed out changeset 2865e8332baa (bug 1687977)
2021-03-19 11:52:25 +02:00
Nicolas Silva d8cbdc6d73 Bug 1687977 - Part 11 - Adjust reftest references. r=gw
Differential Revision: https://phabricator.services.mozilla.com/D108470
2021-03-19 09:34:27 +00:00
Lee Salzman 7d3755c3f6 Bug 1686244 - Accelerate radial gradients in SWGL. r=jrmuizel
The same optimization of looking for merged linear gradients can also be
applied to radial gradients by solving the quadratic equation to check
how large a span we can process within a given merged span. This allows
us to save a bunch of table lookup and some other math in the inner loops.

Differential Revision: https://phabricator.services.mozilla.com/D105858
2021-02-22 04:14:39 +00:00
Matt Woodrow 96c437eeaf Bug 1674856 - Fiz fuzz annotations for Windows10 swr reftests. r=lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D95571
2020-11-03 23:51:40 +00:00
Razvan Maries c032d89358 Backed out 3 changesets (bug 1674856) for Windows10 swr reftests perma failures. CLOSED TREE
Backed out changeset 8e52162cdf48 (bug 1674856)
Backed out changeset eb84f9c620ac (bug 1674856)
Backed out changeset 477a1070a971 (bug 1674856)
2020-11-03 21:43:26 +02:00
Matt Woodrow 66c1e2b63c Bug 1674856 - Fix fuzz annotations for Windows10 swr reftests. r=lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D95571
2020-11-03 18:16:36 +00:00
Lee Salzman d1f364349a Bug 1621454 - adjust fuzz for SWGL span shaders. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D95325
2020-10-31 13:30:57 +00:00
Butkovits Atila c4646c9aa3 Backed out 4 changesets (bug 1621454) for causing bustage src/swgl_ext.h. a=backout
Backed out changeset d0d03d5a81a8 (bug 1621454)
Backed out changeset 6675f76d6f11 (bug 1621454)
Backed out changeset 29943d5348df (bug 1621454)
Backed out changeset 80c0aaa81c2e (bug 1621454)
2020-10-31 12:28:47 +02:00
Lee Salzman 00b039a687 Bug 1621454 - adjust fuzz for SWGL span shaders. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D95325
2020-10-31 02:28:08 +00:00
Joel Maher 5f474b909b Bug 1658057 - Adjust reftest expectations for windows reftests on hardware. r=bc
Adjust reftest expectations for windows reftests on hardware

Differential Revision: https://phabricator.services.mozilla.com/D86450
2020-08-11 21:25:03 +00:00
Matt Woodrow b31970d899 Bug 1656813 - Annotate fuzzy reftest differences. r=lsalzman
These are all subtle differences that aren't visible, many are actually less fuzzy than with normal WR.

Differential Revision: https://phabricator.services.mozilla.com/D85715
2020-08-05 02:19:08 +00:00
Cosmin Sabou 38cd82e194 Backed out 8 changesets (bug 1656813) for reftest failures on bipbop_300_215kbps.mp4.lastframe.html.
Backed out changeset 92e0209dc7f1 (bug 1656813)
Backed out changeset 1b3842f2ca27 (bug 1656813)
Backed out changeset efed1b35fe47 (bug 1656813)
Backed out changeset d1c313ebe358 (bug 1656813)
Backed out changeset 4d6a3bf61345 (bug 1656813)
Backed out changeset 060254b3ad73 (bug 1656813)
Backed out changeset 37e5e5e6593a (bug 1656813)
Backed out changeset 12c0e9554a5f (bug 1656813)
2020-08-05 04:52:20 +03:00
Matt Woodrow 1885d56be1 Bug 1656813 - Annotate fuzzy reftest differences. r=lsalzman
These are all subtle differences that aren't visible, many are actually less fuzzy than with normal WR.

Differential Revision: https://phabricator.services.mozilla.com/D85715
2020-08-05 00:54:23 +00:00
Bert Peers 7f2e1717d9 Bug 1624468 - Add a fast path for more gradient types in WR r=gw
Differential Revision: https://phabricator.services.mozilla.com/D68945

--HG--
extra : moz-landing-system : lando
2020-04-06 07:16:25 +00:00
Stefan Hindli 52dbd58d66 Backed out changeset dfa94a886779 (bug 1624468) for causing web platform permafailures in /css/css-images/gradient-move-stops.html CLOSED TREE 2020-04-03 03:07:20 +03:00
Bert Peers b55f9bcbf6 Bug 1624468 - Add a fast path for more gradient types in WR r=gw
Differential Revision: https://phabricator.services.mozilla.com/D68945

--HG--
extra : moz-landing-system : lando
2020-04-02 19:50:12 +00:00
Ciure Andrei 0f9a0b7cdb Backed out changeset 9dc84057c6a9 (bug 1624468) for causing gradient-move-stops.html to fail CLOSED TREE 2020-04-02 06:08:51 +03:00
Bert Peers 04704c8605 Bug 1624468 - Add a fast path for more gradient types in WR r=gw
Differential Revision: https://phabricator.services.mozilla.com/D68945

--HG--
extra : moz-landing-system : lando
2020-04-02 01:25:54 +00:00
Tim Nguyen 46aff81118 Bug 1616994 - Merge layout/reftests/backgrounds/gradient and layout/reftests/css-gradients. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D63559

--HG--
rename : layout/reftests/backgrounds/gradient/color-stop-clamp-interpolation-ref.html => layout/reftests/css-gradients/color-stop-clamp-interpolation-ref.html
rename : layout/reftests/backgrounds/gradient/color-stop-clamp-interpolation.html => layout/reftests/css-gradients/color-stop-clamp-interpolation.html
rename : layout/reftests/backgrounds/gradient/linear-gradient-repeated-ref.html => layout/reftests/css-gradients/linear-gradient-repeated-ref.html
rename : layout/reftests/backgrounds/gradient/linear-gradient-repeated.html => layout/reftests/css-gradients/linear-gradient-repeated.html
rename : layout/reftests/backgrounds/gradient/scaled-color-stop-position-ref.html => layout/reftests/css-gradients/scaled-color-stop-position-ref.html
rename : layout/reftests/backgrounds/gradient/scaled-color-stop-position.html => layout/reftests/css-gradients/scaled-color-stop-position.html
extra : moz-landing-system : lando
2020-02-24 11:40:23 +00:00
Brindusan Cristian de02c75c28 Backed out changeset ca76228564c8 (bug 1616994) for breaking Gecko Decision Task. CLOSED TREE
--HG--
rename : layout/reftests/css-gradients/color-stop-clamp-interpolation-ref.html => layout/reftests/backgrounds/gradient/color-stop-clamp-interpolation-ref.html
rename : layout/reftests/css-gradients/color-stop-clamp-interpolation.html => layout/reftests/backgrounds/gradient/color-stop-clamp-interpolation.html
rename : layout/reftests/css-gradients/linear-gradient-repeated-ref.html => layout/reftests/backgrounds/gradient/linear-gradient-repeated-ref.html
rename : layout/reftests/css-gradients/linear-gradient-repeated.html => layout/reftests/backgrounds/gradient/linear-gradient-repeated.html
rename : layout/reftests/css-gradients/scaled-color-stop-position-ref.html => layout/reftests/backgrounds/gradient/scaled-color-stop-position-ref.html
rename : layout/reftests/css-gradients/scaled-color-stop-position.html => layout/reftests/backgrounds/gradient/scaled-color-stop-position.html
2020-02-24 05:06:24 +02:00
Tim Nguyen 4c05de78b4 Bug 1616994 - Merge layout/reftests/backgrounds/gradient and layout/reftests/css-gradients. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D63559

--HG--
rename : layout/reftests/backgrounds/gradient/color-stop-clamp-interpolation-ref.html => layout/reftests/css-gradients/color-stop-clamp-interpolation-ref.html
rename : layout/reftests/backgrounds/gradient/color-stop-clamp-interpolation.html => layout/reftests/css-gradients/color-stop-clamp-interpolation.html
rename : layout/reftests/backgrounds/gradient/linear-gradient-repeated-ref.html => layout/reftests/css-gradients/linear-gradient-repeated-ref.html
rename : layout/reftests/backgrounds/gradient/linear-gradient-repeated.html => layout/reftests/css-gradients/linear-gradient-repeated.html
rename : layout/reftests/backgrounds/gradient/scaled-color-stop-position-ref.html => layout/reftests/css-gradients/scaled-color-stop-position-ref.html
rename : layout/reftests/backgrounds/gradient/scaled-color-stop-position.html => layout/reftests/css-gradients/scaled-color-stop-position.html
extra : moz-landing-system : lando
2020-02-24 02:06:13 +00:00
Glenn Watson 31585fc1e6 Bug 1608717 - Support per-tile clip (valid) region for native compositor implementations. r=sotaro,mstange
For Draw (non-native) and CA modes, we include the per-tile
valid rect in the clip rect from the surface.

For DC (non-virtual) mode, a per-tile clip rect is set on the
visual for each tile, separate from the overall clip rect that
is set on the surface visual.

For DC (virtual) mode, the Trim API is used to remove pixels
in the virtual tile area that are outside the valid / clipped
region.

Note: Although the valid rect is now applied in the native
compositors, it's currently only based on the overall picture
cache bounding rect. Thus, with this patch there isn't any
noticeable performance improvement. Once this lands and is
working correctly, the follow up patch to calculate a smaller
valid region per-tile is a small amount of work.

Differential Revision: https://phabricator.services.mozilla.com/D61424

--HG--
extra : moz-landing-system : lando
2020-02-12 04:27:15 +00:00
Emilio Cobos Álvarez c3c6689c8b Bug 1609711 - Minor fuzz adjustments.
CLOSED TREE

MANUAL PUSH: orange
2020-01-23 13:39:29 +01:00
Emilio Cobos Álvarez af75fc5d27 Bug 1609711 - Compute gradient positions in css pixels. r=jrmuizel
The gradient code is the only one that does a really weird thing with
LengthPercentage values, by getting the percentage and length separately and
turning the length into a percentage relative to the line length (which is in
device pixels).

This won't work once we have min() / max() / etc. in CSS (as we can't access
the length and percentage components separately, as which one you choose may
depend on the percentage basis). So instead of that, use the regular
ResolveToCssPixels there are lengths involved.

We change a bit the surrounding code to work in CSS pixels, so as to avoid
unneeded CSS -> device pixel conversions.

Differential Revision: https://phabricator.services.mozilla.com/D60159

--HG--
extra : moz-landing-system : lando
2020-01-23 09:18:21 +00:00
Cosmin Sabou c562fe95c5 Backed out 2 changesets (bug 1609711) for causing reftest failures on radial-size-1b.html. CLOSED TREE
Backed out changeset 2857feeff01b (bug 1609711)
Backed out changeset 627ee9bf5573 (bug 1609711)

--HG--
extra : histedit_source : 35debdd9cdab035b9538972fff10cc556e724f74
2020-01-23 07:19:28 +02:00
Emilio Cobos Álvarez 049fa64ff0 Bug 1609711 - Compute gradient positions in css pixels. r=jrmuizel
The gradient code is the only one that does a really weird thing with
LengthPercentage values, by getting the percentage and length separately and
turning the length into a percentage relative to the line length (which is in
device pixels).

This won't work once we have min() / max() / etc. in CSS (as we can't access
the length and percentage components separately, as which one you choose may
depend on the percentage basis). So instead of that, use the regular
ResolveToCssPixels there are lengths involved.

We change a bit the surrounding code to work in CSS pixels, so as to avoid
unneeded CSS -> device pixel conversions.

Differential Revision: https://phabricator.services.mozilla.com/D60159

--HG--
extra : moz-landing-system : lando
2020-01-23 00:36:12 +00:00
Glenn Watson 90a55d388c Bug 1608741 - Part 2 - Disable dithering on gradient primitives. r=sotaro,nical
There are a number of issues with the current gradient dithering
implementation, that cause many test failures and also fuzziness
rendering when enabling DirectComposition virtual surfaces. In
particular, the dither result is dependent on the offset of the
update rect within a render target.

For now, this patch disables gradient dithering by default. This
gives us:

 - A heap of new test PASS results (or reduced fuzziness).
 - Fixes a number of non-deterministic fuzziness bugs with DC.
 - Improves performance of gradient rendering by a reasonable amount.

We can fix gradient dithering as a follow up, and re-enable if/when
we find content that would benefit from it significantly (we may
be able to improve gradients in other ways than dithering too).

Differential Revision: https://phabricator.services.mozilla.com/D60460

--HG--
extra : moz-landing-system : lando
2020-01-22 01:24:14 +00:00
Nicolas Silva 2ba0079dc7 Bug 1596086 - Adjust reftest expectations after gradient fix in WebRender. r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D54684

--HG--
extra : moz-landing-system : lando
2019-11-28 16:22:14 +00:00
Arthur Iakab 59355ab529 Backed out 3 changesets (bug 1596086) for causing wrench bustages on result.rs CLOSED TREE
Backed out changeset ad8db62e810c (bug 1596086)
Backed out changeset 3a6f8c6edf4e (bug 1596086)
Backed out changeset db3785d7c430 (bug 1596086)
2019-11-28 01:16:42 +02:00
Nicolas Silva d95492afc2 Bug 1596086 - Adjust reftest expectations after gradient fix in WebRender. r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D54684

--HG--
extra : moz-landing-system : lando
2019-11-27 22:40:39 +00:00
Narcis Beleuzu abfef73a2b Backed out 4 changesets (bug 1596086) for reftest failures on reftest.list . CLOSED TREE
Backed out changeset 651a7556124b (bug 1596086)
Backed out changeset ab2e0e2a9048 (bug 1596086)
Backed out changeset 00ccdb940ea2 (bug 1596086)
Backed out changeset 57869dbf0a8b (bug 1596086)
2019-11-27 01:38:33 +02:00
Narcis Beleuzu dbc0ec279f Bug 1596086 - Fix reftest.list . r=gw CLOSED TREE
Differential Revision: https://phabricator.services.mozilla.com/D54822

--HG--
extra : amend_source : 95b9aad00d0481e8ee64e27aeca7d447c1d3f7b3
extra : histedit_source : 16659aca5b38989cf5b2bf28798626352579402f
2019-11-27 00:01:47 +02:00
Nicolas Silva 6b21103dff Bug 1596086 - Adjust reftest expectations after gradient fix in WebRender. r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D54684

--HG--
extra : moz-landing-system : lando
2019-11-26 20:38:18 +00:00
Kartikaya Gupta ec2096ed3f Bug 1525314 - Update reftest annotations for WebRender on GeckoView. r=gbrown
Differential Revision: https://phabricator.services.mozilla.com/D36798

--HG--
extra : moz-landing-system : lando
2019-07-04 21:57:48 +00:00
Coroiu Cristina 3983fddf6d Backed out 6 changesets (bug 1525314) for reftest failures at reftests/svg/filters/css-filters/saturate-zero.html om a CLOSED TREE
Backed out changeset 0ed2509b7191 (bug 1525314)
Backed out changeset af72d1c4c107 (bug 1525314)
Backed out changeset ab21a3ff4ae4 (bug 1525314)
Backed out changeset 02399933ac4b (bug 1525314)
Backed out changeset 95790a07a93c (bug 1525314)
Backed out changeset 28f52fd3934e (bug 1525314)
2019-07-05 00:29:12 +03:00
Kartikaya Gupta c08a0b6539 Bug 1525314 - Update reftest annotations for WebRender on GeckoView. r=gbrown
Depends on D36797

Differential Revision: https://phabricator.services.mozilla.com/D36798

--HG--
extra : moz-landing-system : lando
2019-07-03 17:13:33 +00:00
Glenn Watson e22f19cf52 Bug 1558106 - Support picture caching for multiple scroll roots. r=kvark
This patch implements the majority of the planned picture caching
improvements. It supports most of the functionality required to
(as a follow up) support OS compositor integration. It also improves
on the robustness and functionality of the previous picture caching
implementation.

There are some expected temporary performance regressions in
some cases (such as content that is constantly invalidating) and
during initial page render when many render targets must be drawn
to. These performance regressions will be resolved in follow up
commits by supporting multi-resolution tiles.

The scene is split into a number of slices, determined by the scroll
root of each primitive, which can be found by the primitive's
spatial node indices. If a scene contains too many slices, then
picture caching is disabled on the page, to avoid excessive texture
memory usage, and rendering falls back to rasterizing each frame.

The specific changes in this patch are:
    * Support tile caches for multiple scroll roots, allowing the
      entire page (including fixed divs and the main UI bar) to be
      cached in most cases, in addition to the main content.
    * Remove requirement to read tiles back from the framebuffer.
      Instead, they are drawn into the picture cache target tiles,
      and blitted to the screen. This is slightly slower than the
      existing picture caching when content is constantly changing,
      however this cost will disappear / become irrelevant when
      the OS compositor integration work is complete.
    * Switch picture cache render targets to be nearest sampled (they
      are always rendered 1:1) and support depth buffer targets.
    * Make use of the external scroll offset support to allow removal
      of the primitive correlation hacks in the previous picture
      caching implementation. Also allows storing of primitive
      dependencies in picture space rather than world space, which
      reduces floating point inaccuracies.
    * Determine if each tile and picture cache can be considered
      opaque. This is used to determine whether subpixel AA text
      rendering is available on a slice, and for rendering optimizations
      related to disabling blending and/or tile clears.
    * Use the clip chain instance results from the recent visibility pass
      work to determine clip chain dependencies. This results in fewer
      clip item dependencies in tiles, which is faster to check validity
      and reduces redundant invalidations.
    * Remove extra overhead during batching related to batch lists,
      and region iteration, as they are no longer required.
    * Support PrimitiveVisibilityMask during batching. This allows a
      single traversal of a picture (surface) root during batching to
      efficiently construct multiple alpha batcher objects (typically
      one per invalida tile).
    * Picture caching is now handled implicitly by WR, depending on
      the content of the scene. There is no requirement for client
      code to manually select which stacking context should be cached.
    * Simplify how clip chain / transform dependencies are tracked by
      picture cache tiles.
    * Support pushing / popping enclosing clip chain roots without
      the need for a stacking context / picture in some cases. This
      simplifies the logic to split the scene into multiple slices.

The main remaining work in this area is (a) extend the code to
optionally provide each slice as an input to the OS compositor
rather than drawing the tiles in WR, and (b) support multi-resolution
tiles so that we reduce the draw call, batching and render target
overhead in cases where much of the page content is changing.

Differential Revision: https://phabricator.services.mozilla.com/D34319

--HG--
extra : moz-landing-system : lando
2019-06-13 04:43:56 +00:00
Emilio Cobos Álvarez 67c30d05d2 Bug 1557212 - Use cbindgen for gradients. r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D33901

--HG--
extra : moz-landing-system : lando
2019-06-07 14:13:17 +00:00
Glenn Watson d8c42a8290 Bug 1545006 - Use external scroll offsets to move primitives and clips into local space. r=kats
Use the external scroll offsets provided by Gecko to:
 (a) Offset primitives and clips by accumulated scroll offset.
 (b) Adjust the scroll transforms and hit test results.

This allows primitives and clips to be stored in a true local space,
that is consistent between display lists, even if scrolling has
occurred. This is a step towards planned picture caching improvements.

Differential Revision: https://phabricator.services.mozilla.com/D27856

--HG--
extra : moz-landing-system : lando
2019-04-17 21:06:19 +00:00
Glenn Watson e920cc3f6a Bug 1533236 - Add a fast path to WR for common gradient types. r=kvark
The existing linear gradient shader is quite slow, especially
on very large gradients on integrated GPUs.

The vast majority of gradients in real content are very simple
(typically < 4 stops, no angle, no repeat). For these, we can
run a fast path to persist a small gradient in the texture cache
and draw the gradient via the image shader.

This is _much_ faster than the catch-all gradient shader, and also
results in better batching while drawing the main scene.

In future, we can expand the fast path to handle more cases, such
as angled gradients. For now, it takes a conservative approach,
but still seems to hit the fast path on most real content.

Differential Revision: https://phabricator.services.mozilla.com/D22445

--HG--
extra : moz-landing-system : lando
2019-03-07 21:20:40 +00:00
Andrew Osmond 6cba1775c3 Bug 1453935 - Ensure that we snap within the visible rect with WebRender. r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D18869
2019-02-07 18:05:43 -05:00
Andreea Pavel 7e3beb59f7 Backed out changeset 87ad4b91e29f (bug 1453935) for reftest failures on a CLOSED TREE 2019-02-08 00:45:29 +02:00