gecko-dev/gfx/angle/cherries.log

99 строки
4.2 KiB
Plaintext

commit fcbca0e873c3222f13578a07294349c03ce44ab4
Author: Dzmitry Malyshau <kvark@mozilla.com>
Date: Fri Mar 9 16:37:22 2018 -0500
Update driver constants on program change. Comes with a new SamplerMetadataUpdateOnSetProgram test.
This is a fix for a graphics problem we've been seeing for a while with WebRender+Angle on Nvidia/Windows. The sampler metadata doesn't get updated properly for some of the draw calls, since it's not invalidated on program change (this is what the CL is fixing). Extra entries get filled with garbage data because the constant buffer is updated with `MAP_WRITE_DISCARD`, and only those samplers are updated that the current program has. This may generally occur undetected, if not for our `textureSize` calls that appear to go the NV-specific Angle workaround path that ignores our `baseLevel = 0` and instead picks the one from the driver constants (which contains garbage), leading to either zeroes returned or even crashing the driver sometimes...
BUG=angleproject:2399
Change-Id: Ie2bef32184e2305c7255299933b899eb3fffb7ab
Reviewed-on: https://chromium-review.googlesource.com/949412
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
commit 17c34b476b3a941ee749165b6a360f8a3488960d
Author: Frank Henigman <fjhenigman@chromium.org>
Date: Wed Feb 28 15:47:13 2018 -0500
Add missing #include.
Would not compile locally on Linux without adding #include <algorithm>.
BUG=none
Change-Id: I2f817faf681234c0e7eeeda0ad837e8285d9071a
Reviewed-on: https://chromium-review.googlesource.com/941613
Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Luc Ferron <lucferron@chromium.org>
commit eb0da26df7dc6cd45ee17455633bdec2efbaf322
Author: Jeff Gilbert <jgilbert@mozilla.com>
Date: Thu Mar 1 17:08:35 2018 -0800
Fix R11F_G11F_B10F/RGB/FLOAT SKIP_PIXELS=1 uploads.
Bug: angleproject:2385
Change-Id: I555000f23314441084895e275824d2eb48ba7041
commit 7d510ab511cd502220f81507189a2861958e22fd
Author: Jeff Gilbert <jgilbert@mozilla.com>
Date: Mon Feb 26 16:30:06 2018 -0800
Move constructors may not be marked explicit.
BUG=angleproject:2383
Change-Id: If22c7f7c15b7bbe89b859281b28c2b9695e34a1d
commit d8e2f9ea469900a51e78b63f06fab52b69e42193
Author: Jeff Gilbert <jgilbert@mozilla.com>
Date: Thu Feb 22 18:20:37 2018 -0800
Support EGLStream from B8G8R8A8_UNORM D3D11Texture.
Mozilla bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1415754
BUG=angleproject:2368
Change-Id: Ic2c71b36e7b08560e158fd3dbf10b2fe225f1364
Cherries picked
================================================================================
Merge base
commit d444255a779bba544cf95516b1efc1b0e6cb0a65
Author: Jamie Madill <jmadill@chromium.org>
Date: Tue Feb 27 22:03:47 2018 -0500
Refactor signal utils into Observer pattern.
These types were over-generalized. All use cases featured
arrays of resources attached to single parent resources. The
channel ID is sufficient to identify the child resource in the
parent, and having variadic template arguments wasn't necessary.
Futhermore we can rename these types to use the common Observer
pattern. This should make them more readable to new developers.
Also update some classes to inherit from Subject instead of
having a member Subject. This cleans up the code in a few places.
This should lead to a simpler refactor to allow dependent dirty
bits notifications in the Vulkan back-end.
In the following patch the signal_utils files will be renamed. They
are not renamed in this patch to ensure git history is preserved.
Bug: angleproject:2372
Change-Id: I17a3f2c8d92afd4bb3cba2d378c3a2e8a6d7fb11
Reviewed-on: https://chromium-review.googlesource.com/936690
Reviewed-by: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>