Log

Author Commit Date CI Message
Shahbaz Youssefi 8f77e0bc 2021-07-29T15:54:26 Define angle::HashSet potentially using abseil Split change from CL using it for simplicity. Bug: angleproject:4889 Change-Id: Ie3e621dee624020581e9fd7679639332718948f6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3061439 Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 71fb0352 2021-07-29T10:01:13 Roll vulkan-deps from ecc420b25566 to 55a0cb8b66ac (8 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/ecc420b25566..55a0cb8b66ac Changed dependencies: * glslang: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang.git/+log/1978c7692f..d433cccb8a * spirv-headers: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers.git/+log/cf653e4ca4..e7b49d7fb5 * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/11cd875ed8..983ee2313c * vulkan-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/a4ee3cacbb..ba8c411641 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 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: Ida81847ef1271bcdcac1485e40e6e848b6130ff4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3059844 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll b7eec5c6 2021-07-29T10:01:14 Roll SwiftShader from b8bcc42a41e5 to 44660405ea6c (1 revision) https://swiftshader.googlesource.com/SwiftShader.git/+log/b8bcc42a41e5..44660405ea6c 2021-07-28 capn@google.com Initialize llvm::orc::ExecutionSession with default SelfExecutorProcessControl 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 timvp@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/main/autoroll/README.md Bug: None Tbr: timvp@google.com Change-Id: Ieb2440c196b8544dcae8c0965fb8c351ac5dc4bc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3060439 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Kenneth Russell e74638fe 2021-07-28T19:03:43 Disable Metal shader cache again in angle_end2end_tests. This hooking was removed in https://chromium-review.googlesource.com/3010486 and sped up local test runs, but seems to have reintroduced flakiness on the Mac AMD Retina bots. Bug: chromium:1233864 Bug: angleproject:5505 Change-Id: I46d95545fbbedc0e881e3a2832a5ac5d5384f405 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3057823 Commit-Queue: ccameron <ccameron@chromium.org> Reviewed-by: ccameron <ccameron@chromium.org>
Aditya Kushwah ae24c9d3 2021-07-19T12:11:41 Remove space from internal debug name strings. This changes will reduce the amount of memory used by labels by removing the in between spaces from internal debug name strings. Bug: chromium:1164111 Change-Id: I0ec657789dade2c3c053966ffccfbd673186fdad Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3039119 Reviewed-by: Rafael Cintron <rafael.cintron@microsoft.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Rafael Cintron <rafael.cintron@microsoft.com>
Brian Sheedy b8e8c822 2021-07-27T11:19:59 Suppress Mac 11.4 failures Suppresses several Mac 11.4 AMD failures that were found after we started testing the configuration. Bug: angleproject:6222, angleproject:6223 Change-Id: I4f0f5ac0ab14d2645bb76def3e4ec55d999940fa Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3056839 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Brian Sheedy <bsheedy@chromium.org>
Shahbaz Youssefi 8593e0a2 2021-07-28T13:52:06 TestSuite tests: Don't validate stderr until fixed Bug: chromium:1233361 Change-Id: Ibcd66520d7b842211eafb26f9188298c281cbe64 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3058503 Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi b751b185 2021-07-22T22:10:22 infra: Enable gles3.2 deqp tests with direct SPIR-V generation Enabled on Linux/Nvidia, Windows/Nvidia and Pixel4. Bug: angleproject:4889 Change-Id: I3050ed53b48cc114c940486871910a3b9c5adea5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3047383 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 630077c5 2021-07-22T22:08:21 infra: Enable gles3.1 deqp tests with direct SPIR-V generation Enabled on Linux/Nvidia, Windows/Nvidia and Pixel4. Bug: angleproject:4889 Change-Id: Id82c909e368cdc189aea2e44f6371a27d8232e37 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3047382 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Anton Bikineev f4f866ce 2021-07-28T10:55:12 Disable RunAppAsync and RunAppAsyncRedirectStderrToStdout The tests are blocking the CQ due to flakiness. Bug: chromium:1233361 Change-Id: Ib0283e201c271379364a177bea130d63322eee53 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3058233 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 111c9a15 2021-07-28T10:01:13 Roll vulkan-deps from 42c7e9bc00c2 to ecc420b25566 (2 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/42c7e9bc00c2..ecc420b25566 Changed dependencies: * glslang: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang.git/+log/9158061398..1978c7692f * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/459cb6009e..8fb97f0282 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 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: I37235d3641b8c0d02bdd1cd1997c0765eeed861f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3057818 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll c72bb361 2021-07-28T10:01:14 Roll SwiftShader from 915947134128 to b8bcc42a41e5 (2 revisions) https://swiftshader.googlesource.com/SwiftShader.git/+log/915947134128..b8bcc42a41e5 2021-07-27 capn@google.com Remove -Wno-unused-but-set-variable flag usage 2021-07-26 pkasting@chromium.org Fix some instances of -Wunused-but-set-variable. 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 timvp@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/main/autoroll/README.md Bug: None Tbr: timvp@google.com Change-Id: Ib9f66aa6a4e1970b9115679d94678c5520e9deed Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3058731 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 48a61889 2021-07-28T07:00:02 Roll Chromium from f18a56e21b43 to 7ad7eb435b84 (470 revisions) https://chromium.googlesource.com/chromium/src.git/+log/f18a56e21b43..7ad7eb435b84 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 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/2e6288eaef..96a4da9412 * buildtools/third_party/libc++abi/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/bfcda91989..24e92c2bee * testing: https://chromium.googlesource.com/chromium/src/testing/+log/ed11dbd7ea..88e2d8b080 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..10f6e4b89b * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/69fa5ec37a..2a8bb1ca80 * tools/luci-go: git_revision:04c7051e7a02d7000bf28b53a575fea10220b555..git_revision:75ff299b9adf969190cafebe902255856a346f0b * tools/luci-go: git_revision:04c7051e7a02d7000bf28b53a575fea10220b555..git_revision:75ff299b9adf969190cafebe902255856a346f0b * tools/luci-go: git_revision:04c7051e7a02d7000bf28b53a575fea10220b555..git_revision:75ff299b9adf969190cafebe902255856a346f0b * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/a577fc1092..ef691997d9 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/e39d397fb7..b210baf513 * tools/skia_goldctl/linux: kaeAzSau0swqM5_PxvyRfHSMDvXSjyDsqgPiP5rpoYEC..Pc3OHV2QqhJ1IA5WQWr_kZ72iUVitbAX-iQN7j8sfcQC * tools/skia_goldctl/mac: sZ1aXBq0Ae2kaeyAtTGpMuEEGdcqMzga658pAaCAl0IC..KASmGKR0ayqtBOEyjhnO0Bt_YP_U602cxGcJOOjhAPoC * tools/skia_goldctl/win: 67QQ3-xX3VTYrb9YrwUR0VedVqNq7sebZZeHS823QdcC..XfCGeDXrOWGLHwo_HFFlERuqKHW2zZGUGnF1DzCyCP0C No update to Clang. Bug: None Tbr: timvp@google.com Change-Id: Ie43056dba44cde445c38237c6e2aab6740a41922 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3058570 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi 7c6da493 2021-07-26T21:24:25 Translator: Make sure built-in variables are consistent Some transformations left the tree in an inconsistent state, for example if it used gl_SampleMask from ES3.1+OES_sample_variables and the transformation added a usage of gl_SampleMask from ES3.2. The offending transformations are fixed and AST validation is improved to catch such errors. Bug: angleproject:4889 Change-Id: I9d9ea5bb43a9408dd4c6dc3e89ec20d60dfeff73 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3054613 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Peter Kasting 0d06c3cf 2021-07-26T04:30:39 Fix some instances of -Wunused-but-set-variable. Bug: chromium:1203071 Change-Id: I144165ae5ec47aba88658030a6ba3e371bf31ee7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3053616 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi c8c9e15b 2021-07-26T22:51:49 Translator: Fix sizing of tessellation shader arrays If layout(vertices=N) is specified after implicitly sized array declarations, the correct size was not being specified on them. Bug: angleproject:4889 Change-Id: I86ccf45a7f264b493a137b87316eff744079ed6c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3054614 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Yuly Novikov bd19620f 2021-07-27T23:45:11 Revert "VulkanExternalHelper: Use VK_KHR_image_format_list extension." This reverts commit 4222d5e5a03f85ca07253d54f3087684fe9447b3. Reason for revert: errors on multiple builders when rolling into Chromium https://chromium-review.googlesource.com/c/chromium/src/+/3057227 e.g. https://ci.chromium.org/ui/p/chromium/builders/try/linux_chromium_asan_rel_ng/924126/overview Original change's description: > VulkanExternalHelper: Use VK_KHR_image_format_list extension. > > To retrieve correct size requirements when the VK_KHR_image_format_list > extension is enabled, it must be used to match VkImages created in > vk_helpers. > > RendererVk: Fully enable VK_KHR_image_format_list. > Enable the extension on non-AMD and non-ARM platforms. > > Bug: angleproject:5281 > Change-Id: I3ca60bf6efcf9d9c10d4d96a3fe91b999eb044f7 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3035047 > Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com> > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Reviewed-by: Cody Northrop <cnorthrop@google.com> > Reviewed-by: Mohan Maiya <m.maiya@samsung.com> Bug: angleproject:5281, chromium:1233561 Change-Id: I3b15bb2fc2fb779adac8bbf5d805727a25b5795c No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3057071 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
angle-autoroll 1dd33c05 2021-07-27T21:56:15 Roll vulkan-deps from d85297cbd31b to 42c7e9bc00c2 (37 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/d85297cbd31b..42c7e9bc00c2 Changed dependencies: * spirv-cross: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross.git/+log/cd22336a38..1964799fba * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/d9f8925785..11cd875ed8 * vulkan-headers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers.git/+log/872fa25bb6..b8c57b0a09 * vulkan-loader: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/a0c69f0d3a..99a7440204 * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/893fc802e4..459cb6009e 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 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: Id2402348bcf414ce7bebb8e5c647f0db54537557 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3057520 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Peter Kasting 5bda5f91 2021-07-26T20:37:52 Fix some instances of -Wunreachable-code-aggressive. Bug: chromium:1066980 Change-Id: I1e769b78c51d939067e8855beab32ec7c006c00e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3055794 Reviewed-by: Nico Weber <thakis@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Nico Weber <thakis@chromium.org>
Lubosz Sarnecki 4222d5e5 2021-07-16T16:26:17 VulkanExternalHelper: Use VK_KHR_image_format_list extension. To retrieve correct size requirements when the VK_KHR_image_format_list extension is enabled, it must be used to match VkImages created in vk_helpers. RendererVk: Fully enable VK_KHR_image_format_list. Enable the extension on non-AMD and non-ARM platforms. Bug: angleproject:5281 Change-Id: I3ca60bf6efcf9d9c10d4d96a3fe91b999eb044f7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3035047 Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Mohan Maiya <m.maiya@samsung.com>
Lubosz Sarnecki ef406f1b 2021-07-16T12:19:23 FrameCapture: Capture GLES1 matrix stack. Capture the modelview and projection matrix stack. This is required for GLES1 applications that do not reset the stack every frame. Bug: angleproject:6181 Change-Id: I71befc15ca287cf91fcebf9d972c7badaeb23605 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3035050 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
Lubosz Sarnecki edb4a7a8 2021-07-16T12:19:06 GLES1State: Add getMatrixStack function. FrameCapture requires access to the whole matrix stack. This function also exposes stacks that are not currently set. Bug: angleproject:6181 Change-Id: I595feaa0cbd3e5a62e398aa7a0578ecf6425ffe6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3035049 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
angle-autoroll 9b95caf4 2021-07-27T07:01:41 Roll Chromium from 779c0d440060 to f18a56e21b43 (464 revisions) https://chromium.googlesource.com/chromium/src.git/+log/779c0d440060..f18a56e21b43 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 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/958a8ec2c1..2e6288eaef * buildtools/linux64: git_revision:d565aa3e72dd9e81da9595ee8c9d7b24cb45c48b..git_revision:c0a2d23c21e87f27f5af3e5dc2a99f2ef3480b9e * buildtools/mac: git_revision:d565aa3e72dd9e81da9595ee8c9d7b24cb45c48b..git_revision:c0a2d23c21e87f27f5af3e5dc2a99f2ef3480b9e * buildtools/third_party/libc++abi/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/e8bf577fbf..bfcda91989 * buildtools/win: git_revision:d565aa3e72dd9e81da9595ee8c9d7b24cb45c48b..git_revision:c0a2d23c21e87f27f5af3e5dc2a99f2ef3480b9e * testing: https://chromium.googlesource.com/chromium/src/testing/+log/412b2038bc..ed11dbd7ea * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..10f6e4b89b * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/94ebf0661e..69fa5ec37a * tools/luci-go: git_revision:81e548572494391fa74559e816562d60c767bc69..git_revision:04c7051e7a02d7000bf28b53a575fea10220b555 * tools/luci-go: git_revision:81e548572494391fa74559e816562d60c767bc69..git_revision:04c7051e7a02d7000bf28b53a575fea10220b555 * tools/luci-go: git_revision:81e548572494391fa74559e816562d60c767bc69..git_revision:04c7051e7a02d7000bf28b53a575fea10220b555 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/159bcd47b2..a577fc1092 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/48df54f532..e39d397fb7 Clang version changed llvmorg-13-init-15561-gf98ed74f:llvmorg-13-init-16514-gb1777b04 Details: https://chromium.googlesource.com/chromium/src/tools/clang/+/94ebf0661eb5b6ed2a2cbc46eb7a579a06c040b0..69fa5ec37acc53d9fecfa6fe61ed9993f8f44412/scripts/update.py Bug: None Tbr: timvp@google.com Change-Id: Ia2424c4760473583dbf054535a9cc3b0bdb00a68 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3055648 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi b8d6f8aa 2021-07-22T22:31:29 Translator: Facilitate integration in FireFox Instead of relying on is_apple to build workarounds applied on apple hardware, a new build argument is added for this purpose. This allows FireFox to more easily include these files in their build system (which builds every workaround on every platform). The workarounds are reorganized too and moved from tree_ops/gl/mac to tree_ops/apple. RewriteRowMajorMatrices is moved there too as it's now used by both gl and metal. This workaround is large, and removing it from non-apple builds improves binary size (~40KB on Linux). Bug: angleproject:6188 Change-Id: I8e1dab44d0235bb6b8341d53721bdd0d157d46c6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3047385 Reviewed-by: Jeff Gilbert <jgilbert@mozilla.com> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi dbe986d7 2021-07-26T01:43:44 Vulkan: SPIR-V Gen: Fixes to tessellation shader support - TCS barrier() built-in is correctly looked up - Patch decorations are fixed Bug: angleproject:4889 Change-Id: I1befcaca85a965c9d46b1b41ec74597de44bf2b2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3052687 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Shahbaz Youssefi acfd63a4 2021-07-26T01:02:11 Translator: Remove GLSL rules from the ESSL-only symbol table Shaves ~36KB off of ANGLE's binary size on Android. Bug: chromium:1084580 Change-Id: I4711c6bd28437a43b7dc63be4cfcdaed7ae11ba2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3052686 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 63fa7080 2021-07-25T23:19:02 Vulkan: SPIR-V Gen: Fix bugs with ES3.1 texture* builtins - Add missing ImageCubeArray capability for image cube arrays - Remove extra Lod image operand for sampler/image buffers Bug: angleproject:4889 Change-Id: I96545092528b7dcecf902561e194b17636217ef4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3052683 Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 4ff80bb5 2021-07-22T21:52:35 infra: Enable gles3 deqp tests with direct SPIR-V generation Enabled on Linux/Nvidia, Windows/Nvidia and Pixel4. Bug: angleproject:4889 Change-Id: I2462b7fa7801b766f4359103a5253209b7fded28 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3047381 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 715bab1f 2021-07-25T23:35:17 Vulkan: SPIR-V Gen: Fixes to geometry shader support - max_vertices=0 is invalid in SPIR-V and is fixed (similarly to anglebug.com/5411) - gl_PrimitiveID used in fragment shaders requires the Geometry capability. Bug: angleproject:4889 Change-Id: If8c6a9d455d0582d61c3c52b5f773bcb5ca64b53 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3052684 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Shahbaz Youssefi ff7eafb5 2021-07-25T23:05:26 Vulkan: SPIR-V Gen: Fix .length() vs ssbo arrays Bug: angleproject:4889 Change-Id: Ib490a46fabf058064fc1b18d2c084a4bc5f9277d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3052682 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Shahbaz Youssefi b19fbbda 2021-07-25T21:57:12 Vulkan: SPIR-V Gen: Support multiview Bug: angleproject:4889 Change-Id: Ibe66f53357473dbb4435af58775b524d83ed250b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3052675 Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Jamie Madill 3bd2273b 2021-07-16T12:33:11 Capture/Replay: Only perform call updates on valid calls. Bug: angleproject:5133 Change-Id: Ib1a6ae1ca9ff9717c4e51f8908f5a4ee132d72ab Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3035443 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Gert Wollny <gert.wollny@collabora.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
angle-autoroll 2ce81817 2021-07-26T07:00:05 Roll Chromium from 172cae01c41b to 779c0d440060 (322 revisions) https://chromium.googlesource.com/chromium/src.git/+log/172cae01c41b..779c0d440060 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 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/5e09be1ee6..958a8ec2c1 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/47f98e89a3..412b2038bc * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..10f6e4b89b * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/131233f789..94ebf0661e * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/42bdc1223f..48df54f532 Clang version changed llvmorg-13-init-15163-g98033fdc:llvmorg-13-init-15561-gf98ed74f Details: https://chromium.googlesource.com/chromium/src/tools/clang/+/131233f78952301416fd1599964b58fe4af76285..94ebf0661eb5b6ed2a2cbc46eb7a579a06c040b0/scripts/update.py Bug: None Tbr: jmadill@google.com Change-Id: Id07aacc82c17d56790faec87e042b77db4f39d17 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3053611 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Gert Wollny d67cab22 2021-07-12T13:48:22 Capture/Replay: Handle missing context serialization Some ContextLost* tests do weird things with the context serialization which results in a mis-match of available context serializations. In this case check whether both serializations are missing, if so consider this to be an equal contexts states, otherwise, if only one serialization is available, report failure. While touching this code, also remove an unused parameter from the context serialization compare function. Disable tests that still fail with this change. Bug: angleproject:6157 Change-Id: Iee6cc7d65437112e38919cff59804e2b7f9467da Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3021061 Commit-Queue: Gert Wollny <gert.wollny@collabora.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Shahbaz Youssefi a5b7655c 2021-07-23T22:46:35 Vulkan: Unsupress fixed test Fix landed in glslang. Bug: angleproject:6178 Change-Id: Ie3d2a9535b4ed0d484c97e08be069ff9e27cdde1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3051313 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 939ea5f4 2021-07-23T15:53:17 Vulkan: SPIR-V Gen: Fixes to tessellation builtins On TCS, TES and FS, gl_PrimitiveID is actually an input. Additionally, `patch` variables (including gl_TessLevel* built-ins) need to be decorated with Patch. Bug: angleproject:4889 Change-Id: I326ec4b0c011fe8eaafbad4f8bcb0f537005f96f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3048320 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Shahbaz Youssefi 9416e84e 2021-07-23T14:53:43 Vulkan: SPIR-V Gen: Add missing DepthReplacing execution mode Shaders writing to gl_FragDepth need this execution mode specified. Bug: angleproject:4889 Change-Id: I315c90f9161f4d3d51b1c856f1364fb26a4bd404 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3048317 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi de8dc2c9 2021-07-23T15:45:28 Vulkan: SPIR-V Gen: Support OES_sample_variables Built-ins from this extension are now decorated. Bug: angleproject:4889 Change-Id: I12f80d67e3595f94fc64bdc8cb3031d36b98c279 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3048319 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Shahbaz Youssefi 8bf2e5ec 2021-07-23T16:54:16 Vulkan: SPIR-V Gen: Fix switch with default at the end A minor bug was making a switch with default at the end to jump to the merge block instead of the default block. Bug: angleproject:4889 Change-Id: Ied434fab949b10d45a0db1242c1b8535a5f4f773 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3048321 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Shahbaz Youssefi 82d7d888 2021-07-22T21:46:21 Vulkan: SPIR-V Gen: Fix bugs with texture* builtins With this change, deqp ES3 tests pass. Bug: angleproject:4889 Change-Id: Ica158d4e9012c7bb3e458da62b4a7f92aee5c6de Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3047380 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 31bc9226 2021-07-23T15:16:27 Vulkan: SPIR-V Gen: Fix unpack* built-ins The parameter to these built-ins was getting extended to a vector. Bug: angleproject:4889 Change-Id: Idddce008c9b4f6bf9205b1e20f6e89ef657ea3a1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3048318 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Shahbaz Youssefi 24610ba6 2021-07-23T22:46:11 Suppress failing SPIR-V gen tests Bug: angleproject:4889 Change-Id: Ie5a5cb5c8f947e2d90861371893367b9ec341f19 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3051312 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 6b5cec15 2021-07-22T17:01:41 Vulkan: SPIR-V Gen: Fixes to scalar->vector promotion With the ternary operator, the condition may be a bool-in-interface block that needs to be cast. This cast is now part of createConstructorVectorFromScalar so it can't be missed. Bug: angleproject:4889 Change-Id: I0e24cd4127301d33a3ac677ccaf560c4468e0799 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3047379 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi d0c03ff4 2021-07-22T14:55:51 Vulkan: SPIR-V Gen: Fix lvalues passed to in/inout parameters In GLSL, these values are semantically copied when passed to a function as an in or inout parameter. For example in: bool f(inout vec4 a, inout vec4 b) { a = vec4(0); return all(equal(a, b)); } var = vec4(1); bool result = f(var, var); result is expected to be false. In SPIR-V, every parameter is semantically passed by "reference". glslang conservatively uses temporaries to pass to functions. An optimization in ANGLE didn't create temporaries for unindexed lvalues, which did not take into account the above fact. This optimization is limited to out parameters now. Bug: angleproject:4889 Change-Id: Ie1b4b1cecba847ba63d5810d01d0856823b89ddc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3046103 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi cc69d861 2021-07-22T12:49:39 Vulkan: SPIR-V Gen: Fix textureProj's coordinate adjustment The OpCompositeInsert's parameters were given in the wrong order. Additionally, some instructions were not having RelaxedPrecision applied correctly; this is fixed by deriving the decorations from the type of the argument that's passed in a function instead of the type of the parameter itself. Bug: angleproject:4889 Change-Id: I34a54fcc0ef1699e554f9e1abb94c93a5b34b6d3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3046102 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 9d23ae62 2021-07-22T12:32:44 Vulkan: SPIR-V Gen: Fix conditionals with pruned blocks Rewored the visitIfElse function to simplify the logic and correctly handle if-else constructs where the true block is pruned. Bug: angleproject:4889 Change-Id: Ib968a2fe65f4b6463158fd76e7d67757115ee832 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3046101 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Shahbaz Youssefi ad8c3257 2021-07-22T11:40:01 Vulkan: Fix bresenham line emulation in shaders with return RunAtTheEndOfShader should have been used to ensure that the appended code runs at the end of the shader no matter if the shader includes return statements. Bug: angleproject:4889 Bug: angleproject:6206 Change-Id: I848eafdf3c7bc63206a7f82cdf0badad335fa3bc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3046100 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
angle-autoroll 1f72aa14 2021-07-23T17:39:28 Roll Chromium from 208fab302a17 to 172cae01c41b (609 revisions) https://chromium.googlesource.com/chromium/src.git/+log/208fab302a17..172cae01c41b 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 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/2ef6eae721..5e09be1ee6 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/b8e44ff539..47f98e89a3 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..10f6e4b89b * third_party/r8: gXyBDv_fM87KnLcxvF5AGV5lwnm-JXIALYH8zrzdoaMC..Nu_mvQJe34CotIXadFlA3w732CJ9EvQGuVs4udcZedAC * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/609c3a5216..159bcd47b2 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/7668723204..42bdc1223f No update to Clang. Bug: angleproject:6090 Tbr: jmadill@google.com Change-Id: I75f1c7a574cea4e64c53b531a4953a06b9ebee4a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3049710 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi 02c5cdbd 2021-07-21T23:08:17 infra: Enable gles2 deqp tests with direct SPIR-V generation Enabled on Linux/Nvidia, Windows/Nvidia and Pixel4. Bug: angleproject:4889 Change-Id: I50c5e31097bd7e1539caf7b229a249cbfa62b93d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3042557 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Jamie Madill fbffcf7b 2021-07-23T14:15:18 dEQP: Suppress two tests with undefined behaviour. dEQP-GLES3.functional.shaders.operator.unary_operator.minus.lowp_uvec4_vertex dEQP-GLES3.functional.shaders.operator.unary_operator.minus.mediump_uvec4_vertex See bug for more details. Bug: angleproject:6214 Change-Id: Ibc69dbcd1524470da620c31d41da20f69dfbaae2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3049254 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 8f6f52b5 2021-07-23T10:14:27 GL: Temporarily disable sync control on all GPUs on Linux This workaround is supposed to be limited to Intel GPUs with a recent mesa version, but due to anglebug.com/6174 is not actually enabled on dual-GPU systems. The workaround is temporarily disabled on all GPUs until said issue is fixed. Bug: chromium:1187475 Bug: angleproject:6174 Change-Id: Ieee430b1e2a04e36d6f8d60cabc9e391f0e49988 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3048237 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Tim Van Patten 348eaf15 2021-07-23T11:26:09 roll_aosp.sh: Add dcheck_always_on = false The GN args 'dcheck_always_on' was recently enabled by default, which resulted in an increase to ANGLE's APK size in AOSP from 16.3MB to 20.6MB. Adding 'dcheck_always_on = false' to roll_aosp.sh to disable the feature reduces the APK back to the original 16.3MB size. Bug: b/189125396 Change-Id: I606c30fe49291fa893228644c4b1fe4dd5fbeabf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3048933 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Tim Van Patten <timvp@google.com>
Jamie Madill f18bb9c0 2021-07-23T08:57:19 Roll Chromium DEPS manually. Because the packages list changed, the roll_chromium_deps script was failing. Manually roll and update the failure assertion to make the required action clear. Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/488aac0b88..2ef6eae721 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/8c3404999d..b8e44ff539 * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/9211d9e376..368be24f93 * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/0ab40df9d1..12d2cf1a46 * third_party/android_sdk: https://chromium.googlesource.com/chromium/src/third_party/android_sdk/+log/76bd51b56b..ff9352c23f * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..10f6e4b89b * third_party/r8: Nu_mvQJe34CotIXadFlA3w732CJ9EvQGuVs4udcZedAC..gXyBDv_fM87KnLcxvF5AGV5lwnm-JXIALYH8zrzdoaMC * tools/luci-go: git_revision:9ee8b1d719c0d3c268e0e19282351ca78024af2d..git_revision:81e548572494391fa74559e816562d60c767bc69 * tools/luci-go: git_revision:9ee8b1d719c0d3c268e0e19282351ca78024af2d..git_revision:81e548572494391fa74559e816562d60c767bc69 * tools/luci-go: git_revision:9ee8b1d719c0d3c268e0e19282351ca78024af2d..git_revision:81e548572494391fa74559e816562d60c767bc69 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/2db94c0aa3..609c3a5216 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/4682254401..7668723204 * tools/skia_goldctl/linux: 4iy6PO3bO0fujafbQ4I4eWhD8ErkBKf5xAnGzPrziIUC..kaeAzSau0swqM5_PxvyRfHSMDvXSjyDsqgPiP5rpoYEC * tools/skia_goldctl/mac: _9rtsnZzHBJ4851DtK33jnz7UzMZ77SqJ9sYpciBwiMC..sZ1aXBq0Ae2kaeyAtTGpMuEEGdcqMzga658pAaCAl0IC * tools/skia_goldctl/win: NsVk6Er035r7JVK4foqbqAksO65XEzgIT9Bjwf0Q1q0C..67QQ3-xX3VTYrb9YrwUR0VedVqNq7sebZZeHS823QdcC No update to Clang. Bug: angleproject:6211 Change-Id: I152572fd15066a100cb5f379f7adbd967dc6eac8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3048852 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 62628799 2021-07-21T22:55:22 Vulkan: SPIR-V Gen: Support dEQP A temporary condition for direct SPIR-V generation is added to test expectations while this work is in progress, so test suites can be partially enabled. 32 tests are currently failing. Bug: angleproject:4889 Change-Id: Icf0f6ef80d30fdb7564d8ecf928e67ca58ace86f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3042556 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Alexis Hetu 729cbcf1 2021-07-23T11:18:18 Make Display and X11 available in the same build Chromium can use the 'use_ozone' and 'use_x11' build flags simultaneously, so we need the Vulkan display to still be selectable, even when the 'use_x11' flag is used. This is required to make SwANGLE work with Ozone/Wayland, which is going to use EGL_PLATFORM_VULKAN_DISPLAY_MODE_HEADLESS_ANGLE when SwANGLE is requested. Bug: chromium:1231934 Change-Id: I2ac1d3d9bc231608d7f77e9a2540f4c538840076 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3049351 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Alexis Hétu <sugoi@chromium.org>
Jamie Madill 91b35c90 2021-06-30T09:28:17 infra: Add perf results processing script. This script is a modified version of the Chromium script: https://chromium.googlesource.com/chromium/src/+/main/tools/perf/process_perf_results.py The primary change is to add additional build info to the histogram set before upload. This additional info isn't available to the test harness and is required for the perf dashboard upload. We can also use this as a basis for uploading to the Skia perf dashboard. Test: led launch Bug: angleproject:6090 Change-Id: Ie439ed34a24ce66f4b60b947f221e4cb96cf7d25 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2997002 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 2c60b88a 2021-07-23T09:46:37 Make the trybot exclusion filter a proper regex. Bug: angleproject:6212 Change-Id: I20ca648675a5dd4773d1c3e44b251388318197f5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3048854 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 646c02b9 2021-07-23T09:29:55 Update angle_assert_always_on condition. A prior CL would miss the standalone case. Bug: chromium:1227171 Change-Id: Ib1c06d0ae7eed0feb082516690b227b964de72b0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3048853 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill aed52e67 2021-07-23T08:43:17 Set dcheck_always_on on every ANGLE builder. This GN argument is necessary because some build components reference it directly. Letting it be specified implicitly will caused undesired side-effects. Bug: chromium:1227171 Change-Id: Ib12cc3add58ecc8ae0360f816d30587158d756c1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3048850 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 9f7a86a8 2021-07-21T14:54:03 Vulkan: SPIR-V Gen: Fix bugs with matrix ops A number of matrix operations are fixed in this change, such as matrix/scalar, ++matrix etc. This change fixes most of the failing dEQP-GLES2.* tests. The test suite will be enabled once the remaining 32 failures are fixed. Bug: angleproject:4889 Change-Id: I0905dfaeabe50716432ce354b890be35f2a16e59 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3042555 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 951b04bb 2021-07-21T12:20:13 Vulkan: SPIR-V Gen: Support scalar constructors In GLSL, the scalar constructor can be given a vector and matrix, in which case the first element is selected. This case was not previously handled. Bug: angleproject:4889 Change-Id: Ibf276883fc7396b750981a4e469ff9b152c6e700 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3042554 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 45d4641a 2021-07-21T10:58:29 Vulkan: SPIR-V Gen: Support tessellation shaders Bug: angleproject:4889 Change-Id: I7370e037a82689260e27bfd5e72c5c8c982efa58 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3041624 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 7f199d75 2021-07-20T00:11:23 Vulkan: SPIR-V Gen: Support geometry shaders Geometry shader built-ins are implemented. A bug in DeclarePerVertexBlocks is fixed w.r.t to gl_PerVertex arrays and a new AST validation option is added to catch that sort of error. Bug: angleproject:4889 Change-Id: I40b2929e450eac8ae840bbf1a1583e6c4c047c88 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3041623 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Tim Van Patten 05716b9f 2021-07-22T16:01:06 Cleanup license_text to remove missing license files The initial list of files speficied for license_text in generate_android_bp.py included license files that aren't present after issuing: git clean -f -x -d -f While the list will build correctly when rolling ANGLE locally, since roll_aosp.sh doesn't issue a 'git clean', it fails to build on the Android presubmit bots. Bug: b/191882454 Test: git clean -f -x -d -f ; m ANGLE -j50 Change-Id: I31efba1f5030b118838ba1a21501f32200c93db3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3046958 Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Tim Van Patten <timvp@google.com>
Tim Van Patten 2ec44d07 2021-07-22T14:15:03 List all license files in Android.bp Update generate_android_bp.py to list all of the license files in external/angle. Bug: b/191882454 Change-Id: Ie13fb9199c7216b5468bf91994526fdcd8552be1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3046509 Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Tim Van Patten <timvp@google.com>
Jamie Madill 27ccdc85 2021-07-22T13:13:45 Add Chromium perf result processing script. We will override this script in a follow-up CL to meet ANGLE's specific needs. Bug: angleproject:6090 Change-Id: I8d3a326645367e90ae79f49ef15ace700d6af106 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3042213 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Alexis Hetu 20ae10c2 2021-07-22T11:46:40 Enable SwANGLE on all ozone platforms. SwANGLE should be available on all ozone platforms. This will also compile the vulkan backend. Bug: chromium:1227864 Change-Id: I4971e52f45e70fed91567c3d2f369dafe160ff4f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3043626 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Alexis Hétu <sugoi@chromium.org>
Cody Northrop b5630d5c 2021-07-19T20:39:02 Capture/Replay: Add textures to resource tracking This CL: - Shifts resource reset tracking to be stored in an array of structs indexed by type. This helps curb the complexity of adding more resource types. - Moves buffer and program tracking to the new layout. - Adds textures to the resource tracker, using new layout. Note that only aspects common to all ResourceIDTypes have been moved to the new layout. Unique pieces of data, like buffer mapping state and GLSync handling, remain in resource tracker alone. Since texture setup is quite involved, this CL takes the approach of having each call applied to two call chains at the same time; SetupReplay calls and ResetReplay calls. ResetReplay ends up with a sequence similar to buffers: ... const GLuint deleteTextures[] = { gTextureMap[1], gTextureMap[2], ... gTextureMap[n]}; glDeleteTextures(<count>, deleteTextures); ... glGenTextures(1, reinterpret_cast<GLuint *>(gReadBuffer)); UpdateTextureID(1, 0); glGenTextures(1, reinterpret_cast<GLuint *>(gReadBuffer)); UpdateTextureID(2, 0); glGenTextures(1, reinterpret_cast<GLuint *>(gReadBuffer)); UpdateTextureID(3, 0); ... glBindTexture(GL_TEXTURE_2D, gTextureMap[1]); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, 9729); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_R, 33071); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, 33071); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, 33071); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_FUNC, 519); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_LEVEL, 0); glTexImage2D(GL_TEXTURE_2D, 0, 6406, 512, 512, 0, GL_ALPHA, GL_UNSIGNED_BYTE, reinterpret_cast<const GLubyte *>(&gBinaryData[183263280])); glBindTexture(GL_TEXTURE_2D, gTextureMap[2]); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, 9987); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_FUNC, 519); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_LEVEL, 6); glTexStorage2D(GL_TEXTURE_2D, 7, GL_COMPRESSED_SRGB8_ETC2, 64, 64); ... Test: PUBG Mobile MEC Bug: b/180418573 Bug: angleproject:6087 Change-Id: I9f8e151c12aec5b2b7af376b8e0ff644ff9c61c4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3016114 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill c408926f 2021-07-22T12:00:59 Revert "EGL: GLES: Implement GL_EXT_protected_textures" This reverts commit 6210a9b34a721df2c84cf69170ad9bf7ba40e4aa. Reason for revert: Suspected for breaking ANGLE->Chrome roller. Bug: angleproject:6204 Original change's description: > EGL: GLES: Implement GL_EXT_protected_textures > > Implement EGL_EXT_protected_content Images > Add protected member to Images and Textures > Add error when creating objects if not supported or > does't match native buffer > When creating siblings pass protected state > Add extension caps > Add Validation > Add GetTexParameter and SetTextparameter > Add protected to Texture and state > Expand tests for images and textures > > Test: angle_end2end_test --gtest_filter=EGLProtectedContentTest > > Bug: angleproject:3965 > Change-Id: I35a89b4e80bba6d9b6831c68e71630eef304dacb > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2802852 > Commit-Queue: Mohan Maiya <m.maiya@samsung.com> > Reviewed-by: Geoff Lang <geofflang@chromium.org> > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Bug: angleproject:3965 Change-Id: Ia3ef260a17097b474189ccad5b235a9db99ee00b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3043889 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Jamie Madill c5f83c34 2021-07-22T11:56:25 Revert "Vulkan: Suppress VVL errors triggered by external formats" This reverts commit f46df3978ab6102768048a6bf40e6f4989276065. Reason for revert: VVL change rolled into ANGLE + Chrome. Original change's description: > Vulkan: Suppress VVL errors triggered by external formats > > Since several tests are hitting these and it may be a VVL bug, > moving to ignore rather than skips. > > Bug: angleproject:6155 > Bug: angleproject:6168 > Change-Id: I38a5be8d792b8b13a490be895a68349bffe69c6e > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3028809 > Reviewed-by: Tim Van Patten <timvp@google.com> > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Reviewed-by: Mohan Maiya <m.maiya@samsung.com> > Commit-Queue: Cody Northrop <cnorthrop@google.com> Bug: angleproject:6155 Bug: angleproject:6168 Change-Id: I11696095300c214ca0b68624b0eb6763ba9d31f3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3043888 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 03cf7888 2021-07-22T08:32:25 Test Runner: Remove extra quotes from histograms. We were double-quoting the test names. Bug: angleproject:6090 Change-Id: I69ce089ef20068b408de7156bdbade922cdefe95 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3043890 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
angle-autoroll 8ddd1807 2021-07-22T11:14:16 Roll vulkan-deps from 436e27578f75 to d85297cbd31b (10 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/436e27578f75..d85297cbd31b Changed dependencies: * spirv-cross: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross.git/+log/18f3cd6810..cd22336a38 * spirv-headers: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers.git/+log/1d4e3a7e3a..cf653e4ca4 * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/033768c24b..d9f8925785 * vulkan-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/33a87ce6da..a4ee3cacbb * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/194db6870e..893fc802e4 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 jmadill@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/main/autoroll/README.md Bug: None Tbr: jmadill@google.com Change-Id: Icd49cf0abb072acb3c9bd2c79cfef3a3f8103e23 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3045222 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll e759ff88 2021-07-22T07:02:21 Roll Chromium from f8ef6fcfb849 to 208fab302a17 (1307 revisions) https://chromium.googlesource.com/chromium/src.git/+log/f8ef6fcfb849..208fab302a17 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 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/fd86d60f33..488aac0b88 * buildtools/linux64: git_revision:b2d77ab1373192d1532af94b68fb8bab727b0e5b..git_revision:d565aa3e72dd9e81da9595ee8c9d7b24cb45c48b * buildtools/mac: git_revision:b2d77ab1373192d1532af94b68fb8bab727b0e5b..git_revision:d565aa3e72dd9e81da9595ee8c9d7b24cb45c48b * buildtools/third_party/libc++abi/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/7d5c92f6cf..e8bf577fbf * buildtools/win: git_revision:b2d77ab1373192d1532af94b68fb8bab727b0e5b..git_revision:d565aa3e72dd9e81da9595ee8c9d7b24cb45c48b * testing: https://chromium.googlesource.com/chromium/src/testing/+log/f619f21d40..8c3404999d * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/8c49b419c2..0ab40df9d1 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..9ac1fdf373 * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/c81b8b948f..131233f789 * tools/luci-go: git_revision:175b811c1eebfa8868ab96b58a4dc7b5bcabf756..git_revision:9ee8b1d719c0d3c268e0e19282351ca78024af2d * tools/luci-go: git_revision:175b811c1eebfa8868ab96b58a4dc7b5bcabf756..git_revision:9ee8b1d719c0d3c268e0e19282351ca78024af2d * tools/luci-go: git_revision:175b811c1eebfa8868ab96b58a4dc7b5bcabf756..git_revision:9ee8b1d719c0d3c268e0e19282351ca78024af2d * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/df951e112c..2db94c0aa3 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/49df801dea..4682254401 * tools/skia_goldctl/linux: up6EUcZzuFZnm2JCEV1eW0TwCEAZjPcqtS2CsZN-3qAC..4iy6PO3bO0fujafbQ4I4eWhD8ErkBKf5xAnGzPrziIUC * tools/skia_goldctl/mac: eR_S1Urlw9be4WKiQcXwEcBn9KiDrWknodT82I6vw-kC.._9rtsnZzHBJ4851DtK33jnz7UzMZ77SqJ9sYpciBwiMC * tools/skia_goldctl/win: pLY1rCmGsL8vtV0wWxgqY3sOWkwIxuRh6PMIn_0BDcAC..NsVk6Er035r7JVK4foqbqAksO65XEzgIT9Bjwf0Q1q0C No update to Clang. Bug: angleproject:6090,angleproject:6198 Tbr: jmadill@google.com Change-Id: I30e0cc2e8d8820cca7abb589a35cbca09d325a30 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3045218 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi 0e1c90cf 2021-07-21T10:24:26 Translator: Validate function parameter qualifiers This change cleans up a confusion in EvqConst and EvqConstReadOnly, where the former was frequently used instead of the latter for function parameters. The change makes the following renames to make the intent of the relevant qualifiers clearer: EvqIn -> EvqParamIn EvqOut -> EvqParamOut EvqInOut -> EvqParamInOut EvqConstReadOnly -> EvqParamConst Bug: angleproject:4889 Change-Id: Idedd32c08a91de069b91b1657d6b783dddece04a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3041622 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 6e261453 2021-07-20T22:34:33 Vulkan: SPIR-V Gen: Fix I/O block arrays Since the qualifier on intermediate nodes are EvqTemporary, the code that autodeduced the block storage of I/O blocks was incorrectly assigning them std140 when an indexed I/O block array was encountered. This resulted in duplicate types in the SPIR-V. This is generally benign (other than creating an unnecessary type) except for gl_PerVertex as it adds BuiltIn decorations. gl_PerVertex may be an array in geometry and tessellation shaders. Bug: angleproject:4889 Change-Id: Iaa8e414ae01a4be127dc52df0e9406546b23d24c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3041621 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll d6a7b017 2021-07-21T12:24:52 Roll vulkan-deps from a42815069bad to 436e27578f75 (16 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/a42815069bad..436e27578f75 Changed dependencies: * spirv-cross: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross.git/+log/e51630595f..18f3cd6810 * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/f084bcfe2b..033768c24b * vulkan-headers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers.git/+log/0193e158bc..872fa25bb6 * vulkan-loader: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/99c0b1433a..a0c69f0d3a * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/d444097efd..194db6870e 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 jmadill@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/main/autoroll/README.md Bug: None Tbr: jmadill@google.com Change-Id: I802bb8f42ef0c62d8f17b47b6652b22c0d498541 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3043744 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Tim Van Patten 8a737c5d 2021-07-21T16:38:05 Capture/Replay: Update unpack state in Shared MEC The shared context state MEC performed by CaptureSharedContextMidExecutionSetup() needs to include updating the pixel unpack state before capturing texture contents. Otherwise, computeRowPitch() will compute the wrong value, leading to a crash in memcpy() when capturing Pokemon GO. Bug: angleproject:6203 Change-Id: Id1b2d0b4f3bc79e615778ba513f50aabaeb4a56e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3044356 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Nicolas Capens f8d277e4 2021-07-21T15:14:16 Document the need for is_component_build = false Setting `is_component_build = false` in the GN args is highly recommended for standalone builds on Windows, to support the common practice of moving libEGL.dll and libGLESv2.dll to an application's directory. It makes them self-contained instead of depending on other DLLs (like e.g. ext-ms-win-kernel32-sidebyside-l1-1-0.dll). One notable exception is that the non-component build still depends on d3dcompiler_47.dll, if the Direct3D backend is being used. Bug: angleproject:6202 Change-Id: Id13e902d3169b37ec00a8065d9063ec7d683134b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3042543 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@google.com>
Jamie Madill 1a4ac82a 2021-07-21T09:39:46 Vulkan: Disable border color on SwiftShader. A bug with floating point clamping is breaking some tests on SwS. Bug: angleproject:6200 Change-Id: Id608f5610a09e85f1bc41e38f20c6f7f0330f77b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3041741 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
angle-autoroll b129170f 2021-07-21T10:01:02 Roll SwiftShader from 7a7993b54e62 to 915947134128 (1 revision) https://swiftshader.googlesource.com/SwiftShader.git/+log/7a7993b54e62..915947134128 2021-07-20 mail@eliasnaur.com Add missing dependency for LLVM 10 CMake builds 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 jmadill@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/main/autoroll/README.md Bug: None Tbr: jmadill@google.com Change-Id: Icfed951a2265a1759554ad67685e26e7bd977b2b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3043778 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Brandon Schade f9dbd4ef 2021-03-29T16:31:26 Vulkan: Add Validation checks in FramebufferTextureEXT This change makes FramebufferTextureEXT set a validation error if <level> is not a supported texture level. This change also makes FramebufferTextureEXT set a validation error if <texture> is the name of a buffer texture. Test: KHR-GLES32.core.geometry_shader.layered_fbo.fb_texture_invalid_level_number Test: KHR-GLES32.core.geometry_shader.layered_fbo.fb_texture_argument_refers_to_buffer_texture Bug: angleproject:5579 Change-Id: Iedba8adc8faec02822374c3c1862b7abd031fcc2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2796152 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
Shahbaz Youssefi e9decf0c 2021-07-19T14:29:21 Vulkan: SPIR-V Gen: Support framebuffer fetch Bug: angleproject:4889 Change-Id: Ia75b45b5d0f6cb3b6ca8a8f8a987bb857e45ad33 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3040120 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Shahbaz Youssefi a3df80ea 2021-07-19T17:15:13 Translator: Validate AST consistency w.r.t function calls This ensures that tree transformations don't create invalid function calls. Additionally, it's validated that no raw function calls are issued, as that's deprecated. Bug: angleproject:4889 Change-Id: Iabbb493dcc0a5654bbb5f930e402bf3492c89979 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3040119 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Shahbaz Youssefi 05eb0a32 2021-07-19T16:14:34 Translator: Allow subpassLoad in AST in ESSL subpassLoad is available to desktop GLSL, but not GLSL ES. With this change, subpassLoad is made available internally to the AST so that framebuffer fetch's use of this built-in can be simplified. Additionally, this makes the tree more consistent in that there's no function call without a corresponding function declaration. A follow up change will add an AST validation to enforce this. Bug: angleproject:4889 Bug: angleproject:5454 Change-Id: I3fa502dc4b29eab7f34940466e283cffd218d746 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3040118 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Jeff Vigil 6210a9b3 2021-03-25T15:43:06 EGL: GLES: Implement GL_EXT_protected_textures Implement EGL_EXT_protected_content Images Add protected member to Images and Textures Add error when creating objects if not supported or does't match native buffer When creating siblings pass protected state Add extension caps Add Validation Add GetTexParameter and SetTextparameter Add protected to Texture and state Expand tests for images and textures Test: angle_end2end_test --gtest_filter=EGLProtectedContentTest Bug: angleproject:3965 Change-Id: I35a89b4e80bba6d9b6831c68e71630eef304dacb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2802852 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Jeff Vigil d2b659f9 2021-03-25T15:40:58 EGL: implement EGL_EXT_protected_content Context Add Validation check to Contexts and Surfaces Add Vulkan protected memory features and properties Add protected member to Surfaces and Contexts Implement hasProtectedContent in Vulkan Add QueueFamily helper, extent DeviceQueueMap Protected Swapchains always on for Android Add EGLProtectedContentTest Test: angle_end2end_test --gtest_filter=EGLProtectedContentTest Bug: angleproject:3965 Change-Id: I9352b1e594f71bb4e89cee7137a468940d186b1b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2800413 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi a8807cbf 2021-07-17T00:00:27 Vulkan: SPIR-V Gen: Support interpolateAt* The interpolateAt* builtins take their first argument as a pointer, so only the OpAccessChain result should be given to the corresponding SPIR-V instruction. A test is written in this change to handle interpolateAt* when given a swizzled lvalue, which is not representable in SPIR-V. This can be supported by having the AST transform: interpolateAtX(value.zy) to: interpolateAtX(value).zy which can be done right when the function is parsed and the AST node for it is created (by taking the swizzle out of the parameter and applying it to the node). However, swizzled lvalues as parameter to interpolateAt* is only allowed in desktop GLSL, and so the test is disabled. From the GLSL ES3.2 spec: > Component selection operators (e.g. .xy) may not be used when > specifying interpolant. Bug: angleproject:4889 Change-Id: I043969f22011e6171c7ae225ded3a5013e8cfa4e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3035588 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Jamie Madill fd0579ac 2021-07-20T09:46:27 trigger.py: Add -realm to swarming args. This should fix recent permissions changes. Bug: chromium:1231092 Change-Id: Ie9b39449c861f3ab774334c4d392d1700c638ea9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3040565 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Andrii Shyshkalov <tandrii@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Ivan Murashov 7108f83c 2021-07-20T13:16:44 GCC: Remove double declaration of ContextSet After the CL https://chromium-review.googlesource.com/c/angle/angle/+/2965780 the build with GCC failed with error: /third_party/angle/src/libANGLE/Display.h:325:37: error: declaration of 'typedef class std::__1::set<gl::Context*> egl::Display::ContextSet' changes meaning of 'ContextSet' [-fpermissive] /third_party/angle/src/libANGLE/Display.h:75:7: note: 'ContextSet' declared here as 'using ContextSet = class std::__1::set<gl::Context*>' To fix the error the double declaration of ContextSet is removed. Bug: angleproject:5878, chromium:819294 Change-Id: Id9e52061af53ea18dd5d13b960daaa67a14f61ca Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3038804 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill e635f6c2 2021-07-20T08:41:07 Add -Wno-implicit-fallthrough to GLES 1 CTS. Bug: angleproject:6198 Bug: chromium:995993 Change-Id: Ib8eb640d567c63d85645f64cc870a286227fb9c6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3040160 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jeff Gilbert afda22b0 2021-07-19T16:46:50 Define ANGLE_IS_64_BIT_CPU in common/platform.h. This is more reliable and reduces reliance on build flags. Vendoring into Firefox, it's not trivial to replicate build flags, but C++-native checks always work. Bug: angleproject:6186 Change-Id: Idafd4ef1954efbfa79eae86cddfaa8f2e3992296 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3036589 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
angle-autoroll d100187f 2021-07-20T10:01:01 Roll SwiftShader from c6747d98397d to 7a7993b54e62 (16 revisions) https://swiftshader.googlesource.com/SwiftShader.git/+log/c6747d98397d..7a7993b54e62 2021-07-20 capn@google.com Remove -Xclang -fuse-init-array from the Android build flags 2021-07-19 capn@google.com Move remaining Subzero x86 traits to their corresponding class 2021-07-19 capn@google.com Move Subzero Inst traits to the Inst header/source 2021-07-19 capn@google.com Move Subzero Assembler traits to the Assembler header/source 2021-07-19 capn@google.com Refactor AsmAddress creation 2021-07-19 capn@google.com Make AsmAddress producing methods static 2021-07-19 capn@google.com Increase Subzero x86-64 stack alignment to 16 2021-07-19 capn@google.com Fix RequiredStackAlignment initialization 2021-07-19 capn@google.com Rename Subzero Address to AsmAddress 2021-07-19 capn@google.com Rename Subzero traits Operand to AsmOperand 2021-07-19 capn@google.com Specialize Subzero X86 backends for 32- or 64-bit 2021-07-19 capn@google.com Don't templatize based on X86 traits 2021-07-19 capn@google.com Deduplicate X86 condition codes 2021-07-19 capn@google.com De-templatize the IceAssemblerX86Base class 2021-07-19 capn@google.com Duplicate X86 headers into X8632 and X8664 ones 2021-07-19 capn@google.com Define specialized PoolTypeConverter constants in the header 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 jmadill@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/main/autoroll/README.md Bug: None Tbr: jmadill@google.com Change-Id: I6a3818c2961e05bbfbeb5efac2ce9e495f3a832d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3040826 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 748a6d31 2021-07-20T10:01:52 Roll vulkan-deps from 7c4121a2cfd0 to a42815069bad (28 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/7c4121a2cfd0..a42815069bad Changed dependencies: * glslang: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang.git/+log/4b7b86d568..9158061398 * spirv-cross: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross.git/+log/be3988b13c..e51630595f * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/640b17b5fb..f084bcfe2b * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/8b83ca019c..d444097efd 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 jmadill@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/main/autoroll/README.md Bug: None Tbr: jmadill@google.com Change-Id: I32ca60c8087c6107f39ed0eb13baec3b997beaa5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3040923 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi 32196d8f 2021-07-16T14:49:08 Vulkan: SPIR-V Gen: Support built-ins with out parameters Some built-ins have out parameters; modf, frexp, uaddCarry, usubBorrow, umulExtended and imulExtended. In SPIR-V, they are translated as such: - modf and frexp: Returns the same result as GLSL, with a pointer to store the output parameter. Since SPIR-V cannot create pointers to swizzles, a temp variable is used in that case. - uaddCarry, usubBorrow, umulExtended and imulExtended: These return a struct in SPIR-V, which contains the two output parameters; with lsb in field 0 and msb in field 1. Bug: angleproject:4889 Change-Id: Ic5114f74b9c1013093007e91939f78d5218f2a07 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3036088 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Jeff Gilbert 6a86d207 2021-07-16T18:28:13 Add a feature flag allowES3OnFL10_0 to allow ES3 on d3d10.0. (Originally by Jeff Muizelaar <jrmuizel@gmail.com>) This lets us run WebRender on devices that only support D3D 10.0. Firefox bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1620075 Bug: angleproject:6189 Change-Id: I77c09851c50dee206702b1da25a9ef0c05eeb6c6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3036598 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Jeff Gilbert <jgilbert@mozilla.com>
Jeff Gilbert 4b74189b 2021-07-19T16:19:12 Add missing header to build config. Bug: angleproject:6185 Change-Id: Ia3292935489e808bc53a6df3723d81355789b460 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3036588 Commit-Queue: Jeff Gilbert <jgilbert@mozilla.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 60d76ec1 2021-06-25T17:35:22 Trace Tests: Autodetect Goma. Checks for the existence of the compiler_proxy process. Bug: angleproject:6102 Change-Id: I58848dc7cd62aeb65c28990212f29df6ff66db1a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2989672 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Kenneth Russell b3cbfd55 2021-07-07T12:31:57 Fix multiple end2end crashes in direct-to-MSL compiler. This set of changes: - Adds a single place (CompilerMtl::useDirectToMSLCompiler) where the direct-to-MSL compiler can be enabled, still at compile time rather than run time. It is still disabled by default. - Initializes MTLWaitableCompileEventImpl::mShader, without which all shader compiles crash. - Fixes a mismatch of the ANGLERasterizerDisabled variable name in the generated MSL. - Removes the transform feedback bindings as an argument to the vertex shader's main0(). Transform feedback support needs to be reimplemented in this compiler backend. - Added an option to the DriverUniform class to emit as either an interface block or a struct. The direct-to-MSL backend assumes it is a struct. - Disable variable reference validation when referencing either sample mask or rasterizer discard functionality in the shader. - Disable struct usage validation when inserting references to ANGLE_TextureEnv. This occurs during pipeline rewriting and it's infeasible to disable it at that point, so disable it during pipeline rewriting - which means it's disabled for all shaders. - For angle_end2end_tests, disable the file API hooking which disables the Metal shader cache. This speeds up the tests significantly - by roughly a factor of 5. With these changes, several hundred angle_end2end_tests run without any assertion failures, though still with many test failures. The next crash is in: GLSLTest.NamelessScopedStructs/ES2_Metal and will likely require a larger bug fix, or more changes to be upstreamed from WebKit's repository. Bug: angleproject:5505 Change-Id: Ia1ea9a13867f00035d4aeccf907fd032255588e3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3010486 Commit-Queue: Kenneth Russell <kbr@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Jamie Madill 2b86e2d6 2021-07-19T10:30:57 GN: Update dcheck/assert conditions. In preparation for a Chromium change that makes dchecks enabled by default in Release builds, we'll keep ASSERT disabled in Release by default. We add a new flag 'angle_assert_always_on' for controlling ANGLE ASSERT behaviour. Also slightly refactors the direct SPIR-V generation GN. Chromium CL: https://crrev.com/c/2893204 Bug: chromium:1225701 Change-Id: I01a6def28d7c21e771e9800889a6b9c274972de2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3035447 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Dirk Pranke <dpranke@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 8c1cbc5a 2021-07-16T14:01:53 Implement EGL_KHR_mutable_render_buffer in the front-end. Note that we do not currently expose any mutable configs. Bug: b/192352791 Change-Id: Ib97f7889fedd91d09ef32dc7e7494ea4476cd7bd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3035583 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Tim Van Patten <timvp@google.com>