Log

Author Commit Date CI Message
Shahbaz Youssefi d664543f 2023-09-01T23:11:59 Metal: Move setupDraw and associated code to executable Last bits of state left in ProgramMtl that are now moved to ProgramExecutableMtl, and now ContextMtl does not reference the program at all. This fix was necessary for a follow up change that allows the program to be modified while the executable is installed, and the metal backend was crashing after a failed relink due its direct access to the program. Bug: angleproject:8297 Change-Id: Iadf623bf6baf612767ff372adee2e7f4eeedb593 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4833624 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Geoff Lang 0ff71d5e 2023-09-05T12:55:50 D3D: Fix FramebufferD3D reading the wrong program executable Read the currently bound program executable instead of the possibly incomplete one from the currently bound program. Bug: angleproject:6358 Bug: angleproject:8297 Change-Id: Ieda50767b20562436ea9f9bf541965205b578017 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4842929 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Geoff Lang 93402d6f 2023-09-05T12:57:16 D3D: Move the program serial into ProgramExecutableD3D The program executable tracks the specific shaders being used which are no longer tied to the ProgramD3D. Bug: angleproject:6358 Bug: angleproject:8297 Change-Id: Ic34b4f229de7fb7daea8c6ef906bf87d8c0b37d9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4842930 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Roman Lavrov dcd62fc4 2023-08-31T15:35:39 Trace perf: clear blob cache before each test Cache eviction can happen during warmup causing cache misses while testing. Significant cycles are being spent evicting cache entries and throwing off power measurement. Since this is already a synthetic environment where we're lumping in a bunch of caches together, clear it between tests so that warmup correctly populates and no cache misses occur within the test run. If we clear the cache before warmup and everything fits, no eviction happens and we hit the cache every time post-warmup. This also improves reproducibility of perf results as they no longer depend on the specific cache state before running a particular test, the order in which tests are run etc. Also fixes acessing unset var when running without --power. Bug: b/298028816 Change-Id: I704073f70d8859e19a78b23d397e68f5836f3bb2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4834073 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Roman Lavrov <romanl@google.com>
Alexey Knyazev 9666d4d5 2023-09-01T00:00:00 Disallow dynamic indexing of SecondaryFragData in WebGL 2.0 WebGL 2.0 disallows dynamic indexing of gl_FragData in ESSL 1.00 shaders. By extension, this rule should also apply to gl_SecondaryFragDataEXT. Bug: angleproject:1085 Change-Id: I5859356f72d25c4ffd1db92466dffc6eeacb6a64 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4843628 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Alexey Knyazev 17c4741d 2023-09-01T00:00:00 Metal: Disable blending for masked out attachments Avoid pipeline failure when the following conditions are simultaneously true for the same color attachment: * Dual-source blending is enabled * All color channels are masked out * There is no bound fragment output Bug: angleproject:8015 Change-Id: Ie60f4f6dff5a9023677ea9b581e920b0e1e53532 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4836558 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
angle-autoroll e72efa27 2023-09-05T10:01:20 Roll vulkan-deps from 4b7a5f2a3522 to f2f4bb6f20ec (5 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/4b7a5f2a3522..f2f4bb6f20ec Changed dependencies: * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/4c16c35b16..3cc7e1c4c3 * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/b89f48ae89..bea5beb302 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 angle-team@google.com,syoussefi@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: syoussefi@google.com Change-Id: Id8da060d2c5e329f688d7822e5c5f7836e0ca5f6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4841854 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll b6221604 2023-09-05T07:44:13 Roll Chromium from 97f14c8287da to e89c33139c50 (340 revisions) https://chromium.googlesource.com/chromium/src.git/+log/97f14c8287da..e89c33139c50 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 angle-team@google.com,syoussefi@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/e14e0cc3b6..b60aaa976e * testing: https://chromium.googlesource.com/chromium/src/testing/+log/59ea31a9c9..6830d4d2f7 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/693e0b3121..6715758ed9 * third_party/r8: W1_I3qPD8AUfHBTSgUNJHz0yx3HgtIRHttr8eSt81wsC..pPu68_FQSs0xNMEZVIArwK8p8SkQ5XgGXxrBGVOI5FQC No update to Clang. Bug: None Tbr: syoussefi@google.com Change-Id: I32ad0d444ace090e6d66294362c9b9deeb02cd6a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4841315 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Yuly Novikov e691a4ed 2023-09-04T15:35:39 Delete obsolete VUID VUID-VkGraphicsPipelineCreateInfo-topology-08890 was renamed to VUID-VkGraphicsPipelineCreateInfo-topology-08773 Bug: angleproject:8237 Change-Id: Icb3f3f28664d0beac31f2541d90d5dbbada9a3b6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4840195 Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll ab9bbb9b 2023-09-04T10:01:19 Roll vulkan-deps from 15007d22798e to 4b7a5f2a3522 (5 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/15007d22798e..4b7a5f2a3522 Changed dependencies: * glslang: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang.git/+log/a1f8cd429f..e3a711b6fc * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/9b923f7cc3..4c16c35b16 * vulkan-headers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers.git/+log/a0c76b4ef7..2634c969d7 * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/8dbf1df09f..b89f48ae89 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 angle-team@google.com,syoussefi@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: syoussefi@google.com Change-Id: Ib7b43e2f8c5c845dba770b1e4815d125a66d9300 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4838127 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 1fb53639 2023-09-04T07:02:46 Roll Chromium from 613933d34730 to 97f14c8287da (765 revisions) https://chromium.googlesource.com/chromium/src.git/+log/613933d34730..97f14c8287da 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 angle-team@google.com,ynovikov@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/0d534543c1..e14e0cc3b6 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/5c6cc93b87..59ea31a9c9 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/dd422858c3..f16ca3c78e * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/e7c4e2ade9..693e0b3121 * third_party/fuchsia-sdk/sdk: version:14.20230826.1.1..version:14.20230902.2.1 * third_party/libc++abi/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/aae4ca0f54..331847d7a5 * third_party/r8: TBaeKaSTY2ttKx2JSFuWiQ8Na80KHZwLEgSAvT1DBJ0C..W1_I3qPD8AUfHBTSgUNJHz0yx3HgtIRHttr8eSt81wsC * third_party/siso: git_revision:8283bbc1ae9d742d22d3a6e98b7e356b3065a497..git_revision:c15d52005df612e58accf13efde4d99ffcdfe38f No update to Clang. Bug: None Tbr: ynovikov@google.com Change-Id: I7212a3e4eea4ab3e95802f7713bb84f4d31c9e16 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4838117 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi ebf1e716 2023-08-31T17:19:44 Cache transform feedback varying names in the executable Currently, ANGLE actually does a full link of the programs inside PPOs. This was never the intention of the spec (hence why an explicit link doesn't exist). During this link operation, the transform feedback varying names are used, and they are retrieved from the program itself. This is not correct, because the transform feedback varyings may have changed, the program may have failed to relink, and the program pipeline is expected to continue functioning using the "installed" executable. Bug: angleproject:5486 Bug: angleproject:8297 Change-Id: I583dbd2abcc51e8536b4c460b92211bdddebda16 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4834055 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Alexey Knyazev 179bd776 2023-09-01T00:00:00 GL: Adjust disableRenderSnorm condition Current Mesa drivers do not pass the tests when using OpenGL ES contexts. Bug: angleproject:8315 Change-Id: I00e931d0b97917fd7fe02890290f2938d7c872e7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4834483 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Charlie Lao 962fdf7b 2023-08-31T17:44:51 Add templated BinaryOutputStream::writeVector and writeStruct To avoid repeated code pattern, this CL adds templated BinaryInputStream::readVector and readStruct and BinaryOutputStream::writeVector and writeStruct, that does the static assertion to ensure they are trivially copyable. readIntVector/writeIntVector is removed. This CL also padding warning for ProgramExecutable::PODStruct to avoid potential Msan complain. Bug: b/296433003 Change-Id: I8e718b41cde898960b9e86a2d7d1bc5a837fe561 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4834700 Reviewed-by: Roman Lavrov <romanl@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com>
Mark Lobodzinski 4e1053b9 2023-09-01T08:35:21 Tests: Limit CapturedTest to Vulkan backend Test: angle_end2end_tests --gtest_filter=CapturedTest.MultiFrame Bug: b/298612441 Change-Id: I865186ba544d3b72af700a9f2cf22aef719e875a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4834704 Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Mark Łobodziński <mark@lunarg.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Roman Lavrov 55054e76 2023-09-01T11:35:36 Traces: temporary patch to log zlib message on failure Bug: b/296921272 Change-Id: I0111889dba2f57650caf26a0b86a6669b231f956 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4833616 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Roman Lavrov <romanl@google.com>
angle-autoroll c4c880ad 2023-09-01T14:14:35 Roll VK-GL-CTS from a745d5c29c56 to 385ae8bed1f9 (7 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/a745d5c29c56..385ae8bed1f9 2023-09-01 lorenzo@khronosgroup.org Update externals and fix mesh_shader tests with fragment_shading_rate 2023-09-01 ziga@lunarg.com Fix tessellation shaders support check in shader object linked tests 2023-08-31 ziga@lunarg.com Add pipeline variation of shader object misc tests 2023-08-31 syoussefi@google.com Prepare for automated clean up 2023-08-31 ziga@lunarg.com Fix nextStage in shader object linked tests 2023-08-31 ziga@lunarg.com Fix initializing glsl tests 2023-08-31 ziga@lunarg.com Fix gen_framework.py using unsupported extensions If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vk-gl-cts-angle-autoroll Please CC angle-team@google.com,ynovikov@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: ynovikov@google.com Change-Id: Ib582b26d1ee123a6f533cdfb67e5a1ad95106618 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4833688 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Roman Lavrov 18e2038e 2023-09-01T12:59:51 Revert "Gold tests: add temporary logging of angledata hashes" This reverts commit 4fffc9938375f2b84632eb661fc175457fb2ee77. Reason for revert: Hashes are ok - http://b/296921272#comment3 Original change's description: > Gold tests: add temporary logging of angledata hashes > > Should allow us to determine whether corruption happens between CAS and > local files on bots or something's wrong with the test harness. > > Bug: angleproject:8307 > Change-Id: I8a599777a38d7a1b5c56143eb8d02829895175a7 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4777836 > Commit-Queue: Yuly Novikov <ynovikov@chromium.org> > Reviewed-by: Yuly Novikov <ynovikov@chromium.org> > Auto-Submit: Roman Lavrov <romanl@google.com> Bug: angleproject:8307 Change-Id: Idae3bf3bac810af63e44c0c7553e0c6e9bb6af5b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4834062 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Roman Lavrov 2ef238bc 2023-09-01T13:01:23 Revert "Traces: add temporary debug info to LoadBinaryData" This reverts commit 0d701c81d01e18ae5741e9e8843441f24697f04f. Reason for revert: CRC is ok: http://b/296921272#comment3 Original change's description: > Traces: add temporary debug info to LoadBinaryData > > Unable to repro the bug by triggering tasks on swarming, hopefully this > eventually catches something. > > Bug: angleproject:8307 > Change-Id: I34dd0c8a9e82e54f3a07e2d7a249ddfaa543bae7 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4794110 > Reviewed-by: Cody Northrop <cnorthrop@google.com> > Commit-Queue: Roman Lavrov <romanl@google.com> Bug: angleproject:8307 Change-Id: I0f04baf5241e99d7c2514bcdc583e58e2fd51535 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4834063 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Roman Lavrov <romanl@google.com>
angle-autoroll 7df4aa10 2023-09-01T10:01:36 Roll vulkan-deps from 988fe1c529b0 to 15007d22798e (6 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/988fe1c529b0..15007d22798e Changed dependencies: * glslang: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang.git/+log/adfcaba7ae..a1f8cd429f * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/70be16c58d..8dbf1df09f 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 angle-team@google.com,ynovikov@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: ynovikov@google.com Change-Id: I6a64d990a68d842c61d7fb66e3531b43f01d70af Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4834703 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 5f36f55a 2023-09-01T07:15:20 Roll Chromium from f59e85c23631 to 613933d34730 (499 revisions) https://chromium.googlesource.com/chromium/src.git/+log/f59e85c23631..613933d34730 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 angle-team@google.com,ynovikov@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/115a707991..0d534543c1 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/ff8dee88bc..5c6cc93b87 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/b8c4f2d99a..dd422858c3 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/427f0f43ad..e7c4e2ade9 * third_party/libc++abi/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/3d83ca7bd2..aae4ca0f54 * third_party/libunwind/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git/+log/76e621a897..a321409e66 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/ec53b06251..702d2ac502 * tools/protoc_wrapper: https://chromium.googlesource.com/chromium/src/tools/protoc_wrapper/+log/30392509cf..b5ea227bd8 No update to Clang. Bug: None Tbr: ynovikov@google.com Change-Id: If21513bdaef0cc71c51f286f7188434749764684 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4834702 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Alexey Knyazev 9624db05 2023-08-21T00:00:00 Validate missing fragment outputs for dual-source blending * A secondary fragment output must be declared when dual-source blending is enabled in WebGL contexts. * Omitting locations for multiple fragment outputs is not allowed in WebGL contexts. Bug: angleproject:1085 Change-Id: I57febdc02c9ccc571971a81b6671869f19b0aa96 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4834672 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Charlie Lao 7c3c7b7b 2023-08-29T16:40:50 Add more test for GL_SRGB8 format And follow up changes from crrev.com/c/4819053 Bug: b/298037344 Change-Id: Ib27cc2fb8418d05d0b25f4abbdcf052d1f51c9ca Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4824046 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com>
Yuly Novikov 262edacc 2023-08-31T18:45:45 Skip 2 DrawCallPerfBenchmark tests on Pixel 6 angle_perftests.DrawCallPerfBenchmark.Run/gles_offscreen_attrib_change angle_perftests.DrawCallPerfBenchmark.Run/gles_offscreen_prog_change Bug: b/298407224 Change-Id: I03e9f5daead86447cea456abc01cb46b229c8bbe Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4834211 Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Roman Lavrov <romanl@google.com>
angle-autoroll 1192e5e8 2023-08-31T15:03:53 Manual roll vulkan-deps from a446c6320b6b to 988fe1c529b0 (28 revisions) Suppress new VUIDs: VUID-VkGraphicsPipelineCreateInfo-topology-08773 VUID-VkDescriptorImageInfo-imageView-07796 Manual roll requested by ynovikov@google.com https://chromium.googlesource.com/vulkan-deps.git/+log/a446c6320b6b..988fe1c529b0 Changed dependencies: * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/b6893ccdfb..9b923f7cc3 * vulkan-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/6087a58444..389110e460 * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/b2f5094203..70be16c58d 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 angle-team@google.com,ynovikov@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: angleproject:8318, angleproject:8237, angleproject:8334 Change-Id: I4b868b67b0c8158179fee61018933104c4ed55d3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4832731 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Shahbaz Youssefi 33be2590 2023-08-30T21:58:54 Move transform feedback buffer mode to program state This is link input and should persist between relinks. A copy of it is still left in ProgramExecutable as it is used later after the executable is installed (and the program might get relinked; a future change reworks things so that the installed executable and the originating program are independent). Bug: angleproject:8297 Change-Id: Ifba6ac18ea09fd804b89d8fdb14930ef3d839cf4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4827764 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 74c8b74c 2023-08-31T15:47:09 Manual roll Chromium from 90200ab2e92a to f59e85c23631 (744 revisions) Manual roll requested by ynovikov@google.com https://chromium.googlesource.com/chromium/src.git/+log/90200ab2e92a..f59e85c23631 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 angle-team@google.com,ynovikov@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/5455fbf6e1..115a707991 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/1b199ecbed..ff8dee88bc * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/56586c9caf..7affa303ea * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/69c19224a7..b8c4f2d99a * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/b9d7c85582..427f0f43ad * third_party/r8: _AUNqTBtlUIMSIQEV31lcrlDaaUdwQdUUdp4BtPoOUMC..TBaeKaSTY2ttKx2JSFuWiQ8Na80KHZwLEgSAvT1DBJ0C * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/87404e5f97..9fc887ccde * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/b33780b146..51e8fbac5d * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/0a846cd886..ec53b06251 No update to Clang. Bug: angleproject:8318 Tbr: ynovikov@google.com Change-Id: I81fb29eeb41aecfdbefc0cd3f1da0c6a809b6568 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4832734 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Shahbaz Youssefi 6ff209bc 2023-08-30T00:02:30 Clean up InfoLog usage during link The info log doesn't really belong to ProgramExecutable; it belongs to ProgramState. However, it is placed there for convenience since many functions access it. This change cleans up usage of InfoLog so the one in ProgramExecutable is consistently used, but also that is turned into a reference to ProgramState's InfoLog. This is necessary for a follow up change that restores the previous executable on link failure (and would thus otherwise lose the info log of the failing link). Bug: angleproject:8297 Change-Id: I088408e3fce9ebb35b1ec4ad3dc599bdb90bf5c5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4825624 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Jiawei Shao d4756a94 2023-08-29T15:26:15 D3D11: Fix register index of read-only storage images On D3D11 read-only storage images should consume SRV registers ("t") instead of UAV registers ("u"), so baseUAVRegister shouldn't be related to read-only storage images. fixed: angleproject:4404 Bug: angleproject:7121 Change-Id: I3ca35497992de599d0427fae10d750aff7cf7d9e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4819797 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Stephen White <senorblanco@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 0df4adbd 2023-08-28T15:27:11 Remove link results from program hash The program hash should be independent of link output. The fragment shader output locations were being hashed in the program hash, but that should be unnecessary, as they are derived from the link input, which is already entirely present in the program hash. Bug: angleproject:1085 Bug: angleproject:8297 Change-Id: I4befd45c69c2f0d4d6d8b620167a07eedffd5098 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4817829 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Yuly Novikov cd359250 2023-08-31T14:51:56 Don't sync reclient on linux arm64 CIPD package not available Bug: angleproject:8309 Change-Id: I502e55a1da00b6624e5d07b2c353ae9360dc44e1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4831493 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Steven Noonan <steven@uplinklabs.net>
Roman Lavrov ed7e05be 2023-08-31T10:44:05 Cleanup: remove tests.csv Looks like it was added accidentally in https://crrev.com/c/4189028 Bug: b/242419750 Bug: angleproject:7882 Change-Id: I1d92b4a7001a1418bfea77e2b0945ee7a070dad5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4832095 Auto-Submit: Roman Lavrov <romanl@google.com> Commit-Queue: Roman Lavrov <romanl@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Steven Noonan 0b20cd6a 2023-08-28T17:45:00 d3d11: avoid exit-time-destructor warning Applies to use_custom_libcxx=false on Windows builds. On MSVC's C++ runtime, std::mutex has a destructor. Bug: angleproject:8327 Change-Id: I6118753569ce0529015e82673571c961a38f30e6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4819793 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Steven Noonan <steven@uplinklabs.net> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang aed8ec2a 2023-08-22T16:34:10 Handle Qualcomm's Windows vendor ID. The vendor ID chosen to represent Qualcomm was their PCI database ID. On Windows, Qualcomm devices are ACPI and use a different ID. Since these platforms don't inersect at all (yet), if-def the Qualcomm vendor ID per-platform so that all the helper functions continue to work. Bug: chromium:1464799 Change-Id: Iee8e823ab54399ad2c2f21499b5d581be5c1c0c9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4804367 Reviewed-by: Steven Noonan <steven@uplinklabs.net> Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Rafael Cintron <rafael.cintron@microsoft.com>
Jiawei Shao 33472e77 2023-08-30T09:45:43 D3D11: Fix the compilation of vertex shader with storage image This patch adds the missing declaration of storage images in vertex shader. With this patch the vertex shaders with storage image declarations can be correctly compiled on D3D11 backends. Bug: angleproject:7121 Change-Id: I32b8c632df83a64a34318e9668e9aa8d376cca56 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4819792 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Roman Lavrov 2ed7d887 2023-08-31T09:42:55 Tests: EGLMakeCurrentPerfTest loads GLES Following https://crrev.com/c/4812049 which makes warmup call glFinish that requires GLES to be loaded. It's the only test that hits this - LoadUtilEGL isn't normally called by tests. Breaks on perf bots. Bug: b/297418214 Change-Id: Ib6a7eb863f75e6f461ea021d30dc57baf23afbdc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4832092 Commit-Queue: Roman Lavrov <romanl@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Yiwei Zhang 6258d479 2023-08-30T22:11:38 Vulkan: disallow pbo copies when offset is incompatible with vulkan Per spec of vkCmdCopyImageToBuffer: If srcImage does not have either a depth/stencil or a multi-planar format, then for each element of pRegions, bufferOffset must be a multiple of the texel block size This change disallows pbo copies if violating that spec vu. Bug: b/297927542 Test: org.skia.skqp.SkQPRunner#UnitTest_TransferPixelsFromTextureTest Change-Id: I7df4bee5fa574c44dd872f7225567049c5562a99 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4827694 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Yiwei Zhang <zzyiwei@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Charlie Lao 519d330c 2023-08-28T15:41:18 Add GL_RGBX8_SRGB_ANGLEX and GL_BGRX8_SRGB_ANGLEX formats If app creates AHB with sRGBX format, and then create a EGLImage, Image::initialize() will retrieve the sized format from AHB, which is GL_RGBX_ANGLE, and then try to convert to sRGB color space. The bug here is that GetNonLinearFormat will pick GL_SRGB8 for all these formats :GL_RGB8, GL_BGRX8_ANGLEX, GL_RGBX8_ANGLE. This means that different AHBS with these three different format will end up createing a tetxure with same format which sRGB. I think the reason somone did it this way initially simply because there is no sRGB corresponding format available for BGRX8 and RGBX8. This CL adds sRGB internal version of these two formats, thus make it straight forward to pick the correct sRGB format. The other change here is for AHBs, right now we are always force mRequiredImageAccess to be Renderable. This actually workedaround the bug that mentioned earlier that we are picking the wrong format. Because of forced renderable, we end up with SRGB fallback to SRGBA. But external images should not fallback, we should use its existing format as is since it can be accessed via AHB interface directly. Bug: b/298037344 Change-Id: I6119c4015cc5bf0effdf0530cb756b6c4656c38f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4819053 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com>
Geoff Lang 3e333c7b 2023-08-30T13:25:08 Check that postTask is non-null before calling it. ANGLE's platform methods are global but Chrome treats them as if they are per-display. If multiple displays are created, Chrome can reset the methods for all displays during angle::ResetPlatform. ANGLE checks that postTask is non-null before creating DelegateWorkerPool but not before each use of postTask. Bug: chromium:1476679 Bug: chromium:1475471 Change-Id: Ie84db48d6c85a1befa604224af6c30bd3515aadf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4827983 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Josip Sokcevic 8330fcd3 2023-08-30T07:22:09 [DEPS] Use Var instead of {} in DEPS New presubmit checks in DEPS need to efficiently parse DEPS file in order to detect drifts between DEPS and Git submodules. Bug: chromium:1476115 Change-Id: Ie62762a88073a098068fc76690ea9c95be98de73 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4827482 Auto-Submit: Josip Sokcevic <sokcevic@chromium.org> Commit-Queue: Josip Sokcevic <sokcevic@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Jonah Ryan-Davis 1ab5d01d 2023-08-29T13:31:07 Metal: Fix dropped out arguments from functions with many args. RewriteOutArgs has an early-exit if it spots a potentially aliased arg. It's also responsible for marking out args as references, which caused an issue in Google Earth. Removing the early-exit fixes both issues. Bug: chromium:1474736 Change-Id: Ib68dd3f3e2e0a1e773e4e09edcdfa3a4bdfc1ef2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4823006 Commit-Queue: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Mohan Maiya 0d67d1bb 2023-08-29T11:19:35 Vulkan: Support EGL_EXT_gl_colorspace_bt2020 Add support for following 3 BT2020 colorspace extensions 1. EGL_EXT_gl_colorspace_bt2020_hlg 2. EGL_EXT_gl_colorspace_bt2020_linear 3. EGL_EXT_gl_colorspace_bt2020_pq Bug: angleproject:8330 Tests: EGLSurfaceTest.CreateWithEGLConfig1010102Support* Change-Id: I3a6ca0daa9ad4400da3834f43678b0db816ba6e4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4824045 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: mohan maiya <m.maiya@samsung.com>
Phan Quang Minh e408fc53 2023-08-09T06:25:38 Add support for EGL_MESA_platfrom_surfaceless extension This adds support for the EGL_PLATFORM_SURFACELESS_MESA platform type to allow applications to obtain an EGLDisplay that's independent of any native windowing systems. This will be used in Ozone/Wayland to create surfaceless EGLDisplays. Bug: angleproject:8331 Change-Id: If2ae7a811cfa63ab9f49d54d78f5a3782c8c2fed Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4749337 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Phan Quang Minh c8fe53ab 2023-08-09T06:25:38 egl: Fix device fallback if native display eglInitialize fails Mesa's EGL implementation may return an EGLDisplay that fails to initialize (e.g. an X11-backed EGLDisplay for `EGL_DEFAULT_DISPLAY` that fails to eglInitialize if the X server is inaccessible). Handle this case properly to ensure that ANGLE will properly fall back to using EGL devices. Bug: angleproject:8331 Change-Id: I629e95fc22f5618d10be082a3897857bcc79f890 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4749335 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll bc7fc399 2023-08-30T07:00:35 Roll Chromium from e2ad2e99dc98 to 90200ab2e92a (420 revisions) https://chromium.googlesource.com/chromium/src.git/+log/e2ad2e99dc98..90200ab2e92a 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 angle-team@google.com,ynovikov@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/7710487af5..5455fbf6e1 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/475ae9f346..1b199ecbed * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..69c19224a7 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/6c8d2a9ce5..b9d7c85582 * third_party/jdk: GCFtf5t6M4HlrHj6NXedHbpHp2xjgognF8ptNci4478C..0yjD6s5XYtcGAQoObIys7xs2ThkudwxJwS-2ZNP0SFEC * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/13a5d4e170..87404e5f97 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/4719a5511c..0a846cd886 No update to Clang. Bug: None Tbr: ynovikov@google.com Change-Id: Ib5d8236b95cf9393a8aa394d6e18aeaaa7041215 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4824754 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi b9e9c58b 2023-08-28T15:25:59 Move pre-link program state to ProgramState Bug: angleproject:8297 Change-Id: I2522bbe6250a0527112fc8161f62c94f2457555b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4817828 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Alexey Knyazev 8b0af482 2023-08-21T00:00:00 Validate active draw buffers for dual-source blending Fail if more than MAX_DUAL_SOURCE_DRAW_BUFFERS_EXT draw buffers are enabled when dual-source blending is used. Drive-by: Do not invalidate draw state on changing blend equations if KHR_blend_equation_advanced is not enabled. Bug: angleproject:1085 Bug: angleproject:7177 Change-Id: Ieff80ce777c53b1d8183e1d0a52b7d2224347448 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4823164 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Shahbaz Youssefi 6698fb69 2023-08-25T22:21:32 Vulkan: Stop passing both ProgramExecutable and ...Vk around Now that ProgramExecutableVk is accessible through ProgramExecutable. Bug: angleproject:8297 Change-Id: Ie08770ef97400195d63b87f2d4b7e2a2c8f4ad24 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4812147 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Shahbaz Youssefi ae67a24b 2023-08-25T14:51:50 Metal: Move program state to ProgramExecutableMtl Bug: angleproject:8297 Change-Id: I1d13f7aee1ff5b0ce799b486d8a57c83c4481983 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4812047 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Shahbaz Youssefi 4c0c837e 2023-08-25T13:46:36 GL: Move program state to ProgramExecutableGL Bug: angleproject:8297 Change-Id: Ie6a1d536c93f841c792052c58249952e8468348d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4811439 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Shahbaz Youssefi d9672ada 2023-08-25T11:37:09 Move left over link state to ProgramExecutable Previously, only things that needed sharing with ProgramPipeline was moved to ProgramExecutable, and in particular only state that the Vulkan backend needed to access. In truth, everything that's a result of link needs moving. Bug: angleproject:8297 Change-Id: I1ca01c5dedbfc62ddcfb4ef945336ceb8ad0f1c4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4812044 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Geoff Lang 7c72fbe9 2023-08-22T16:22:12 Return the vendor string as hex when it is unknown. ANGLE's vendor strings would include the generic "Unknown" when we did not recognize the driver's vendor ID. Print the vendor ID so that we can future-proof ourselves against new GPU vendors. Bug: chromium:1464799 Change-Id: Idac67b369bc95c3c49eb754e8c681d5930a1f494 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4804365 Reviewed-by: Rafael Cintron <rafael.cintron@microsoft.com> Commit-Queue: Rafael Cintron <rafael.cintron@microsoft.com>
Mike Schuchardt 4d4795b2 2023-08-21T15:50:23 Add build overrides for Vulkan Utility Libraries This is a new dependency for Vulkan-ValidationLayers Bug: angleproject:8318 Change-Id: I9e7b68e4a4fc0605d328c0a69c73d3e884b86cf1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4798194 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Shahbaz Youssefi 3822ea3a 2023-08-24T22:42:43 D3D: Move program state to ProgramExecutableD3D Bug: angleproject:8297 Change-Id: Ieead87d2f0ebe5937f262f598443a00504ea1492 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4812139 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Mohan Maiya af30f36b 2023-08-29T11:30:08 EGL: Update EGL headers In order to support EGL_EXT_gl_colorspace_bt2020_hlg we need the EGL_GL_COLORSPACE_BT2020_HLG_EXT enum which got added to the eglext.h header recently. There were non-upstreamed changes to eglplatform.h in commits 88d3b8cb737f3f4662e421bd2b1004a458fdf2a1 and 2bdcbb9a3717c94fd09510ef3f11885a8ad01710, retain them. Bug: angleproject:8330 Change-Id: Ia56513ff7ed36a9d0c436220bf25eab25f9df169 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4824044 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: mohan maiya <m.maiya@samsung.com>
Shahbaz Youssefi bb135f0e 2023-08-24T15:29:11 Make ProgramExecutableImpl managed by ProgramExecutable This change allows both parts of the program executable to be safely backed up and swapped on link. Bug: angleproject:8297 Change-Id: I17e4b6c05e4e481a66a227d6047dbf943d2c2603 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4812138 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
angle-autoroll 13a87d0b 2023-08-29T18:25:30 Manual roll Chromium from 2f13938f5894 to e2ad2e99dc98 (165 revisions) Manual roll requested by ynovikov@google.com https://chromium.googlesource.com/chromium/src.git/+log/2f13938f5894..e2ad2e99dc98 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 angle-team@google.com,ynovikov@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/6a782d94b3..7710487af5 * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/0b103f5670..b2043d4f43 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/88f1060bea..475ae9f346 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..599ca89cf4 * third_party/r8: EubvNlgGEftTjKSDVWoqPEnamR95-ATV-Ei6RhcyvJIC.._AUNqTBtlUIMSIQEV31lcrlDaaUdwQdUUdp4BtPoOUMC * third_party/siso: git_revision:07d585d17bdd3c521080e2aa5f7b9f6a12f18ded..git_revision:8283bbc1ae9d742d22d3a6e98b7e356b3065a497 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/533fb78ca6..b33780b146 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/8b952caced..4719a5511c No update to Clang. Bug: None Tbr: ynovikov@google.com Change-Id: I3db7e3119d94aed0a8cf42fcdef02eb0f942517c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4823158 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
angle-autoroll 6a960369 2023-08-29T10:01:27 Roll vulkan-deps from d213632452c2 to a446c6320b6b (9 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/d213632452c2..a446c6320b6b Changed dependencies: * spirv-cross: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross.git/+log/7ba6f5ce90..54997fb4bc * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/1b3c4cb685..b6893ccdfb * vulkan-headers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers.git/+log/9085224a1b..a0c76b4ef7 * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/8366ffa972..b2f5094203 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 angle-team@google.com,ynovikov@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: ynovikov@google.com Change-Id: Iac30cf0d241a3c11f6bb77e2c1351925ccadc200 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4819801 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 6d1c0932 2023-08-29T07:00:55 Roll Chromium from 92b28610c8f3 to 2f13938f5894 (510 revisions) https://chromium.googlesource.com/chromium/src.git/+log/92b28610c8f3..2f13938f5894 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 angle-team@google.com,ynovikov@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/e75405437c..6a782d94b3 * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/5237ac61e3..0b103f5670 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/ff57564628..88f1060bea * third_party/android_sdk: https://chromium.googlesource.com/chromium/src/third_party/android_sdk/+log/528931048c..ff414082cc * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..599ca89cf4 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/b8164180d2..6c8d2a9ce5 * third_party/libc++abi/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/6a8358a142..3d83ca7bd2 * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/00a267ce41..13a5d4e170 No update to Clang. Bug: None Tbr: ynovikov@google.com Change-Id: Idece055836db99252f1025ee10b8baad27dc96b6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4819560 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Roman Lavrov d6fd7eaf 2023-08-25T16:33:27 Trace/perf tests: remove calibration and most warmup options This removes calibration and warmup except for --warmup (which does what --warmup-steps=-1 used to do: render each frame once with glFinish) Trace and perf tests now default to no warmup. Unchanged by this CL: --fixed-test-time=x runs a single trial for x seconds. --fixed-test-time-with-warmup=x is effectively the above flag coupled with --warmup-steps=-1 --run-to-key-frame runs to the key frame (no longer disables warmup as it's now off by default) Bug: b/297418214 Change-Id: I7a0d3e490067dbde57c5f519c1b9092ba70b1480 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4812049 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Roman Lavrov <romanl@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Alexey Knyazev 558df6f1 2023-08-21T00:00:00 Fix fragment output variables validation * Reject fragment shaders that assign out-of-range fragment locations * Reject fragment shaders that assign output variables of different types to the same location * Apply similar validation for fragment outputs bound via API calls * Ensure that masks for active output variables and draw buffer types are set after processing all fragment output bindings Bug: angleproject:1085 Change-Id: If29cbb58be1981279fc97c67739fe4136b0cdc98 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4813656 Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 181ec0a5 2023-08-28T10:01:38 Roll vulkan-deps from 5ed8fabd1030 to d213632452c2 (14 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/5ed8fabd1030..d213632452c2 Changed dependencies: * spirv-cross: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross.git/+log/633dc30135..7ba6f5ce90 * vulkan-loader: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/7dca451d88..d34bfafff2 * vulkan-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/c536182ca9..6087a58444 * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/2d736834b1..8366ffa972 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 angle-team@google.com,ynovikov@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: ynovikov@google.com Change-Id: Ie3a6f5f047770c5659c69d0f6e91a23ce3003fb0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4816488 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
angle-autoroll f8954405 2023-08-28T10:01:12 Roll SwiftShader from a147f6c5192a to 32f9332d1d7a (1 revision) https://swiftshader.googlesource.com/SwiftShader.git/+log/a147f6c5192a..32f9332d1d7a 2023-08-25 dcheng@chromium.org Update google/benchmark to dfc8a92abc88a9d630a9f8e01c678fedde4c3090. 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 angle-team@google.com,ynovikov@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: ynovikov@google.com Use-Permissive-Angle-Pixel-Comparison: True Change-Id: Ib4e708f610d85d5d0005dce28a4ce42d6181ba3b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4816667 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll b54b4a89 2023-08-28T07:48:17 Roll Chromium from 3b473fe59c6b to 92b28610c8f3 (662 revisions) https://chromium.googlesource.com/chromium/src.git/+log/3b473fe59c6b..92b28610c8f3 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 angle-team@google.com,ynovikov@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/4cee92ef22..e75405437c * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/f6e67ef3b2..5237ac61e3 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/7ece0f7260..ff57564628 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..5ddb43f42b * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/c7aca34c8e..b8164180d2 * third_party/fuchsia-sdk/sdk: version:14.20230818.1.3..version:14.20230826.1.1 * third_party/r8: yG6aCoW-nKG7aqWMZkE1TsvMCxvP7KxJ9PsaRbytuyEC..EubvNlgGEftTjKSDVWoqPEnamR95-ATV-Ei6RhcyvJIC * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/46d57cd9ee..00a267ce41 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/3e89e7b60b..533fb78ca6 No update to Clang. Bug: None Tbr: ynovikov@google.com Change-Id: Ia6b727a4fc12182bf743d828fe8c64cad6fe6e99 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4816191 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Yuly Novikov 0f7c39a2 2023-08-28T16:14:10 Temporarily remove trace bots from CQ Reclient doesn't work yet Goma is slower than local today Bug: angleproject:8309 Change-Id: I03c337dab5ee82adc8e03d4f5f52bf2b26aa7cad Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4818506 Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Roman Lavrov <romanl@google.com>
Shahbaz Youssefi 57388ab2 2023-08-24T14:44:48 Vulkan: Make sure ProgramVk has no members other than executable The program is really just an interface to the executable. It should not hold on to any data on its own. The SpvProgramInterfaceInfo member did not even need to be a member, and was left over from previous refactorings. Bug: angleproject:8297 Change-Id: I4edb53c1c8b27e242a62fb4fc253ade58bd8dde1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4812137 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com>
Charlie Lao e066b689 2023-08-25T09:25:19 Ensure struct SamplerBinding is tightly packed without padding crrev.com/c/4798195 might have caused MSan bot failure in chromium due to use of memcpy on the struct. TextureType and SamplerFormat are both uint8_t, which means extra paddings added for the struct. This CL adds warning for struct padding and fixes the warning as well. Bug: b/275102061 Bug: chromium:1475844 Change-Id: Ia3f8a7e7697c6e354efb8a8dc5dfc7861118a818 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4812245 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll fc6bf90d 2023-08-25T14:16:40 Roll VK-GL-CTS from c04e157100c1 to a745d5c29c56 (8 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/c04e157100c1..a745d5c29c56 2023-08-25 lorenzo@khronosgroup.org Merge "Merge dev/VK_KHR_cooperative_matrix into main" into main 2023-08-25 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.3.6 into vk-gl-cts/main 2023-08-25 lorenzo@khronosgroup.org Merge "Merge branch dev/VK_EXT_depth_bias_control into main" into main 2023-08-25 aitor@lunarg.com Enforce Android SDK33/34 build for SDK33/34 devices 2023-08-25 michal.jakubek@mobica.com Dynamic state line width tests. 2023-08-25 amber@igalia.com Use baseArrayLayer in renderpass resolve tests 2023-08-25 lorenzo@khronosgroup.org Merge vk-gl-cts/opengl-cts-4.6.3 into vk-gl-cts/main 2023-08-25 lorenzo@khronosgroup.org Merge vk-gl-cts/opengl-es-cts-3.2.9 into vk-gl-cts/main If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vk-gl-cts-angle-autoroll Please CC angle-team@google.com,syoussefi@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: syoussefi@google.com Change-Id: I261fb54d1d26d931dc42614225548b984a5d7acc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4810854 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 98b710e6 2023-08-25T10:01:18 Roll vulkan-deps from 8f3cfbeff2e9 to 5ed8fabd1030 (11 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/8f3cfbeff2e9..5ed8fabd1030 Changed dependencies: * glslang: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang.git/+log/f1cb8608b3..adfcaba7ae * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/abd548b817..1b3c4cb685 * vulkan-headers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers.git/+log/85c2334e92..9085224a1b * vulkan-loader: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/dd8332d253..7dca451d88 * vulkan-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/b441f434a0..c536182ca9 * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/abe0666e91..2d736834b1 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 angle-team@google.com,syoussefi@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: syoussefi@google.com Change-Id: I3cc3e291eb7d43c1161fb69cfb0b1c69d83f320d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4812244 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 8a173e54 2023-08-25T10:01:06 Roll SwiftShader from 97bdc453fbed to a147f6c5192a (1 revision) https://swiftshader.googlesource.com/SwiftShader.git/+log/97bdc453fbed..a147f6c5192a 2023-08-24 dcheng@chromium.org Don't spam stdout when `git describe` fails. 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 angle-team@google.com,syoussefi@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: syoussefi@google.com Use-Permissive-Angle-Pixel-Comparison: True Change-Id: I56edf75470f9dd0b7fc67e1981c1aeb19b0c843a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4811751 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 27767548 2023-08-25T07:00:41 Roll Chromium from cbda6c2d6318 to 3b473fe59c6b (518 revisions) https://chromium.googlesource.com/chromium/src.git/+log/cbda6c2d6318..3b473fe59c6b 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 angle-team@google.com,syoussefi@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/e04720d46f..4cee92ef22 * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/a93fb7650a..f6e67ef3b2 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/57ae489e9b..7ece0f7260 * third_party/android_build_tools/lint: qaZOeTY-k9wAZ1vkdqCZIbppqQFgc4IM5T5dKj3_2xIC..Bd9m0RpzuCbbURLUADcdPsU2Yrrfg453Djw_jY7kVEYC * third_party/android_build_tools/manifest_merger: Nc9kYyTsw69N7yKSw_Sc2fJtUJ2zXUhSGjXbIkDVXuIC..kkbYOGsVRXhtxBiXuTufY0puTnG5QAfyxvFTBHFWL08C * third_party/android_sdk: https://chromium.googlesource.com/chromium/src/third_party/android_sdk/+log/996d3d5271..528931048c * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..95899ca948 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/caeef7ba32..c7aca34c8e * third_party/r8: 5fmK4ltjLHNRPbUQ34VE7o4hXrmeRbwpUTtUPadhj0wC..yG6aCoW-nKG7aqWMZkE1TsvMCxvP7KxJ9PsaRbytuyEC * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/3748929a3d..3e89e7b60b * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/145add6eab..8b952caced No update to Clang. Bug: None Tbr: syoussefi@google.com Change-Id: Ie320fd2e49332a29aaf92fe8b61b6fe17a3d2388 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4810852 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Roman Lavrov 7e41c5bc 2023-08-24T18:30:43 Remove scripts/perf_test_runner.py and references to it src/tests/run_perf_tests.py is similar and is maintained (runs on CI) Bug: b/297418214 Change-Id: I6fb12ac1fb856672b3bb83c0a4e34eb68afa1475 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4812135 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi c8ec8739 2023-08-22T11:30:08 Frontend: Remove link job dependence to context The part of link that needs the context is moved up. Usage of gl::Context is eliminated from the rest of the link (whatever is done in the front-end). Bug: angleproject:8297 Change-Id: Ifa71d2b2c0c0bc7c0c0b7ee89e1cbb203c3018cc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4803109 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 4376a8c8 2023-08-16T12:02:57 Metal: Reduce link job dependence to context The dependence on ContextMtl is not entirely removed, though it seems feasible. In particular, ContextDevice is passed around while only the real underlying device is needed. Some refactoring is needed here to address that. Additionally, I haven't verified if all that is accessed through the display is thread-safe, which would be a pre-requisite to moving the entire link job to a worker thread on this backend. Bug: angleproject:8297 Change-Id: Ifd4b02694b0997a33d17aad0b47eb7ac4de104e5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4784667 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 44b5715c 2023-08-15T15:06:25 D3D: Remove link job dependence to context The part of link that needs the context is moved up. Usage of gl::Context and gl::State is eliminated from the rest of the link. Bug: angleproject:8297 Change-Id: I2064b21a6724d602f6a84f53a8ae5fe42fe4e837 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4781566 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Shahbaz Youssefi 571b4cdb 2023-08-14T16:55:28 Vulkan: Move pipeline/desc-set layout creation to link job The pipeline and desc-set layout caches are consequently made thread-safe. The reference counter on the layouts are also made atomic. With this change, practically all of the link in the Vulkan backend is moved to the link job. Bug: angleproject:8297 Change-Id: Iba694ece5fc5510d34cce2c34441ae08ca5bb646 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4774787 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Charlie Lao b8d5a423 2023-08-21T14:43:42 Add static_assert(std::is_trivially_copyable<LinkedUniform>(),"") Since we are using memcpy for LinkedUniform, it is desirable to utilize compile time assertion to ensure that in future if anyone modifies POD struct (and the class of data members of POD struct) and made it that no longer memcopy-able, we would immediately caught at compile time. std::is_trivially_copyable<>is exactly for this reason. In order to make this work, the POD struct and any data it uses can not have user defined copy constructor. The problem is that right now ANGLE is using clang_use_chrome_plugins=true, and chrome-style generates warnings if the complex struct (has more than 10 data members) does not define a copy constructor, and that warning causes build failure with -Werror. So clang_use_chrome_plugins=true and std::is_trivially_copyable have this conflicting requirements that I can not apply both. This has been raised to compiler team, but before we get a solution from them, if we have to make a choice, I think the better choice is to disable clang_use_chrome_plugins and apply std::is_trivially_copyable, since the later is more critical to ensure safety, while chrome-style is mostly trying to minimize the code size, but won't affect correctness/robustness. This CL sets clang_use_chrome_plugins to false, and removes the copy constructor and copy assignment operator from BitSetT and LinkedUniform and added static assertion is_trivially_copyable for LinkedUniform. Same thing applied to ProgramInput as well. In future once we have a better solution from compile team, we can re-enable clang_use_chrome_plugins and disable only for structs that requires is_trivially_copyable assertion. Bug: b/275102061 Change-Id: If33415ea61deda568d855a7dd6a4fd6042058be5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4799342 Reviewed-by: Roman Lavrov <romanl@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com>
Charlie Lao 03f9dff6 2023-08-21T16:57:12 Separate out std::vector<GLuint> boundTextureUnits from SamplerBinding SamplerBinding struct is trivial copy-able except the std::vector<GLuint> boundTextureUnits. This CL moves boundTextureUnits out of the SamplerBinding struct and becomes a vector in ProgramExecutable. This means all of sampler binding's texture units will be stored in one vector and SamplerBinding will remember where its own texture units is stored in that vector by keeping textureUnitsStartIndex and textureUnitsCount. In other word, SamplerBinding::boundTextureUnits (before this CL) is equivalent to mSamplerBoundTextureUnits[SamplerBinding.textureUnitsStartIndex], ..., mSamplerBoundTextureUnits[SamplerBinding.textureUnitsStartIndex + SamplerBinding.textureUnitsCount - 1] after this CL. With this, ProgramExecutable::mSamplerBindings are load/stored with one readBytes/writeBytes call since it is trivially copyable. Bug: b/275102061 Change-Id: I0974cf940875ecbcf655b4469b3bbc910717f1ec Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4798195 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Charlie Lao <cclao@google.com>
Charlie Lao a8d77dc4 2023-08-18T15:23:39 Vulkan: Move mVariableInfoMap load/save to its own class This is mechanical change only. This CL moves mVariableInfoMap load/save logic from ProgramExecutableVk to ShaderInterfaceVariableInfoMap class. Bug: b/296433003 Change-Id: I9a934fd2223c559fba899f166e40efc17fa1be2e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4794752 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Roman Lavrov <romanl@google.com>
Charlie Lao 607f2636 2023-08-17T11:31:59 Vulkan: Switch ShaderInfo::load to use readBytes Right now it is using readIntVector<uint32_t>, which end up doing a for loop and memcpy each integer. This CL switch to readBytes so that one memcpy is used. Bug: b/296433003 Change-Id: Ibb10f97af4a86a4e93abb825007847a65f934237 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4790827 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Roman Lavrov <romanl@google.com>
Roman Lavrov 9f4bddd8 2023-08-24T10:54:43 Cleanup: remove unused ANGLE_ASSERT_IMPL Bug: b/297343154 Change-Id: Iccde6b93fd26aa5b575a11d0ac61c59f03508567 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4810192 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Roman Lavrov <romanl@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Roman Lavrov <romanl@google.com>
Cody Northrop 98e351cf 2023-08-16T15:22:37 Traces: Update steps for upgrading traces We've settled on a streamlined method of upgrading traces. We consider the upgraded trace good if: - gets the same pixels for all frames, including after Reset - gets the same frame time and memory usage (or better) This moves away from using serialization, which is useful, but has become too heavyweight. We've preserved the steps as they are still useful in some scenarios. Also formalize a couple of scripts we've been using to compare trace screenshots. It supports two scenarios: - comparing screenshots between ANGLE and native - verifying screenshots after an upgrade Example usages: compare_trace_screenshots.py versus_upgrade \ --before <path> --after <path> --outdir <path> compare_trace_screenshots.py versus_native \ --screenshot-dir /tmp/screenshots --trace-list-path src/tests/restricted_traces Bug: b/294882956 Change-Id: Ifc59d8b31648abb3614da2d8919a1f90a0b6b68f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4791916 Auto-Submit: Cody Northrop <cnorthrop@google.com> Commit-Queue: Roman Lavrov <romanl@google.com> Reviewed-by: Roman Lavrov <romanl@google.com>
Roman Lavrov 893325b8 2023-08-24T10:03:51 Perf tests: call base class SetUp in all tests https://crrev.com/c/4799388 moved code to SetUp assuming base class SetUp was always called but a few cases were missing this. Changes ASSERT to a check that is enabled in release builds (e.g. perf bots) Bug: b/291604008 Change-Id: I1c3fb123903f09631ef348e311f3dc1c77b4e221 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4810187 Commit-Queue: Roman Lavrov <romanl@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll feb0d11b 2023-08-24T10:38:11 Roll vulkan-deps from 1fb2f09080d7 to 8f3cfbeff2e9 (9 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/1fb2f09080d7..8f3cfbeff2e9 Changed dependencies: * glslang: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang.git/+log/db8719ae07..f1cb8608b3 * spirv-headers: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers.git/+log/b8b9eb8640..d790ced752 * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/2601f644ee..abd548b817 * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/a615ccf41b..abe0666e91 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 angle-team@google.com,syoussefi@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: syoussefi@google.com Change-Id: If5b80c23ae8456d9c50b8e10cef390ecf4f79972 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4809205 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll e2eea7b7 2023-08-24T07:29:51 Roll Chromium from 0e1c462e01ac to cbda6c2d6318 (567 revisions) https://chromium.googlesource.com/chromium/src.git/+log/0e1c462e01ac..cbda6c2d6318 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 angle-team@google.com,syoussefi@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/2146585667..e04720d46f * testing: https://chromium.googlesource.com/chromium/src/testing/+log/b81abd96f2..57ae489e9b * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..b9f2ef143e * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/3dce403ca3..caeef7ba32 * third_party/kotlin_stdlib: Z1gsqhL967kFQecxKrRwXHbl-vwQjpv0l7PMUZ0EVO8C..6cGkpHi3fSRhpRfq2b1mjmzfFmShvtQe6gy4g2nFQd0C * third_party/libunwind/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git/+log/d92e619eaa..76e621a897 * third_party/r8: AFFvlihFtRPPn_wcq43THY3FtMLV5gyPG3aK7-UOoygC..5fmK4ltjLHNRPbUQ34VE7o4hXrmeRbwpUTtUPadhj0wC * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/67b49b3833..145add6eab No update to Clang. Bug: None Tbr: syoussefi@google.com Change-Id: Iba21ee276f3cd873b142348c4e5e397dd4cf473d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4809203 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi 0b648252 2023-08-23T18:15:38 GL: Fix EAGL build Bug: angleproject:3031 Change-Id: Id6e30804d8eb066cc2353830cbefb798e08e3c0d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4808979 Commit-Queue: Solti Ho <solti@google.com> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Solti Ho <solti@google.com> Commit-Queue: Charlie Lao <cclao@google.com>
Yuxin Hu f0d3e8b3 2023-08-22T14:25:43 Remove test skips on dEQP-EGL.functional.swap_buffers* Below changes fixed dEQP-EGL.functional.swap_buffers* on pixel devices, too: https://chromium-review.googlesource.com/c/angle/angle/+/4794979. Update the tests to only skip on Win OS. The tests running on other platforms will be reported as Not Supported due to lack of readScreenPixels() implementation on other platforms. Tests failures on Win OS needs further investigations. Bug: angleproject:2341 Bug: b/224537784 Change-Id: I46a59dd8708e621b2d91ac3c46584bdad4ff759e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4804568 Auto-Submit: Yuxin Hu <yuxinhu@google.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Alexey Knyazev 0688a940 2023-08-21T00:00:00 GL: Disable EXT_texture_mirror_clamp_to_edge on Mesa Although the extension string is exposed, the new enum is currently rejected when using an OpenGL ES context. Bug: angleproject:8319 Change-Id: I17c4105344fe7ca3038a79e0e09528db1d96376b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4807744 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Shahbaz Youssefi 68f2c10c 2023-08-15T22:47:32 Remove program executable backup during link This was added in https://chromium-review.googlesource.com/c/angle/angle/+/2181450/30 to support the case where a program fails to relink, but needs to still be usable. However, this does not seem to be an issue anymore. New tests are specifically added for this, and they, along with every other test, pass. If this needs to be reintroduced, it needs to be rethought. It does not play well with parallel link as it changes the executable pointer while link is in progress (and it was done on the assumption that everything needing the executable is linked serially). A better solution would likely be an `mLastSuccessfullyLinkedExecutable` that normally points to `mExecutable`, but not during link. On `resolveLink`, it would either make `mExecutable` point back to `mLastSuccessfullyLinkedExecutable`, or the other way around based on whether the link was successful or not. Bug: angleproject:8297 Change-Id: Ic9d55bccb75fff0253fe299a244bf1e4bbc416a6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4781632 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com>
Shahbaz Youssefi cfd9ccd0 2023-08-09T17:21:20 Reland: Vulkan: Move SPIR-V set up to link job This is a reland of 10f54902e816fa7e4cf314384e00590e2b9bfa1d Bug: angleproject:8297 Change-Id: I701b750a13ac5b17df67dee5b6c37c13c60f5b10 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4793219 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 711db275 2023-08-23T11:06:42 Translator: remove usage of contains() It's not available pre-C++20 Bug: angleproject:8311 Change-Id: I41940b5f8e6a90bc0224852aefe54643f2be9cb5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4806924 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Cody Northrop b0777def 2023-08-21T13:54:08 Traces: Upgrade octopath_traveler Test: angle_trace_tests --gtest_filter=TraceTest.octopath_traveler Bug: b/294882956 Change-Id: I690f4f6ad65542cd015ce61ee246f009f0907740 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4794728 Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com> Auto-Submit: Cody Northrop <cnorthrop@google.com>
Shahbaz Youssefi 8f64b51d 2023-08-09T16:51:13 Reland: Vulkan: Move default uniform init to link job This is a reland of d8cd4dcdc9c55c88f030f7fca41357e99e600ed2 Bug: angleproject:8297 Change-Id: Ib4f8e9dd258da71d44983bbb619b6b4abda0b109 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4793218 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Roman Lavrov 865eceaa 2023-08-21T15:17:02 Trace perf: power metric uWs/frame -> W, exclude startup&teard Switching from uWs/frame to W, which is easier to measure as we don't need to know how many frames were rendered between the measurements and just need to avoid warmup, turndown. Also, W is a more "natural" metric as it reports actual power usage that can be reasoned about in terms of device thermals etc. Changing starting point to post-warmup by waiting for test message in logcat. The logcat -> script delay seems very small in my tests. Turndown also shows spikes in some traces so avoiding that by shifting the time for end point collection to 1s before the test is expected to finish (which makes this only compatible with --fixedtime) Also made device selection set env var instead of a global variable and passing via args it slighlty simplifies subprocess(adb) handling. Bug: b/291604008 Change-Id: I2109da0d75eba167eec939df88a34d9a9b7f330b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4799391 Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Cody Northrop 72c00885 2023-08-23T08:00:03 Tests: Skip injustice_2 on Windows/Nvidia Bug: angleproject:8316 Change-Id: I5bdef9df9bc6f922a15f3377e4af31cc60db73a3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4807130 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Cody Northrop <cnorthrop@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Alexey Knyazev 9f258f8a 2023-08-21T00:00:00 GL: Add disableRenderSnorm workaround Disable the extension on Mesa versions that clamp negative snorm values to zero on read. Fixed: angleproject:8315 Change-Id: I5459db40cb08c546fba15f5e6d70578029a8218a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4804324 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
angle-autoroll 4723a32d 2023-08-23T09:02:05 Roll Chromium from dd175d86ee90 to 0e1c462e01ac (1385 revisions) https://chromium.googlesource.com/chromium/src.git/+log/dd175d86ee90..0e1c462e01ac 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 angle-team@google.com,syoussefi@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/35d9bb8611..2146585667 * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/c4a369c9b6..a93fb7650a * buildtools/reclient: re_client_version:0.112.0.ffc95d4-gomaip..re_client_version:0.113.0.8b45b89-gomaip * testing: https://chromium.googlesource.com/chromium/src/testing/+log/4ac1a5873d..b81abd96f2 * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/4ef9b33175..56586c9caf * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/26fdb68fe1..297421bd46 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..e8ae187c6d * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/3aeb682373..3dce403ca3 * third_party/protobuf: https://chromium.googlesource.com/chromium/src/third_party/protobuf/+log/c468546c25..b2f4cca357 * third_party/r8: crtFbDFNOQ4YZT_MQmz65TmbaQo5-URl1at11okEGTUC..AFFvlihFtRPPn_wcq43THY3FtMLV5gyPG3aK7-UOoygC * third_party/siso: git_revision:c349fcb5f693249d938e2d4ce4c4b4d037dceb5b..git_revision:07d585d17bdd3c521080e2aa5f7b9f6a12f18ded * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/86670f0684..46d57cd9ee * tools/luci-go: git_revision:77c9b09de8f234ae9c47d9d865a5d860ff390ed0..git_revision:fe3cfd422b1012c2c8cf00d65cdb11aa2c26cd66 * tools/luci-go: git_revision:77c9b09de8f234ae9c47d9d865a5d860ff390ed0..git_revision:fe3cfd422b1012c2c8cf00d65cdb11aa2c26cd66 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/ffa3bdd3ba..67b49b3833 * tools/skia_goldctl/linux: UFlmhX6-Qb8IgDGznrPTinozgZ41Ul69CJEw_37d5Q0C..FdyOkAznuQ7k2iieFXsUTpz6jBaUHPGw8fNxb1-0JLMC * tools/skia_goldctl/mac_amd64: UjktW10Ah81eMdqbYaUevQNFJozJWoGy33MmF1BdM18C..9RuiM5HJiEHkr27MLsTx04jOTEYQG-D_3P1BCrM03q4C * tools/skia_goldctl/mac_arm64: obLm-ouXMf1S3hnZaO-yUAG5CoeW2qzVWy2fhz3WXWIC..tDNHYe-tSHHr68Th6urfIcXLngT2yJ2jCyZBQLAB5mYC * tools/skia_goldctl/win: jMrnfAAYCvmmOPZpirRZ6xWBdRaWW7g85mdjTFvq_HsC..3VsnMzWsw1jy9-ZgvgPjR5emUA1IwrCNkX8xYK8oxFgC No update to Clang. Bug: None Tbr: syoussefi@google.com Change-Id: I11596be2c5e14079bbb3264e6b2e180963219682 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4805556 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi d8f088e0 2023-08-14T11:07:24 GL: Remove parallel compile/link without driver support This feature was practically disabled everywhere due to various bugs, and is complicating the code. In effect, the code was always spawning a thread for the compilation and link jobs, immediately fail it (due to a workaround), then do the job when compile/link is resolved (much closer to draw time). This leads to bad user experience, but also is racy because the shaders may get recompiled in the meantime and there is little the GL backend could do to stop that (efficiently). After this change, parallel compile/link is either done by the driver (if supported), or it isn't done. This is a partial revert of a100d8f471f79b9f88d387164992cc5bd9c6ee9f. Bug: angleproject:3031 Bug: chromium:922936 Bug: chromium:1184692 Bug: chromium:1202928 Change-Id: I6348bee3249ccb3828bb98ac2a69dc7d305f821c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4774785 Reviewed-by: Geoff Lang <geofflang@chromium.org>
angle-autoroll d1d41e11 2023-08-23T11:26:37 Roll vulkan-deps from 2cb515574109 to 1fb2f09080d7 (15 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/2cb515574109..1fb2f09080d7 Changed dependencies: * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/714966003d..2601f644ee * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/ebab3bc86c..a615ccf41b 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 angle-team@google.com,syoussefi@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: syoussefi@google.com Change-Id: Ib02a734b88e82dda7ca32781b3c915e805204209 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4805814 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Roman Lavrov 0ef565c5 2023-08-22T17:50:36 end2end test with --use-gl fails with a note Bug: None Change-Id: I7e6e40c912910d0ffc8d4690e9b9b4c8599342db Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4804368 Auto-Submit: Roman Lavrov <romanl@google.com> Commit-Queue: Roman Lavrov <romanl@google.com> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>