Log

Author Commit Date CI Message
Kyle Piddington cfc4db34 2021-11-04T16:54:15 Metal: Provoking vertex support for Metal DrawArrays Add in provoking vertex rewrite support for drawArrays command, enabling 6 dEQP tests. GLES3/functional_rasterization_flatshading_line_loop GLES3/functional_rasterization_flatshading_line_strip GLES3/functional_rasterization_flatshading_lines GLES3/functional_rasterization_flatshading_triangle_fan GLES3/functional_rasterization_flatshading_triangle_strip GLES3/functional_rasterization_flatshading_triangles This patch adds a new shader to the Provoking Vertex helper that generates draw commands for all simple data types. Fix bug in provoking vertex helper that caused reused index buffers to suffer from allocation issues. Also fix Provoking vertex for triangle fan generation Bug: angleproject:5325 Change-Id: I7a1211dfcd99329868269ea0666eef1915d487b5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3261635 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Kyle Piddington <kpiddington@apple.com>
angle-autoroll a00b6ca4 2022-01-04T09:03:10 Roll Chromium from 04d22dcbc0f6 to 1a9dad30c65b (190 revisions) https://chromium.googlesource.com/chromium/src.git/+log/04d22dcbc0f6..1a9dad30c65b 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 jmadill@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry 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/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/555c8b467c..41ae71b567 * buildtools/third_party/libc++abi/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/2715a6c0de..c884e7a7ce * buildtools/third_party/libunwind/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git/+log/4ead61094c..6a10e3e97c * testing: https://chromium.googlesource.com/chromium/src/testing/+log/440b82bae6..3f0eed23e1 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..1227b26f32 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/54c265ea2b..30ae637731 * third_party/turbine: tJ3VP1_iZhYyYREs6I6YHVZeA5CN6drLhywrF_DFVh0C..ttEtncMGe74t-cysVW-3cc6loq-end5oDsc-Exn8WDsC No update to Clang. Bug: None Tbr: jmadill@google.com Change-Id: Iab115ea03816a3806d4a76beacbd0c9273fb0c64 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3366079 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 5bd45961 2022-01-03T07:56:11 Roll Chromium from 70ce2f66c417 to 04d22dcbc0f6 (183 revisions) https://chromium.googlesource.com/chromium/src.git/+log/70ce2f66c417..04d22dcbc0f6 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 cnorthrop@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry 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/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/97d5e5fa8c..555c8b467c * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..1227b26f32 No update to Clang. Bug: None Tbr: cnorthrop@google.com Change-Id: I49a66c767d3dacec4611654d39332d2ae140a66b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3364975 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Yuly Novikov aad7ddb2 2021-12-30T20:38:03 Skip VulkanPerformanceCounterTest.InvalidateDrawDisable on Linux Vulkan AMD Bug: angleproject:6857 Change-Id: I07484ae2253227d1abad8e554401b4e6da825cb3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3359004 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Alexey Knyazev 0a6b7897 2021-12-27T17:41:56 Add macOS support to update_chrome_angle.py Bug: angleproject:1944 Change-Id: I3e2503b462df82ffa2bef3814b1979448dee09e9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3358242 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Shahbaz Youssefi 4b3e3ed5 2022-01-01T09:57:12 Re-skip MSRTT tests on Linux/AMD/Vulkan They crash when vkCreateRenderPass2 is used, as if the RP2 extension is exposed but the entry points are missing. Bug: angleproject:6845 Change-Id: Ia21cf039b49d5ab2772c7ecddd03df6360449d20 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3363637 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 39810def 2021-12-31T07:01:11 Roll Chromium from c764378a1f24 to 70ce2f66c417 (145 revisions) https://chromium.googlesource.com/chromium/src.git/+log/c764378a1f24..70ce2f66c417 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 cnorthrop@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry 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/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/5a7d122c22..97d5e5fa8c * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..1227b26f32 No update to Clang. Bug: None Tbr: cnorthrop@google.com Change-Id: I1e4e8bd1ceba46182520f6dfed852aaf60671e7a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3362926 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Jamie Madill 9aca4285 2021-12-30T09:18:32 Traces: Fix path in retrace script. This was accidentally regressed when removing the auto-generation. Bug: angleproject:5133 Change-Id: I44e88bd15c9baaca66c49b1e379b2e0dd7206b3f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3362295 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@google.com> Commit-Queue: Jamie Madill <jmadill@google.com>
Jamie Madill 0331738b 2021-12-29T14:47:32 Fix extension download script, and update data. This includes the update to the NV 1660s, and Intel driver update, and automatically gathered SwiftShader data. Bug: angleproject:6853 Change-Id: I481918105fd0e0224a2e2ddf5175b38e97918195 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3360784 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 58aeec65 2021-12-29T14:00:00 Capture/Replay: GN cleanups. This adds a GN "angle_trace_library" template that will be used with capture replay tests and restricted trace tests to share code. It could also be theoretically used to fix the capture replay sample. Also changes the capture replay tests GN to make the test exe always build even without the defines. This is possible because of the switch to JSON from code autogen, and makes it easier to catch and fix compile errors in this test harness. Bug: angleproject:5133 Change-Id: Ia87b6bbb0ea6e1abb557f962ca16d074207325ef Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3360783 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 85de4f81 2021-12-29T13:06:27 Capture/Replay: Fix TODO in test utils. This code is no longer needed. Bug: angleproject:5133 Change-Id: I06f05b390f36c9d49deaabe8201764968ef3172c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3360782 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill b6399ac9 2021-12-29T13:04:17 Traces: Finish writing restricted trace doc updates. Bug: angleproject:5133 Change-Id: I06e7da7d465cdc98e672bf87f54da2935eac557a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3360781 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
angle-autoroll fed9ba44 2021-12-30T10:01:12 Roll vulkan-deps from c32df39c11ce to 09edcd7c680b (1 revision) https://chromium.googlesource.com/vulkan-deps.git/+log/c32df39c11ce..09edcd7c680b Changed dependencies: * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/cba0c5000e..157e79696e If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC cnorthrop@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry 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/main/autoroll/README.md Bug: None Tbr: cnorthrop@google.com Change-Id: If1e5912d90548dd0b11355d405309f1f1253da24 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3361977 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 65cc408c 2021-12-30T07:01:11 Roll Chromium from e45e6e1a55ae to c764378a1f24 (157 revisions) https://chromium.googlesource.com/chromium/src.git/+log/e45e6e1a55ae..c764378a1f24 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 cnorthrop@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry 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/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/749c5bbaf9..5a7d122c22 * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/d7bdd6f038..f78b4b9f33 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/1fe0ea3f1d..440b82bae6 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..f57af59eed * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/6c4559de96..d1678a659f No update to Clang. Bug: None Tbr: cnorthrop@google.com Change-Id: Ibd01dd83b25ac1a222fef988b4683de090d8ec95 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3361776 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi a400e76d 2021-12-22T12:24:13 Vulkan: Don't expose MSRTT without VK_KHR_depth_stencil_resolve Previously, ANGLE exposed the EXT_multisampled_render_to_texture extension even if VK_KHR_depth_stencil_resolve was not available. This was due to scarcity of drivers on the bots with support for this extension and allowed partial testing. This is no longer true. Additionally, this cleans up the expectations because old and buggy drivers are now simultaneously filtered out. Bug: angleproject:6845 Change-Id: I8c285a5fa5d9beeb98b48d8b056cdc8779cce6fd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3353895 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Yuly Novikov 9f74ec61 2021-12-29T21:45:04 Skip angle_end2end_tests failing on Linux AMD RX 5500 XT On Ubuntu 18.04 with 5.4.0-91 kernel Bug: angleproject:6855 Change-Id: I679e3a222f432ed5fac6b1ac429534f713387159 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3360788 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
angle-autoroll b7d2f447 2021-12-29T07:01:11 Roll Chromium from d09758fa672c to e45e6e1a55ae (153 revisions) https://chromium.googlesource.com/chromium/src.git/+log/d09758fa672c..e45e6e1a55ae 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 cnorthrop@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry 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/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/462a82df25..749c5bbaf9 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/8b481a24d8..1fe0ea3f1d * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..f57af59eed No update to Clang. Bug: None Tbr: cnorthrop@google.com Change-Id: I174164703123459e87d8d3ad109bbd30d872dec1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3360350 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Lingfeng Yang 6f1c39b5 2021-12-16T16:10:49 Vulkan: Restore color attachment mask-related blend states When we end up resetting blend state such as when changing to a depth-only FBO and back, we can end up adding attachment states. They need to be updated with the current GL blend state. Bug: b/210543392 Bug: angleproject:6828 Change-Id: I3419acb8081eb7d662576a75382bb8684cc0d29f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3346320 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Lingfeng Yang <lfy@google.com>
angle-autoroll 95f6e686 2021-12-28T10:01:34 Roll SwiftShader from 87c78ac5eb86 to 433b1bf9bff2 (2 revisions) https://swiftshader.googlesource.com/SwiftShader.git/+log/87c78ac5eb86..433b1bf9bff2 2021-12-27 penghuang@chromium.org Use correct window depth to create pixmap 2021-12-27 penghuang@chromium.org Fix swiftshader build error 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 cnorthrop@google.com on the revert to ensure that a human is aware of the problem. To file a bug in SwiftShader: https://bugs.chromium.org/p/swiftshader/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry 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/main/autoroll/README.md Bug: None Tbr: cnorthrop@google.com Change-Id: I31088e24d71bdff7e460eca52c8a2058446ad366 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3359273 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll a026169c 2021-12-28T07:01:11 Roll Chromium from 0635acc4de22 to d09758fa672c (93 revisions) https://chromium.googlesource.com/chromium/src.git/+log/0635acc4de22..d09758fa672c 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 cnorthrop@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry 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/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/5396a95e11..462a82df25 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..1a34b98c2c * third_party/turbine: RGxvdzLaS73gQOXCTgq7CWKsqCgrXDPPL0Pcxz6oGbQC..tJ3VP1_iZhYyYREs6I6YHVZeA5CN6drLhywrF_DFVh0C No update to Clang. Bug: None Tbr: cnorthrop@google.com Change-Id: I4874c9dc46b40dd90eca1458a8fbe8988f58646f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3359064 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Gert Wollny 0a28c6c6 2021-12-15T15:49:33 Capture/Replay: Capture some MultiDrawIndirect parameters It seems some new tests were added that fail Capture/Replay. Bug: angleproject:6180 Change-Id: I26ccc1e9defc7b7d66c7e26538df286230b47def Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3340945 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Gert Wollny <gert.wollny@collabora.com>
Gert Wollny 5f53268c 2021-11-04T17:56:48 Capture/Replay: Gather Program sources directly from call With CreateShaderProgramv the sources were collected from the attached shaders, wich gave complications, because normally the the shaders were detached right after program linking and a different handling was needed when capture was enabled, handling that let the replay tests fail. To overcome this gather the shader source directly from the call parameters instead of pulling it from the attached shaders. Bug: angleproject:6180 Bug: angleproject:6659 Change-Id: I248c1aa0f58b61519b938fce1a77fb25dc0a7cfc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3262133 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Gert Wollny <gert.wollny@collabora.com>
angle-autoroll a9203689 2021-12-27T08:19:59 Roll Chromium from 52c4c43d687f to 0635acc4de22 (149 revisions) https://chromium.googlesource.com/chromium/src.git/+log/52c4c43d687f..0635acc4de22 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 timvp@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry 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/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/aad1379f06..5396a95e11 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..1a34b98c2c No update to Clang. Bug: None Tbr: timvp@google.com Change-Id: I524a35c56395eacafd21618af7ba1e576b932dff Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3357649 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll fce48186 2021-12-24T10:01:28 Roll SwiftShader from f354daff5a2b to 87c78ac5eb86 (2 revisions) https://swiftshader.googlesource.com/SwiftShader.git/+log/f354daff5a2b..87c78ac5eb86 2021-12-23 penghuang@chromium.org Use X11 shm extension for presenting 2021-12-23 penghuang@chromium.org Fix eglSwapBuffers() not presenting problem 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 ianelliott@google.com on the revert to ensure that a human is aware of the problem. To file a bug in SwiftShader: https://bugs.chromium.org/p/swiftshader/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry 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/main/autoroll/README.md Bug: None Tbr: ianelliott@google.com Change-Id: I058948bf60d4420bb275d58b3004613aa568ae1b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3355761 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 6c9b79ea 2021-12-24T07:00:05 Roll Chromium from 16dc16f9ec67 to 52c4c43d687f (244 revisions) https://chromium.googlesource.com/chromium/src.git/+log/16dc16f9ec67..52c4c43d687f 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 ianelliott@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry 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/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/bc588cf5bf..aad1379f06 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/967ce8ec9d..8b481a24d8 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..390aa6fa4b * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/5fba75ed62..6c4559de96 No update to Clang. Bug: None Tbr: ianelliott@google.com Change-Id: Ie3d58868a3d6f1be31066859222a90a5606cc544 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3355608 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Jamie Madill 4d893a93 2021-09-07T11:47:23 Re-land: "Trace Tests: Remove auto-generated code." No significant changes in the re-land. Bug: angleproject:5133 Change-Id: Ib5bb8fba3e9e2f1f648d5af251b7b2319c9f37dd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3352432 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Tim Van Patten 542f7d80 2021-12-22T19:36:27 Vulkan: Copy buffer data to correct cube map face TextureVk::copyBufferDataToImage() was failing to set region.imageSubresource.baseArrayLayer to the correct cube map face value, causing every glTexSubImage2D()-type call using GL_PIXEL_UNPACK_BUFFER to only copy to the GL_TEXTURE_CUBE_MAP_POSITIVE_X face. In the case of PUBG Mobile, this left all other faces with "random" data, resulting in corrupted reflections on things like water, the airplane, etc. Bug: b/194140619 Test: TextureCubeTestES3.CubeMapPixelUnpackBuffer Change-Id: I93a9219ce098985f9f4b906f8fe2e05850fb8d43 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3354091 Reviewed-by: Ian Elliott <ianelliott@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Tim Van Patten <timvp@google.com>
angle-autoroll 582651be 2021-12-23T10:01:14 Roll vulkan-deps from fbeca8f4ea6a to c32df39c11ce (3 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/fbeca8f4ea6a..c32df39c11ce Changed dependencies: * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/ab8e2a2015..cba0c5000e If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC ianelliott@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry 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/main/autoroll/README.md Bug: None Tbr: ianelliott@google.com Change-Id: I725c9823601a6debf37fdf691d2a0954e048f3e2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3354695 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 5e0d9787 2021-12-23T07:00:58 Roll Chromium from 274ab850e849 to 16dc16f9ec67 (303 revisions) https://chromium.googlesource.com/chromium/src.git/+log/274ab850e849..16dc16f9ec67 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 ianelliott@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry 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/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/773059e839..bc588cf5bf * testing: https://chromium.googlesource.com/chromium/src/testing/+log/334c844c04..967ce8ec9d * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/e2503e42c5..e16f79ac43 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..76c77ba0be * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/db41eed6b7..54c265ea2b * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/a08f55296b..8b7330592c No update to Clang. Bug: None Tbr: ianelliott@google.com Change-Id: Ied4a8e6cf4bc2d468753dc02c48cdf621c301fba Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3354483 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Cody Northrop 2ebd583e 2021-12-22T11:24:43 Android: Remove setenv from common path In Android production stress testing, the setenv call was causing a race condition. To fix, only use setenv in the paths that need it as a performance optimization. Specifically, FrameCapture makes use of it every frame. Bug: angleproject:6822 Change-Id: I452f1ef8607ca9baf15d69246932c47454a3ce46 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3353893 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Ian Elliott <ianelliott@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Yuly Novikov 14af7a8d 2021-12-22T15:17:26 Log subprocess output in run_perf_tests.py To aid with debugging a flaky hang listing tests on Android. Bug: chromium:1279512 Change-Id: Icbdf753e1e7c21ab766fdd5767ca05d07b66485b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3353760 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Charlie Lao 2f3e6cc0 2021-12-13T17:40:18 Vulkan: Remove mShadowBuffer from BufferVk class. The shadow buffer was initially designed to avoid synchronization in glMapBuffer call while buffer itself is still busy. There are many optimization done inside BufferVk::mapImpl that try to avoid wait for GPU as much as we can by distinguish GPU write versus read, by detecting map call read/write intention by checking access bit, and finally by allocating a staging buffer to return a CPU friendly copy of data to caller. This shadow buffer implementation also have known bugs that are not keeping data in sync. With all these optimization added after initial mShadowBuffer implementation, I believe we do not have a good reason to still keep mShadowBuffer. And this has been disabled for months in main branch. This CL removes this code path completely which makes code a lot simpler. Bug: b/208323792 Change-Id: Ie5999e38b6120a371ec2e969f196e4754ebd0f8d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3313333 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: mohan maiya <m.maiya@samsung.com> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Charlie Lao <cclao@google.com>
Yuly Novikov 7dfa69e6 2021-12-22T12:51:38 Unskip MRTSigned and MRTUnsigned BlendIntegerTest VVL rolled into Chromium, so they should pass now. Bug: angleproject:6841 Change-Id: Iff2dde0852b0261970bd5c59009f5412050862ff Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3353896 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
angle-autoroll 993f3889 2021-12-22T08:25:11 Roll Chromium from 9ca41364d3dc to 274ab850e849 (341 revisions) https://chromium.googlesource.com/chromium/src.git/+log/9ca41364d3dc..274ab850e849 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 ianelliott@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry 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/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/4edcc0aed5..773059e839 * buildtools/third_party/libc++abi/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/603d9d1067..2715a6c0de * testing: https://chromium.googlesource.com/chromium/src/testing/+log/b92291ea68..334c844c04 * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/4afcb13a10..fd787098b1 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..76c77ba0be * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/004f80f6e5..5fba75ed62 No update to Clang. Bug: None Tbr: ianelliott@google.com Change-Id: I8961bdc60c48b2775fb9f46758781b22c1fbc48b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3353348 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Yuly Novikov 0e9353f6 2021-12-21T16:48:48 Skip RenderbufferDrawStencilThenUnresolveStencil on Linux Vulkan AMD Bug: angleproject:6845 Change-Id: I465f185f45aad43be51de882cbfea43090045aa1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3352427 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Charlie Lao bc9d2d7d 2021-12-07T16:16:47 Vulkan: Consolidate BufferHelper's code paths into one There are cases that BufferHelper may not sub-allocate from the pool. For example, when buffer is created from external memory. Right now we have two different code paths in the BufferHelper object and checking if suballocation object is valid or not and pick different code path. This CL consolidates both code path into one by making non sub-allocated case also creates BufferSUbAllocation object and owns a BufferBlock object. Bug: b/205337962 Change-Id: Iac82bdb0b69d424e4147b52d458ced6274e106a1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3322100 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Charlie Lao <cclao@google.com>
Shahbaz Youssefi 4114fe23 2021-11-20T22:05:56 Vulkan: Simplify transform feedback emulation logic In [1], the program is transformed to not output transform feedback logic when transform feedback is inactive. With that change, it's no longer necessary to dedicate a driver uniform to indicate if transform feedback is active. [1]: https://chromium-review.googlesource.com/c/angle/angle/+/3294661 Bug: chromium:1209285 Change-Id: Ica725d0da08e2676f442fe6307962d367b443535 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3294702 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 32d9e186 2021-12-21T18:20:14 Roll vulkan-deps from 5568048d205e to fbeca8f4ea6a (4 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/5568048d205e..fbeca8f4ea6a Changed dependencies: * vulkan-headers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers.git/+log/e005e1f817..52a76fd0a6 * vulkan-loader: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/a11162fcac..c6c0a2c3fd * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/0965e77eb0..ab8e2a2015 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC ianelliott@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry 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/main/autoroll/README.md Bug: None Tbr: ianelliott@google.com Change-Id: I9784ac14d662f05880d12978464b52a2dfc2bdbb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3352181 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Jamie Madill ab288fea 2021-07-09T13:02:08 Upgrade restricted traces. (Re-land) Includes removing capture to temporary ResourceMaps, and including all source files in the JSON. Bug: angleproject:5133 Change-Id: I0508dd46a9f613a96ca3635f82b6904c0f2523a7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3345222 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill c1f478fe 2021-12-20T12:37:33 Frame Capture: Allow for no FBO when running MEC. Multi-context captures use the surfaceless context extension. That was crashing MEC because we were assuming the context would have a Framebuffer. Bug: angleproject:5133 Change-Id: I6be12d332f4754f80c088d88973219327eca251a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3352084 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill eba2e620 2021-12-15T12:29:12 Capture/Replay: Fix uniform program indexing. We were using the "native" version of the program ID in the update call, which could overflow the bounds of our fixed-size program maps. Instead use the captured (and upper-bounded) version of the ID and only get the mapped ID when calling GetUniformLocation. Bug: angleproject:6431 Bug: angleproject:6816 Change-Id: I807bd07c9dcff6ba5a50991e28b0a58d16f7bc63 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3345220 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 73e764dc 2021-12-21T13:41:37 Suppress capture/replay tests. BlendIntegerTest.MRTSigned/* = NOT_RUN BlendIntegerTest.MRTUnsigned/* = NOT_RUN These tests became skipped after an expectations change. This CL also updates our luci config to run the trace bots on expectations changes to prevent this happening again. Bug: angleproject:6840 Change-Id: Id40b11995fa9be4613bdbaaa1e3e44f9edfeb464 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3352426 Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 1da7e3af 2021-12-21T15:55:38 Revert "Metal: Fix Webkit warnings in ANGLE build" This reverts commit 6706799186683dd3733c4610de09d84721aa08c8. Reason for revert: Includes pragma that disables a warning. Original change's description: > Metal: Fix Webkit warnings in ANGLE build > > Fix nullable warnings, unused functions > > Bug: angleproject:6781 > Change-Id: I063331e60d31a55b3cc9df0b41ace014d7d13659 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3343174 > Reviewed-by: Kenneth Russell <kbr@chromium.org> > Commit-Queue: Kenneth Russell <kbr@chromium.org> Bug: angleproject:6781 Change-Id: Id5fce2afd0381030a974871b99e8adf075677bd1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3352086 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
angle-autoroll bdaa046f 2021-12-21T07:00:27 Roll Chromium from 81decb7250e1 to 9ca41364d3dc (272 revisions) https://chromium.googlesource.com/chromium/src.git/+log/81decb7250e1..9ca41364d3dc 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 ianelliott@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry 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/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/13ae02d0c8..4edcc0aed5 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/76bec17995..b92291ea68 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..97da6b1e1c * tools/android/errorprone_plugin: https://chromium.googlesource.com/chromium/src/tools/android/errorprone_plugin/+log/e81dcab660..0f362a7f4a * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/97f0806150..004f80f6e5 No update to Clang. Bug: None Tbr: ianelliott@google.com Change-Id: Ib87c765ae374facf832fcdf4e08618a158b4b3b1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3351548 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi a7e0d520 2021-12-21T00:16:25 Temporarily skip failing tests on Chromium Bug: angleproject:6841 Change-Id: Ie911e09d7e070c5fcec16449fe3fb7c47c8f6417 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3349335 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Shahbaz Youssefi 171bc07e 2021-12-20T13:10:33 Don't silently drop out-of-range bits in BitSetT Notes: - std::bitset's constructor accepts out-of-range bits (and drops them) - std::bitset with initializer list doesn't exist and is a BitSetT feature - |=, &= and ^= with non-bitset is a BitSetT feature - std::bitset's set(pos), reset(pos) and flip(pos) throw an exception if pos is out of the range of the bitset. This change adds an ASSERT in the functions that std::bitset would throw an exception, as well as functions that are only in BitSetT. Bug: angleproject:6840 Change-Id: Iab5bac40b05d4f7f29e0242ea0baa093721e3339 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3349980 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Charlie Lao eca427b2 2021-12-20T10:55:41 Vulkan: Add mutex to protect mVirtualBlock mVirtualBlock could be accessed from multiple thread when asyncCommandQueue is enabled, where the free call could come from the submission thread. This CL adds a mVirtualBlockMutex in BufferBlock and always take the lock when mVirtualBlock is been accessed. This CL also adds ConditionalMutex class for the general usage that a mutex is only used based on a boolean. Bug: angleproject:6840 Change-Id: Ib647b4ff12ebfc08f2a70192d39f16e15a1fc5f5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3350798 Reviewed-by: Ian Elliott <ianelliott@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Charlie Lao <cclao@google.com>
Shahbaz Youssefi c1598640 2021-11-30T23:44:30 Vulkan: Improve mid-RP clear warning message One app does: - Draw - Draw - Clear depth, then disable it - Draw In this case, the message generated for mid-RP clear, suggesting the clear be done earlier is not meaningful as the previous draw calls did use the depth/stencil image. The message now includes an alternative suggestion to invalidate the depth/stencil image instead of clearing it. Note that the app may still legitimately do multiple passes in one render pass where depth/stencil is cleared in between, so the warning is not applicable in all cases. It's still useful to notice issues in more common scenarios. Bug: angleproject:2472 Change-Id: I3abbecf8c83b7b856c2430675e69b1471e91c0c4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3308920 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Ian Elliott <ianelliott@google.com>
Peng Huang 4a03668d 2021-12-20T20:58:17 Address comment in CL 3347143 Bug: chromium:1278515 Change-Id: I7d82d39ad94c6357b0df292fc716749cf610290f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3349938 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Peng Huang <penghuang@chromium.org>
Shahbaz Youssefi cf8ac00a 2021-12-20T11:57:25 Vulkan: Fix MSRTT w.r.t stencil-only unresolve The stencil bit was being silently masked out in a bitset in FramebufferDesc that tracked whether the framebuffer requires any unresolve. If only stencil needs unresolving, this mask was zero, leading to an incorrect framebuffer getting pulled from the cache. A follow up change will add an ASSERT in BitSetT to catch such errors in the future. This issue was only reproducible on SwiftShader and AMD as the only implementers of VK_EXT_shader_stencil_export. Bug: angleproject:6840 Bug: angleproject:6324 Change-Id: I4f055982ebd75f621ec1e34b0d60eaa497c27b17 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3349979 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Peng Huang c07df6fe 2021-12-17T20:11:52 Disable vulkan device select layer for msan build The vulkan device select layer is not built with chrome, so this layer is not built with msan. So loading this layer will cause MemorySanitizer errors. Those errors are false positive. So disable it for msan build. Bug: chromium:1259170 Change-Id: I513d6dd3d4fbc16c62aaa3aa1e7cf299e3e4144a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3347143 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Peng Huang <penghuang@chromium.org>
Kimmo Kinnunen aabfe874 2021-12-17T15:43:22 Metal: Use the context device to Texture::resize Makes the resized texture to be attributed to the owner. Bug: angleproject:6832 Change-Id: Ia1eae1bb6c9e83e23fae51121f88d9ce37dc948b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3347642 Reviewed-by: John Cunningham <johncunningham@apple.com> Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 34ea8111 2021-10-28T11:07:53 Reland "Vulkan: Don't expose MSRTT on SwiftShader" This is a reland of fb77afd3c76301e11f5c7397d9a63d283f86036c Original change's description: > Vulkan: Don't expose MSRTT on SwiftShader > > Emulating this extension on SwiftShader is neither useful nor efficient > (on the contrary, it hurts performance (which is true for all non-tiling > architectures)). This extension was exposed purely to increase testing > coverage, but is being disabled now as OOMs resulting from allocating > the implict multisampled image is confusing Chrome. Note that > SwiftShader exposes only a limited amount of memory. > > Bug: chromium:1263046 > Change-Id: Ia69b7fc63804169431885352a8f637a95ab08bd0 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3251581 > Reviewed-by: Geoff Lang <geofflang@chromium.org> > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Bug: chromium:1263046 Change-Id: I88415f3c1a7532eda5473da6acbd22acf14ae11c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3260330 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Kimmo Kinnunen 624e3c3d 2021-12-17T15:30:54 Fix dangerous use of AutoObjCPtr after ownership identity change Metal new* methods create objects with +1 retain count. AutoObjCPtr is intended to adopt this reference. Otherwise, like before this patch, the AutoObjCPtr holds object with +2 count. Before this patch, some but not all call sites donated the extra retain count to autoreleasepool "out of band", and as such the code did not leak that much. Bug: angleproject:6831 Change-Id: I72bcbc712f2cadbcbc6148c6aedfa7e151314518 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3347641 Reviewed-by: John Cunningham <johncunningham@apple.com> Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Alexey Knyazev 4a148e9d 2021-12-20T13:39:48 Revert "Vulkan: Suppress VUID-vkCmdDraw-blendEnable" This reverts commit 797ebdde9894b4411ed304a83fdaeb8d8a91fe56. Reason for revert: The VVL bug has been fixed. Original change's description: > Vulkan: Suppress VUID-vkCmdDraw-blendEnable > > A new VVL causes failures in BlendIntegerTest.MRT* > > Bug: angleproject:6355 > Change-Id: If62b1a7934574acaeb95601d7fb0a61dc5d9c99a > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3140159 > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Bug: angleproject:6355 Change-Id: I769d34fada1c2db00513f9912ef178dcd1eb4ee9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3347648 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Kimmo Kinnunen ede0b8b7 2021-12-17T14:35:47 Avoid ANGLE_MTL_AUTORELEASE inside ASSERT, it leaks on Release Avoid ANGLE_MTL_AUTORELEASE inside ASSERT, it leaks on Release. The create functions already return retained, instead of autoreleasepool retained, so owning the reference via adopting AutoObjCObj is as efficient as autoreleasepool on possible future ARC. Thus use AutoObjCObj, that is safer than autoreleasepool with C++ and works towards being able to perhaps remove use of autoreleasepool. Bug: angleproject:6830 Change-Id: I80f523d9a6846097a593fe94b5ea9715fa88ea15 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3347640 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: John Cunningham <johncunningham@apple.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
angle-autoroll cb4f441c 2021-12-20T10:01:52 Roll vulkan-deps from 39f3a18bdfbe to 5568048d205e (8 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/39f3a18bdfbe..5568048d205e Changed dependencies: * glslang: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang.git/+log/ca13951205..9b20b25138 * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/7d768812e2..df2aad68b9 * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/f8f8e2fe64..0965e77eb0 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC ianelliott@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry 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/main/autoroll/README.md Bug: None Tbr: ianelliott@google.com Change-Id: Ifbc73eff8e1fdf79439015b76dd6474adf48bf23 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3350424 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 2f78b48d 2021-12-20T07:01:19 Roll Chromium from 14ca75d254a5 to 81decb7250e1 (191 revisions) https://chromium.googlesource.com/chromium/src.git/+log/14ca75d254a5..81decb7250e1 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 timvp@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry 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/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/1a7d92e5e8..13ae02d0c8 * buildtools/linux64: git_revision:18df6af86191edab1e47c84d56e608da414d446b..git_revision:281ba2c91861b10fec7407c4b6172ec3d4661243 * buildtools/mac: git_revision:18df6af86191edab1e47c84d56e608da414d446b..git_revision:281ba2c91861b10fec7407c4b6172ec3d4661243 * buildtools/win: git_revision:18df6af86191edab1e47c84d56e608da414d446b..git_revision:281ba2c91861b10fec7407c4b6172ec3d4661243 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/43b83d3c09..76bec17995 * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/db501db975..4afcb13a10 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..97da6b1e1c * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/168ca4d812..db41eed6b7 * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/4424dce4fe..a08f55296b * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/ddecb08a27..97f0806150 Clang version changed llvmorg-14-init-12246-g7787a8f1:llvmorg-14-init-12719-gc4b45eeb Details: https://chromium.googlesource.com/chromium/src/tools/clang/+/4424dce4fe0daa6654a9052dc95ce3bd263018f0..a08f55296ba9347547944fe7657d71d35e343c3f/scripts/update.py Bug: None Tbr: timvp@google.com Change-Id: Id1c4de91459ebd83f42376c83f0f492ab3137ad4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3350232 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Kenneth Russell 001221f0 2021-12-16T21:41:29 Metal: upstream fix from WebKit for texture leak. Upstream fix by Kimmo Kinnunen for a leak of MTLTexture instances for render targets from: REGRESSION (r287068): [macOS arm64] TestWebKitAPI.GraphicsContextGLCocoaTest. UnrecycledDisplayBuffersNoLeaks is failing https://bugs.webkit.org/show_bug.cgi?id=234356 The leak would happen through a temporary render pass descriptor that would ref the render target texture. The descriptor was created without an autoreleasepool in call stack. Also fixes the error string leaks. Bug: angleproject:6827 Bug: angleproject:6829 Change-Id: I07ec961886a9fb8caad6df334293358a175eaf15 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3346682 Reviewed-by: Kyle Piddington <kpiddington@apple.com> Commit-Queue: Kenneth Russell <kbr@chromium.org>
angle-autoroll dca434bd 2021-12-17T07:01:27 Roll Chromium from 3f6c88f5581a to 14ca75d254a5 (401 revisions) https://chromium.googlesource.com/chromium/src.git/+log/3f6c88f5581a..14ca75d254a5 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 timvp@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry 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/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/f64cedd232..1a7d92e5e8 * buildtools/linux64: git_revision:2e56c317bd8e2bf152cfa2ead6ac5fa476fe28b4..git_revision:18df6af86191edab1e47c84d56e608da414d446b * buildtools/mac: git_revision:2e56c317bd8e2bf152cfa2ead6ac5fa476fe28b4..git_revision:18df6af86191edab1e47c84d56e608da414d446b * buildtools/third_party/libunwind/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git/+log/d81cd6236c..4ead61094c * buildtools/win: git_revision:2e56c317bd8e2bf152cfa2ead6ac5fa476fe28b4..git_revision:18df6af86191edab1e47c84d56e608da414d446b * testing: https://chromium.googlesource.com/chromium/src/testing/+log/66c450f469..43b83d3c09 * third_party/android_build_tools/aapt2: GlCdqxHxlg-8YkDGgj5cie-6COsEAZga9jyq-LAYxY4C..ZHiDoiurxMLwajQq_CwBH9zaDW5xwYWYGbedxIslTm8C * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/a74e6cedae..e2503e42c5 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..a25500bfae * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/dc7eff95e1..4424dce4fe * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/fc6e94e14d..ddecb08a27 Clang version changed llvmorg-14-init-11564-g37fbf238:llvmorg-14-init-12246-g7787a8f1 Details: https://chromium.googlesource.com/chromium/src/tools/clang/+/dc7eff95e13cd297af9c0a28a2f43bd0c975c54b..4424dce4fe0daa6654a9052dc95ce3bd263018f0/scripts/update.py Bug: None Tbr: timvp@google.com Change-Id: I37896f71ea7d97f6be01d128960ccb4f507bbff0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3347020 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Gregg Tavares b9f2d9cc 2021-12-16T13:08:22 Use text expectations to skip a test This instead of exiting the test in C++. Bug: angleproject:6826 Change-Id: I1e91f38f0f581821178b3b54ba809e59570b440a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3345615 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Gregg Tavares <gman@chromium.org>
Charlie Lao 6c894e82 2021-11-04T14:49:41 Vulkan: Replace BufferVk::getBufferAndOffset() with getBuffer() Now BufferHelper class already keeps offset information. There is no reason for BufferVk to have that information any more. Bug: b/205337962 Change-Id: I6e014fb480bfcd5018ef9231b0fb87a50021f179 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3266147 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com>
Lubosz Sarnecki f2736f6d 2021-11-19T14:24:55 Tests: Add My Talking Tom Friends trace. Test: angle_perftests --gtest_filter="*my_talking_tom_friends*" Bug: angleproject:6749 Change-Id: I7d86e7ff0607841ab4bf999f0e986f4d324c5c44 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3310797 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Lingfeng Yang a93a3930 2021-12-08T20:36:07 Vulkan: Track enabled in VertexArray Previously in sequences such as glEnableVertexAttribArray(0) glDrawElements() glDisableVertexAttribArray(0) glEnableVertexAttribArray(0) glDrawElements() the second glDrawElements() would always be called with dirty enable. On some backends like Vulkan this could result in unnecessary pipeline changes. Bug: angleproject:6796 Change-Id: Ib44877b6030e8d0acede7cf5c591936ba3844b69 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3325208 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Lingfeng Yang <lfy@google.com>
Charlie Lao 83a670ab 2021-10-29T09:12:26 Vulkan: Implement BufferPool using VMA's virtual allocator VMA's allocation calls used to be sub-allocating a pool of memory. What we really want is sub-allocate a VkBuffer object. VMA recently added support to expose the underlying range allocation algorithm via APIs, which user can use it to sub-allocate any object. This CL uses that new virtual allocation API to sub-allocate from a pool of VkBuffers. In this CL we only switched BufferVk::mBuffer to sub-allocate from the BufferPool object. Bug: b/205337962 Change-Id: Ia6ef00c22e58687e375b31bc12ac515fd89f3488 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3266146 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com>
Lingfeng Yang 83679716 2021-12-14T19:02:48 Vulkan: Dirty vertex buffers if default attrib values changed In the call_break_offline trace, attribute index 4 is disabled then enabled before a draw. This redundant operation is currently not blocked and makes it to the Vulkan backend, resulting in handleDirtyGraphicsVertexBuffers. However, at the same time, we change the default attrib value for index 3. Which makes handleDirtyGraphicsVertexBuffers not redundant. We'll need to take into account cases when other attribute indices are not dirty and yet the default attrib value changes. Bug: angleproject:6802 Change-Id: I4a3ec411aa42f73a209fd0f06976d7ef2d21e027 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3331412 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Lingfeng Yang <lfy@google.com>
Charlie Lao 543f5750 2021-12-15T16:58:46 Vulkan: Disable protected memory for ARM ARM driver reports protected memory feature support. But when we enable the feature, even if the feature is not been used (i.e., no memory or queue is created with protected bit), we still see quite large performance drop, mainly due to excessive load/store unit activity. This CL disables this feature on ARM platform until we can find a good solution for it. Bug: angleproject:6817 Change-Id: I57e8b3f568f3818080e56b5d6ae9d1623732d236 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3343671 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com>
Maksim Sisov c7446ac4 2021-12-16T16:00:08 Add support for GL_MESA_framebuffer_flip_y 1/* LaCrOS, which is same as ChromeOS, relies on this extension and uses that with WebGL content. However, when LaCrOS uses ANGLE, the extension is not exposed and the WebGL content is y-inverted as direct scanout is always used. There are two bugs - 1) ANGLE should expose the extension so that direct scanout is possible (this CL fixes the issue. 2) LaCrOS shouldn't rely on the extension if it's not available (a bug to be fixed in Chromium). This particular CL consists of autogen files with framebufferParameteriMESA && getFramebufferParameterivMESA in Context marked as UNIMPLEMENTED. And also unimplemented validation. Bug: chromium:1231934 Change-Id: Id617846b0412f579df5b4ace6cb33c1ec6d403df Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3343492 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Maksim Sisov <msisov@igalia.com>
Lubosz Sarnecki 60383b41 2021-12-07T14:33:13 Tests: Add Dota Underlords trace. Test: angle_perftests --gtest_filter="*dota_underlords*" Bug: angleproject:5857 Change-Id: I795fd36d8bb3b0f9aed76bbe60886fc489bef89d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3342566 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
Lubosz Sarnecki f26687a0 2021-11-19T14:17:26 Tests: Add My Talking Tom 2 trace. Test: angle_perftests --gtest_filter="*my_talking_tom2*" Bug: angleproject:6613 Change-Id: I8cddc4913bc3b5a621aa48e0651af0c47a31c4f3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3309126 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
angle-autoroll 438de17e 2021-12-16T10:01:52 Roll vulkan-deps from a8221eed5970 to 39f3a18bdfbe (5 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/a8221eed5970..39f3a18bdfbe Changed dependencies: * spirv-headers: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers.git/+log/d53b49635b..eddd4dfc93 * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/4322c4b5a7..7d768812e2 * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/9f537109da..f8f8e2fe64 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC timvp@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry 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/main/autoroll/README.md Bug: None Tbr: timvp@google.com Change-Id: Iebc31a97468efcd8ccfa58b77d10d71a380adb8e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3344732 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Lubosz Sarnecki e7413adf 2021-12-15T18:35:29 system_utils_posix: Check for SEGV_MAPERR si_code. Android 12 emits a SEGV_MAPERR for mprotect page faults on the handler. Treat these callbacks as in range. This fixes the memory protection implementation on Android 12. Test: angle_unittests --gtest_filter="SystemUtils.PageFaultHandler*" Bug: angleproject:5857 Change-Id: I346b04230e1389de9f0a80b7f704dd65acfa9d82 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3340950 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
Peng Huang 6e5fd816 2021-12-15T18:31:13 Support more ImageLayout in ConvertImageLayoutToGLImageLayout Bug: chromium:1264439 Change-Id: I35938a65981edf495bd9aafb8bfb17aa3ec9a66c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3341640 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Peng Huang <penghuang@chromium.org>
Gregg Tavares b26bb13a 2021-12-15T15:46:00 Metal: Remove references to xfbActiveUnpaused uniform Metal chooses a shader with or without support for transformfeedback so there's no point in checking in the shader if it's enabled or not. Bug: angleproject:6823 Change-Id: Iacd26b1e55b311a7cc7987dcd8b2f8c0c8727d62 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3343179 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Gregg Tavares <gman@chromium.org>
angle-autoroll bb5bab03 2021-12-16T07:00:13 Roll Chromium from 2dae07eeb163 to 3f6c88f5581a (414 revisions) https://chromium.googlesource.com/chromium/src.git/+log/2dae07eeb163..3f6c88f5581a 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 timvp@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry 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/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/60fec11aa8..f64cedd232 * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/075dd7e228..d7bdd6f038 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/f40b636e71..66c450f469 * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/58d8190809..db501db975 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..58f3a92099 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/9e5809e98f..168ca4d812 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/f6d6604043..34acefcf6e * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/5c8dcc7e68..fc6e94e14d No update to Clang. Bug: angleproject:6037 Tbr: timvp@google.com Change-Id: I890d2595a17e15b438b92e4d33d1bac102ded24c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3344589 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Alexey Knyazev c4d434b9 2021-12-15T22:57:13 Metal: Enable OES_fbo_render_mipmap Bug: angleproject:6813 Change-Id: I643c114d7b37ca0532d2dda1964090a15e470842 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3342568 Reviewed-by: Kyle Piddington <kpiddington@apple.com> Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Kyle Piddington 67067991 2021-12-15T15:11:05 Metal: Fix Webkit warnings in ANGLE build Fix nullable warnings, unused functions Bug: angleproject:6781 Change-Id: I063331e60d31a55b3cc9df0b41ace014d7d13659 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3343174 Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Kenneth Russell <kbr@chromium.org>
Gregg Tavares bda49325 2021-12-10T16:11:15 Add guards for 64 bit types on 32bit systems Bug: angleproject:6785 Change-Id: Iff043a22d398f5a7a1a46ae3cc4d2de5a6e3797e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3331639 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Gregg Tavares <gman@chromium.org>
Yuly Novikov e7c9dbb8 2021-12-15T19:35:27 Skip SimpleStateChangeTestES3.OutOfBoundsByteAttribute on Pixel4 GLES Flaky crashes. Already skipped on Vulkan Bug: angleproject:6744 Change-Id: Ifc470ac2cf7d607b676501980f0c38f28547ef30 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3343726 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Amirali Abdolrashidi 89e11878 2021-12-06T09:42:46 Vulkan: Fix the UAF issue with BufferData * Fixed the use-after-free issue with stale buffer handles after calling BeginTransformFeedback. * Added an observer for TransformFeedbackVk to update the buffer handles when buffer's storage is changed and the buffer update type is StorageRedefined. * Added a function to TransformFeedbackVk::onDestroy() to release the counter buffers in order to avoid crash due to TransformFeedbackVk::end() not being called, e.g., as a result of no glEndTransformFeedback() calls. Bug: chromium:1274316 Change-Id: I8ed477f36e6ff89dd4764bb59af564c69efe33e2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3321789 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Gregg Tavares ee1d3cf7 2021-12-10T12:29:16 Metal: Integrate Metal Binary Shader generation Bug: angleproject:6801 Change-Id: I2eb7072ed342f2b4cb5d9ee50ca9db75c5c7df69 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3331206 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kyle Piddington <kpiddington@apple.com> Commit-Queue: Gregg Tavares <gman@chromium.org>
Kyle Piddington 3e7e2758 2021-12-14T15:48:42 Metal: Fix macOS ANGLE build on Catalina (10.15) SDK macOS Catalina does not have an enum for AppleGPUFamily6 In addition, platform includes for macOS 11.0 should use 110000, not 101600 (10.16) Bug: angleproject:6814 Change-Id: I9c6a0587aa22fb2e58d02fcb1779060de2632963 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3340104 Reviewed-by: Alexey Knyazev <lexa.knyazev@gmail.com> Commit-Queue: Kyle Piddington <kpiddington@apple.com> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Amirali Abdolrashidi 05a44dd2 2021-11-29T12:16:58 Vulkan: Set content undefined on eglSwapBuffers * Invalidate the swap buffer content if the swap behavior is EGL_BUFFER_DESTROYED. * In that event, WindowSurfaceVk::getBufferAge() sets `age` to 0 and returns with no errors. * Unit tests in EGLBufferAgeTest.cpp updated to reflect this. * Minor cleanup in the test file. Bug: angleproject:6363 Change-Id: Ibab7ccb99c1be149588e6aad16bcc2d6dd989295 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3307776 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Cody Northrop 26fa0fe6 2021-12-15T10:44:40 Tests: Add Asphalt 9 trace Test: angle_perftests --gtest_filter="*asphalt_9*" Bug: angleproject:5883 Change-Id: I8d180e6bd865d04ccc5c5938d62d86d1293de901 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3308852 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Shahbaz Youssefi 5275f487 2021-12-14T21:03:54 Vulkan: Disable async command queue with Vulkan SCBs There is currently a threading hazard with ContextVk::mCommandPool, where ContextVk records to command buffers allocated from the pool while the async command queue thread is using other command buffers allocated from the same pool. While experimenting with Vulkan SCBs, disable the async command queue feature when using Vulkan SCBs. It is unknown whether async command queue with Vulkan SCBs is even worthwhile; if it proves to be, we could make ContextVk maintain multiple pools and rotate between them. Bug: angleproject:6811 Change-Id: Iac2e9337b5b109b2c7cb359109afe6ee386e4c34 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3340018 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Mohan Maiya feb599ad 2021-12-09T20:17:14 Invalidate EGL handles during eglTerminate EGL 1.5 spec says - Termination marks all EGL-specific resources, such as contexts and surfaces, associated with the specified display for deletion. Handles to all such resources are invalid as soon as eglTerminate returns Move EGL object handles to another set, tracking invalid objects, during display terminate. Destroy these invalid objects during eglReleaseThread Bug: angleproject:6798 Test: EGLMultiContextTest.NegativeTestAfterEglTerminate* Test: EGLMultiContextTest.RepeatedEglInitAndTerminate* Test: Android CTS WrapperTest.testThreadCleanup Change-Id: Ie160212c98367493e645d9d1c8260e7a30649386 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3329273 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: mohan maiya <m.maiya@samsung.com>
Alexey Knyazev 32e23bb9 2021-12-15T13:30:37 Expand WebGLCompressedTextureAvailabilityTest Added assertions for OpenGL on macOS and a new regression test for emulated ETC1. Bug: chromium:1279908 Bug: chromium:1048244 Change-Id: I522a8db32dacad0bca0fba09aed1bcbafa7e3c80 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3340934 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Jamie Madill d6b9a259 2021-12-14T16:32:14 end2end_tests: Add SwS + AsyncQueue testing. This covers a hole in sanitizer testing. Bug: angleproject:6746 Change-Id: I3c9569f94f0d51f771c57d1d72743849a1cbba33 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3337984 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Gregg Tavares a0eb6146 2021-12-14T15:22:57 Update warning message for invalid include Bug: angleproject:6812 Change-Id: I7f514b192143081acbdcf8d91bf262ede420e0ed Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3340099 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Gregg Tavares <gman@chromium.org>
Alexis Hetu cac81f07 2021-12-14T22:56:15 Return full error info when opening a library with dlopen This CL adds a parameter to OpenSharedLibrary and OpenSharedLibraryWithExtension which is used to return the full path of the library which was opened. If dlopen failed, the string also contains the result of dlerror which explains what the error was. Bug: chromium:1246171 Change-Id: I374c7e2dfa18853c8137b4cbea06af8db3fdb501 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3340020 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Alexis Hétu <sugoi@chromium.org>
Shahbaz Youssefi 90c3038e 2021-12-14T16:46:13 Vulkan: Fix desc set updates with Vulkan SCBs Since Vulkan SCBs are a command buffer in their own, we cannot aggregate desc set updates to be done once after all the binds have been recorded. This change makes sure that desc set updates are issued before bind, but this problem could potentially also be solved with VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT, by actually issuing the writes at the end of the secondary CB, just before closing it. Bug: angleproject:6811 Change-Id: I18e150b73a5881258679ba53a2d84acd2fc44edd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3338390 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 8419f4fc 2021-12-15T10:01:53 Roll vulkan-deps from c03890076954 to a8221eed5970 (2 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/c03890076954..a8221eed5970 Changed dependencies: * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/f0351b7bc6..4322c4b5a7 * vulkan-loader: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/24373f2d98..a11162fcac If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC timvp@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry 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/main/autoroll/README.md Bug: None Tbr: timvp@google.com Change-Id: I29c265ae1f5153559010946a94cacec4b1aacb61 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3341373 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll db367bd7 2021-12-15T07:01:47 Roll Chromium from 0c0a3654694f to 2dae07eeb163 (450 revisions) https://chromium.googlesource.com/chromium/src.git/+log/0c0a3654694f..2dae07eeb163 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 timvp@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry 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/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/4ba87d4691..60fec11aa8 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/ce77949bc0..f40b636e71 * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/8790d052d9..a74e6cedae * third_party/android_sdk: https://chromium.googlesource.com/chromium/src/third_party/android_sdk/+log/67d9735161..eb60318d64 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..b759738dea * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/2777fd9c6a..9e5809e98f * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/681a70255d..f6d6604043 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/5f7c21c863..5c8dcc7e68 No update to Clang. Bug: None Tbr: timvp@google.com Change-Id: I20db96440de8ec1ba5c21105e82229edc29903a6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3340562 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Cody Northrop bfc7f09a 2021-12-14T17:14:47 Revert "Upgrade restricted traces to new trace format." This reverts commit 9907d86e3dfdb33c60b4e1b87712728a2988654b. Reason for revert: Causing failures on Intel Linux with native driver. Original change's description: > Upgrade restricted traces to new trace format. > > The new traces are significantly smaller due to unused Program > trimming. The new trace archive is at least 30% smaller after > compression, which should have a positive impact on Android > transfer time. We also reduced the source file count by about > 4000 from replay function merging, which should benefit > developer compilation time. > > Bug: angleproject:5133 > Change-Id: If461875006c2b918197cab9323c3553966c46e88 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3335060 > Reviewed-by: Cody Northrop <cnorthrop@google.com> > Reviewed-by: Tim Van Patten <timvp@google.com> > Commit-Queue: Jamie Madill <jmadill@chromium.org> Bug: angleproject:6816 Change-Id: Ia8cdf302bfd17a6226bfb2df4b0467d4dfeee44b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3340333 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Tim Van Patten <timvp@google.com>
Yuxin Hu 800c6971 2021-12-08T01:08:17 Modified buffer fallback format to smaller storage format Bug: angleproject:6726 Change-Id: I475d99fc0143f265e66cc4f7aa13fa0de8745169 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3315916 Reviewed-by: Lingfeng Yang <lfy@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Cody Northrop 709d8727 2021-12-14T16:11:33 Revert "Trace Tests: Remove auto-generated code." This reverts commit 1c0bb44862fbc6107d73d056c2e07c59bcfa8d09. Reason for revert: Causing failures on Intel Linux with native driver. Original change's description: > Trace Tests: Remove auto-generated code. > > Bug: angleproject:5133 > Change-Id: I71a82071b1c667475f7fefcd6c8766a9de71141d > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3144215 > Reviewed-by: Cody Northrop <cnorthrop@google.com> > Reviewed-by: Tim Van Patten <timvp@google.com> > Commit-Queue: Jamie Madill <jmadill@chromium.org> Bug: angleproject:6816 Change-Id: Ic35145c8c3bb23ccf196b86def42f4a82f07aad5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3340332 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Tim Van Patten <timvp@google.com>
Shrek Shao 3da54250 2021-12-14T16:23:47 Skip MultithreadingTest.MultiContextDrawWithSwapBuffers On Linux Vulkan TSAN Bug: angleproject:6804 Change-Id: I67dbbf94948ddc3042fa90eddc704b0becb45db0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3340335 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shrek Shao <shrekshao@google.com>
Robert Iannucci 7f1a0f89 2021-12-14T16:15:32 Switch to non-deprecated bbagent, remove defunct experiments. Bug: chromium:1015181 Change-Id: I130de6cb79c343c066f182ab8f17c4a96aba9219 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3340334 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
Alexey Knyazev 9d49d843 2021-12-15T00:36:54 Add WebGLCompressedTextureAvailabilityTest Acts as a regression test for https://crrev.com/c/3338624 Has been verified to catch the earlier error in the include guards. Bug: angleproject:6809 Bug: chromium:1279908 Change-Id: I248aca46db26eea304044835ea35fc2400ed459d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3338748 Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Kenneth Russell <kbr@chromium.org>
Shrek Shao 5ee7dfbd 2021-12-14T12:55:39 BufferSubDataTest.SmallIndexBufferUpdateAfterDraw testSetUp fix Failing on Linux FYI GPU TSAN Release, although already skipped. Changing SetUp/TearDown to testSetup/testTearDown to avoid assert failures before skipped. Bug: angleproject:6810 Change-Id: Ibc746293fd0ad823e5b82c2d3db2862751b90f99 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3339603 Commit-Queue: Shrek Shao <shrekshao@google.com> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>