Log

Author Commit Date CI Message
Alexey Knyazev 6462880b 2025-05-15T00:00:00 Autogen support checks for query extensions Bug: angleproject:409484297 Change-Id: I91e6b7318c62868e65d48ceb380b7c2d53c447ac Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6596569 Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Alexey Knyazev 392dc591 2025-05-15T00:00:00 Remove GL_CHROMIUM_sync_query Fixed: angleproject:420627279 Change-Id: I26dac7c55a7cf6b04121658144e1387be65d2569 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6593552 Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Robic Sun 88f1a668 2025-05-20T10:35:36 Query sample count by getting image format props ANGLE should query the image format properties to set TextureCaps.sampleCounts based on internalformats. Bug: angleproject:418815176 Change-Id: I7718121008acd9bb9bbb9964af5842646d7a689a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6564528 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com> Auto-Submit: Robic Sun <Robic.Sun@arm.com> Reviewed-by: Charlie Lao <cclao@google.com>
Kaiyi Li 2642ee46 2025-05-27T17:39:06 Add downstream to watch ANGLE feature changes Bug: b/417527313 Change-Id: Idb36f7bac0c25391752a35cf5ed2ad99e6a6a636 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6594071 Auto-Submit: Kaiyi Li <kaiyili@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com>
Shahbaz Youssefi bc2c85a6 2025-05-27T11:40:33 Translator: Set correct qualifiers on user-declared gl_PerVertex Bug: angleproject:409439499 Change-Id: Ia4bc1335d977f2b138af877e5d698914b182ff52 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6592612 Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com>
Mohan Maiya 90668ecf 2025-05-25T10:51:52 Vulkan: Reset uniform buffer dirty bit on program change When a program changes all of its non-texture shader resources are invalidated, there is no need to re-invalidate uniform buffers. Bug: angleproject:386749841 Change-Id: I7e941784c40046cef3a2ce297e6941a963b3a8dc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6583476 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: mohan maiya <m.maiya@samsung.com>
Yuxin Hu eafcbbf9 2025-05-27T11:24:17 Vulkan: Reformat VVL error message Remove the VVL skip messages that no longer apply. Set the messageContents1 and messageContents2 to nullptr for ease of clean up later. Bug: angleproject:399191283 Change-Id: I6d4477a6c401e6b7d2915b1fc574413be31fdc9b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6594251 Commit-Queue: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Auto-Submit: Yuxin Hu <yuxinhu@google.com>
Yuxin Hu 6542fea9 2025-05-07T17:28:45 Vulkan: Fix SpirV Error in Tessellation Control Shader When feature varyingsRequireMatchingPrecisionInSpirv is enabled, in the generated SpirV, if the shader output varying precision needs to be adjusted, we create a new shader varying to replace the original shader output varying, and save the original shader output varying to the replacement shader output varying at the end of the function. However, this does not work for tessellation control shader, because the SpirV generated will perform following equivalent peudo code: layout (vertices=3) out; in mediump float tc_in[]; out mediump float tc_out[]; highp float original_out[]; void main() { original_out[gl_InvocationID] = tc_in[gl_InvocationID]; // some other code in between tc_out = original_out; } The last line will attempt to write to all indice of tc_out. However, according to the spec, "each tessellation control shader invocation may write only to those outputs corresponding to its output patch vertex. Tessellation control shader must use the special variable gl_InvocationID as the vertex number index when writing to per-vertex output variables." This change fixes the problem by keeping the precision of tessellation control shader output as it is, and adjust the precision of tessellation evaluation shader input instead. Bug: b/42266751 Change-Id: I398545e2cbbf703c716d6738f1ba278baac4171f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6521225 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Kimmo Kinnunen 27a1b2c9 2025-03-13T09:10:54 Metal: Fix crash with 3d tex, alpha, depth Fix a crash when generating mipmaps for a 3d texture that has mipmaps with w,h == 1, i.e. depth > max(2*w, 2*h). Bug: angleproject:419755713 Change-Id: I7bf7f1f71c03b2bf6f8a30df30dc77ad06d433fe Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6580167 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Kimmo Kinnunen <kkinnunen@apple.com> Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
Geoff Lang dac0ef51 2025-05-27T18:36:56 WebGPU: Add a feature to avoid wgpuInstanceWaitAny Synchronous waiting is not available in Chrome's renderer process yet. Add a temporary feature to avoid some WaitAny calls and just log errors instead. Bug: angleproject:413078308 Change-Id: I67e54dfcfc093fd250da8cc616c05d44b78c8d64 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6593531 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Solti 101cf210 2025-05-15T16:40:43 roll rapidjson src to Android See b/279980674#comment52 for more details. Test: presubmit, and tested the rolling to Android in https://googleplex-android-review.git.corp.google.com/c/platform/external/angle/+/33713920 Bug: b/279980674 Change-Id: I834317a4a81d169cb0bfa32f0e33f2b0929ce279 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6579712 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Solti Ho <solti@google.com>
Kimmo Kinnunen 2f6f0514 2025-05-22T15:59:19 Metal: Wraparound int arithmetic for add, sub Implement wraparound int arithmetic for int, ivec +, -, +=, -=, ++, --. All of the added tests pass also without the changes. Bug: angleproject:382215759 Change-Id: I7605582ab2931e63010c34fba474797f7edd19f9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6578729 Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Kimmo Kinnunen <kkinnunen@apple.com>
angle-autoroll 9cb64dc6 2025-05-27T10:01:58 Roll vulkan-deps from bf024288c340 to d18d20e2f8cd (7 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/bf024288c340..d18d20e2f8cd Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/93231001597dad1149a5d035af30eda50b9e6b6c..be4ee7d0e3bfd151bfda7b3a8e03f8c49c55ed7b https://chromium.googlesource.com/external/github.com/LunarG/VulkanTools/+log/67b5d1d7f84660ca14951315afb4f9baa08ae138..640f35dd85d25122371fa99b8788d944b71bc5e8 https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries/+log/ae56bd6e65d9faa731150e931cb35f0d895223bc..49ac28931f28bffaa3cd73dc4ad997284d574962 https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/84b023ac42601ff51ea6094dc2c18ca62960b25d..b75f27bc902ea48c1758d958222c742ecccf3aa2 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 abdolrashidi@google.com,angle-team@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: abdolrashidi@google.com Change-Id: I7449245e3c956c836c733c8eb05c4036b4253b4b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6590199 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Mavis Deng 2a18fdbf 2025-05-21T16:14:51 Fix sync issue between XFB output and UBO input For the following scenario, where the first draw writes to the transform feedback buffer and the second draw reads from the same buffer as UBO, it is necessary to end the render pass between the two draws and add a barrier. // xfb write glBindBufferBase(GL_TRANSFORM_FEEDBACK_BUFFER, 0, xfb); glBeginTransformFeedback(); glDrawArrays(); glEndTransformFeedback(); // Draw with same buffer as UBO glBindBuffer(GL_UNIFORM_BUFFER, xfb); glDraw(); Bug: angleproject:418568423 Change-Id: Ia294d174111c6104b55762590ec26056ee759b53 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6572198 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 2802e9db 2025-05-26T03:01:28 Roll SwiftShader from f70c1194c173 to a8133cbb3c89 (1 revision) https://swiftshader.googlesource.com/SwiftShader.git/+log/f70c1194c173..a8133cbb3c89 2025-05-23 syoussefi@google.com Fix 3D blit's z-clamp 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 abdolrashidi@google.com,angle-team@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: angleproject:419755713 Tbr: abdolrashidi@google.com Use-Permissive-Angle-Pixel-Comparison: True Change-Id: Id338db8529395ae750a49d18f9273c7658d2528e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6586403 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll a38ac25b 2025-05-26T10:01:53 Roll vulkan-deps from a4af0bcda127 to bf024288c340 (3 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/a4af0bcda127..bf024288c340 Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/LunarG/VulkanTools/+log/e1218d0e9ff42234a1841443176d8ed24405ee93..67b5d1d7f84660ca14951315afb4f9baa08ae138 https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/2cfeb90c13053a5003a8d5a2ee66fee4a0e0cdce..84b023ac42601ff51ea6094dc2c18ca62960b25d 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 abdolrashidi@google.com,angle-team@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: abdolrashidi@google.com Change-Id: I388ad3d49f4e103c58d168609ebed324cfeef3f8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6585112 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Alexey Knyazev 7470cae4 2025-05-15T00:00:00 GL: Do not emulate EXT_base_instance If a driver does not support the corresponding commands, do not expose the extension at all, regardless of the enabled features. Bug: angleproject:355645824 Change-Id: Ideaae32e401c169690ca3aca6e437443a4b038f2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6580170 Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang f0c46b2a 2025-05-25T10:44:23 WebGPU: Do not set autoresizingMask on the iOS Metal Layer autoresizingMask is not a member on iOS builds. This mirrors the window surface in the Metal backend. Bug: angleproject:342213844 Change-Id: I8b5cfbb2b7f7af4f3284ddd7055e68e762c77883 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6584993 Reviewed-by: Colin Blundell <blundell@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Brian Johnson ec4d8f8e 2025-05-23T11:00:03 Changes to support sdk35 Set the sdkVersion to 35, which forces edge to edge mode. Edge-to-edge mode without changes causes the ANGLE Preferences settings page to render the title bar on top of the content. The fix is to add an inset listener in the fragment, to adjust the window's marginTop by the inset amount. The preferences page that was being used had been deprecated as it used the old ListView, so I updated it to the new way, using PreferenceFragmentCompat which uses a RecyclerView. This fragment change cascaded a few changes with the Activity itself, and the theme, all of which are updated for this change to use PreferenceFragmentCompat. Tested: Built in the Android tree, flashed on a Pixel device. Tested in portrait and landscape, light and dark modes. Bug: b/403455598 Change-Id: I012b2ea2f9f0973f3e0a926a93d2c3b31daeccca Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6581364 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Solti Ho <solti@google.com> Auto-Submit: Brian Johnson <hibrian@google.com>
Geoff Lang 4b375fe5 2025-05-23T18:44:54 WebGPU: Fix NoOpErrorScope constructor. We would always build with asserts enabled on our bots and missed that this constructor did not match the ErrorScope constructor. Bug: angleproject:342213844 Change-Id: Ieb73e6e1b0a0359b0ad336f14b7b9580c2ecc00b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6580169 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Geoff Lang 61e383dc 2025-05-23T18:41:57 WebGPU: Fix build on iOS and ChromeOS. Make sure we return a NativeWindowSystem in all branches. Build the Metal window surface on iOS. Bug: chromium:419793882 Change-Id: Ic829c83b71c18df9907ef729320377d82958f6ad Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6580168 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 275745ff 2025-05-23T12:59:03 Vulkan: Fix warning about shared present mode support An incorrect warning was issued about shared present mode being requested without support for it, even if shared present mode was _not_ being requested. Bug: b/412446258 Change-Id: I33f4ea9bcbd09695375010da93a68b375cfc8c8e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6578819 Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Yuxin Hu 525757d6 2025-05-22T16:32:32 Vulkan: Reformat VVL Error Message Change the error message to use the extraProperties field. Set the messageContents1 and messageContents2 to nullptr for ease of clean up later. Bug: angleproject:394598470 Change-Id: I0b7aec0b7e9a6e5206c89caae712e76db3338c4e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6581371 Auto-Submit: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Devon Loehr 3e9a1375 2025-04-30T16:03:03 Fix unique object duplication warning Clang has a `unique-object-duplication` warning that warns about objects which are supposed to be unique (like static- or thread-local variables), but may be accidentally duplicated across shared libraries when they have hidden visibility. This CL addresses instances of that warning by: 1. Ensuring that on non-windows systems, objects that need to be exported are unconditionally given "default" visibility 2. Satisfy the compiler by marking everything as default visibility when building a static library, since visibility only matters for shared libraries 3. Mark functions with static or thread local variables as exported. Bug: chromium:368047728 Change-Id: Ic60265353bf2b0af2cd1fef884bfa85038e0db02 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6502093 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Kimmo Kinnunen 150f1242 2025-03-11T18:34:37 Metal: Provoking vertex conv. reads out of buffer The provoking vertex helper would encode the addresses of index count and primitive count variables, not their values. This would cause the provoking vertex conversion shader to read overly many indices. Not testable easily from the API, as the excessive read is hard to test. Would cause context loss on the existing tests when run with validation. Bug: angleproject:419755715 Change-Id: Id81ecc66513c0eac1e95d11937f12d9bebb5e11e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6578202 Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com> Commit-Queue: Kimmo Kinnunen <kkinnunen@apple.com> Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Roberto Rodriguez 157a99aa 2025-05-20T23:59:29 Update logic for redeclaring gl_FragDepth. Update ParseContext logic to handle redeclaration of gl_FragDepth. Bug: angleproject:419066563 Change-Id: I774d036922ec75ca151f1c871afc243ca09a3061 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6573532 Reviewed-by: Kimmo Kinnunen <kkinnunen@apple.com> Commit-Queue: Kimmo Kinnunen <kkinnunen@apple.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Roberto Rodriguez 571450df 2025-05-15T16:24:12 Depth value not clamped for clearBufferfi and clearBufferfv Clamp depth values to [0,1] for calls to glClearBufferfi and glClearBufferfv. Bug: angleproject:418030862 Change-Id: I6f5393da863a17c5fd1d78f1b800df0e61d3dc60 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6552161 Reviewed-by: Kimmo Kinnunen <kkinnunen@apple.com> Commit-Queue: Kimmo Kinnunen <kkinnunen@apple.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 98a37b53 2025-05-23T10:01:05 Roll vulkan-deps from 39d1c1ac45e3 to a4af0bcda127 (9 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/39d1c1ac45e3..a4af0bcda127 Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/5cffd9a796210165631c995f9f58787ea0527eea..93231001597dad1149a5d035af30eda50b9e6b6c https://chromium.googlesource.com/external/github.com/LunarG/VulkanTools/+log/ac9b0b4a1c587ce4a31f2380fba8dc76d5815b0d..e1218d0e9ff42234a1841443176d8ed24405ee93 https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+log/736e415ebaa4290d21e42e370db5e933b9dff06d..01021466b5e71deaac9054f56082566c782bfd51 https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries/+log/4f628210460c4df62029959cc7fb237ac75f7189..ae56bd6e65d9faa731150e931cb35f0d895223bc https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/da3df74a7982f54381b56126e7efc16b9e357df7..2cfeb90c13053a5003a8d5a2ee66fee4a0e0cdce 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,cnorthrop@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://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: cnorthrop@google.com Change-Id: If28dda4c042d1c103a7083d597eb7baeeab7ef73 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6581469 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Geoff Lang c1e806de 2025-05-22T15:59:01 WebGPU: Allow providing an external WGPUDevice. Update EGL_ANGLE_platform_angle_webgpu with a new parameter which allows initializing DisplayWgpu with a pre-existing WGPUDevice. The adapter and instance are queried from this device. Bug: angleproject:42266898, angleproject:414827222 Change-Id: I3159ebe19750e75c5cf9aa395332f48385fdb4d9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6578196 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Geoff Lang 3cf7a604 2025-05-17T19:39:08 WebGPU: Add extensions for importing external textures Add EGL_ANGLE_device_webgpu which exposes the adapter and device used by ANGLE internally. Add EGL_ANGLE_webgpu_texture_client_buffer which allows importing external WGPUTexture handles if they share the same device as ANGLE (queried from EGL_ANGLE_device_webgpu). Bug: angleproject:418022112 Change-Id: I0683d36b84a0f8e0e9b68a5ec0d3aa8b7a95152c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6553063 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
angle-autoroll 7c3cc750 2025-05-22T10:01:51 Roll vulkan-deps from 4f278f1c8646 to 39d1c1ac45e3 (1 revision) https://chromium.googlesource.com/vulkan-deps.git/+log/4f278f1c8646..39d1c1ac45e3 Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/d22cddc5c410f55093aa56f062a77ab963edaa63..da3df74a7982f54381b56126e7efc16b9e357df7 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,cnorthrop@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://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: cnorthrop@google.com Change-Id: I6b6beb582c8b0ea891a01c958d9d7b65e60fc0e7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6575758 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll e76e534d 2025-05-22T07:05:05 Roll Chromium from 021bccde4594 to 055e258e91fc (1283 revisions) https://chromium.googlesource.com/chromium/src.git/+log/021bccde4594..055e258e91fc 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,cnorthrop@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://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/79fe614714..69dc3b19a1 * buildtools/linux64: git_revision:0c25d1bbde6ef17e1e6d3938011f56a00c02e457..git_revision:ebc8f16ca7b0d36a3e532ee90896f9eb48e5423b * buildtools/mac: git_revision:0c25d1bbde6ef17e1e6d3938011f56a00c02e457..git_revision:ebc8f16ca7b0d36a3e532ee90896f9eb48e5423b * buildtools/win: git_revision:0c25d1bbde6ef17e1e6d3938011f56a00c02e457..git_revision:ebc8f16ca7b0d36a3e532ee90896f9eb48e5423b * testing: https://chromium.googlesource.com/chromium/src/testing/+log/c25e306ec3..6a20ae4677 * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/ec041c7391..2401283880 * third_party/android_build_tools/error_prone/cipd: bd18Z8-1Y85m4C8xYA3z1J_VIhAaE2qRbkrBzn4_200C..2jzgic7at7ZxQds7qXCsmkfC4bO7d3qnWU5Q7SFUiJwC * third_party/android_build_tools/lint/cipd: 7xZFl5M3w3LIJvhKsJYDQoTh5JZ3vr3I_-VWYXiGJC0C..PaYB6553MH9GJfamUZLduJESRbN13Clv2N2beHR6IQAC * third_party/android_build_tools/manifest_merger/cipd: Ym1eWXywKFRvxsgK0yC4bFj9SwZViDqGEPb_w3mAKqMC..0L0N3_u2ypIxEEtf0k_l36g_2CykW2BNuZBXm-v5qAUC * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/56c2a30762..4333e5ba90 * third_party/android_sdk: https://chromium.googlesource.com/chromium/src/third_party/android_sdk/+log/3ad26ca9f4..20cf331dc7 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/41104509db..938fc9953b * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/196d941610..f73c587323 * third_party/protobuf: https://chromium.googlesource.com/chromium/src/third_party/protobuf/+log/cc4087cfb1..d30c1f18b8 * third_party/rust: https://chromium.googlesource.com/chromium/src/third_party/rust/+log/0d8d1c842f..b7156762f0 * third_party/siso/cipd: git_revision:3753a55d0911b4ea3dd000263088f60edb8d947b..git_revision:d9393c2115244b6e4a797189055e4a2b6769a64d * third_party/zlib: https://chromium.googlesource.com/chromium/src/third_party/zlib/+log/4821bf77c8..e8ff3f3555 * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/4e2e7b926a..61859fe79e * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/22750d081b..ddbe6fbaf9 No update to Clang. Bug: None Tbr: cnorthrop@google.com Change-Id: I69612901868e87539448e4a408a7cf1e5e64a2dd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6577908 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Charlie Lao 8d6d127a 2025-05-20T12:26:56 Vulkan: Avoid some loops in VertexArray::onBufferChanged Before this CL, VertexArray::onBufferChanged() loops over bufferBindingMask bits and calls onSubjectStateChange. In this CL, VertexArray::onSubjectStateChange is embedded into VertexArray::onBufferChanged(). DIRTY_BIT_ELEMENT_ARRAY_BUFFER and DIRTY_BIT_ELEMENT_ARRAY_BUFFER_DATA is re-arranged so that we can map bufferBindingMask directly to VertexArray::mDirtyBits. This especially useful when one buffer is bound to multiple indices in the VertexArray. This CL also removes angle::ObserverInterface from VertexArray, since it no longer observes anything. ASSERT is added in gl::Buffer::mContentsObservers to ensure it only contains BufferTexture, since vertexArray is no longer using the subject/observer. Bug: angleproject:400711938 Change-Id: Ie6e7159d7a89f0da5e1b7ca0a9dbe60a1e6c682f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6569638 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Yuxin Hu 26e790f7 2025-05-21T14:07:40 Update the gn arg to avoid warning message in gn desc json file After this change https://chromium-review.googlesource.com/c/chromium/src/+/6547915, using android32_ndk_api_level and android64_ndk_api_level gn args will results in a warning message generated at the top of the gn desc json file: WARNING Build argument has no effect. android32_ndk_api_level = 26 ^- Did you mean "android_ndk_api_level"? This causes the json.load() function in generate_android_bp.py failing when parsing the json file json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0) Update roll_aosp.sh to use the android_ndk_apk_level to remove the warning message. Also update the gn arg from android32_ndk_apk_level and android64_ndk_api_level to android_ndk_apk_level in other files. Bug: b/418837345 Change-Id: I12fa48dcb5638b37a9965d0adb339a2dee018297 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6576736 Commit-Queue: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Auto-Submit: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Charlie Lao 3f012a43 2025-05-14T17:11:06 Vulkan: Move VertexArray::ElementBuffer away from observer Right now, VertexArray's element buffer is always observing buffer's change. In previous CLs, we have moved vertex array away from subject/observer usage. This CL moves element buffer away from subject/observer as well. Since the gl::Buffer tracks buffer's binding to each context's current vertex array's binding point, kElementArrayBufferIndex is added to VertexArrayBufferBindingMask bits so that the element buffer is tracked exactly the same as other vertex array buffer bindings. The VerextArray code has been modified to handle this special bit, since element buffer has its own binding point VertexArrayState::mElementArrayBuffer as opposed to VertexArrayState::mVertexBindings. After this CL, VertexArray object should be completely off subject/observer usages. Bug: angleproject:400711938 Change-Id: I662ddfabc95034bdc7734939c944ab033f41801c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6552160 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com>
Alexey Knyazev bdaf87cf 2025-05-15T00:00:00 Enforce validation consistency Asserted that: * Exactly one error is generated if validation fails. * No error is generated if validation passes. Supported only for entry points with autogenerated context support checks. Lockless entry points are excluded for now. Bug: angleproject:406922380 Change-Id: I7549c8011768b1aa311d843b1658005ca3aba3b6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6568559 Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Alexey Knyazev 1e45cbe3 2025-04-24T00:00:00 Update entry points autogen template Used the same template for the always supported entry points as for entry points with conditional support. No functional changes. Bug: angleproject:409484297 Change-Id: I2077dec903a3bb52a69085acf5781c0df9ea935c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6574234 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Geoff Lang 3c0b2787 2025-05-17T19:36:42 WebGPU: Implement EGLImages Implement EGLImages for WebGPU. Cube maps, and non-zero mip sources are not supported yet. Bug: angleproject:418022112 Change-Id: I59955aee907167a1829f870b7d0730a6269d814c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6557130 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Charlie Lao 937cf23c 2025-05-13T16:11:47 Vulkan: Remove VertexArrayBufferContentsObservers When vertex array needs to convert buffer's data, right now it uses Subject/Observer to subscribe notifications from buffers about the data change. Since we always dirty all binding point when we bind VertexArray, or app has to rebind buffer to vertex array if its on the other context, this notification really is only needed for the current context's vertex array. In prior CLs we already moved notification from buffer to the current context's vertex array away from Subject/Observer usage pattern. This CL did similar things to VertexArrayBufferContentsObservers::mContentsObservers. VertexArrayBufferContentsObservers has been deleted in this CL. Each VertexArrayImpl now tracks the need of content observer with a bit mask of each bindingIndex (which is tracked by mContentsObserverBindingsMask). When a buffer's content changes, gl::Buffer will retrieve this bit mask from backend and pass it to the current gl::Context, which sends to current VertexArray object, which then set proper DATA dirty bits on VertexArray based on the binding bit mask. If back end think it does not need any data conversion, then the bit mask is zero and nothing will be done. This further removes dependence on subject observer, which enables us to avoid taking shared context lock for glEnableVertexAttribArray and glDisableVertexAttribArray. Bug: angleproject:400711938 Change-Id: Ieb0c09c042a560dd121242b63ec24478482399b3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6549157 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang dc43c3ba 2025-05-17T19:28:20 WebGPU: Implement Renderbuffers Implement the RenderbufferWgpu class. Add the concept of a non-owned webgpu::ImageHelper for supporting EGLImage in the future. Fix some missing texture formats that now get tested with dEQP. Bug: angleproject:418022112 Change-Id: Ie1239ec581e62044e7c8723fc33cb7565d50575c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6557129 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Geoff Lang f537c6d9 2025-04-28T17:30:13 Allow passing a DawnProcTable to DisplayWgpu. Bug: angleproject:42266898, angleproject:414827222 Change-Id: Ibf381461881244c9a874f2d24d3248995ea0760c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6496389 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Matthew Denton <mpdenton@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Liza Burakova <liza@chromium.org>
angle-autoroll 002897e9 2025-05-21T10:01:30 Roll vulkan-deps from 8f94220fd61f to 4f278f1c8646 (5 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/8f94220fd61f..4f278f1c8646 Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/963588074b26326ff0426c8953c1235213309bdb..5cffd9a796210165631c995f9f58787ea0527eea https://chromium.googlesource.com/external/github.com/LunarG/VulkanTools/+log/876fe5bdd694c5b1118450a35af8bc874016fce5..ac9b0b4a1c587ce4a31f2380fba8dc76d5815b0d https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+log/66fe610946a6d98169f8ebe9ca483f64c4009fa5..736e415ebaa4290d21e42e370db5e933b9dff06d https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader/+log/0f4bd6649d19b5df4e76381725ab6f5a2eeb9f30..c913466fdc5004584890f89ff91121bdb2ffd4ba 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,cnorthrop@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://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: cnorthrop@google.com Change-Id: I9e9f81f754bc71b2528cacda8889719c23801d6c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6572900 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Geoff Lang 70b90f22 2025-05-09T16:51:31 WebGPU: Use the C API only from the proc table Define WGPU_SKIP_DECLARATIONS so that errors are generated when using the global c or cpp functions. The default proc table getter requires the cpp API is visible. Hide this in a new wgpu_proc_utils so the rest of the WebGPU backend cannot see those APIs. Bug: angleproject:342213844 Change-Id: Ia1e9bfd25b0bb538cebeaa0efe7b9d2eeabc990d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6534317 Reviewed-by: Liza Burakova <liza@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Matthew Denton <mpdenton@chromium.org>
Alexey Knyazev 720f6bbe 2025-05-15T00:00:00 Fix attribute and uniform name validation * Fixed null name error messages to refer to correct parameters. * BindUniformLocation * Added name checks for null and all reserved prefixes. * Fixed error code for reserved prefixes. * GetAttribLocation & GetUniformLocation * Moved reserved prefixes check to the Context. * Fixed and expanded tests. Fixed: angleproject:418986804 Change-Id: I62760b3010fd38ee2e31e4ff88d9910647b329dd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6568552 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Geoff Lang 3158d638 2025-05-06T17:08:56 WebGPU: Store the WebGPU proc table in wrappers Instead of relying on the global WebGPU functions, pass the proc table to the object wrappers. Bug: angleproject:342213844 Change-Id: I79a5e819ffac5b366fed0a159a6cef116b5e82b3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6514676 Reviewed-by: Liza Burakova <liza@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Matthew Denton <mpdenton@chromium.org>
Geoff Lang 71b58cdc 2025-05-17T18:12:33 Fix feedback loop in ImageTest.SourceRenderbufferTargetTexture* This test would make a renderbuffer as an EGLImage source and a texture as the target. It would then try to verify the data in the texture by sampling but the renderbuffer was currently bound to the framebuffer creating a feedback loop. Bug: angleproject:418022112 Change-Id: I456eb541c84d98d99e6b8d8be817ce67d7b1d519 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6556610 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
angle-autoroll 65180785 2025-05-20T07:59:46 Roll Chromium from a343631b79de to 021bccde4594 (658 revisions) https://chromium.googlesource.com/chromium/src.git/+log/a343631b79de..021bccde4594 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,cnorthrop@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://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/4523ca62d9..79fe614714 * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/e9b36e9ffb..cd169314af * testing: https://chromium.googlesource.com/chromium/src/testing/+log/26a050e9cd..c25e306ec3 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/f810dae272..196d941610 * third_party/protobuf: https://chromium.googlesource.com/chromium/src/third_party/protobuf/+log/36e2b378de..cc4087cfb1 * third_party/rust: https://chromium.googlesource.com/chromium/src/third_party/rust/+log/158e62527c..0d8d1c842f * third_party/turbine/cipd: PbV7UFdzFIl6b_4lNwsj4VnlvnoULNAZRDwsndTGXTsC..VGtOG2ivl1SJR7Lai5FQddIu15mWCYDnp47QtozMQeoC * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/246a9e4b12..22750d081b No update to Clang. Bug: None Tbr: cnorthrop@google.com Change-Id: Ibf6dcdfac5c022ea3f81727ff431532f38cb4c3c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6567407 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Tim Van Patten dcbcee8a 2025-05-15T10:39:55 Tests: Use eglGetPlatformDisplay() From the EGL 1.5 spec: Appendix F Version 1.5 EGL version 1.5 was voted out of the Khronos Technical Working Group on January 31, 2014, and formally approved by the Khronos Board of Promoters on March 14, 2014. EGL 1.5 is the sixth release of EGL. It introduces the following new features (the EGL extension(s) each feature is based on are also shown parenthetically): * Platform support: – Providing a mechanism for support of multiple platforms (such as window systems or offscreen rendering frameworks) in a single EGL implementation at runtime (EGL_EXT_platform_base). Many tests use eglGetPlatformDisplayEXT() which is provided by the EGL extension EGL_EXT_platform_base. With the promotion of the EGL_EXT_platform_base functions to core EGL in version 1.5 and ANGLE supporting EGL 1.5 (as of at least 2019), update the calls to use eglGetPlatformDisplay(). This is in preparation for running the ANGLE end2end tests in Android, which only exposes the EGL 1.5 functions, and not the EGL_EXT_platform_base functions. Bug: b/391967165 Test: angle_end2end_tests Change-Id: I58109c3afe270f46db952e124ee3f5c11200ca35 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6552257 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Tim Van Patten <timvp@google.com>
Yuxin Hu b4d39a07 2025-05-19T11:07:08 Reformat VVL Error Message Tests failed in this manual roll https://chromium-review.googlesource.com/c/angle/angle/+/5689521 no longer runs into the SYNC-HAZARD-WRITE-AFTER-WRITE VVL error. Remove the VVL error from the skipped VVL error list. Bug: angleproject:352094384 Change-Id: I8b0a4baebd7276fc6d42e0357a3b6f49adb0b4f4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6564666 Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Auto-Submit: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Solti Ho f91e3d46 2025-05-19T11:32:02 Revert "roll rapidjson src to Android" This reverts commit 45b02ff020de99baea8c711f0cc391adda241038. Reason for revert: Android roller is borken. Bug: b/279980674 Original change's description: > roll rapidjson src to Android > > Test: presubmit > Bug: b/279980674 > Change-Id: Idb3ed14d337d1296cf50c66e796ae58ff9311514 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6553084 > Reviewed-by: Geoff Lang <geofflang@chromium.org> > Commit-Queue: Solti Ho <solti@google.com> Bug: b/279980674 Change-Id: Iee11ddeaa87cfb3bad15eaed193e4d3d0c1dec3f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6565339 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Solti Ho <solti@google.com>
Tim Van Patten e7277deb 2025-05-19T11:16:56 Add test to validate eglGetPlatformDisplayEXT() Add a test to validate eglGetPlatformDisplayEXT() returns a valid display on devices that support the EGL extension EGL_EXT_platform_base. Bug: b/279980674 Test: EGLDisplayTest.GetPlatformDisplayEXT/* Change-Id: I8cbb9c3905deb960e567a07d64e6c9d590a4ae70 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6565328 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
angle-autoroll 90697af1 2025-05-19T10:01:48 Roll vulkan-deps from 79e02d4e7a56 to 8f94220fd61f (4 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/79e02d4e7a56..8f94220fd61f Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/LunarG/VulkanTools/+log/97bb93fe4510ddbfb9e1a35c6a3052717a44713d..876fe5bdd694c5b1118450a35af8bc874016fce5 https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+log/9b1a7e7a6bc7d122b8474df155e3d498eb22d91f..66fe610946a6d98169f8ebe9ca483f64c4009fa5 https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/42974927c2b34cfd29110e702fb493336e2fd711..d22cddc5c410f55093aa56f062a77ab963edaa63 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,cnorthrop@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://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: cnorthrop@google.com Change-Id: Ie6160c05d462dae343f204b72323bbc2a6da9739 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6563645 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 9633d8f7 2025-05-19T03:01:32 Roll SwiftShader from 96085ee3c6cc to f70c1194c173 (1 revision) https://swiftshader.googlesource.com/SwiftShader.git/+log/96085ee3c6cc..f70c1194c173 2025-05-16 swiftshader.regress@gmail.com Regres: Update test lists @ 96085ee3 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,cnorthrop@google.com on the revert to ensure that a human is aware of the problem. To file a bug in SwiftShader: https://bugs.chromium.org/p/swiftshader/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://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: cnorthrop@google.com Use-Permissive-Angle-Pixel-Comparison: True Change-Id: Ie9b92ccf3517d08305c38e5f518cf693f7e66309 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6563644 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 94d5171e 2025-05-19T07:01:16 Roll Chromium from ceee7877afe5 to a343631b79de (737 revisions) https://chromium.googlesource.com/chromium/src.git/+log/ceee7877afe5..a343631b79de 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,cnorthrop@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://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/3cfaaa8c84..4523ca62d9 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/7ba47582ec..26a050e9cd * third_party/android_build_tools: https://chromium.googlesource.com/chromium/src/third_party/android_build_tools/+log/3ed7629c86..18bc289fc3 * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/b0fd19ed0e..56c2a30762 * third_party/android_sdk: https://chromium.googlesource.com/chromium/src/third_party/android_sdk/+log/2b97b88495..3ad26ca9f4 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/ffd1c50cbd..41104509db * third_party/libc++abi/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/069652e9cb..9810fb23f6 * third_party/llvm-libc/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git/+log/9aefa1cede..9c3ae3120f * third_party/rust: https://chromium.googlesource.com/chromium/src/third_party/rust/+log/abb422e192..158e62527c * third_party/siso/cipd: git_revision:30ea210712239b874febcadf661f118fc2c0f6d7..git_revision:3753a55d0911b4ea3dd000263088f60edb8d947b * tools/android: https://chromium.googlesource.com/chromium/src/tools/android/+log/1af78910c3..60453178b6 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/2ce23e27cc..afcd61ed9a * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/4abcec0a08..246a9e4b12 No update to Clang. Bug: None Tbr: cnorthrop@google.com Change-Id: I26ac2b102805fbcecd46340db1680e697c8a1cbd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6562701 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Alexey Knyazev 5fd79e6a 2025-05-15T00:00:00 Remove unused parameter from ValidateGetVertexAttribBase Bug: angleproject:409484297 Change-Id: I98fdfe8dbaeb6bc08a0c0a7a4a032850fcbdd37f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6558251 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Xinyu Fang c601f0e7 2025-04-08T17:56:22 Add extra validation of null pointers for certain APIs Bug: angleproject:409110245 Change-Id: I25dfdbdc52cdb0d7d2a91d773a0f3600e370f139 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6440146 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Alexey Knyazev <lexa.knyazev@gmail.com> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Mavis Deng 30479104 2025-04-28T16:01:46 Add support for GL_EXT_texture_norm16 in glCopyImageSubDataEXT Add the following compatible norm16 formats in EXT_copy_image: RGBA16_EXT RGBA16_SNORM_EXT Bug: angleproject:412517249 Change-Id: I4939705915940dacaf3168acf1a7cc7abb0870ba Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6490613 Reviewed-by: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Mavis Deng <mavis.deng@arm.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Matthew Denton 56becf05 2025-05-16T16:58:34 WGPU: texSubImage2D() should mark textures as dirty TextureWgpu now observes its ImageHelper's edits to staged subresources and notifies its observers (Texture) that it has changed, ensuring TextureWgpu::syncState() is called before draw if glTextSubImage2D() was called earlier. Also ends the current render pass when flushing subresource updates, otherwise if the texture is being used by the current webgpu::CommandBuffer (staged render pass commands), the texture may be updated before the staged commands are actually submitted to the GPU. Bug: angleproject:389145696 Change-Id: I07db566fca970e877a0d3faa3ceb02f8425c799a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6502676 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Matthew Denton <mpdenton@chromium.org>
Yuxin Hu e6231b0f 2025-05-16T10:29:46 Reformat VVL Error Message catalyst_black trace no longer runs into the SYNC-HAZARD-WRITE-AFTER-READ VVL error mentioned in http://anglebug.com/42266390. Remove the VVL error from the skipped error list. Bug: angleproject:42266390 Change-Id: I7e3055e61632e1de42dc24233724f73beefef653 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6557942 Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Auto-Submit: Yuxin Hu <yuxinhu@google.com>
Yuly Novikov 5e443fd4 2025-05-16T12:35:15 Target Android 15 on Samsung S24 phones Phones were upgraded to AP3A.240905.015.A2 Bug: b/416745553 Change-Id: I8c1afd2526bb3e166c06264316e026b3d3f650b7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6556182 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Brian Sheedy <bsheedy@chromium.org>
Matthew Denton 4a5e20f2 2025-05-15T11:20:31 WGPU: Round uniform buffers to the alignment of a uniform struct The default uniforms are packed into a struct, and structs in WGPU's uniform address space are always aligned to 16. I.e. RequiredAlignOf (struct S, uniform) = roundUp(16, AlignOf(S)) and AlignOf(S) is at most 16. The uniform buffer should be sized to include all bytes of the struct including the padding bytes at the end. Fixes bugs like "The shader uses more bytes of the buffer (224) than the layout's minBindingSize (212)" Bug: angleproject:376553328 Change-Id: I7e52e81a6a6f45470d14e891888627ac6d0d9c02 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6549155 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Liza Burakova <liza@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Xiang Wang 3f7bded1 2025-05-15T13:35:18 Add ANGLE_FORMAT_PRINTF to StringPrintf Bug: b/414880678 Test: verified that the compiler attribute will generate error when building without crrev.com/c/6543549 Change-Id: If1b57f78370d57969e999b93e17444236f194be1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6551849 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 92ae16d1 2025-05-16T10:01:05 Roll vulkan-deps from bac8bd2de3c4 to 79e02d4e7a56 (10 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/bac8bd2de3c4..79e02d4e7a56 Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/LunarG/VulkanTools/+log/e80c133ef66664e0cb91a10186658bb87cf0f74a..97bb93fe4510ddbfb9e1a35c6a3052717a44713d https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+log/eac930caa2bc7209ca71ecea7c15cbab33d5bc66..9b1a7e7a6bc7d122b8474df155e3d498eb22d91f https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/40d64d8f544194b82f658dcecd85d03d120a51ef..42974927c2b34cfd29110e702fb493336e2fd711 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: I6e8a264a0c6a52789d12fb3619579f9e069c722b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6552197 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Matthew Denton 96c9f065 2025-05-15T19:22:29 WGPU: Flip y for the default framebuffer Bug: angleproject:389145696 Change-Id: I0d527ad3dc24dbca7e9d914b03edacdc257a568f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6477137 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Matthew Denton <mpdenton@chromium.org>
angle-autoroll 6bed883b 2025-05-16T08:40:21 Roll Chromium from 924b8c206ea6 to ceee7877afe5 (640 revisions) https://chromium.googlesource.com/chromium/src.git/+log/924b8c206ea6..ceee7877afe5 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC angle-team@google.com,ynovikov@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://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/a4e74b4312..3cfaaa8c84 * buildtools/linux64: git_revision:487f8353f15456474437df32bb186187b0940b45..git_revision:0c25d1bbde6ef17e1e6d3938011f56a00c02e457 * buildtools/mac: git_revision:487f8353f15456474437df32bb186187b0940b45..git_revision:0c25d1bbde6ef17e1e6d3938011f56a00c02e457 * buildtools/reclient: re_client_version:0.177.1.e58c0145-gomaip..re_client_version:0.178.0.5ee9d3e8-gomaip * buildtools/win: git_revision:487f8353f15456474437df32bb186187b0940b45..git_revision:0c25d1bbde6ef17e1e6d3938011f56a00c02e457 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/56ef5f113b..7ba47582ec * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/92623f3f80..ec041c7391 * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/10e676cbfb..b0fd19ed0e * third_party/android_sdk: https://chromium.googlesource.com/chromium/src/third_party/android_sdk/+log/96ee0e696e..2b97b88495 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/2fa93b2332..ffd1c50cbd * third_party/fuchsia-sdk/sdk: version:28.20250508.3.1..version:28.20250515.3.1 * third_party/zlib: https://chromium.googlesource.com/chromium/src/third_party/zlib/+log/fbb9ce5767..4821bf77c8 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/a6bddebe3e..2ce23e27cc * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/866151e951..4abcec0a08 No update to Clang. Bug: None Tbr: ynovikov@google.com Change-Id: I7bfb3eaf3f54576be99411d93967bc5914a0bec3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6552278 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Robert Liao db71e8fa 2025-05-13T14:16:39 Use os.path.abspath for the cwd in commid_id.py os.path.realpath will resolve subst drives to the underlying path, which is inappropriate when the CWD is actually in the subst path. This causes os.path.relpath to fail due to a mismatched drive letter. Example mapping: D: -> S:\src\D E: -> S:\src\E Fixed: chromium:417529141 Change-Id: I70de53d511672dedf9cf2f77006526977b736526 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6546083 Auto-Submit: Robert Liao <robliao@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Yuxin Hu b74a4714 2025-05-15T10:24:41 Reformat VVL Error Message diablo_immortal trace on swiftshader no longer runs into the SYNC-HAZARD-WRITE-AFTER-READ error mentioned in b/42266309. Remove the VVL error from the VVL error skip lists. Bug: angleproject:42266309 Change-Id: I53a5377ea26541a37dc251717d3f2d08f553a3a6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6551848 Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com> Auto-Submit: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
angle-autoroll 1fea2d12 2025-05-15T09:57:22 Roll Chromium from 6511b87fb086 to 924b8c206ea6 (678 revisions) https://chromium.googlesource.com/chromium/src.git/+log/6511b87fb086..924b8c206ea6 Fix warnings detected by Error Prone checks enabled in https://chromium-review.googlesource.com/c/chromium/src/+/6543826 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC angle-team@google.com,ynovikov@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://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/e42f899ae7..a4e74b4312 * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/077a66f30f..e9b36e9ffb * testing: https://chromium.googlesource.com/chromium/src/testing/+log/e93dc3dea2..56ef5f113b * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/fd624be2fa..2fa93b2332 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/032eddc73b..f810dae272 * third_party/llvm-libc/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git/+log/27ee073016..9aefa1cede * third_party/protobuf: https://chromium.googlesource.com/chromium/src/third_party/protobuf/+log/49f482cb46..36e2b378de * third_party/rust: https://chromium.googlesource.com/chromium/src/third_party/rust/+log/c523543cf4..abb422e192 * third_party/zlib: https://chromium.googlesource.com/chromium/src/third_party/zlib/+log/86aca59d7b..fbb9ce5767 * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/92a5f60019..4e2e7b926a * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/f7a506e700..866151e951 * tools/rust: https://chromium.googlesource.com/chromium/src/tools/rust.git/+log/96def2f44c..d88ef9e4de Clang version changed llvmorg-21-init-9266-g09006611:llvmorg-21-init-11777-gfd3fecfc Details: https://chromium.googlesource.com/chromium/src/tools/clang/+/92a5f60019f3a9ff63b9388d181fa65047377fb4..4e2e7b926a033fc85695da101404f79b7ce2d7a7/scripts/update.py Bug: None Change-Id: I95d7c36f8e9baeb828b24f7d96452363175bba2d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6551736 Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Geoff Lang 9b16a3e9 2025-05-05T16:43:19 WebGPU: Remove last references to cpp API Bug: angleproject:414831373 Change-Id: I25c03de40c579bf984d9a905ecf655c82d239811 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6512149 Reviewed-by: Matthew Denton <mpdenton@chromium.org> Reviewed-by: Liza Burakova <liza@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Geoff Lang 147f4810 2025-05-05T16:33:19 WebGPU: Use WebGPU C API for Display and error utils Bug: angleproject:414831373 Change-Id: I56f90e453a746399c65956cc73eb4fcb020bcb5e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6512148 Reviewed-by: Matthew Denton <mpdenton@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Liza Burakova <liza@chromium.org>
Geoff Lang 1faf6ef2 2025-05-05T15:18:58 WebGPU: Use WebGPU C API for Programs and Buffers Bug: angleproject:414831373 Change-Id: I773f26483f53957bdfb8321b2a557df7febb376c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6512147 Reviewed-by: Matthew Denton <mpdenton@chromium.org> Reviewed-by: Liza Burakova <liza@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Geoff Lang cf0565f2 2025-05-14T17:59:41 WebGPU: Pack render pass descriptors The render pass descriptors stored in FramebufferWgpu contained references to textures that were fragile and depended on the RenderTargetCache keeping the texture views alive. Refactor the desc so that it does ref counting like the cpp interface and clean up some FramebufferWgpu logic around copying descs. Bug: angleproject:414831373 Change-Id: Ibea96e013474cc43aa30909b596b8898ebccef98 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6546256 Reviewed-by: Liza Burakova <liza@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Matthew Denton <mpdenton@chromium.org>
Amirali Abdolrashidi 6ba47bed 2025-05-13T12:44:06 Vulkan: Use GS input prim type for warmup pipeline For graphics pipeline creation, the primitive topology should be set in the input assembly state create info (unless for dynamic state). This can come from the primitive mode in ProgramExecutableVk (prepareForWarmUpPipelineCache()). Currently, the patch mode is used if there is a tessellation shader, and triangle strip otherwise. However, if there is a geometry shader without tessellation, this can lead to a VVL error on certain platforms if the primitive mode for the pipeline does not match the input primitive type for the geometry shader. * Updated the primitive mode in the above function for the case of geometry shader without tessellation shaders, to be set to the input primitive type of the GS. * This will be used later for graphics pipeline initialization for the input assembly state info (in case of vertex input). * (GraphicsPipelineDesc::initializePipeline()) * Removed the following VVL suppression: VUID-VkGraphicsPipelineCreateInfo-pStages-00738 Bug: angleproject:303219657 Change-Id: I8d804fd87438033071261a5002a4155e6d62d27c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6541872 Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Geoff Lang 69841d3c 2025-04-30T23:55:16 WebGPU: Use WebGPU C API for Textures and Framebuffers Bug: angleproject:414831373 Change-Id: I6b547a726b22e8eb5d407e2d6340b1d18bf39033 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6503024 Reviewed-by: Liza Burakova <liza@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
angle-autoroll f2622a70 2025-05-15T14:38:26 Manual roll vulkan-deps from 2a67a9b1a73a to bac8bd2de3c4 (12 revisions) Manual roll requested by ynovikov@google.com https://chromium.googlesource.com/vulkan-deps.git/+log/2a67a9b1a73a..bac8bd2de3c4 Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/LunarG/VulkanTools/+log/47ee4dce39b5e8b594ed2e9c9cccd10342949683..e80c133ef66664e0cb91a10186658bb87cf0f74a https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers/+log/6d0784e9f1ab92c17eeea94821b2465c14a52be9..c9aad99f9276817f18f72a4696239237c83cb775 https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+log/75f2e873ab2bbc44e87d788dbbc136482c99e9d8..eac930caa2bc7209ca71ecea7c15cbab33d5bc66 https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader/+log/a8bec310845ce80af5c00342243ae972cbe95e3b..0f4bd6649d19b5df4e76381725ab6f5a2eeb9f30 https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/eeb22f1138b079841efbb445d4d60e14f3e8ecae..40d64d8f544194b82f658dcecd85d03d120a51ef 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: I6ad3c57df70d0ba3bd4ba3f051f25d81b8d402a9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6551847 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Solti 45b02ff0 2025-05-15T16:40:43 roll rapidjson src to Android Test: presubmit Bug: b/279980674 Change-Id: Idb3ed14d337d1296cf50c66e796ae58ff9311514 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6553084 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Solti Ho <solti@google.com>
Tim Van Patten f21ec7a0 2025-05-14T10:52:50 Tests: Skip VerifyMutableRenderBufferKHR on Intel+Win The test EGLSingleBufferTest.VerifyMutableRenderBufferKHR/ES*_Vulkan_NoFixture is failing on Intel+Windows and generating VVL errors. ERR: vk_renderer.cpp:968 (rx::vk::(anonymous namespace)::DebugUtilsMessenger): [ VUID-VkSwapchainCreateInfoKHR-presentMode-parameter ] vkCreateSwapchainKHR(): pCreateInfo->presentMode (VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR) requires the extensions VK_KHR_shared_presentable_image. The Vulkan spec states: presentMode must be a valid VkPresentModeKHR value (https://docs.vulkan.org/spec/latest/chapters/VK_KHR_surface/wsi.html#VUID-VkSwapchainCreateInfoKHR-presentMode-parameter) ..\..\src\tests\egl_tests\EGLSurfaceTest.cpp(2036): error: Value of: IsEGLDisplayExtensionEnabled(mDisplay, "EGL_KHR_mutable_render_buffer") Actual: false Expected: true It's not entirely clear where things are going wrong, but appears to be something in the Intel+Windows driver. Skip the test for now to keep win-exp-test green otherwise. Bug: b/417459061 Test: EGLSingleBufferTest.VerifyMutableRenderBufferKHR Change-Id: Iee848b46cddaf05d0cbb0c2d81d76d07dd0b9bba Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6548415 Auto-Submit: Tim Van Patten <timvp@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Geoff Lang d82036f5 2025-05-15T09:43:03 WebGPU: Add missing destructor for object wrappers. Bug: angleproject:414831373 Change-Id: I65aa17b5cbac2564140491744461bc94e9ae9f2d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6551496 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Liza Burakova <liza@chromium.org>
Alexey Knyazev ad05f93b 2025-05-08T00:00:00 Vulkan: Fix debug marker handling Used passed length in InsertEventMarker and PushGroupMarker commands because markers do not have to be null-terminated. Bug: angleproject:408709155 Change-Id: I6221223dabc1b01dbc175bfb7f5aeb41b9e67c6f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6552401 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Alexey Knyazev 1e7442b2 2025-04-24T00:00:00 Fix KHR_debug operations DebugMessageInsert: * Used correct error message when the severity parameter is invalid and aligned parameter validation order with the command declaration. DebugMessageInsert and PushDebugGroup: * Fixed message length validation. * Fixed message insertion when the explicit length is zero. Object[Ptr]Label: * Fixed label length validation. Added new tests. Fixed: angleproject:417621246 Fixed: angleproject:417684698 Change-Id: I00cd939a83c5b9ae7dddefc51222278615bc0df9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6544152 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Alexey Knyazev a06e4d49 2025-05-08T00:00:00 Metal: Implement InsertEventMarker * Added a missing command buffer call. * Renamed related symbols to match Metal API. * Removed ConvertMarkerToString helper because marker length is now handled in the frontend. Bug: angleproject:417857731 Change-Id: Ifa9edaafaf16af9913420554e5847a5a25b8d2f1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6549282 Reviewed-by: Quyen Le <lehoangquyen@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
angle-autoroll 4d36fc96 2025-05-15T03:01:24 Roll SwiftShader from 930d46d31b5d to 96085ee3c6cc (1 revision) https://swiftshader.googlesource.com/SwiftShader.git/+log/930d46d31b5d..96085ee3c6cc 2025-05-14 swiftshader.regress@gmail.com Regres: Update test lists @ 930d46d3 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: I703f8e8737152c5f7f06253117b9fee2874ec949 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6551937 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll f2a1383f 2025-05-15T08:01:50 Roll VK-GL-CTS from 80915f99de91 to c9d2e24d1a6d (2 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/80915f99de91..c9d2e24d1a6d 2025-05-15 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.4.2 into vk-gl-cts/main 2025-05-15 lorenzo@khronosgroup.org Merge remote-tracking branch 'vk-gl-cts/dev/VK_EXT_zero_initialize_device_memory' 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: I7482bb17e19794509649f872682f05419dc2ac0a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6549105 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Hailin zhang cc02a537 2025-05-05T22:12:42 Vulkan: move the recycled fence reset from fetch to destroy. move the fence reset from main thread to gc thread to avoid blocking at gfxstream. Bug: b/400480303 Change-Id: I7940fcb4a1edad5e388f1afdde97a3261a5cc4d3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6519236 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Hailin Zhang <hailinzhang@google.com>
Alexey Knyazev 8d75490a 2025-05-08T00:00:00 Update zero length for debug marker commands If the marker length passed to InsertEventMarkerEXT or PushGroupMarkerEXT commands is zero, compute the actual marker length in the Context so that the backends could always rely on the passed length. Bug: angleproject:408709155 Bug: angleproject:417757002 Change-Id: Ifa36d8d16c7c808855a7500556b569587cdc89a1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6547538 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Yuxin Hu 74bf9527 2025-05-14T13:52:24 Reformat VVL Error Message diablo_immortal trace on swiftshader no longer runs into the SYNC-HAZARD-WRITE-AFTER-WRITE VVL error mentioned in b/42266309. Remove the VVL error from the VVL error skip lists. The trace does run into a different SYNC-HAZARD-WRITE-AFTER-WRITE error and another SYNC-HAZARD-READ-AFTER-WRITE error, which are already covered by two existing entries in the VVL error skip lists, and this change updates the comments accordingly. Bug: angleproject:42266309 Change-Id: I3466d8d8320750c7edef52c6629fb2dd377da284 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6548199 Commit-Queue: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Charlie Lao ad18dc93 2025-04-02T16:23:50 D3D11: Remove the message from Buffer11 to gl::Buffer This CL removes the D3D back end's usage of Subject/Observer from Buffer11 to gl::Buffer. BufferFeedback argument has been added to various functions and directly applied to gl::Buffer object (which will propagate to VertexArray and texture/XFB if needed). gl::Buffer::mImplObserver is removed in this CL, and no longer a Observer. Bug: angleproject:400711938 Change-Id: Idf4d423904d057ab3a1e52acf8e2496df606cb89 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6514288 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Xiang Wang e69813e0 2025-05-13T12:29:46 Fix the formatting for size_t in perf_test This will print 64bit unsigned int max properly Bug: b/414880678 Test: (process memory size SIZE_MAX) *RESULT TracePerf_vulkan.memory_median: black_beacon= 18446744073709551615 sizeInBytes Change-Id: I27f0e2dd34d7fc7c055bea64ecd786e0567b754a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6543549 Commit-Queue: Xiang Wang <xwxw@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Charlie Lao f5f6704c 2025-03-27T13:58:14 Vulkan: Remove mArrayBufferObserverBindings Right now VertexArray observes gl::Buffer change. Buffer change will end up with many virtual function calls on VertexArray. GL spec says that when buffer changes, only the current context's vertex array have to pick up the changes without any GL API call. All other context's vertex array must issue bind calls to pick up the buffer's state change. This CL removes VertexArray::mArrayBufferObserverBindings as gl::Buffer's observer. The Buffer's change is directly applied to current context's vertexArray (Note that gl::VertexArray still have mContentsObservers which is not touched in this CL. Once the content observer also removed, there will be no observer calls into gl::VertexArray which allows us to do further optimizations on vertex arrays.) In order to further reduce the overhead, we also tracks vertex array's binding index in the buffer. When a buffer is bound to current vertex array, the bit is set at that index and bit is removed when buffer is unbound. When vertex array becomes un-current, all bits are cleared. Since a buffer could be bound to multiple context's current vertex array, that bitmask is tracked for multiple contexts with the contextID. Bug: angleproject:400711938 Change-Id: I9ad91573e101d7bf11a742a3d823bd8965f43395 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6419663 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll c4b46fb5 2025-05-14T13:47:09 Manual roll vulkan-deps from 6b14cce1d656 to 2a67a9b1a73a (8 revisions) Manual roll requested by ynovikov@google.com https://chromium.googlesource.com/vulkan-deps.git/+log/6b14cce1d656..2a67a9b1a73a Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+log/feba06f44f682e17e0efcd412dff8de74a23d63a..75f2e873ab2bbc44e87d788dbbc136482c99e9d8 https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/21baa6bb2e0d5f4ae093397733f4534ea6e8cd6e..eeb22f1138b079841efbb445d4d60e14f3e8ecae 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: I21eaa151c5dad8156d759b74f0ca407afc8a5b5b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6546497 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Alexey Knyazev d0616d54 2025-04-24T00:00:00 Autogen support checks for multiview commands Bug: angleproject:409484297 Change-Id: Ia86f30922480dd1d8793868581629669cc83719f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6547155 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Junji Watanabe eb6ee035 2025-05-14T21:28:29 infra: Remove reclient properties from builders Since Reclient shouldn't be used anymore, this CL removes $build/reclient properties from Angle builders. Bug: b/401959048 Change-Id: I7d568ba5d85111a42e4c98001fd45c84f0c10100 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6546535 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Auto-Submit: Junji Watanabe <jwata@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Alexey Knyazev 64888cb8 2025-04-24T00:00:00 Align multiview extensions usage with the specs As per the specs, the OVR_multiview2 extension requires and implicitly enables the OVR_multiview extension. Cleaned up the extension state checks and added dependency tests. No functional changes. Fixed: angleproject:417173927 Change-Id: I67d2c19f4ed2f2450bf7fe2a92625cc9525ca020 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6535750 Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
angle-autoroll 2d423fb1 2025-05-14T08:01:56 Roll VK-GL-CTS from 73a2c954fb07 to 80915f99de91 (17 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/73a2c954fb07..80915f99de91 2025-05-12 lorenzo@khronosgroup.org Merge vk-gl-cts/opengl-es-cts-3.2.12 into vk-gl-cts/main 2025-05-12 lorenzo@khronosgroup.org Merge remote-tracking branch 'vk-gl-cts/dev/VK_KHR_robustness2' 2025-05-11 lorenzo@khronosgroup.org Merge remote-tracking branch 'vk-gl-cts/dev/VK_KHR_shader_brain_float16' 2025-05-09 lorenzo@khronosgroup.org Update external sources (Vulkan 1.4.315) 2025-05-09 mateusz.bahyrycz@mobica.com Add compute variant for buffer view access tests 2025-05-09 mateusz.bahyrycz@mobica.com Add compute only variant for descriptor update tests 2025-05-09 piotr.byszewski@mobica.com Verify that implementations terminate properly 2025-05-09 ziga@lunarg.com Test VkImageSwapchainCreateInfoKHR with concurrent shading mode 2025-05-09 rgarcia@igalia.com Test enabling FSR explicitly and implicitly 2025-05-09 ziga@lunarg.com Fix missing sType in mixed_attachment_samples tests 2025-05-09 elima@igalia.com Refactor Vulkan video encode tests 2025-05-09 piotr.byszewski@mobica.com Additional tests for shaderStorageImageMultisample 2025-05-09 rgarcia@igalia.com Test image to buffer copies with 96-bit formats 2025-05-09 rgarcia@igalia.com Test buffer to image copies with 96-bit formats 2025-05-09 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.4.2 into vk-gl-cts/main 2025-05-07 rgarcia@igalia.com Add note about deqp-vk link times in debug mode 2025-05-07 scerveau@igalia.com Update documentation for video samples dl 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: I3f238b39333862b73518e875a2cbc7d8445ba0d2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6541949 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 8a5f2eeb 2025-05-14T07:00:19 Roll Chromium from b5121f275c34 to 6511b87fb086 (604 revisions) https://chromium.googlesource.com/chromium/src.git/+log/b5121f275c34..6511b87fb086 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC angle-team@google.com,ynovikov@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://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/9c19bf6fd8..e42f899ae7 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/3d355ecb9a..e93dc3dea2 * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/57733d6412..92623f3f80 * third_party/android_build_tools/error_prone/cipd: FLtgIzcLepAc87BaSXIELZIJPT4yxnr8K3MmFaEHrK8C..bd18Z8-1Y85m4C8xYA3z1J_VIhAaE2qRbkrBzn4_200C * third_party/android_build_tools/lint/cipd: QltgzNfGb4l4ekv1_GjIWtuew1hrBof1WVy2B8zrkYwC..7xZFl5M3w3LIJvhKsJYDQoTh5JZ3vr3I_-VWYXiGJC0C * third_party/android_build_tools/manifest_merger/cipd: hVPp69VTDru05sisN9HcrOf67Tk_Mhu6P6bsR24gOrEC..Ym1eWXywKFRvxsgK0yC4bFj9SwZViDqGEPb_w3mAKqMC * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/83c00a37f4..fd624be2fa * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/14bfda1708..032eddc73b * third_party/libc++abi/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/5a49db9990..069652e9cb * third_party/libunwind/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git/+log/2bd5f3cae1..8575f4ae4f * third_party/llvm-libc/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git/+log/a0ab545a0e..27ee073016 * third_party/r8/d8/cipd: bA3htCoEd_EArHekDGQSNpmBzQrcby2ioG6SFyl3AtwC..QhYGRVpYYKZmt3f_Zb2HoJ9LIBEnWaeeLXRNei47Z30C * third_party/rust: https://chromium.googlesource.com/chromium/src/third_party/rust/+log/f08dc30a2b..c523543cf4 * third_party/siso/cipd: git_revision:04b22e60e2aae70fa9d51141c91bf4554d8c5239..git_revision:30ea210712239b874febcadf661f118fc2c0f6d7 * tools/android: https://chromium.googlesource.com/chromium/src/tools/android/+log/51ccf34f29..1af78910c3 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/02e6512f6b..f7a506e700 No update to Clang. Bug: None Tbr: ynovikov@google.com Change-Id: I17feded033b5b47aaabb550107e9dc73904d77cc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6545203 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Alexey Knyazev 82c75df3 2025-04-24T00:00:00 Fix GetDebugMessageLog validation Used the same validation for GetDebugMessageLog and GetDebugMessageLogKHR entry points; added tests. Simplified validation redirects for: - ObjectLabel and ObjectLabelKHR - GetObjectLabel and GetObjectLabelKHR - ObjectPtrLabel and ObjectPtrLabelKHR - GetObjectPtrLabel and GetObjectPtrLabelKHR Fixed: angleproject:417493213 Change-Id: Id1fad6c94db78da403e70f40f44630632d375472 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6543489 Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Charlie Lao 3bbdee0f 2025-03-28T11:55:24 Vulkan: Remove Subject/Observer from BufferImpl Right now the gl::Buffer back end send message to the front end and then gl::Buffer propagate the message to the observers (vertex array, textures, transform feedback). We are seeing many of these kind of message passing (mainly to vertexArray), and each message is a virtual function call. The message call also lacks of context information that we can not do certain optimizations. This CL adopts the new API feedback argument approach for buffer APIs from the back end to the front end. The only difficulty I ran into is D3D backend where the message could be delivered from draw calls. For now the subject/observer code path is still kept in the gl::Buffer, but no back end will use it except D3D11. That will be removed in the later CL when D3D11 switch to use feedback mechanism. BYPASS_LARGE_CHANGE_WARNING Bug: angleproject:400711938 Change-Id: I5fb3b660fd4260b9ba691239ad777b575b31e2ab Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6408892 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Alexey Knyazev e4ec23a0 2025-04-24T00:00:00 Fix query object support in EXT_debug_label The GL_EXT_debug_label extension must support labeling timer query objects created on ES 2.0 contexts even if the GL_EXT_occlusion_query_boolean is not supported. Expanded and fixed tests. Bug: angleproject:42263878 Change-Id: If05cf1b6879d44de1cc893ed45d1b877c963dac6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6539570 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Alexey Knyazev 9ddb1b7f 2025-04-24T00:00:00 Disable OES_primitive_bounding_box on unsupported contexts The OES_primitive_bounding_box extension requires OpenGL ES 3.1 and must not be exposed on lower context versions. Also made both EXT and OES versions of this extension enableable. Bug: angleproject:42262238 Bug: angleproject:415495316 Change-Id: I5379daa06dba3b2b09d9656ffab15c010fb4870a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6538627 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Tim Van Patten ed4d7278 2025-05-13T10:06:18 Tests: Skip VerifyMutableRenderBufferKHR on Intel+Win The test EGLSingleBufferTest.VerifyMutableRenderBufferKHR/ES*_Vulkan_NoFixture is failing on Intel+Windows and generating VVL errors. ERR: vk_renderer.cpp:968 (rx::vk::(anonymous namespace)::DebugUtilsMessenger): [ VUID-VkSwapchainCreateInfoKHR-presentMode-parameter ] vkCreateSwapchainKHR(): pCreateInfo->presentMode (VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR) requires the extensions VK_KHR_shared_presentable_image. The Vulkan spec states: presentMode must be a valid VkPresentModeKHR value (https://docs.vulkan.org/spec/latest/chapters/VK_KHR_surface/wsi.html#VUID-VkSwapchainCreateInfoKHR-presentMode-parameter) ..\..\src\tests\egl_tests\EGLSurfaceTest.cpp(2036): error: Value of: IsEGLDisplayExtensionEnabled(mDisplay, "EGL_KHR_mutable_render_buffer") Actual: false Expected: true It's not entirely clear where things are going wrong, but appears to be something in the Intel+Windows driver. Skip the test for now to keep win-exp-test green otherwise. Bug: b/417459061 Test: EGLSingleBufferTest.VerifyMutableRenderBufferKHR Change-Id: I3bc21dfa059b1c0d7c4e8f7ae0452a3819bedbb3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6541387 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>