- 14 Oct, 2020 11 commits
-
-
Jonah Ryan-Davis authored
Some users on Linux/Wayland are reporting issues rendering Chrome unusable when ANGLE exposes GLX_OML_sync_control. This CL adds a new feature to ANGLE to disable this extension, but for now we leave the feature off by default, so users can test it via command line flags. Bug: chromium:1137851 Change-Id: I804ea935fe441c4794b93ee62ca335e78b9e453a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2468216Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
-
Ian Elliott authored
Use vkGetPhysicalDeviceSurfaceCapabilitiesKHR() instead of ANativeWindow_getWidth() & ANativeWindow_getHeight(). The former gives the proper size of the window, where the latter gives the size of the device's display (which is the default size of a window). Bug: b/168327817 Change-Id: I524116b7b07bf2ec7637fe2874806c5eb8318171 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2464920Reviewed-by:
Tim Van Patten <timvp@google.com> Reviewed-by:
Courtney Goeltzenleuchter <courtneygo@google.com> Commit-Queue: Ian Elliott <ianelliott@google.com>
-
Jamie Madill authored
This makes trigger.py use the same code paths as the bots when they trigger standalone ANGLE tests. Fixes launching tests via trigger.py on Linux because of using the 'windowed_test_launcher' method that used xvfb. Bug: angleproject:5114 Change-Id: I073631270b5b69aac8f3f0f6378bd71f951ce8e6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2464425 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by:
Yuly Novikov <ynovikov@chromium.org>
-
angle-autoroll authored
https://chromium.googlesource.com/chromium/src.git/+log/a6b7134c40b1..20d60a8527d7 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC ynovikov@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/28f65f7116..4af5c075ce * testing: https://chromium.googlesource.com/chromium/src/testing/+log/225e4dc4d6..a8c1307999 No update to Clang. Bug: angleproject:5124 Tbr: ynovikov@google.com Change-Id: I82d32eb5b80daa8d26491b4399289e00283c3f65 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2470543Reviewed-by:
angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
-
Shahbaz Youssefi authored
gl::DrawBuffersVector was used to hold the clear values, but that didn't have enough space for depth/stencil clear values if MAX draw buffers where used and cleared. The added test in this change exposes the vkCmdClearAttachment Qualcomm bug (previously presumed to affect color clears only) with depth/stencil buffers, so the workaround is expanded to avoid vkCmdClearAttachment entirely. Bug: b/159808300 Change-Id: I27c58d9b534bce0bdd27cc53fc64e139f1363c1a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2455166 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Courtney Goeltzenleuchter <courtneygo@google.com>
-
Shahbaz Youssefi authored
Bug: b/167275320 Bug: angleproject:4836 Change-Id: Ic5da615931f13e1ce34f486f163d4f28c8af9287 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2468458 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Charlie Lao <cclao@google.com>
-
Shahbaz Youssefi authored
clearImmediatelyWithRenderPassOp is removed and the draw path is used for the scissor. That path was added to avoid creating a large number of graphics pipelines due to the scissor state. This is now done by using dynamic state for scissor in the draw path for clear. Running the following dEQP tests without and with dynamic state for scissor: dEQP-GLES3.functional.fragment_ops.depth_stencil.stencil_ops.* the number of graphics pipelines is reduced from 95392 to 16. Bug: angleproject:4617 Bug: angleproject:4836 Change-Id: Ib373d8cd23ca2b67e6fd26aa2a1103f281f7e473 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2463985 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by:Charlie Lao <cclao@google.com> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Shahbaz Youssefi authored
Bug: b/167275320 Bug: angleproject:4836 Change-Id: Iedbe1dfc8562c4c28477bf6a5a298620fcd48a67 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2468457 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by:
Charlie Lao <cclao@google.com> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
This makes interoperation with Chromium tests easier. For instance when triggering tests with scripts when using sharding. And also using the run/ wrapper scripts instead of run_gtest_angle_test. Bug: angleproject:5158 Change-Id: Ia5b1f94c02a081caf576615175791fff4e0d3fb3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2464030Reviewed-by:
Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by:
Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Ian Elliott authored
The perFrameWindowSizeQuery feature was enabled for Arm, based on a faulty dEQP test, that says that it is resizing a window on Android, but doesn't actually. The Arm team has verified that this feature is no longer needed for Arm/Mali, and so it is being removed. Bug: b/170733470 Bug: angleproject:5150 Change-Id: I8b9d7cb45983b6bbf8d52d37bf5b237f2c3e4fe4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2468176Reviewed-by:
Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by:
Ian Elliott <ianelliott@google.com> Commit-Queue: Ian Elliott <ianelliott@google.com>
-
Jamie Madill authored
Bug: angleproject:5158 Change-Id: I3c29adf36f6f31f23bf662c2d7d6c4d05d8e9028 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2466781 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by:
Yuly Novikov <ynovikov@chromium.org>
-
- 13 Oct, 2020 11 commits
-
-
Jamie Madill authored
These produce low memory warnings on Quadro when run multi-process. Bug: angleproject:5162 Change-Id: Ibef3a8ea9119d923a538181387c30562d503bcb6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2466782 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Yuly Novikov <ynovikov@chromium.org>
-
Jamie Madill authored
This dramatically speeds up Android shards that use batches of hudreds of tests. Because ANGLE already has the test list, it no longer needs to call GTest with an enourmous gtest_filter. Bug: angleproject:5164 Change-Id: I28fee2f36c50006f2a35a4dcd90f44f8ebe4f78c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2468464 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Yuly Novikov <ynovikov@chromium.org>
-
Shahbaz Youssefi authored
When releasing buffer/image to external, the necessary barrier was recorded on the "outside render pass command buffer". However, if the resource was used in the current render pass, that render pass should have closed before this, otherwise the barrier was reordered before it which is incorrect. Bug: chromium:1136367 Bug: chromium:1135792 Bug: angleproject:5002 Change-Id: I237d5e6bb46189a4ce61c2f4602e356955cc87a9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2468456 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Charlie Lao <cclao@google.com>
-
Kyle Griffiths authored
Adds the PowerVR VendorID into the accepted vendor list, and prevent basic GL line emulation from being ran on PowerVR hardware as it's not required on those platforms, yet causes CTS failures when enabled. Fixes a variety of line failure tests across OGLES3/3.1 test suites seen on PowerVR hardware. Bug: angleproject:5145 Change-Id: I7383f1c09d026b8d33e6fbda66418c5f8b7f90bd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2462094Reviewed-by:
Geoff Lang <geofflang@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
-
Brian Sheedy authored
Updates IsARM64 to return true if __aarch64__ is defined, as the current check only using _M_ARM64 only evaluates to true on Windows platforms. Bug: chromium:1132295 Change-Id: I4853012e077217162ee3439c17fe35dcc6157e71 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2468787 Commit-Queue: Brian Sheedy <bsheedy@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
ClearTest.ChangeFramebufferAttachmentFromRGBAtoRGB/ES2_OpenGL Fails on AMD and all vendors. Bug: angleproject:5165 Change-Id: Id98c14a695cd9b3dd0c5f57d77932908833f9406 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2468357Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Ian Elliott <ianelliott@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
This is embedded as a #define. It can be used for book-keeping and can also be used to control integration when there's incompatibility. Bug: angleproject:5135 Change-Id: Ie0bb8ff9509c5f973860cb9e6ae48714a27c7398 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2449163 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by:
Cody Northrop <cnorthrop@google.com>
-
angle-autoroll authored
https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/2067d1a93e6e..f4f1d8a352ca If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/glslang-angle-autoroll Please CC ynovikov@chromium.org on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Bug: None Tbr: ynovikov@chromium.org Change-Id: I35866acde56f6fa340cd5bf68612952c4ef2c678 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2466846Reviewed-by:
angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
-
angle-autoroll authored
https://chromium.googlesource.com/chromium/src.git/+log/efbcef254191..a6b7134c40b1 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC ynovikov@chromium.org on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/8dae5d8e04..28f65f7116 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/b4cc6eb191..225e4dc4d6 * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/7e5979b1dd..d4827bfe10 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/d3154dd7d9..1b83be28f4 No update to Clang. Bug: angleproject:5161 Tbr: ynovikov@chromium.org Change-Id: Ie9a048daf8b35cd6af7a33d0c462c9235618619e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2467656Reviewed-by:
angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
-
Charlie Lao authored
For read only depth stencil buffers, there is no need to store depth or stencil value. But we can not use DontCare for storeOp because vulkan core spec says DontCare indicates data is undefined after this. VK_QCOM_render_pass_store_ops extension introduces a new store op that will leave data defined but skip the store. This CL utilize this if the extension is available. Bug: angleproject:5055 Change-Id: I104f3d01eb342a2d0cc900f342430e901bde1bff Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2462604 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by:
Tim Van Patten <timvp@google.com> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Charlie Lao authored
This is preparation for crrev.com/c/2462604. We run out of bits in the struct PackedAttachmentOpsDesc. This expands it from 16 bits to 32 bits (two uint16_t), gives us a lot more room for current and future needs. Bug: angleproject:5055 Change-Id: I492cbd18c3b71b76b5b48652094409e76c5721b1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2465615Reviewed-by:
Tim Van Patten <timvp@google.com> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com>
-
- 12 Oct, 2020 8 commits
-
-
Charlie Lao authored
The layerCount for 3D texture and 2DArray should be 1 if it does not have layers. Bug: b/170657065 Change-Id: I974ddda7c0eaa92da8033f15c682820e3d4eb32a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2466616Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Tim Van Patten <timvp@google.com> Commit-Queue: Charlie Lao <cclao@google.com>
-
Jamie Madill authored
This will let both the ANGLETest and dEQP test runners handle child processes correctly. The existing ANGLETest runner will reuse displays, and the dEQP test runner will write to a batch-unique filename. This solves the problem of the multi-process --bot-mode writing to the same file from multiple children simultaneously. Long-term it will be good to include the dEQP QPA files into the test artifacts. Also disables flushing after every log write when running as a child process. This hugely improves performance on machines with no SSD. Test: https://chromium-swarm.appspot.com/task?id=4f2b87c4f8234910 Bug: angleproject:5157 Change-Id: I226d24adf55e0f8b98e5a8e7947862e6906b4c40 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2464424Reviewed-by:
Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by:
Ian Elliott <ianelliott@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Cody Northrop authored
In support of tracking compressed texture data across multiple threads and contexts, move our cache to FrameCaptureShared. Make this accessible only via egl::ShareGroup, which will ensure unique texture IDs. Test: Asphalt 8 MEC Bug: b/150484427 Bug: angleproject:4048 Change-Id: I4e75b323d7aedc0333ceffba305439e54c4d6ac1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2455266 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by:
Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Alexey Knyazev authored
Rebase the original CL and update capture/replay state serialization Original CL reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2169093 Bug: angleproject:4394 Bug: chromium:1085996 Bug: chromium:1086582 Bug: chromium:1086585 Bug: chromium:1086586 Change-Id: If0fba8b6e185540aed57d22eaf0ff79ec142209e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2404442 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-
angle-autoroll authored
https://swiftshader.googlesource.com/SwiftShader.git/+log/51b03d58fb17..e72c6099f946 2020-10-11 natsu@google.com Revert "Update virlg_hw path to reflect Minigbm" 2020-10-10 swiftshader.regress@gmail.com Regres: Update test lists @ 139f5c35 2020-10-10 natsu@google.com Update virlg_hw path to reflect Minigbm 2020-10-09 capn@google.com Fix depth bias calculations 2020-10-09 capn@google.com Move interpolant clamping out of interpolate() If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/swiftshader-angle-autoroll Please CC ynovikov@chromium.org on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Bug: None Tbr: ynovikov@chromium.org Change-Id: I5ea04e45273dfd26395635c66a10095f0cb410dc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2465864Reviewed-by:
angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
-
angle-autoroll authored
https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/0046c31f2f96..9d4b40ae645e 2020-10-10 locke@lunarg.com tests: UnnormalizedCoordinates Sampler 2020-10-10 locke@lunarg.com layers: Reduce loop 2020-10-10 locke@lunarg.com layers: VUID-02704 2020-10-10 locke@lunarg.com layers: VUID-02703 2020-10-10 locke@lunarg.com layers: VUID-vkCmdDraw-None-02702 2020-10-10 locke@lunarg.com layers: VUID-vkCmdDraw-None-02699 2020-10-09 tony@lunarg.com layers: Use debug printf create infos 2020-10-09 rgarcia@igalia.com layers: Fix depth/stencil resolve false positives 2020-10-09 mark@lunarg.com dispatch: Add secondary commandbuffer tracking 2020-10-09 mark@lunarg.com dispatch: Move CB APIs to manually generated If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-validation-layers-angle-autoroll Please CC ynovikov@chromium.org on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Bug: None Tbr: ynovikov@chromium.org Change-Id: Iffa368652d3e1a4a85c0bfd148267cd54620384b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2465863Reviewed-by:
angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
-
angle-autoroll authored
https://chromium.googlesource.com/chromium/src.git/+log/77bfcdcde874..efbcef254191 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC ynovikov@chromium.org on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/f12b0ac8bf..8dae5d8e04 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/26fd14f32d..b4cc6eb191 * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/c89bad5e6d..66b870c3b1 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/ed409570c0..d3154dd7d9 * tools/skia_goldctl/linux: ehm_yIO4CdwsvaJZJPQ2xBXAFv3KXEgrDpTY3AaK7EYC..sEWxSos77EKQLWziVoCV6Sa52qijVB0fz9uN1EGoUd0C * tools/skia_goldctl/mac: wIHfWG-DQOw0ISbpkWZrm2f2GoKa3H1Z4I2w8MxhlVIC..rp50J-ChpY5Dyvjwl71mK28FOzgevSspS8YE1qxgkrAC * tools/skia_goldctl/win: ixP2POw1dVLvzG-YPiGAJdFrTLwpr--nwyQr_S5FoRkC..6eX8c167sU_avc61blSZpNkSEa5HwWNYfWCk-88QTNsC No update to Clang. Bug: None Tbr: ynovikov@chromium.org Change-Id: I9bd5f5fbdd62000f87fbb0cde9b54f7a8ff8440b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2465384Reviewed-by:
angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
-
Shahbaz Youssefi authored
Reland "Vulkan: Avoid content restore by detecting no-op stencil" This relands commit 243d0f89. Reland "Vulkan: Restore at the end of RP if write-after-invalidate" This relands commit e5d52ac3. Reland "Vulkan: Invalidate/restore depth/stencil separately." This relands commit 61fa0878. Reland "Vulkan: Move content-defined tracking to ImageHelper" This relands commit 2392e6b3. Reason for revert: Caused crashes in Fuchsia x64 and on ARM. Reland fixes content defined for external images. Original CL message: Content-defined tracking was done in render targets prior to this change. This had multiple drawbacks: - When a framebuffer attachment is changed (including the first time it's set), it's unknown whether the contents of the attachment is defined. - Invalidate takes effect at the end of render pass, at which point the render target objects may be gone. Attachment ImageHelpers are however correctly tracked. This change moves content-defined tracking to the ImageHelper itself, and tracks it per subresource. ImageHelper::onWrite() now receives the subresource that is being written, and marks it as having defined content. A future optimization can make use of this change to ImageHelper::onWrite to track "dirty" subresources. This can lead to the removal of unnecessary barriers when same-kind writes are done on different subresources of the image. See http://anglebug.com/3347#c15 Bug: b/167275320 Bug: angleproject:4836 Bug: angleproject:5159 Change-Id: If5c1ae7152657fd7c94db7d55bea4fb9ddf835ba Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2464825Reviewed-by:
Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
-
- 10 Oct, 2020 10 commits
-
-
Jamie Madill authored
This works around an issue in the GL back-end where the extended dirty bit wasn't synced in internal blit draw calls. This bug is preventing progress with the standalone test runner. This temporarily solution can be put in place until we have a more complete solution for internal draw state sync. Bug: angleproject:5160 Change-Id: Id8ae5efa66b249b008a1535b60493c880f5a06a8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2464824 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
Revert "Vulkan: Avoid content restore by detecting no-op stencil" This reverts commit 243d0f89. Revert "Vulkan: Restore at the end of RP if write-after-invalidate" This reverts commit e5d52ac3. Revert "Vulkan: Invalidate/restore depth/stencil separately." This reverts commit 61fa0878. Revert "Vulkan: Move content-defined tracking to ImageHelper" This reverts commit 2392e6b3. Causes crashes in Fuchsia x64 and on ARM. Original CL message: Content-defined tracking was done in render targets prior to this change. This had multiple drawbacks: - When a framebuffer attachment is changed (including the first time it's set), it's unknown whether the contents of the attachment is defined. - Invalidate takes effect at the end of render pass, at which point the render target objects may be gone. Attachment ImageHelpers are however correctly tracked. This change moves content-defined tracking to the ImageHelper itself, and tracks it per subresource. ImageHelper::onWrite() now receives the subresource that is being written, and marks it as having defined content. A future optimization can make use of this change to ImageHelper::onWrite to track "dirty" subresources. This can lead to the removal of unnecessary barriers when same-kind writes are done on different subresources of the image. See http://anglebug.com/3347#c15 Bug: b/167275320 Bug: angleproject:4836 Bug: angleproject:5159 Change-Id: I93d9dfe973caa7ce70aefa46b5b7d04a8637efb3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2464822Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
These tests crash/fail when reusing EGL Displays. Bug: angleproject:4992 Change-Id: I72dd61543cb055130836428751167e7528cf55af Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2464722Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Shahbaz Youssefi authored
Previously, as long as stencil was enabled, it was considered that it is also being modified. This caused stencil invalidate to be undone in a number of situations, such as: - glEnable(GL_STENCIL_TEST); // with func/ops default - glDrawArrays(); - glInvalidateFramebuffer([GL_STENCIL_ATTACHMENT]); - glClear(GL_DEPTH_BUFFER_BIT); - Close render pass In the above scenario, invalidation of stencil was undone at the end of render pass. In this change, the following cases are considered read-only stencil: - Func = GL_NEVER, stencilFail = GL_KEEP - Func = GL_ALWAYS, stencilPassDepth* = GL_KEEP - stencilFail = GL_KEEP, stencilPassDepth* = GL_KEEP Note that while the above scenario is fixed for no-op stencil, a similar issue persists if stencil was not no-op. The reason stencil invalidate is undone in that case is due to the fact that it's assumed any command after the invalidate call will be a draw call that outputs to stencil, but that is not the case with the glClear call in this example. Bug: angleproject:4836 Change-Id: Ie2ea2d52b7c8ee2394f5456773a7ef434e2b2b16 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2461465 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Ian Elliott <ianelliott@google.com>
-
Shahbaz Youssefi authored
This will avoid breaking the render pass when clearing depth through clearWithDraw if the depthClamp Vulkan feature is not present. Bug: angleproject:4836 Change-Id: I845fd5074dd95f6896da89f9e119ebc5000a5688 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2462719 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Charlie Lao <cclao@google.com>
-
Shahbaz Youssefi authored
If a depth/stencil attachment is invalidated, but subsequently drawn to in the same render pass, undo the invalidate when the render pass is closed. Adapted from https://chromium-review.googlesource.com/c/angle/angle/+/2386478. Bug: b/167275320 Bug: angleproject:4836 Change-Id: I17a35bfd692ddc403ceaa6ec44b5c4f16ff9eed6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2461464 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Ian Elliott <ianelliott@google.com>
-
Shahbaz Youssefi authored
This will avoid breaking render pass if clearing depth in clearWithDraw. Bug: angleproject:4836 Change-Id: I50242d1115efc91059923143f6ae5fd25fb3d36f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2462717 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by:
Charlie Lao <cclao@google.com> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Shahbaz Youssefi authored
Bug: angleproject:4836 Change-Id: I4fa5355fc3e7fcf3ecd091d299c5c0c8d3a74732 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2463984 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by:
Charlie Lao <cclao@google.com> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Shahbaz Youssefi authored
Depth/stencil content defined is already tracked separately in the ImageHelper. This change exposes this tracking from RenderTargetVk. Bug: b/167275320 Bug: angleproject:4836 Change-Id: Ie6520e7a4ab557eb233c60c6ab0d4a8f8f098bf6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2462039 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Ian Elliott <ianelliott@google.com>
-
Tim Van Patten authored
The following tests are flaky on Mac FYI Retina Release (NVIDIA), so the Metal fence sync extension is being disabled for Nvidia. Bug: chromium:1136673 Change-Id: I7e99f558950c6e867318e27f27bb526b4c209fcc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2463516 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by:
Kai Ninomiya <kainino@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-