Log

Author Commit Date CI Message
Shahbaz Youssefi 93b97a59 2023-11-03T22:07:23 Make link job directly wait on compile job Previously, program link waited on the compile job on the calling thread before launching the link job. As a result, sequences of intermixed compile and link would get largely serialized as such: Main Thread Thread 1 Thread 2 Thread 3 Thread 4 Compile -------> Compile Compile -----------|----------> Compile Link | | Wait | | | | | |<--------------/--------------/ \------------------------------------------> Link Compile -------> Compile | Compile -----------|----------> Compile | Link | | | Wait | | | | | | | |<--------------/--------------/ | \---------------------------------------------|-----------> Link Compile -------> Compile | | Compile -----------|----------> Compile | | Link | | | | Wait | | | | | | | | | ... With this change, the main thread no longer waits for compilation to finish. It's the link job itself that does the waiting. This allows the main thread to go through Compile and Link commands without blocking, generating as many jobs as needed. The above scenario therefore becomes: Main T1 T2 T3 T4 T5 T6 T7 T8 T9 C ----> C C ------|----> C L ------|------|----> L C ------|------|-------W---> C C ------|------|-------|-----|----> C L ------|------|-------|-----|------|----> L C ------|------|-------|-----|------|-------W---> C C ------|------|-------|-----|------|-------|-----|----> C L ------|------|-------|-----|------|-------|-----|------|----> L . \-----\------>/ | | | | | W . | \-----\------>/ | | | . | | \-----\------>/ . | | | . | | | This greatly improves the amount of parallelism compile and link jobs get. The careful observer may note that the link job being blocked on the compile job is now wasting a thread from the thread pool. While this change is strictly an improvement, parallelism can be further improved if the link job is just not assigned to a thread until the corresponding compile jobs are finished. This is currently not possible, but may be if: - Instead of a thread pool, the operating system's FIFO scheduler is used. Then the operating system would automatically put blocking tasks to sleep and pick up another task. This has the downside of requiring threads to be created for each task. - The thread pool work scheduler is enhanced to be made aware of relationship between tasks and avoid scheduling jobs whose dependencies are not yet met. Alternatively, the number of threads in the pool can be increased by 30% and hope for the best. Bug: angleproject:8297 Change-Id: If4e6540ade47558a10cfab55e2286f073b904928 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5006874 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com>
Shahbaz Youssefi aec4ffac 2023-11-06T14:13:06 Add a perf test for parallel compile and link Bug: angleproject:8297 Change-Id: I40ec3af49bd0f5effbafc82b557840c615fd4c64 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5008040 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 3a6b385f 2023-11-09T15:48:48 Vulkan: Fix depth/stencil texture copy Bug: angleproject:7289 Change-Id: Icde8a26e855e95a6c0a1e506d2435e981adc6f28 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5018798 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Charlie Lao <cclao@google.com>
Shahbaz Youssefi d896fab8 2023-11-09T15:03:05 Vulkan: Fix texture self-copy A new layout is introduced to support self-copy. Bug: angleproject:7289 Change-Id: Ib914c433d55b9a79cfeb7a91f8a2b8680824d473 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5018797 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Geoff Lang e56cde03 2023-11-06T11:50:38 GL: Reset mLocalDirtyCurrentValues after syncronizing StateManagerGL::setAttributeCurrentData sets the bits in mLocalDirtyCurrentValues, leaving them set after syncState. All current values would be re-synchronized every time any the DIRTY_BIT_CURRENT_VALUES bit was set. Bug: chromium:1496378 Change-Id: I93b78c8f2d576f5583ac629660f189c268a154d6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5008036 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll ce40e12c 2023-11-10T14:40:32 Roll VK-GL-CTS from b127977ddad4 to ff0a874a4e15 (3 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/b127977ddad4..ff0a874a4e15 2023-11-10 amber@igalia.com Add tests for alpha to coverage along with depth+stencil writes. 2023-11-10 ziga@lunarg.com Add host image copy tests for identical memory layout 2023-11-10 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.3.7 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,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://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: ynovikov@google.com Change-Id: I56f760169e6cd04a19cbe1e168c264387a8e87b2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5020508 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll e5119649 2023-11-10T12:27:59 Roll vulkan-deps from fd7e3d444d59 to 448a71c0790c (4 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/fd7e3d444d59..448a71c0790c Changed dependencies: * glslang: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang.git/+log/091b9fd979..a8d39f97cd * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/9e7a1f2ddd..fbf047cc8b * vulkan-headers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers.git/+log/aff5071d4e..8ccd414a46 * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/daec145d41..0eec8db60d 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://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: ynovikov@google.com Change-Id: I79eb39c562dcad467a1360c6119ff5502c73212b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5020228 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Yuly Novikov f773a79f 2023-11-09T17:26:16 Roll chromium_revision a63a2e6890..4c6eada2d6 (1220134:1222362) Manually applies https://chromium-review.googlesource.com/c/chromium/src/+/5007775 Change log: https://chromium.googlesource.com/chromium/src/+log/a63a2e6890..4c6eada2d6 Full diff: https://chromium.googlesource.com/chromium/src/+/a63a2e6890..4c6eada2d6 Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/6f4d783d07..7f3a1ab7f2 * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/e1fa8831f1..32d5d56504 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/50cd78eb0e..9bab6e4bc3 * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/03ab17bf55..84ccde02f2 * third_party/android_build_tools/bundletool: xOeKyLIaK_RRHU0Qv0EdxTrRlq_22HAwoOr1xn5yoOcC..XoK0RwIzanpFScg7dU_8th5zMvLgKvk7c_PmhZ5LSEQC * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/2af29c6a26..abf7a60fd7 * third_party/android_sdk: https://chromium.googlesource.com/chromium/src/third_party/android_sdk/+log/1fb4dd28f9..f7abe43b8a * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/f3e882d631..5a57691454 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/b4e466e610..5828285134 * third_party/libc++/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/d781e6e1b8..278060665f * third_party/protobuf: https://chromium.googlesource.com/chromium/src/third_party/protobuf/+log/6969ef7fe9..41759e11ec * third_party/r8: XPk3PlUaYx3a8bIbKLnF6Dp23cbjBn6zSLmkL4SukQoC..LSKbogNru-rwoTlrVtJniI4WT8_ZQbcI8QyWQJfwHXoC * third_party/siso: git_revision:6af7e19f74a94ee61f1ddabc0d23b8e3c0d02e98..git_revision:9aef05a1a1bddf2cf8e60bc7d9312c7afbfbe9a2 * third_party/turbine: C6QGDoh6Gsr8uSRNcsphzaRJEoG9qKitOL771Mv9piIC..rg7X3-H8Yd0enT9HWZY9KwEh1ciZBP0jkla5_rGW2pUC * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/d1e293c5d2..bbcb7c6c14 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/6815c10162..f486685f8a * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/9818a0f413..712486c62b DEPS diff: https://chromium.googlesource.com/chromium/src/+/a63a2e6890..4c6eada2d6/DEPS No update to Clang. BUG=None Change-Id: I6580d5bdc1ef73b15faeb587ac93885fea6732b5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5017896 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Shahbaz Youssefi 4c500944 2023-11-08T16:16:23 Translator: Mark most builtins as not having side effect This helps the translator eliminate stray uses of these builtins. Bug: angleproject:6061 Change-Id: Ic0e72bddad5730fb1f906a4c8e53191ab3318d29 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5012988 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 6eeb11bd 2023-11-08T15:54:13 Translator: Unmark dFdx, dFdx and fwidth as having side effect These were marked as having a side effect in https://chromium-review.googlesource.com/c/angle/angle/+/924155, but it's unknown why. This change separately unmarks them as having a side effect, so if they are there to prevent a driver bug or such things, it can be isolated to this change. Bug: angleproject:6061 Change-Id: I8694ffdbb0142d330c8e2d73562f8004158023b3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5012986 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Jamie Madill aea43399 2022-08-29T10:44:41 Mark texture2D() functions as not having side effects. This should allow the shader translator to remove unused variables and cut out sampling instructions in apps like T-Rex. Bug: angleproject:6061 Change-Id: If543c9c737cdbcfdea1433876cd425e7335e5297 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3862383 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Geoff Lang 2155534b 2023-11-06T11:49:20 Don't set dirty bits for attribs that are out of range. PrivateState::setAllDirtyBits sets all bits in mDirtyCurrentValues. When the context has fewer max attibutes than MAX_VERTEX_ATTRIBS, this can cause out-of-bounds access to PrivateState::mVertexAttribCurrentValues if the dirty bits are iterated over without range validation. Bug: chromium:1496378 Change-Id: I65481c432263a6e353a9361bba741b97dc5e20b1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5008034 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
angle-autoroll 4f4e8838 2023-11-09T10:01:57 Roll vulkan-deps from 969da898b476 to fd7e3d444d59 (4 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/969da898b476..fd7e3d444d59 Changed dependencies: * spirv-headers: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers.git/+log/88bc5e321c..38f39dae5b * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/ca58d5500b..daec145d41 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://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: ynovikov@google.com Change-Id: I69e7e68f974a620e729b1dc4d3c2c33fee0ce834 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5013261 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Takuto Ikuta 1bb2c5ec 2023-11-07T15:44:41 support reclient in capture_replay_tests This also uses autoninja to start and stop reclient automatically. This will be used with https://crrev.com/c/4797373. Bug: angleproject:8309 Change-Id: I2e17c87c8ff0e253f16201297ef979337bf30292 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4796170 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Auto-Submit: Takuto Ikuta <tikuta@chromium.org>
Shahbaz Youssefi cea3775c 2023-11-02T15:41:06 Vulkan: Suppress VU Undefined-Value-ShaderOutputNotConsumed Bug: angleproject:8401 Change-Id: I3b561ec98090cf1c0050f113db96ea0c6c79d785 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5002728 Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Roman Lavrov 9a7e8b7b 2023-11-07T17:02:02 Perf tests: log hwmon temps on linux Syslog on a failed bot indicates possible overheating. Log all hwmon temps which include CPU temps but also some other system temps (disk probably not included). We might need to self-throttle if crashes are correlated with higher temps. Bug: b/296921272 Change-Id: I25f8dd899dd25880fc1567ecc18e102759fb868f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5008089 Auto-Submit: Roman Lavrov <romanl@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 6b899504 2023-11-08T10:01:59 Roll vulkan-deps from 565eac2306d8 to 969da898b476 (8 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/565eac2306d8..969da898b476 Changed dependencies: * glslang: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang.git/+log/65f59c81e7..091b9fd979 * vulkan-loader: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/70837963f8..6342790c86 * vulkan-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/20b2ff1958..322e7b3f08 * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/639f125c41..ca58d5500b 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://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: ynovikov@google.com Change-Id: I451fb2fff6da1540e14d2aab0a4df1cf9d3769a4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5012257 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll b4072acb 2023-11-08T10:01:17 Roll SwiftShader from 5c95af798ba4 to 4a62a93e27d9 (1 revision) https://swiftshader.googlesource.com/SwiftShader.git/+log/5c95af798ba4..4a62a93e27d9 2023-11-08 davidben@google.com Fix some more UBSan errors in swiftshader 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://issues.skia.org/issues/new?component=1389291&template=1850622 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: I806d28abea26b7f9b5816569890a15cc48319f97 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5012494 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi a494c1d6 2023-11-07T16:29:07 GL: Fix compilation on drivers sensitive to initial comment Prior to https://chromium-review.googlesource.com/c/angle/angle/+/4994655, debug info was **prepended** to the translated source in the form of a comment after the compilation was done. In that change, this was done after translation and before the translated source was handed to the backend compiler. Some GL drivers however failed to compile the shader after this change because the #version line was no longer the first one in the shader. This is fixed by **appending** the debug info instead. Bug: angleproject:8297 Change-Id: I88b31fa128de304dc8bf32289bf20a29169883a8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5007223 Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Charlie Lao <cclao@google.com>
Charlie Lao 12cc04d0 2023-11-07T10:26:18 Vulkan: Workaround camera AHB's layerCount being random value We are seeing AHB used by google's camera app has random value in the layerCount. In my reproduced case, it is 0, which translates to layerCount in the VkImage. Sometimes I am also seeing a huge number in the layerCount as well. This causes problem in ARM driver that end up with assertion and other problems that end up with crash later. We need to root cause the underlying bug which is tracked by b/239181279. But before we have an actual fix in AHB creation code, this CL forces com.google.android.GoogleCamera AHB's layerCount to be 1 as a temporary app specific bug workaround so that we can move forward to get camera app up running with ANGLE. Bug: b/309480316 Bug: b/239181279 Change-Id: I219f6f89863a2cb8dee6c5efb0812389272373ba Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5010082 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com>
Le Hoang Quyen 383df961 2023-11-06T22:00:52 Metal: only convert vertex if offset is not multiple of 4. Previously we always convert vertex attribute if its binding offset is not multiple of the attribute's size. This requirement seems to be unnecessary. This CL removes that requirement so the only requirement left for offset is that it must be multiple of 4. Bug: chromium:1496807 Change-Id: I35c421951c7817b77bd0c006ed4b72cd04b5a8d7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5006359 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Quyen Le <lehoangquyen@chromium.org>
Roman Lavrov b581a6ce 2023-11-07T10:45:39 Traces: workaround sporadic uncompress failures Usually succeeding uncompress retry: https://issuetracker.google.com/296921272#comment26 Move uncompressed data to mBinaryData and keep going. Unknown if the test would succeed or crash later on, would be interesting to see. Bug: b/296921272 Change-Id: If4f158305cef49208f39164ee3865e5fdccd39ee Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5008081 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Roman Lavrov <romanl@google.com> Auto-Submit: Roman Lavrov <romanl@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Alexey Knyazev 7b62e4f5 2023-11-06T00:00:00 D3D11: Avoid GLenum conversions in GetBlendStateKey Bug: b/300968773 Change-Id: Ia41f77e686e0f1afc91381e29334f73859868129 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5009815 Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 676dab7e 2023-11-07T10:01:16 Roll vulkan-deps from c4f7658f287b to 565eac2306d8 (8 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/c4f7658f287b..565eac2306d8 Changed dependencies: * glslang: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang.git/+log/302a663a38..65f59c81e7 * vulkan-loader: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/9f257b620d..70837963f8 * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/e0e27e5486..639f125c41 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://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: ynovikov@google.com Change-Id: I0891cbb17e43059665353dae2eb92751eec246a0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5008206 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Roman Lavrov 0584ffd8 2023-11-06T16:34:13 Unsuppress VUID-VkGraphicsPipelineCreateInfo-pStages-00739 Possibly was due to a VVL bug https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/6717 Bug: b/303219657 Change-Id: Ic9a6e7b45fb42572af04f94382906cd6f0f512df Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5008042 Auto-Submit: Roman Lavrov <romanl@google.com> Commit-Queue: Roman Lavrov <romanl@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Shahbaz Youssefi c114fc26 2023-08-28T15:40:26 Reland: Verify shader link correctness after looking up in program cache Since the program cache takes shader sources into account, if the cache is hit the shaders should have been correct for link. Bug: angleproject:8297 Change-Id: Iccadc63a976689d7fa06d0a5ccfe81a594c424e8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5003236 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 5a71be90 2023-11-03T15:07:06 D3D: Make non-constant loop indexing limitation a feature flag ... instead of exposing it as a front-end limitation only to set a shader flag in the front-end. Bug: angleproject:1130 Change-Id: Idbd9a1b7b79d231bd9fc1c0061c768df4aaab92d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5004847 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Roman Lavrov 2a433353 2023-11-02T14:29:19 Skip unnecessary default blend equation validation Skip the bitset loop when all equations are the default 0 Together with crrev.com/c/5008031, 2~2.5% improvement in overall instruction count (cpu cycles also improved but a bit less) in driver_overhead_2, which doesn't set equations. If not skipped, to/from GLenum conversion added ~1% (the trace has ~10k glDraw calls per frame so this is a hot path) (tested on Android with angle_enable_share_context_lock=false) Bug: b/300968773 Change-Id: Ic03ab36f071e36cecc78f4c107e3e82a08390e11 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5002007 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Roman Lavrov <romanl@google.com> Commit-Queue: Roman Lavrov <romanl@google.com>
Shahbaz Youssefi e7ce481f 2023-11-01T22:44:22 Consolidate parallel compilation in front-end This cleans up the multiple compilation task implementations in the backends and consolidates them in the front-end. The front-end is then able to do the compilation in an unlocked tail call instead if desired (in a future change). This change is in preparation for having the program link tasks directly wait on the shader compilation tasks. As a result, the "shader resolve" should not be needed to access the shader compilation results; it should be enough to wait for the compilation job. This change therefore moves post-processing of results to the compilation job itself as they did not need to actually be done after compilation is done (merely after translation is done). As a side effect, shader substition and other debug features should now work for the GL backend as they are now done before back-end compilation. Bug: angleproject:8297 Change-Id: Ib9274b1149fadca7545956a864d6635b6cba5c3a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4994655 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Charlie Lao 32f209b8 2023-11-03T09:57:00 Vulkan: Fix __samplerExternal2DY2YEXTtnd combined with swizzle Pixel camera app is hitting assertion due to swizzle applied to swizzle. This CL adds ReswizzleYUVOpsTraverser::visitSwizzle() method and detects there is a swizzle on YUV sampler and apply YUV swizzle first and then original swizzle and then fold two swizzle into one. This CL added a test to reproduce the bug. This CL also makes ShCompileOptions in ShaderExtensionTest class a class member instead of local variable so that subclass can modify for testing or debugging purpose. Bug: b/309480316 Change-Id: I72353fbad8dcacd77ca17a9f44e84485f4656a34 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5001614 Reviewed-by: Chris Forbes <chrisforbes@google.com> Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Roman Lavrov 8b4901d0 2023-11-06T10:43:14 Avoid GLenum conversion in BlendStateExt blend and equation The following functions now return value as is without ToGLenum conversion (that is often unnecessary): getEquationColorIndexed getEquationAlphaIndexed getSrcColorIndexed getDstColorIndexed getSrcAlphaIndexed getDstAlphaIndexed (at least) getEquationColorIndexed is on the hot path with noticeable performance impact; this CL also moves the implementation to the header to allow inlining. Bug: b/300968773 Change-Id: Ie223abe14b12afd7844686863ee5806945d10e45 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5008031 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Roman Lavrov <romanl@google.com>
Shahbaz Youssefi ad4617f5 2023-11-03T22:46:41 Metal: Fix cross-compile build When cross-compiling for mac, prebuilt shaders are disabled as the Chromium Mac SDK does not include the necessary files. Bug: chromium:1385510 Change-Id: Ie13903681ece68e10f3b9fda42fcc6a8324d563e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5001921 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Dan Glastonbury 34e5620b 2023-11-01T17:52:34 Metal: Reuse UBO conversion buffer only if size matches BufferMtl::getUniformConversionBuffer will recycle an existing buffer if the request has the same buffer index and offset that is a multiple of existing block size. This disregards the GL std size of the request leading to incorrect allocation of blocks in the conversion buffer. The fix is to create a new conversion buffer when stdSize != buffer.uniformBufferBlockSize. Bug: angleproject:8393 Change-Id: Ife87309e66f65baa7f636b734a5586d0ae3b9768 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4995450 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Quyen Le <lehoangquyen@chromium.org>
angle-autoroll eebf069c 2023-11-06T10:01:09 Roll vulkan-deps from 8c0916849657 to c4f7658f287b (6 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/8c0916849657..c4f7658f287b Changed dependencies: * spirv-cross: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross.git/+log/637cff3d05..4818f7e7ef * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/1000f6ec13..e0e27e5486 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://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: ynovikov@google.com Change-Id: Ie14466709065552975931467aa9f355fdd0d1eff Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5007587 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 0e42512e 2023-11-06T07:56:39 Roll Chromium from ab9dfa25fd4d to a63a2e689083 (785 revisions) https://chromium.googlesource.com/chromium/src.git/+log/ab9dfa25fd4d..a63a2e689083 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://issues.skia.org/issues/new?component=1389291&template=1850622 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/36de525e6b..6f4d783d07 * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/214c7529a0..e1fa8831f1 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/019c54f5be..50cd78eb0e * third_party/android_build_tools/lint: KNl-Nl1apUB5k0bMGpYmM6F9_AsDD47Ka_b5BI0InvQC..aCHp55GHeldC4gUHZhm4HHX0nRp0Hr4x13l8t-xO_EoC * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/e2e6aa8bf4..f3e882d631 * third_party/libc++/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/907c04621e..d781e6e1b8 * third_party/libc++abi/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/3ed0e2bc9d..0226cb1cdf * third_party/r8: eu3CgyRJ71_X65Hh-BmphurqYU9N4NIeuXC_yiIhiGEC..XPk3PlUaYx3a8bIbKLnF6Dp23cbjBn6zSLmkL4SukQoC * tools/android: https://chromium.googlesource.com/chromium/src/tools/android/+log/2275e85340..d262359249 * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/2492c5a0a3..d1e293c5d2 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/51d17240c4..6815c10162 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/2e3fd2c20b..9818a0f413 No update to Clang. Bug: None Tbr: syoussefi@google.com Change-Id: I249681a4400bf1e0252ab72d8e842a970764ec34 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5007578 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi ae3af8ee 2023-11-03T16:20:12 Manual roll VK-GL-CTS from 7d738783bf28 to b127977ddad4 (29 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/7d738783bf28..b127977ddad4 2023-11-03 gleese@broadcom.com Simplifications for float_controls tests 2023-11-03 javed@igalia.com Add tests for verifying VK_FORMAT_UNDEFINED as input format. 2023-11-03 rgarcia@igalia.com Remove ESO tests which do not actually use ESO 2023-11-03 rgarcia@igalia.com Add missing mandatory features #ifdef 2023-11-03 tzlatinski@nvidia.com Fix the verification of multi-layered decode images 2023-11-03 gleese@broadcom.com Remove unused code from integer function tests 2023-11-03 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.3.7 into vk-gl-cts/main 2023-10-30 lorenzo@khronosgroup.org Update external dependencies to the latest version 2023-10-27 lorenzo@khronosgroup.org Merge remote-tracking branch 'vk-gl-cts/dev/VK_EXT_nested_command_buffer' 2023-10-27 lorenzo@khronosgroup.org Merge vk-gl-cts/opengl-es-cts-3.2.9 into vk-gl-cts/main 2023-10-27 rgarcia@igalia.com Fix warning when building deqp-vksc 2023-10-26 gleese@broadcom.com Fix offsets in float controls tests 2023-10-26 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.3.7 into vk-gl-cts/main 2023-10-20 Tyler.Schneider@amd.com Ray Query multiple queries tests cases: dEQP-VK.ray_query.multiple_ray_queries.* 2023-10-20 rgarcia@igalia.com Test multiple geometry query stats simultaneously 2023-10-20 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.3.7 into vk-gl-cts/main 2023-10-20 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.3.7 into vk-gl-cts/main 2023-10-19 mateusz.bahyrycz@mobica.com Tests for depth stencil buffer resolve 2023-10-19 gleese@broadcom.com Add coverage of compute workgroup sizing 2023-10-19 gleese@broadcom.com Simplifying changes to spirv_assembly test structure 2023-10-19 rgarcia@igalia.com Remove redundant ESO and feedback loop layout tests 2023-10-19 mateusz.bahyrycz@mobica.com Tests for sparse resources on transfer queue 2023-10-19 amber@igalia.com Add tests for inherithed framebuffers with VK_EXT_depth_bias_control. 2023-10-19 cturner@igalia.com Remove the custom device code in the copies and blitting tests 2023-10-19 piotr.byszewski@mobica.com Improve compile times of some generated glsl tests 2023-10-19 gleese@broadcom.com Simplify BorderSwizzle TestNode 2023-10-18 ziga@lunarg.com Fix duplicated files in cmakelists.txt 2023-10-18 cturner@igalia.com Fix an unused variable warning in release mode 2023-10-16 lorenzo@khronosgroup.org Merge "Merge branch 'dev/VK_ANDROID_external_format_resolve'" into 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://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: angleproject:8402 Change-Id: I99ac9c068080abf59f31e0f391da85cc0eb130b2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5002011 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Yuxin Hu <yuxinhu@google.com> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Igor Nazarov 146a01ea 2023-11-03T15:49:30 Vulkan: Do not pad pipelineCacheData with zeroes Instead of padding, reduce buffer size to the one returned from `pipelineCacheData`. Padding `pipelineCacheData` with zeroes in cases when `vkGetPipelineCacheData()` returns less data then requested, may invalidate the entire buffer. Next time padded buffer is used in `vkCreatePipelineCache()` call, it may be rejected as invalid. I have checked the above by deliberately increasing `pipelineCacheSize` by 42 before `vkGetPipelineCacheData()`. After zeroing these 42 bytes, I passed padded buffer to the `vkCreatePipelineCache()`. Result was successful, however resulting cache size was always 52 bytes instead of the expected `pipelineCacheSize`. Bug: angleproject:2516 Change-Id: Ia1668ca96fc54e9b818ba0c8441e27c9dc2aedc8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5002451 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
Geoff Lang f441e3ee 2023-11-01T15:22:55 Metal: Fix missing mix(float,float,bool) overload ANGLE has an ANGLE_mix_bool overload when the last parameter is a bool but it is not needed when the other parameters are scalar. Bug: chromium:1493243 Change-Id: I6ea904ed63055b49cf3eaded475eafa607ca5976 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4995278 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Le Hoang Quyen bfc764c5 2023-11-03T03:16:40 Metal: Optimize vertex conversion using compute shader. When converting vertex data with compute shader, getComputeCommandEncoderWithoutEndingRenderEncoder() should be used instead of getComputeCommandEncoder(). Because vertex data doesn't depend on previous render commands, hence ending the current render command encoder is unnecessary. The only render command that could write vertex data is the one with transform feedback (XFB). However, the XFB written data should already be synchronized by glEndTransformFeedback() priorly if any. Using getComputeCommandEncoderWithoutEndingRenderEncoder() ensures that the conversion will happen in a compute pass before any draw calls in the render pass. Bug: chromium:1496807 Change-Id: I4613902b2ae83814e7cda712de89c7d8f285e5d1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5004821 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Quyen Le <lehoangquyen@chromium.org>
Igor Nazarov 0a8a7c2b 2023-11-02T13:52:03 Vulkan: Remove rx::WaitableCompressEvent class The `WaitableCompressEvent` class is a left over from the old code and currently serves no purpose. Change that made class obsolete: Vulkan: Sync pipeline cache only when truly changed https://chromium-review.googlesource.com/c/angle/angle/+/3668835 Removal of `WaitableCompressEventImpl` fixes problem, that `CompressAndStorePipelineCacheTask::mCacheData` was not destroyed until next time we assign the `mCompressEvent`. So basically, most of the time we had `mCacheData` allocation wasting memory. After this change, `mCacheData` will be deallocated as soon as the task finishes. Deallocation will happen in the async thread, saving some CPU cycles on the main thread. Bug: angleproject:4722 Change-Id: I9e8826e10535d7f6d844a0043704bd35838a0e02 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5001430 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
Geoff Lang 59f7467a 2023-11-01T14:53:42 Metal: Add missing ScalarMatrix ops Translations for the following built-ins were missing: scalar - matrix scalar + matrix scalar / matrix Bug: angleproject:7525 Change-Id: I5da85781829c195906cc689ffee55cb681f0337c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4995668 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
angle-autoroll eaae3b4b 2023-11-03T10:01:11 Roll vulkan-deps from c604e04c8136 to 8c0916849657 (7 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/c604e04c8136..8c0916849657 Changed dependencies: * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/a08f648c86..9e7a1f2ddd * vulkan-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/116b6b1513..20b2ff1958 * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/13cf161e83..1000f6ec13 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://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: syoussefi@google.com Change-Id: I641c9c6ff4e5c99f7f46f9d48d76cea953346669 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5001624 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll a3095f0c 2023-11-03T07:54:52 Roll Chromium from c02a3bfd314f to ab9dfa25fd4d (687 revisions) https://chromium.googlesource.com/chromium/src.git/+log/c02a3bfd314f..ab9dfa25fd4d 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://issues.skia.org/issues/new?component=1389291&template=1850622 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/cd8c13fa35..36de525e6b * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/4464a179ee..214c7529a0 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/001e4dae71..019c54f5be * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/16ed8d7d56..03ab17bf55 * third_party/android_build_tools/manifest_merger: V90mMwKNdDvQaZ-2eMjmdkHQdGrDn3w4DxA-fGMA8y0C..doEA4zEMMRwIiYmB3veT2pt-7z3UasxhbTo279pDV40C * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/c21db80f32..e2e6aa8bf4 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/17debef507..b4e466e610 * third_party/libc++/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/a12821e5f8..907c04621e * third_party/r8: yozQyBcaVgCwfNJ4oRVTS1Vun4u3Wh4sMKQ0Smyi3NQC..eu3CgyRJ71_X65Hh-BmphurqYU9N4NIeuXC_yiIhiGEC * tools/android: https://chromium.googlesource.com/chromium/src/tools/android/+log/e22b415550..2275e85340 * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/abf1537140..2492c5a0a3 * tools/luci-go: git_revision:282b8b197fad7cf97c820d1a6a1c27c13de0d3ac..git_revision:540222a3d0b11c1370539a1f698643113a0ee029 * tools/luci-go: git_revision:282b8b197fad7cf97c820d1a6a1c27c13de0d3ac..git_revision:540222a3d0b11c1370539a1f698643113a0ee029 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/05ed05cbee..51d17240c4 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/80710c297b..2e3fd2c20b * tools/skia_goldctl/linux: 6ZbzGODKMcpBpaQGevv9HDYFq1MySuazksPjASy3whYC..WTMxFNxXY-WvCR_1vkehlNUI0Ni4WkQKZ5KyBQUl2eAC * tools/skia_goldctl/mac_amd64: 5C8IlKD_v-3TyIt2ABjbZe9tOjuSobu7mdbbqWb2nrkC..i_w2lfW3au1P5g--qUu5Si9hY60AtCRJ5zu3K0FBxscC * tools/skia_goldctl/mac_arm64: 6MIhSSiQhqNv7wsqsRsByAXXlbN8mjYNv7ww0laA6I4C..bG_OHoTvm9OroVOakbDvX6AtkRYM0ilBMSe-kvuLTjAC * tools/skia_goldctl/win: vXil0StnMljEIoOtmXbb7HFvcI6HMgbv54IWOVuoBaEC..WgFDkUHOv_OnoBoSP1EHQvKOTaNpj8rGNNnlZcZ5Ce4C No update to Clang. Bug: None Tbr: syoussefi@google.com Change-Id: I7be0ac6dd7bb750edc05671de9e1a843ca4bef13 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5002158 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Le Hoang Quyen 9f9c35f3 2023-11-02T19:56:32 Metal: Don't map index buffer in drawArraysProvokingVertexImpl We don't need to map the provoking vertex's index buffer right after generating it on GPU. It caused GPU-CPU sync between every drawArrays call having flat shading. The only reason for mapping was to pass the indices data to setupDraw. However setupDraw only needs indices data for converting vertex attributes. Even then the converted attributes have the same order as the original vertices. Hence the conversion sill works fine with the original indices and there is no need for it to know about the generated indices. Bug: chromium:1496807 Change-Id: Ie69b3db78ead2160fd714ca04480625dded09062 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5000085 Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Quyen Le <lehoangquyen@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Hailin Zhang 67222ef4 2023-10-20T22:56:09 Reland "Vulkan: merge client buffer data." This is a reland of commit 563569acfcaf56ea87916d2ab5d50f09c8e0094e Original change's description: > Vulkan: merge client buffer data. > > some old fashion game still use lots of interleaved > client buffer. instead of copy each attrib alone. > this cl try to merge all the attrib ranges. reduce > allocated memory and do whole range memcpy. > > Bug: b/306763053 > Change-Id: I493d7f0e1ef593fb7059c36ae0ed2149c4595e42 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4960642 > Commit-Queue: Hailin Zhang <hailinzhang@google.com> > Reviewed-by: Charlie Lao <cclao@google.com> Bug: b/306763053 Change-Id: If079ab055b7b7a2d14235bee3311fd628f657f35 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4997325 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Hailin Zhang <hailinzhang@google.com>
Mike Schuchardt 221117ab 2023-11-02T08:48:51 Tests: Add The Sims Mobile trace Test: angle_trace_tests --gtest_filter=TraceTest.the_sims_mobile Bug: b/308927628 Change-Id: I5de44b7eedb904c318168fbc7e308af218dc5ab1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5002145 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Mike Schuchardt 4cc9e0af 2023-10-31T11:19:51 Capture Tests: Fix unintentional gen-on-bind usage A handful of tests are binding handles without glGen'ing them first. This causes mismatched handles in capture_replay_test.py now that replay inserts additional gen calls for resources that aren't explicitly gen'd. For handles that are intentionally gen-on-bind, clean up the GL state so it doesn't miscompare. Test: capture_replay_tests.py --gtest_filter=*/ES3_Vulkan_SwiftShader Bug: b/303100333 Change-Id: I5ce8060ff62264b3d648722b3c4542a136d95db5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4994414 Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Mike Schuchardt <mikes@lunarg.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
angle-autoroll 6a879893 2023-11-02T10:01:11 Roll vulkan-deps from 54bfabb1adb0 to c604e04c8136 (9 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/54bfabb1adb0..c604e04c8136 Changed dependencies: * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/4f014aff9c..a08f648c86 * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/b1503837f6..13cf161e83 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://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: syoussefi@google.com Change-Id: I79a480e90fa595d3278a0a8fc377618f3936d3e2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4999825 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll fbebf772 2023-11-02T07:01:24 Roll Chromium from c274ac05ad19 to c02a3bfd314f (535 revisions) https://chromium.googlesource.com/chromium/src.git/+log/c274ac05ad19..c02a3bfd314f 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://issues.skia.org/issues/new?component=1389291&template=1850622 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/bd55a16d57..cd8c13fa35 * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/a2902fd5eb..4464a179ee * testing: https://chromium.googlesource.com/chromium/src/testing/+log/a50b9db9f5..001e4dae71 * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/cecfd480dc..2af29c6a26 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/0c8da6a392..c21db80f32 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/00777b41d5..17debef507 * third_party/libc++/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/508f2748bb..a12821e5f8 * third_party/libc++abi/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/9ee8567547..3ed0e2bc9d * third_party/r8: XBo8_obZmozhsuqBdbUlLr53K6Y0rHAQKquaENug1X8C..yozQyBcaVgCwfNJ4oRVTS1Vun4u3Wh4sMKQ0Smyi3NQC * tools/luci-go: git_revision:924cfd2323a9192361b765f81fffc135026c1fee..git_revision:282b8b197fad7cf97c820d1a6a1c27c13de0d3ac * tools/luci-go: git_revision:924cfd2323a9192361b765f81fffc135026c1fee..git_revision:282b8b197fad7cf97c820d1a6a1c27c13de0d3ac * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/9b4ea50d32..05ed05cbee * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/96bfbb01b4..80710c297b No update to Clang. Bug: None Tbr: syoussefi@google.com Change-Id: I77ab6965e8f1de3bdb51d48702fe1083f46435dd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4999253 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi 053aa915 2023-11-01T12:01:27 Vulkan: Disable VK_EXT_graphics_pipeline_library on RADV Causes crashes in the driver. Bug: chromium:1494778 Bug: chromium:1497512 Change-Id: I0a9a74d8d77c48744ce9a62d27f48120209d1476 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4995274 Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com>
Yuly Novikov 918028a2 2023-10-31T17:53:07 Update bot detection in capture_replay_tests Since GOMA is going away, check username instead. Bug: angleproject:6085, angleproject:8309 Change-Id: Ie4fa4ec7fad8b52450c1ef8be9e5099f30c8fc7c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4994667 Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Shahbaz Youssefi 9a5d75de 2023-10-30T11:59:19 Vulkan: Fix incompatible redefinition of cube faces The TextureVk::mRedefinedLevels bitmask tracked which levels are incompatibly redefined, greatly reducing the complexity of dealing with GL's mutable textures. It did not however take into account the fact that GL allows each cubemap face to be separately redefined (unlike 2D arrays, where all layers are defined together). This change turns the bitmask into an array of bitmasks. Previously, a single bit represented whether the level is incompatibly redefined. Now, elements of the array track the same information for each cube face. For non-cube-map textures, only element 0 is used. Bug: chromium:1494664 Change-Id: I69568d3da2391796bf5f01505861fee42c6c8924 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4986289 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 3e545826 2023-11-01T10:01:54 Roll vulkan-deps from e55b4f78bcf3 to 54bfabb1adb0 (11 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/e55b4f78bcf3..54bfabb1adb0 Changed dependencies: * glslang: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang.git/+log/f8dd5adde4..302a663a38 * vulkan-loader: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/1ddcde3c55..9f257b620d * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/c27900222c..b1503837f6 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://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: syoussefi@google.com Change-Id: I72ac66c612bb2fecb471d2235b594bb8a2f07ca3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4997332 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll f71a5bad 2023-11-01T08:25:48 Roll Chromium from 58d756134d9b to c274ac05ad19 (1331 revisions) https://chromium.googlesource.com/chromium/src.git/+log/58d756134d9b..c274ac05ad19 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://issues.skia.org/issues/new?component=1389291&template=1850622 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/a21fc60651..bd55a16d57 * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/6f834e2039..a2902fd5eb * testing: https://chromium.googlesource.com/chromium/src/testing/+log/94cf08b9e1..a50b9db9f5 * third_party/android_build_tools: https://chromium.googlesource.com/chromium/src/third_party/android_build_tools/+log/290bf47520..f349efeefb * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/b7c04d1b08..cecfd480dc * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/47efdb4b14..0c8da6a392 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/9f3b33a275..00777b41d5 * third_party/fuchsia-sdk/sdk: version:15.20231022.3.1..version:16.20231030.2.1 * third_party/kotlin_stdlib: ZwEhbBOU3zJ8iFzea34zthR0d1a1LlfSPjfsblxKbSgC..UHG1TEvmBMX93y7dRSaoalB3LBMY2O5-OOvlFUByl5wC * third_party/libc++/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/a429c26ae2..508f2748bb * third_party/libc++abi/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/2ca9f38714..9ee8567547 * third_party/libunwind/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git/+log/7686b5d38c..69b8c64697 * third_party/protobuf: https://chromium.googlesource.com/chromium/src/third_party/protobuf/+log/b2f4cca357..6969ef7fe9 * third_party/r8: jj098_uPn3EKB7YisD1VAQXkZWNtSa6Qxz3vpMQkPR4C..XBo8_obZmozhsuqBdbUlLr53K6Y0rHAQKquaENug1X8C * third_party/turbine: VRQ9UNP0lvjDXJ4DhORCj66go0TLg5uuGnHWkNN_hgUC..C6QGDoh6Gsr8uSRNcsphzaRJEoG9qKitOL771Mv9piIC * tools/android: https://chromium.googlesource.com/chromium/src/tools/android/+log/3518522a2f..e22b415550 * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/d76d091db2..abf1537140 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/b3e514fd0b..9b4ea50d32 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/f8ba498d2f..96bfbb01b4 No update to Clang. Bug: None Tbr: syoussefi@google.com Change-Id: I34f28ae2b0f8eb31465696742a22442f6dd907ce Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4997330 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Peiyong Lin 46817856 2023-11-01T04:38:40 Revert "Vulkan: merge client buffer data." This reverts commit 563569acfcaf56ea87916d2ab5d50f09c8e0094e. Reason for revert: Broke Android build, see aosp/2812590 Original change's description: > Vulkan: merge client buffer data. > > some old fashion game still use lots of interleaved > client buffer. instead of copy each attrib alone. > this cl try to merge all the attrib ranges. reduce > allocated memory and do whole range memcpy. > > Bug: b/306763053 > Change-Id: I493d7f0e1ef593fb7059c36ae0ed2149c4595e42 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4960642 > Commit-Queue: Hailin Zhang <hailinzhang@google.com> > Reviewed-by: Charlie Lao <cclao@google.com> Bug: b/306763053 Change-Id: I31ab923af16bf3f9e99033ebd6ea4c5e5b310d71 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4995494 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Reviewed-by: Peiyong Lin <lpy@google.com> Auto-Submit: Peiyong Lin <lpy@google.com> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Peiyong Lin 4066fddd 2023-10-31T21:36:25 Add flag to move ANGLE binaries to /system/${LIB}. Previously ANGLE binaries were built into /vendor/${LIB}/egl, but since ANGLE is in AOSP and we would like to make sure shipping ANGLE is not blocked by vendor partition update, this patch moves ANGLE to /system/${LIB}. Relative path is eliminated as subdirectory is not preferred unless necessary. With the flag, if angle_on_system is set to true, then ANGLE libraries will be built into /system/${LIB}. Bug: b/293503000 Change-Id: I86448ca313bc4f66e1ca78e05797b02a3b8d318a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4996366 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Peiyong Lin <lpy@google.com>
Hailin Zhang 563569ac 2023-10-20T22:56:09 Vulkan: merge client buffer data. some old fashion game still use lots of interleaved client buffer. instead of copy each attrib alone. this cl try to merge all the attrib ranges. reduce allocated memory and do whole range memcpy. Bug: b/306763053 Change-Id: I493d7f0e1ef593fb7059c36ae0ed2149c4595e42 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4960642 Commit-Queue: Hailin Zhang <hailinzhang@google.com> Reviewed-by: Charlie Lao <cclao@google.com>
Chris Forbes c0c20673 2023-10-31T09:03:16 Remove expections for some AHB tests which are now fixed Bug: b/223456677 Change-Id: Ibdc5b529e249c39c241a8e8e2b78ac10ff3d5ad2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4988292 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Charlie Lao <cclao@google.com>
Alexey Knyazev b6607672 2023-10-30T00:00:00 Test sampling from a texture with renderable levels below base Bug: angleproject:8378 Change-Id: Id847849e1920c0d1706a4b3441c907ea2451cb6e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4994791 Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Geoff Lang 36f41997 2023-10-30T15:14:09 D3D11: CopySubTexture: Handle sRGB source with D3D11 Use typeless formats for sRGB textures that can be reinterpreted as linear. Add a parameter to SRV creation to request samplers that do not do sRGB for copying sRGB textures. Bug: angleproject:7907 Change-Id: I3d94dfa5b25a1c2c531cd9bef4247097aa4bfb61 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4986290 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Hailin Zhang 2ee06400 2023-10-31T10:57:02 Vulkan: fix dynamic buffer alignment issue. Bug: b/306763053 Change-Id: I2f15fe2a2a36a9f55686987641e6afddb44ec9aa Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4994410 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Hailin Zhang <hailinzhang@google.com>
Shahbaz Youssefi c6dc00d2 2023-10-31T11:50:40 Manual roll vulkan-deps from 69081d0e32f7 to e55b4f78bcf3 (110 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/69081d0e32f7..e55b4f78bcf3 Changed dependencies: * glslang: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang.git/+log/7fa0731a80..f8dd5adde4 * spirv-cross: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross.git/+log/2de1265fca..637cff3d05 * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/73876defc8..4f014aff9c * vulkan-headers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers.git/+log/f4bfcd8852..aff5071d4e * vulkan-loader: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/131a081e08..1ddcde3c55 * vulkan-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/f7017f2333..116b6b1513 * vulkan-utility-libraries: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries.git/+log/dcfce25b43..5b3147a535 * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/cc1e12c6fc..c27900222c 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://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Change-Id: I0c94d5f8e6d5b4c42186c063052f824c5cb5a3df Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4995264 Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Alexey Knyazev 118a9b14 2023-10-30T00:00:00 Test sampling from a texture with extra renderable levels Bug: angleproject:8378 Change-Id: I4790d59ce193a2aa4ba9e468debf0933a6e3fe47 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4987639 Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Tommy Nyquist 907ccf84 2023-10-30T13:29:20 Vulkan: Stop compiling vulkan validation layers on Android This CL disables compiling validation layers on Android Chromium checkouts because it causes compile issues down the line when creating trichrome bundles. Bug: angleproject:8398 Change-Id: If42d03680bed268a7107a734e23019338e014a05 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4990386 Auto-Submit: Tommy Nyquist <nyquist@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Takuto Ikuta f4a47233 2023-10-31T17:35:39 DEPS: update reclient This is to import fix for b/300385828. Bug: angleproject:8309 Change-Id: Ifc2c40e7fa29c3e96e3f88d8995d919d6e04dfcc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4992121 Auto-Submit: Takuto Ikuta <tikuta@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
angle-autoroll 85549ffa 2023-10-31T10:01:03 Roll SwiftShader from d9ec9befba05 to 5c95af798ba4 (1 revision) https://swiftshader.googlesource.com/SwiftShader.git/+log/d9ec9befba05..5c95af798ba4 2023-10-30 davidben@google.com Fix unaligned_ptr in swiftshader 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://issues.skia.org/issues/new?component=1389291&template=1850622 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: I63bb923b8e99bc6f4236b3f55672f75c47f7b347 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4993284 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Roman Lavrov 8e8b4dc9 2023-10-24T10:05:58 Aosp builds -O2 instead of -Os -Os is rarely used in the native driver. Native driver actually has -O3 in e.g. gles entry points, and -O2 in most other places. We'll try to switch ANGLE standalone and Chrome to -O2 as well, so preferring -O2 here as well for now. In my local aosp builds the (sum of) binary size increase is as follows: -Os: 8.4M -O2: 9.0M (+7%) Bug: b/306391262 Change-Id: Id9d0b7607dbe9b7b40541df4469ecba20f4f76c9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4969835 Auto-Submit: Roman Lavrov <romanl@google.com> Commit-Queue: Roman Lavrov <romanl@google.com> Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Charlie Lao c0f94afb 2023-10-30T11:07:02 Vulkan: Limit ImageTestES3.RGBXAHBImportMultipleLayers to 1 layer ImageTestES3.RGBXAHBImportMultipleLayers is testing 3 layer AHB with CPU write. It assumes alignment between each layer is 4096 which appears not always true in ARM driver. I am also not seeing any API that would tell us the underlying layer alignment. So for now restrict this test to single layer. Bug: b/223456677 Change-Id: I447990d08d31c2a20e8765686834f43b81560840 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4990044 Reviewed-by: Chris Forbes <chrisforbes@google.com> Commit-Queue: Charlie Lao <cclao@google.com>
Charlie Lao 471b5040 2023-10-26T09:33:29 Vulkan: Only enable DS dynamic state if there is DS attachment. This is discovered while investigating EXT_yuv_target crash in driver. What happens is that UtilsVk::copyImage does not set depth stencil dynamic state since there is no depth stencil attachment. But we enabled dynamic state for D/S, thus driver still does D/S state setup, which sees garbage data and hitting assertion. Even though this is discovered with EXT_yuv_target test, I believe this is a general issue. This CL adds the renderPassDesc.hasDepthAttachment() and hasStencilAttachment() check and enable depth or stencil related dynamic state only if there is depth or stencil attachment. This fixes crash in driver with ImageTestES3.ClearYUVAHB test. This also has added performance benefit that we now completely skips depth/stencil related dynamic state dirty bit handling code, thus reduces state processing CPU overhead. Bug: b/223456677 Change-Id: I3a4fe6d97b14c066d78f8b8ded21c626cb2f376c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4980765 Reviewed-by: Chris Forbes <chrisforbes@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Charlie Lao <cclao@google.com>
Roman Lavrov d67aafac 2023-10-30T10:39:17 Keep default_optimization on Fuchsia Size increase does not work for Fuchsia https://ci.chromium.org/ui/p/chromium/builders/try/fuchsia-binary-size/512859/overview web_engine (compressed) grew by 368640 bytes (uncompressed growth: 859960 bytes) Bug: b/306391262 Change-Id: I25b201bbadbd9862ab52d676e77c939b0c372aec Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4989661 Auto-Submit: Roman Lavrov <romanl@google.com> Commit-Queue: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Zijie He <zijiehe@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Charlie Lao 5fa65ec8 2023-10-27T16:12:46 ImageTest: check support before test cubemap ImageTestES31.SourceAHBCubeArrayTargetCubeArray crahes because AHB creation failed. We should check kAHBUsageGPUCubeMap support and bail out if not supported. Bug: b/223456677 Change-Id: I0d66830ac892e673bc39cca8caf5e25822957775 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4985412 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Chris Forbes <chrisforbes@google.com>
Cody Northrop e519da9a 2023-10-29T14:33:06 Tests: Add Streets of Rage 4 trace Test: angle_trace_tests --gtest_filter="*streets_of_rage_4*" Bug: b/308334509 Change-Id: I3cc2d41c83bfcc6a32e6d1aec5e306cefb15afdc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4988132 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Mike Schuchardt <mikes@lunarg.com>
Mike Schuchardt b48d9daf 2023-10-27T10:11:15 Capture/Replay: Gen gen-on-bind resources on replay Fixes a handle id collision where capture-time handles are directly used at replay time for gen-on-bind resources, and end up colliding with handles already allocated by the replay driver. This change explicitly allocates an unused handle for gen-on-bind resources by calling glGen*. The destruction of gen-on-bind resources is already managed correctly by handleGennedResource(). Test: Capture and replay The Sims Mobile Bug: b/303100333 Change-Id: I084c95c09c771bb7476e16ba81545852248d0945 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4985062 Commit-Queue: Mike Schuchardt <mikes@lunarg.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Charlie Lao bcd331f1 2023-10-27T15:21:35 ImageTest: Allow writeAHBData to fail ImageTest::SourceNativeClientBufferTargetRenderbuffer test is using EGL to create a AHB. eglCreateNativeClientBufferANDROID does not allow us to specify CPU access. So driver may allocate AHB in a way that prohibits CPU access. That will cause AHB lock to fail and writeAHBData crash. This is within AHB specification. This CL allows this to fail so that we wont crash. Bug: b/223456677 Change-Id: I549b940d1283165cec1dc48ea5b43ba917081252 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4985627 Reviewed-by: Chris Forbes <chrisforbes@google.com> Commit-Queue: Charlie Lao <cclao@google.com>
Mike Schuchardt 53c5b145 2023-10-10T09:42:08 Capture/Replay: Restore texture bindings on reset Store active texture unit and all bound textures at capture start. Track dirty state for each unit+target pair during capture. Restore bound textures for each dirty binding unit when resetting context state. Also restore active texture unit if necessary. Test: Capture The Sims Mobile Bug: angleproject:4599 Change-Id: Iae3e03e6c5b0a35d5bb95bf07397d7894355502b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4927869 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Mike Schuchardt <mikes@lunarg.com>
Charlie Lao acb0ae09 2023-10-27T13:38:09 Vulkan: Swizzle YUV output from GL component order to vulkan Since OpenGL and vulkan has different YUV component ordering, we need to swizzle the component form GL to vulkan when we write YUV data to output variable. The computation in shader will still carry out in OpenGL order. This CL swizzles component for the YUV output variable. Bug: b/223456677 Change-Id: Ie34bbc723bf3723ac65f7931aeab086c92610271 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4985622 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Chris Forbes <chrisforbes@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Alexey Knyazev 3b555e8d 2023-10-26T00:00:00 GL: Add emulateClipOrigin workaround Older Adreno drivers apply GL_CLIP_ORIGIN_EXT to the framebuffer instead of the clip space, thus causing various side-effects. Used a uniform to emulate the correct behavior. Drive-by: * Fixed a typo in ClipControlTest.OriginFrontFacing Fixed: angleproject:8392 Change-Id: I2f7145977ab0e11dc88e8dbfec2cd32c4c31f830 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4987326 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
angle-autoroll b56a7204 2023-10-30T07:00:38 Roll Chromium from 63a05c417b61 to 58d756134d9b (825 revisions) https://chromium.googlesource.com/chromium/src.git/+log/63a05c417b61..58d756134d9b 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,geofflang@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://issues.skia.org/issues/new?component=1389291&template=1850622 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/dc772ab952..a21fc60651 * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/5a1d6bf1a3..6f834e2039 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/da6f122a55..94cf08b9e1 * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/dddbc62757..b7c04d1b08 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/16e6d794aa..47efdb4b14 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/7751ddfa9e..9f3b33a275 * third_party/libc++/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/9b27200e82..a429c26ae2 * third_party/r8: Jn6jDwY2CaSHjf9fzclZsEGDIaIudbGyiQAiqu6fjnMC..jj098_uPn3EKB7YisD1VAQXkZWNtSa6Qxz3vpMQkPR4C * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/86aed39db2..d76d091db2 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/e6bdcbdfc1..b3e514fd0b * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/d0ebb9bf7a..f8ba498d2f Clang version changed llvmorg-18-init-8676-g11d07d9e:llvmorg-18-init-9505-g10664813 Details: https://chromium.googlesource.com/chromium/src/tools/clang/+/86aed39db276fb876a2b98c93cc6ff8940377903..d76d091db249cfc4460217aa101fbc19fccf6bf0/scripts/update.py Bug: None Tbr: geofflang@google.com Change-Id: Ib0cbd1ca61e258390fa437d65b199af9537a95c0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4989101 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Tommy Nyquist 95fe7e47 2023-10-27T14:07:52 [Android] Update NDK version check for hardware buffer. The function used for checking if hardware buffer is supported requires NDK 29, but is currently checking if 26+ is in use. This was not an issue before, but when updating the minimum SDK (and NDK) version in Chromium, this led to an inconsistency. For now, increasing the version requirement to 29+, and therefore also removing the unnecessary branch for lock planes support. Bug: chromium:1497004 Change-Id: I3d6e60e51db0831ee81d817aec90760d7680cc31 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4985624 Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Kenneth Russell <kbr@chromium.org>
Roman Lavrov a7882c41 2023-10-27T09:32:07 Skip InstancingTestES3.LargeDivisor on Linux ASAN Tests a large divisor and hits an emulation path on SwiftShader, causing flaky timeouts on asan bots. Bug: angleproject:7900 Change-Id: Ia82941e67867816c8330472f4f2ea8d897fa9636 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4982910 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Auto-Submit: Roman Lavrov <romanl@google.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Roman Lavrov <romanl@google.com> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Alexey Knyazev 06819324 2023-10-12T00:00:00 Metal: Linearize PVRTC1 blocks for buffer uploads PVRTC1 blocks are stored in a reflected Morton order and need to be linearized for buffer uploads in Metal. Fixed: angleproject:8376 Change-Id: I59497aaf49eb57aa93e346d62d56c69535555fd9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4973955 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
angle-autoroll de71dd05 2023-10-27T07:01:30 Roll Chromium from eeef412b7e3c to 63a05c417b61 (619 revisions) https://chromium.googlesource.com/chromium/src.git/+log/eeef412b7e3c..63a05c417b61 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,geofflang@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://issues.skia.org/issues/new?component=1389291&template=1850622 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/b43af392a3..dc772ab952 * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/11e982b6f9..5a1d6bf1a3 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/e71c84911d..da6f122a55 * third_party/android_build_tools/lint: vdzlvQoq4o7IGjo9mhBtZIkfFZWpmjCZLIs9ISfB7KsC..KNl-Nl1apUB5k0bMGpYmM6F9_AsDD47Ka_b5BI0InvQC * third_party/android_build_tools/manifest_merger: S3Uexmlj5xGKoVRHL8yIysS_cVsUrc3E3K_sq2hsCU0C..V90mMwKNdDvQaZ-2eMjmdkHQdGrDn3w4DxA-fGMA8y0C * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/27f2daf83f..dddbc62757 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/e0c9c85d41..16e6d794aa * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/27ea34f94e..7751ddfa9e * third_party/libc++/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/d8fb829b95..9b27200e82 * third_party/libc++abi/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/5acf60c8b9..2ca9f38714 * third_party/r8: hCR0xJbBeRfCUH-G2O_dMQ2C7wY-BhWHhAdXP_yuG3MC..Jn6jDwY2CaSHjf9fzclZsEGDIaIudbGyiQAiqu6fjnMC * tools/android: https://chromium.googlesource.com/chromium/src/tools/android/+log/34b911efa9..3518522a2f * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/573b2a1530..e6bdcbdfc1 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/f130da7870..d0ebb9bf7a No update to Clang. Bug: None Tbr: geofflang@google.com Change-Id: I0f4372d271f784d8b5d843da5590568cfd7f15da Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4983705 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Geoff Lang eca38a10 2023-10-26T11:02:38 Vulkan: Supress new DrawNone VVL errors Errors: VUID-vkCmdDraw-None-09000 VUID-vkCmdDrawIndexed-None-09002 Bug: angleproject:8394 Change-Id: If43390e837df088ba7a6d0c7eb5947927ad186d1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4979786 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Geoff Lang 3596ab4c 2023-10-26T10:11:17 Metal: Disable prebuilt shaders on iOS. Chromium's Mac SDK is missing files needed to build for iOS: LLVM ERROR: Error opening '/Volumes/Work/s/w/ir/cache/xcode_ios_15a507.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/metal/macos/bin/../lib/clang/32023.35/lib/darwin/libmetal_rt_ios.a': No such file or directory! Bug: chromium:1385510 Change-Id: Iee7d6f477ffbebbbdca22e8377f244d2d13dfe66 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4980045 Reviewed-by: Roman Lavrov <romanl@google.com> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
angle-autoroll 3dbf8ebc 2023-10-26T07:00:28 Roll Chromium from fa8fa1dd7a5a to eeef412b7e3c (676 revisions) https://chromium.googlesource.com/chromium/src.git/+log/fa8fa1dd7a5a..eeef412b7e3c 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,geofflang@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://issues.skia.org/issues/new?component=1389291&template=1850622 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/fe6bf5df4c..b43af392a3 * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/cd6bd50a8f..11e982b6f9 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/52c9bd6e91..e71c84911d * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/a391ecbab7..16ed8d7d56 * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/7a747fea27..27f2daf83f * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/9d8a076f99..e0c9c85d41 * third_party/libc++/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/7b5e31698b..d8fb829b95 * tools/android: https://chromium.googlesource.com/chromium/src/tools/android/+log/65ba847dc7..34b911efa9 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/5a97631b41..573b2a1530 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/091cf42b92..f130da7870 No update to Clang. Bug: None Tbr: geofflang@google.com Change-Id: Icda1e6e5df04589b6560b182bae937aaadeef957 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4977652 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Hailin Zhang 5dd0c842 2023-10-24T13:48:29 Vulkan: improve memory type mismatch issue. for dynamic buffer usage, the memoryTypeIndex returned from findMemoryTypeIndexForBufferInfo not used. if we add more flags like VK_MEMORY_PROPERTY_HOST_CACHED_BIT at alloction. the actual memory type allocated may not have such flag. Bug: b/306763053 Change-Id: I778e51fdd5ce0bc0810a965c45b5763a155fc391 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4973574 Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Hailin Zhang <hailinzhang@google.com> Reviewed-by: Charlie Lao <cclao@google.com>
Mateusz Przybylski fdf4c6a6 2023-10-24T12:09:51 Add test for attrib rebinding from ARRAY_BUFFER to client. Failure was found in Dragonmania game, where on switching from ARRAY_BUFFER to client attrib pointer without updating the stride, ANGLE assumed no change in the pipeline. Bug: b/306472834 Change-Id: I30f7a478ed62f4356317156b50558166cb7c4c01 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4977168 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com>
Charlie Lao 43187a24 2023-10-25T09:43:56 Vulkan: remap YUV clearColor component from GL order to vulkan order For EXT_YUV_TARGET, OpenGL and vulkan uses difefrent mapping between YUV to RGB. OpenGL spec says "When clearing YUV Color Buffers, clear color should be defined in yuv color space and so floating point r, g, and b value will be mapped to corresponding y, u and v value and alpha channel will be ignored.", but vulkan spec says "Values in the G, B, and R channels of the color attachment will be written to the Y, CB, and CR channels of the external format image, respectively.". This CL adjusts clear color to remap the clear color from GL ordering to vulkan ordering. This CL also adds a temporary workaround for ARM driver bug where they were looking at unused color attachment instead of resolve attachment. Bug: b/223456677 Change-Id: I9800bffc18ccd9d77b4e86995161cdde06257e1f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4973355 Reviewed-by: Chris Forbes <chrisforbes@google.com> Commit-Queue: Chris Forbes <chrisforbes@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Igor Nazarov 4f611a1f 2023-10-24T20:56:19 Vulkan: Remove RendererVk::collectAllocationGarbage Instead of adding separate method overload `DestroyGarbage()` method. This will avoid checking `mUse` and creating garbage list twice. Bug: b/218891184 Change-Id: If56ffe72a639021b1fd37feb02ebb91f62ad0933 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4974318 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Igor Nazarov <i.nazarov@samsung.com> Reviewed-by: Charlie Lao <cclao@google.com>
Geoff Lang 729e19ac 2023-10-24T15:31:17 Remove essl3 extension requirement for ES3 texture parameters The extensions are not clear about support for the swizzle parameters with external textures. Other parameters are mentioned with specific validation (which is handled in ValidateTexParameterBase). Simply let the other validation handle these parameters and allow the swizzle to be forwarded. Bug: chromium:1493448 Change-Id: Ic34d4c124c5493fef796322b5237541e557fd7ab Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4973157 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Geoff Lang a9b01747 2023-10-25T10:49:56 Metal: Add fall back to from-source shader compilation We can't compile Metal shaders at build time without the chromium build directory and mac_sdk.gni. Add a graceful fallback to building the shaders from source at runtime in this case. Also detect the iOS simulator in gn and disable shader compilation. We don't have all the Mac SDK files needed to build shaders for this target yet. Bug: chromium:1385510 Change-Id: Ibd1b36f9d97e7340a9742cba0c9c5f2221cd9a8d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4974918 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Chris Forbes 9e5f5188 2023-10-24T18:43:12 Reswizzle results of YUV sampling operations Change-Id: Id6eee9e0d9e2b80d48c80f27bc8e670a5621d263 Test: ImageTestES3.* 24 -> 15 failures Bug: b/223456677 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4970337 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com>
angle-autoroll 368ddf22 2023-10-25T07:24:50 Roll Chromium from cea2902c9c11 to fa8fa1dd7a5a (674 revisions) https://chromium.googlesource.com/chromium/src.git/+log/cea2902c9c11..fa8fa1dd7a5a 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,geofflang@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://issues.skia.org/issues/new?component=1389291&template=1850622 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/6a5969b1cd..fe6bf5df4c * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/75a40ee29d..cd6bd50a8f * testing: https://chromium.googlesource.com/chromium/src/testing/+log/f10cb8b614..52c9bd6e91 * third_party/android_build_tools/lint: B5rMbDYcnLV5PkN2pDyWvPScXUdkhHvmiGa7UUkTTTkC..vdzlvQoq4o7IGjo9mhBtZIkfFZWpmjCZLIs9ISfB7KsC * third_party/android_build_tools/manifest_merger: KmtRhZoOS6xQcRRnch2SSZWcioCEl8amdDO1hI5FvBoC..S3Uexmlj5xGKoVRHL8yIysS_cVsUrc3E3K_sq2hsCU0C * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/43582381dd..27ea34f94e * third_party/kotlin_stdlib: QwS-YZL_N4g1SjI1Ngely1WPNxLh-kfYpFZhKaEXGawC..ZwEhbBOU3zJ8iFzea34zthR0d1a1LlfSPjfsblxKbSgC * third_party/libc++/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/58c1757391..7b5e31698b * third_party/libunwind/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git/+log/11d9f3e055..7686b5d38c * third_party/r8: EJBvY8okEtL8rBTKcVoAbusYIpZD8wRuqoo-LWfKz_EC..hCR0xJbBeRfCUH-G2O_dMQ2C7wY-BhWHhAdXP_yuG3MC * third_party/siso: git_revision:c689f99bb4b9908073bd2f3fbd68f289d9e45a75..git_revision:6af7e19f74a94ee61f1ddabc0d23b8e3c0d02e98 * tools/android: https://chromium.googlesource.com/chromium/src/tools/android/+log/70a44835ed..65ba847dc7 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/809cf55c67..5a97631b41 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/ad5af24436..091cf42b92 No update to Clang. Bug: None Tbr: geofflang@google.com Change-Id: I71cff2aa63bcfa8c1c64e3a99ca09cd71fd0d690 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4975111 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Yuxin Hu f3af255c 2023-10-24T10:21:29 Update README.md with latest conformance version on Vulkan backend Bug: b/254527832 Change-Id: Ia46cef9326a323773202e067a75f715f1336e485 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4972656 Commit-Queue: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Roman Lavrov 13776ac3 2023-10-24T11:10:25 Compile with optimize_max instead of default_optimization Android builds default to aggressive optimization for size (-Oz) which results in subpar performance in some spots. AFAICT the effect of this change on cflags is: -Oz -enable-ml-inliner=release to -O2 Note that -enable-ml-inliner=release has a more significant impact on the binary size than -Oz/-O2: With it: -Oz 5.7M, -O2 6.15M Without it: -Oz: 6.3M, -O2 7.1M So this change goes 5.7M -> 7.1M (+1.4M). That's in standalone ANGLE builds. Unsure if Chrome builds might be different. Skipping a few dEQP tests where this switch seems to uncover UB. Bug: b/306391262 Bug: b/307584642 Change-Id: I44d0f3bcf25de0c36a4228895cad19ea38502cbf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4968419 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Roman Lavrov <romanl@google.com>
Dan Glastonbury 562d4be3 2023-10-20T14:33:05 Clear pending program linking in Context::onDestroy When destroying Context, ANGLE resets any internal state before releasing allocated objects, such as Programs and Shaders. When destroying a program, any pending program linking is resolved via Program::resolveLink. This results in trying to access the Context state that’s just been reset. To work around this, we ensure there are no pending links before resetting the Context state. Bug: angleproject:8380 Change-Id: I599c7e5a82b0e6bf14df1263006e10d8a9cb0b38 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4957715 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Geoff Lang db38707a 2023-10-19T18:08:51 Metal: Compile mtllib at build time. Reworks gen_mtl_internal_shaders.py to only generate the combined metal source file, mtl_internal_shaders_autogen.metal. metallibs are now compiled at build time using gn actions. This allows the Chrome and WebKit build process to use the same code for loading the builtin shaders even though they compile them in different ways. We now only build the mtllib for the OS we're currently building for. Bug: chromium:1385510 Change-Id: Ie3b4f66c48a7e0eccd5fe664f988e407f452795c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4583134 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Alexey Knyazev <lexa.knyazev@gmail.com>
Yuxin Hu c22f46b5 2023-10-23T11:52:20 Update rgb-565-no-depth-no-stencil test suite names Replace the "-" with "_" in the test suite names to be consistent with other test suite name formats. Bug: b/297901032 Change-Id: Idbfc1bc7aa7cef4382e3cdd3e223db28f414f15e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4968792 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
angle-autoroll 6b578fbb 2023-10-24T07:00:50 Roll Chromium from a1990d9c6b75 to cea2902c9c11 (644 revisions) https://chromium.googlesource.com/chromium/src.git/+log/a1990d9c6b75..cea2902c9c11 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,geofflang@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://issues.skia.org/issues/new?component=1389291&template=1850622 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/c77f325ee5..6a5969b1cd * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/81ea7a128c..75a40ee29d * buildtools/linux64: git_revision:5d8727f3fbf420538ff753ebc3ce96da28e12c22..git_revision:e4702d7409069c4f12d45ea7b7f0890717ca3f4b * buildtools/mac: git_revision:5d8727f3fbf420538ff753ebc3ce96da28e12c22..git_revision:e4702d7409069c4f12d45ea7b7f0890717ca3f4b * buildtools/win: git_revision:5d8727f3fbf420538ff753ebc3ce96da28e12c22..git_revision:e4702d7409069c4f12d45ea7b7f0890717ca3f4b * testing: https://chromium.googlesource.com/chromium/src/testing/+log/d2d128e54a..f10cb8b614 * third_party/android_build_tools/lint: pc8Rjasvrz6JiyrxRqWxH5pw4NDgilMvlYHCtCW6ABMC..B5rMbDYcnLV5PkN2pDyWvPScXUdkhHvmiGa7UUkTTTkC * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/eb43f0d41e..9d8a076f99 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/10cd8e406d..43582381dd * third_party/libc++/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/e1129faa9f..58c1757391 * third_party/libjpeg_turbo: https://chromium.googlesource.com/chromium/deps/libjpeg_turbo.git/+log/30bdb85e30..9b894306ec * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/ceb8145f55..86aed39db2 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/a50d91ce26..ad5af24436 No update to Clang. Bug: None Tbr: geofflang@google.com Change-Id: I7691bd8b945c066fd99ceb75f5b6940636191ed8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4971062 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Le Hoang Quyen 65f6c2ea 2023-10-22T18:07:55 Metal: always implicitly resolve MSAA render buffers on tiled GPUs. On tile based GPUs, implicitly resolving MSAA render buffers to single-sampled is preferred. Because it would save bandwidth by avoiding storing the MSAA textures to memory. Furthermore resolving as StoreAction is almost a free operation on these GPUs. Traditional desktop GPUs almost always store MSAA textures to memory anyway, so this feature would have no benefit besides adding additional resolve step as well as memory overhead of the hidden single-sampled textures. Bug: chromium:1486094 Change-Id: I5eb3b1314560024dd5c0834b0c0b43a6b4d3d51b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4962114 Commit-Queue: Quyen Le <lehoangquyen@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>