src


Log

Author Commit Date CI Message
Shahbaz Youssefi 6a997ce2 2025-10-03T00:03:25 Vulkan: SPIR-V Gen: Use unique id instead of pointer Bug: angleproject:349994211 Change-Id: I66d6c3cf58f1e7d850fb19def7aa863774d918a9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7007612 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Matthew Denton 6c4c0055 2025-10-01T15:13:14 WGSL: fix do-while when body has continue If the body of the do while had a "continue" it would skip over the evaluation of the loop condition and potentially loop forever. Change to use the special WGSL "continuing" statement, which goes at the end of a loop body and always executes, even if there is an earlier "continue". Bug: angleproject:42267100 Change-Id: I4ac73e6abcb12e0ff395b83dc5666ac1870724e9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7003772 Reviewed-by: Liza Burakova <liza@chromium.org> Commit-Queue: Matthew Denton <mpdenton@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Shahbaz Youssefi e1c14f0b 2025-10-02T23:42:01 Translator: Fix gl_LastFragColorARM not being qualified correctly The qualifier adjustment was accidentally done after declaring the variable in some cases. Bug: angleproject:349994211 Change-Id: Iffd7567a119e1cd499c068742edfcb68a6a2336f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7006113 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Charlie Lao fd353919 2025-10-03T14:32:05 Vulkan: Fix VMA assertion The primitive restart may generate zero size, and VMA does not like it. Make sure we not pass down zero size here. Bug: angleproject:448916158 Change-Id: I9a901127e8de11ab008e39330bd2eb93a9f135bc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7008828 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Gowtham Tammana 01280f65 2025-07-29T10:14:54 CL/Vulkan: Remove spurious clear The external events corresponding to a command stream submit and processed and cleared before vkSubmit. So remove the spurious clear at the time finish post processing. Bug: angleproject:446112158 Change-Id: If2efcc3173e400ad2d386ca374eebe9d9f310692 Signed-off-by: Gowtham Tammana <g.tammana@samsung.com> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6981089 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Austin Annestrand <a.annestrand@samsung.com>
Shahbaz Youssefi d9fa255a 2025-10-02T11:58:06 Translator: Add numerous missing gl_PerVertex validations Bug: angleproject:349994211 Change-Id: Ie4a602dd026a2dab95c9d77e8841e76967fa7f3d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7002885 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Jisun Lee fc98b3f6 2025-09-30T19:40:58 Add test to verify the direct YUV sampling case This is a follow-up test to the commit below. https://chromium-review.googlesource.com/c/angle/angle/+/6797965 The test verifies that the yuv image and image view are properly initialized in a program using __samplerExternal2DY2YEXT sampler. Bug: angleproject:386749841 Test: angle_end2end_tests --gtest_filter=ImageTestES3.* Change-Id: Ia0142dfb9135df6684526bf88f8c8b257416be10 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7001563 Commit-Queue: mohan maiya <m.maiya@samsung.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com>
Cody Northrop 5c58505b 2025-10-02T16:22:19 Tests: Update expectations for GalaxyS24Exynos Test: angle_end2end_tests Bug: b/410630704 Change-Id: I18c1a9d9c5dfbb4b9238ecac5a081bde5c070540 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7007381 Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Shahbaz Youssefi 5e724354 2025-10-03T15:53:45 Fix UniformBufferTest.MultipleSizesSmallBeforeBig on AMD/Linux Bug: angleproject:42266818 Change-Id: I4ccb02ea1d21b5d8d8861837c3e40a3b0fa75610 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7008549 Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Mohan Maiya b276d1f8 2025-10-03T08:56:54 Vulkan: Add supportShaderPixelLocalStorageAngle feature Don't expose GL_ANGLE_shader_pixel_local_storage extension for Samsung Bug: angleproject:386749841 Change-Id: Ia22a6e8d8625db2abc7e7e9816ac34b7a7dec92c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7006000 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: mohan maiya <m.maiya@samsung.com>
Shahbaz Youssefi 51fcd399 2025-10-03T10:39:14 Revert "Vulkan: Suppress buggy VU" This reverts commit a83d674ed6b9096a5c5b1f3e3924aaa340bd3867. Reason for revert: Buggy VU was disabled in VVL Original change's description: > Vulkan: Suppress buggy VU > > Bug: angleproject:448630613 > Change-Id: Ibccc4fbbe6257a3b96f5ccb112fec866cc2c3efe > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7003828 > Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> > Commit-Queue: Yuxin Hu <yuxinhu@google.com> > Reviewed-by: Yuxin Hu <yuxinhu@google.com> Bug: angleproject:448630613 Change-Id: I19ebc3cb83d9ceefcfbbb92df0a0e1bde4ff7a36 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7007012 Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Charlie Lao 41bc2afa 2025-10-02T16:22:33 Vulkan: Remove mBindingDirtyBitsRequiresPipelineUpdate mBindingDirtyBitsRequiresPipelineUpdate and mAttribDirtyBitsRequiresPipelineUpdate are used to avoid GraphicsPipelineDesc::updateVertexInput() call. This function is not being used when supportsVertexInputDynamicState is enabled, which almost all recent drivers do. We could potentially do similar optimizations when supportsVertexInputDynamicState is enabled to avoid RenderPassCommands::setVertexInput() call. But the logic is complex enough not really worth it (See crrev.com/c/6961186 for draft CL). If any, simply compare the new value and old value probably is as good as checking the dirty bits. In this CL, all these dirty bits checking are removed so that we do not waste CPU cycles to track these dirty bits while not being used at all when supportsVertexInputDynamicState.enabled is true. Bug: b/439073246 Bug: b/442636174 Change-Id: I7d71d4fc9388612e7c6ccc50a2e781325fe953bc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7007241 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Charlie Lao 8f8f0439 2025-10-02T15:44:46 Group the class methods together In previous many CLs, I intentionally not move around the code for ease of code review. Now everything has settled down, it is the time to regroup class methods together. Also renamed some various in VertexArrayVk to be consistent with each other. No functional change is expected in this CL. Bug: b/439073246 Bug: b/433331119 Change-Id: I84f9a2ff9ea20f359e2f546ecb4e3e503b805748 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7007472 Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi f1110548 2025-10-03T10:00:59 Suppress failing test on iOS Bug: angleproject:448658625 Change-Id: I35b5c41055136d2f8bffdf9e48dd6480fd248c90 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7002518 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Charlie Lao 62b00f86 2025-10-02T12:19:23 Vulkan: Further minimize VertexArrayVk::syncDirtyEnabledAttrib This CL splits the streaming handling into its own function: syncDirtyEnabledAttrib is now splitted into syncDirtyEnabledNonStreamingAttrib and syncDirtyEnabledStreamingAttrib. This minimize the condition check inside syncDirtyEnabledAttrib. VertexArrayVk::syncDirtyEnabledAttrib() function has a check of bufferGL->getSize() > 0 as well as hasAtLeastOneVertex. And if either of them are false, they simply point to empty buffer. This CL merges these this fallout case into hasAtLeastOneVertex and added ASSERT to ensure that if buffer size is 0, hasAtLeastOneVertex is false. Bug: b/439073246 Change-Id: I5e3592c31469d15f5321208eb0278b10e447118c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6987341 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Mark Lobodzinski 2247ebec 2025-10-02T09:52:40 Trace/Replay: Don't reset max shader/program ID The mMaxShaderProgramID variable was being reset between captures. This could result in trace crashes when the temp shader/program start ID conflicted with active programs or shaders. Test: angle_trace_tests --gtest_filter=*identity_v Bug: b/448817125 Change-Id: I49c1d94b5824a8eaee444f7e4eb323ddab1a3edc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7006451 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Shahbaz Youssefi 538129c6 2025-10-01T15:08:53 Remove b/ from end2end expectations Bug: None Change-Id: Ibfa3ca48dc5084ffd548cc1ff331bf29592a817e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7004585 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Mohan Maiya 7b4ff0b2 2025-10-01T16:30:47 Vulkan: Updates to onFramebufferBoundary 1. Rename to the more appropriate onFrameBoundary 2. Add method to renderer for better encapsulation 3. When being moved to the background some apps unMakeCurrent the contexts and exit without calling other frame boundary APIs. Handle such usecases by treating ContextVk::onUnMakeCurrent(...) as a frame boundary Bug: angleproject:386749841 Change-Id: Ic2a8ecb631d132d99f8508f45f3b454c49f6624e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7004936 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: mohan maiya <m.maiya@samsung.com> Reviewed-by: Charlie Lao <cclao@google.com>
Shahbaz Youssefi ec4d8946 2025-09-29T15:32:40 A fistful of tricky GLSL tests Bug: angleproject:349994211 Bug: angleproject:448658624 Bug: angleproject:448658625 Bug: angleproject:448658631 Bug: angleproject:448675904 Change-Id: I8ad8727b7c8f7889a1249dfc7382c7e0318c5496 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6996988 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Shahbaz Youssefi 1f3b482f 2025-10-02T12:05:44 Translator: Fix UNREACHABLE() on gl_DepthRange compile error Bug: angleproject:349994211 Change-Id: I1918c8390de3fa4a5c7542b044e91e8d5e944b3a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7002886 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Yuxin Hu 4daab276 2025-10-01T16:20:53 Fix test supplying 2D texture data to 3D texture Bug: chromium:446633198 Change-Id: I4ee9cee6788123e5e2d5527e92433c5df61aa063 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7004941 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Jisun Lee b152eb30 2025-09-12T21:20:08 Vulkan: Refine conditions to force submit immutable textures To minimize unnecessary submissions, make the activation conditions for forceSubmitImmutableTextureUpdates feature more precise. This also enables the feature for Samsung devices. Bug: b/444728814 Change-Id: Idaf6b36596752f55ec6ba0ca1e4ff516f3a280df Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6945861 Reviewed-by: mohan maiya <m.maiya@samsung.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: mohan maiya <m.maiya@samsung.com>
Shahbaz Youssefi 7994bf76 2025-09-29T11:55:00 Vulkan: Avoid double-setting the fragment shading rate Because there were two handlers for fragment shading rate, one for the QCOM extension and one for EXT, every time the render pass started, it would set the fragment shading rate to 1x1 twice. Bug: angleproject:420310117 Change-Id: I905c504c7a7b80b5e7173e5d6a7cabe6f271e7a1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6995362 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: mohan maiya <m.maiya@samsung.com> Reviewed-by: Charlie Lao <cclao@google.com>
Yuxin Hu 17307955 2025-09-30T18:08:18 Vulkan: Add a threshold for RefCountedEventRecycler::mEventsToReset Surface Flinger process is not guaranteed to call Renderer::flushOutsideRPCommands(), in that case RefCountedEventRecycler::mEventsToReset is never cleaned up and send back to RefCountedEventRecycler::mEventsToReuse list, which causes file descriptors leaking. This change adds a threshold for the number of items in RefCountedEventRecycler::mEventsToReset. If the threshold is reached, don't add item to RefCountedEventRecycler::mEventsToReset, destroy the items instead. Bug: b/440066521 Change-Id: If4aa0b14ab15e70f192f380e3b9707b405dd6fcb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7001562 Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Amirali Abdolrashidi 7093e400 2025-09-29T14:31:06 Vulkan: Fix buffer size for vertex array * In syncDirtyEnabledAttrib() in VertexArrayVk, the array buffer size used for binding (BindVertexBuffers2()) has been changed to that of bufferHelper. Bug: angleproject:448047351 Change-Id: I852e4839cba698c01f92644cf32fadf366c0b54f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6996428 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi a83d674e 2025-10-01T12:42:48 Vulkan: Suppress buggy VU Bug: angleproject:448630613 Change-Id: Ibccc4fbbe6257a3b96f5ccb112fec866cc2c3efe Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7003828 Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Matthew Denton 4cff5289 2025-08-12T19:31:36 WGSL: append TSymbolUniqueId to overloaded functions dEQP-GLES2.functional.shaders.functions.overloading.* passes after this. So that overloaded functions have unique names in GLSL, append their TSymbol's unique id to the name of the emitted WGSL function. Bug: angleproject:42267100 Change-Id: I25026e71f9e27cb323014cd4102f914226c27d02 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6843927 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Matthew Denton <mpdenton@chromium.org>
Cody Northrop b2acbf90 2025-09-30T16:49:40 Tests: Add Raising a Goblin trace This trace was contributed by Samsung. Test: angle_trace_tests --gtest_filter=*raising_a_goblin Bug: b/448458599, b/448468885 Change-Id: I36909d44ccf817ae54b80968b75136c2478b38f1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7001560 Reviewed-by: Mark Łobodziński <mark@lunarg.com> Commit-Queue: Mark Łobodziński <mark@lunarg.com> Auto-Submit: Cody Northrop <cnorthrop@google.com>
Shahbaz Youssefi ae02c329 2025-09-30T00:04:58 Translator: Give gl_DepthRange its own qualifier gl_DepthRange and gl_NumSamples are considered "uniform" by the GLSL spec, but gl_NumSamples gets its own qualifier in the translator. This left gl_DepthRange as the only built-in that had to be detected by its name instead of qualifier. This change adds a qualifier for gl_DepthRange to remove this special-ness. Bug: angleproject:349994211 Change-Id: I2b7b0acf3dcaef22bb4a98e4d35fd2cdfd5c825a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6998990 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Shahbaz Youssefi 789693f0 2025-09-30T14:30:59 Translator: Fail compilation if built-in redeclared after qualified If a built-in is qualified then redeclared like so: invariant gl_FragDepth; out float gl_FragDepth; the translator would have to remove the previous qualification statement and apply its effect to the redeclared variable directly. While this is possible, it has always been broken (i.e. there are no users), and is not really useful to support, since the application could have done the following instead: invariant out float gl_FragDepth; The spec does not explicitly call this out as invalid, but this change generates a compile error for the above scenario anyway, as supporting it can get unnecessarily intrusive. Bug: angleproject:349994211 Change-Id: I9ddb181c8808f50aeed5b327a95b3df829206822 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6999640 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Matthew Denton 7b14dd73 2025-08-19T15:57:34 WGSL: RewriteMixedTypeMathExprs RewriteMixedTypeMathExprs: Some mixed-type arithmetic is legal in GLSL but not WGSL. Generate code to perform the arithmetic as specified in GLSL. Example: uvec2 x; uint y; x &= y; Is transformed into: x &= uvec(y); Also, mat2 x; int y; x += y; Is transformed into: x += mat2(float(y), float(y), float(y), float(y)) Bug: angleproject:42267100 Change-Id: I4a0ec1d9806b3331b4b1feff6fbe7c0f212f8120 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6862843 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Matthew Denton <mpdenton@chromium.org>
Shahbaz Youssefi a38f60ea 2025-09-30T13:40:44 Translator: Fail compilation if main() is only prototype Bug: chromium:448166385 Change-Id: Ia6b69839e35f3e0dcdf3e6e918397d3e2fd83fa2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7000630 Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 85631b1d 2025-09-30T14:25:30 Translator fuzzer: Dump the shader before compiling it So that fuzzer reports tell you what the shader is without us needing to debug-print it. Bug: chromium:448166385 Change-Id: If2454093abd73771cbac787c7516259db6be82d2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6999637 Commit-Queue: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Rachael Newitt c4e942d6 2025-09-25T02:47:45 Tidy up some README.chromium files in Angle. Backfills the Update Mechanism field for dependencies and cleans up some of the other fields which are out of date. Bug: chromium:379934539 Change-Id: I9a952e905ce00c379c4d593dd67b7e0fc6f1794e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6981101 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Dan Glastonbury e12bb29c 2025-08-01T15:34:26 Recompute vertex capacity when resuming transform feedback. Extract vertex capacity computation into recomputeVertexCapacity() and call it from both begin() and resume() to handle cases where the backing buffer size changes while transform feedback is paused. Add a new WebGL specific test to TransformFeedback to test the expected behavior when making the backing buffer smaller via glBufferData. Bug: angleproject:437706201 Change-Id: I3ac8e1e983ab868e34c1bdac249ce17a40e274f0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6830709 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Kimmo Kinnunen <kkinnunen@apple.com>
Mark Lobodzinski 81cda669 2025-09-29T15:16:54 Tests: Add Knives Out trace Test: angle_trace_tests --gtest_filter=*knives_out Bug: b/448170020 Change-Id: I9a24ea1ae36b870a127a670db5000dd8db1668dc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6997769 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Yiwei Zhang ba5db43c 2025-09-27T08:51:25 Vulkan: support MESA PanVK compatibility Naming wise: 1. isARMProprietary: ARM Mali DDK 2. isMesaPanVK: MESA PanVK Compatibility wise: 1. No behavior change for ARM proprietary driver. 2. Gone through each isARM check and update to isARMProprietary for those not applicable to MESA PanVK. 3. Fixed some isMaliJobManagerBasedGPU check which assumes the ARM prorietary driver. 4. Enabled doubleDepthBiasConstantFactor for MESA PanVK. Bug: b/399142853 Bug: b/447647367 Test: no unexpected regressions in dEQP-EGL.* and dEQP-GLES* Test: dEQP-GLES3.functional.polygon_offset.* pass Change-Id: I8f830632b4caf2e63a3ae87e15825e21476bf595 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6992252 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Yiwei Zhang <zzyiwei@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Shahbaz Youssefi e5b33850 2025-09-26T14:59:20 Translator: Fail earlier if main() is not present. The IR assumes that main() is available on successful parse. Additionally, in preparation for IR removing a check that the AST root is set up, a compile failure to that effect is turned into an assertion. The AST generated before IR is logically only used for validation purposes, so the compiler cannot rely on it to generate an error. Bug: angleproject:349994211 Change-Id: I5d4501b52fed8214213a4ae1dada923decee9a8b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6991529 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Cody Northrop 1f723b35 2025-09-26T09:40:45 Tests: Add Puzzle & Dragons trace Test: angle_trace_tests --gtest_filter=*puzzle_and_dragons Bug: b/447599643, b/448110252 Change-Id: Ib7c167e776f5b3a64a3932b565f2984a0c6ac915 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6989949 Reviewed-by: Mark Łobodziński <mark@lunarg.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Shahbaz Youssefi f3405af0 2025-09-25T13:45:08 Translator: Fix gl_in redeclaration This was seemingly untested, and had multiple issues: * GLSL generation would output `gl_in gl_PerVertex { ... } gl_in;` * SPIR-V generation would redeclare `gl_in` despite one already existing. * If sized after declaration, the redeclared `gl_in` was referencing a different variable than the resized one. Bug: angleproject:42264111 Bug: angleproject:349994211 Bug: angleproject:447556589 Change-Id: Id63912b68625bafcc64197807b1c8a86e6f952b5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6985323 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Chris Dalton f95cbef4 2025-09-07T17:50:37 Reland "Add a "noncoherent" layout qualifier to PLS" This is a reland of commit ef9c5ce43110f4f8ba56124bdee927944ce3ddd1 with an invalid assert removed. Original change's description: > Add a "noncoherent" layout qualifier to PLS > > Raster ordering can be expensive. If an app knows the geometry in a draw > does not overlap, it can mark the PLS planes as noncoherent and opt for > using barriers instead. > > Bug: angleproject:40096838 > Change-Id: I2d686c2e64f51940face186637a9fcadcc251bef > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6923300 > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > Reviewed-by: Kenneth Russell <kbr@chromium.org> > Commit-Queue: Chris Dalton <chris@rive.app> Bug: angleproject:40096838 Change-Id: I55077a973063427dfb0d510c87e75ec86ce8bb43 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6991929 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Shahbaz Youssefi 35fade1e 2025-09-29T11:45:11 Suppress failing tests Bug: angleproject:444980424 Bug: angleproject:40096874 Change-Id: I7f835f40fb685fb7122e921db8e047f3789c37f6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6995361 Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Shahbaz Youssefi 549e9ee0 2025-09-26T18:15:26 Capture/Replay: Re-enable passing tests: Bug: angleproject:404418769 Change-Id: I4216a6206ec3d96a75ddd5177995ee26d539d73e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6990630 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Tim Van Patten 7a7681cc 2025-09-23T16:36:43 tests: Require GL_EXT_fragment_shading_rate_primitive Shaders can only reference the built-in gl_PrimitiveShadingRateEXT if the extension GL_EXT_fragment_shading_rate_primitive is supported. However, the test ShadingRateEXTTest.FragmentShadingRateBlend uses a shader that references the built-in without checking if it's available first. Skip the test ShadingRateEXTTest.FragmentShadingRateBlend if the extension GL_EXT_fragment_shading_rate_primitive is not available. Bug: b/446958061 Test: angle_end2end_tests --gtest_filter=ShadingRateEXTTest.* Change-Id: I11d7086a30db704c560c7446b4b7d997bb54b578 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6976660 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Yuxin Hu 020c8ea3 2025-09-26T12:35:25 Disable convertLowpAndMediumpFloatUniformsTo16Bits on non-ARM devices It is unknown if other GPUs need this explicitly 32-bit to 16-bit casts, and the performance impact of this feature needs to be verified across different GPUs. Bug: b/405795981 Change-Id: I1b450aea58d6f4a20eddac5c9edceb4ebac4d999 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6990532 Commit-Queue: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Amirali Abdolrashidi 6218bbd4 2025-09-26T12:20:39 Vulkan: Make min submit command count dynamic * Turned the constant submit count threshold to a variable that can be set for different devices independently. * Added feature flag to enable forcing submission for certain GL commands, such as Clear and Invalidate. * If disabled, it would treat all commands the same and submit at the count threshold without exception. Bug: b/422507974 Change-Id: Ib13d36adfdcf75aa865dafadc279287f4a4bd1c7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6990531 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Shahbaz Youssefi 18f28e59 2025-09-25T13:41:45 Translator: Mark redeclared gl_Position/PointSize as built-in When redeclared according to EXT_separate_shader_objects, these variables were given a UserDefined symbol type. While this doesn't affect SPIR-V (with Vulkan being the only backend that supports EXT_separate_shader_objects), it does affect the rest of the AST, including GLSL generation which would output _ugl_Position if support for the extension is enabled. Bug: angleproject:42265086 Bug: angleproject:349994211 Change-Id: I04d088017dbe6e32bfee675f0124c4cc3ffdefc2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6985322 Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Tingwei Guo 94777428 2025-08-08T10:36:22 Shading rate should be {1,1} when enabled PER_SAMPLE According to spec, if FETCH_PER_SAMPLE_ARM is enabled, the fragment shading rate is set to {1,1}. Bug: angleproject:437957110 Change-Id: I3ea6958f1aaec5f13923f62001906c7c6c71e09e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6839957 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Tingwei Guo <tingwei.guo@arm.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com>
Mark Lobodzinski 1ca9e7fb 2025-09-25T15:23:48 Tests: Add Harry Potter Magic Awakened trace Test: angle_trace_tests --gtest_filter=*harry_potter_magic_awakened Bug: b/441547450 Change-Id: Ie804ef3dc8c6d6d17f041dadab0f4fb58a27d867 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6986843 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Yuxin Hu 193e9cda 2025-09-25T15:26:39 Revert "Vulkan: Simplify/Fix DmaBufImageSiblingVkLinux import probing" This reverts commit d917f77130e5194e82418f3bdaa2cd5b2af55c03. Reason for revert: Google Meet Regression https://crbug.com/445863166 Original change's description: > Vulkan: Simplify/Fix DmaBufImageSiblingVkLinux import probing > > Remove the multi-format probing logic in DmaBufImageSiblingVkLinux. > Use the renderer’s base VkFormat and a single check with > VkImageFormatListCreateInfo, instead of looping over mVkFormats with > mutable/non-mutable combinations. This cuts down redundant queries > and streamlines initImpl. > > Also, this CL fixes some issues occur when mapping DRM format into > Vulkan backend formats. > - Default to SampleOnly but prefer Renderable if the modifier properties > exposes both sampling and rendering, since usage at import time is > unknown. > - Fix emulated-format handling issue by using getIntendedFormatID() and > getActualImageFormatID() instead of deriving both IDs from VkFormat with > GetFormatIDFromVkFormat() directly. > > Bug: angleproject:442313595 > Bug: angleproject:426475684 > Change-Id: Ia38d8e7901da10948a2c15eb284b055359dd4a2d > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6904888 > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > Reviewed-by: mohan maiya <m.maiya@samsung.com> Bug: angleproject:442313595 Bug: angleproject:426475684 Bug: chromium:445863166 Change-Id: I530e9b363a2e25ec2325e3933a409d0aae9940c0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6986844 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Auto-Submit: Yuxin Hu <yuxinhu@google.com>
Amirali Abdolrashidi 1f40285c 2025-09-24T11:54:44 Vulkan: Bypass buffer for VA if Bind*Buffers2 Due to added support for BindVertexBuffers2 and BindIndexBuffer2, there would be no need to allocate a buffer for vertex arrays via getBufferForVertexArray() if the related features are supported. It should be possible to directly reference the original buffer and the proper offset instead without errors. * The buffer handles and offsets in VertexArrayVk now get the original buffer handle and offset instead of using getBufferForVertexArray(). * getBufferForVertexArray() will now be used only when the following feature is disabled: * useVertexInputBindingStrideDynamicState * (which is used as condition for vkCmdBindVertexBuffers2()) * Renamed the function for index buffer: getIndexBufferForVertexArray() This will be used when the following feature is disabled: * supportsMaintenance5 * (which is used as condition for vkCmdBindIndexBuffer2())) * Moved the rest of the code in getBufferForVertexArray() to ~Impl(), which is used by both the functions above. * Removed redundant condition from the vertex input binding stride dynamic state feature. Bug: chromium:40059200 Bug: angleproject:394337110 Change-Id: I665611f92058048a9778aa4b823fabfad7c96c84 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6980316 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Charlie Lao <cclao@google.com>
Cody Northrop 392d4a4d 2025-09-24T15:58:23 Windows: Fix angle_enable_trace build The writeFile helper was modified to take only two parameters. Test: Build on Windows with angle_enable_trace = true Bug: b/436880895 Change-Id: I603cb1e85a7f9c1f0d2d008adf3a6c9351b4252a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6981094 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Auto-Submit: Cody Northrop <cnorthrop@google.com> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Liza Burakova 69745720 2025-09-23T11:16:21 [WebGPU] Implement texture copy from cpu reads. This CL implements a slow path to copying from a texture that reads data from the CPU. This path is taken when the src and destination formats differ. Bug: angleproject:438268609 Change-Id: I5a81fbed5bbac68c48537d8c7a2fcc487c31e76e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6847147 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Matthew Denton <mpdenton@chromium.org> Auto-Submit: Liza Burakova <liza@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Charlie Lao 35b92525 2025-08-13T15:27:32 Remove lock from GenVertexArrays/IsVertexArray VertexArrays are per context anyway and is thread safe, so there is no need for shared lock. This CL moves mVertexArrayMap from Context to PrivateState so that it won't be accessed by other APIs. Bug: b/433331119 Change-Id: I466a79762e887dbec78b796b52028420837cff59 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6977163 Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com>
Austin Annestrand ea4dab49 2025-07-08T18:49:19 cl/vk: add missing map routine locks/counts thread-heavy workloads are exposing parent buffer and sub-buffer mapping/map-count logic. using map lock/count to remedy this. Bug: angleproject:376722715 Change-Id: I1e5cba76f388fa62f244a9372238b2526e910b60 Signed-off-by: Austin Annestrand <a.annestrand@samsung.com> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6973873 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 4eb8604f 2025-09-24T00:13:51 Translator: Use EvqNumSamples for gl_NumSamples This qualifier was seemingly intended for this built-in, but EvqUniform was used for it instead; presumably following gl_DepthRange. Bug: angleproject:349994211 Change-Id: I1ec7f76195d790ac2a53c4f2b0f9a136976480d5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6977986 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Sean Callanan cb3b51a6 2025-09-12T20:45:38 Vulkan: Respect externalFormat properties for AHB When the Vulkan driver sets `VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT` in `VkAndroidHardwareBufferFormatPropertiesANDROID::formatFeatures`, ANGLE has the option of using `VK_FORMAT_UNDEFINED` rather than the reported `VkAndroidHardwareBufferFormatPropertiesANDROID::format` if the feature set is what is desired. This patch introduces separate checks of `formatFeatures` and the capabilities of `format`, and modifies the validation and creation of `VKImage`s to specify a format explicitly only when this would be necessary to conform to user intent expressed by the usage of the AHB. Test: atest GpuFormatIdentityTest Bug: b/440416844 Change-Id: I629b556c1d1daffbced0992f421db2bcd95bbada Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6944813 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com>
Charlie Lao 24fdc63a 2025-09-24T11:52:30 Vulkan: Disable recycleVkEvent Until we figure out whats causing VkEvent leak, disable the recycleVkEvent feature for now. Bug: b/440066521 Change-Id: I1b56554e8986b7113b12280d30cce2aae54b9589 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6981088 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Amirali Abdolrashidi 15a0f3d6 2025-09-24T11:37:36 Unskip KHR-GLESEXT fragment shading rate tests * Unskipped the fragment shading rate tests that no longer fail. Bug: b/436389014 Change-Id: Id0ad01cff8aca6227e7b768d5952818079f58257 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6981087 Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Auto-Submit: Amirali Abdolrashidi <abdolrashidi@google.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Tim Van Patten 043b07e7 2025-09-22T11:08:08 tests: Skip LogEnabledFeatures on system EGL Skip the test EGLPrintFeaturesVulkanExtensionsInfoTest.LogEnabledFeatures when testing the system EGL, because not all platforms expose ANGLE-specific extensions. Bug: b/409384875 Test: angle_end2end_tests \ --gtest_filter=EGLPrintFeaturesVulkanExtensionsInfoTest.LogEnabledFeatures* Change-Id: Id1b602b7d177b109da5cfc7c4082ad044c97475e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6973139 Reviewed-by: Solti Ho <solti@google.com> Auto-Submit: Tim Van Patten <timvp@google.com> Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Geoff Lang 3d8f1d82 2025-09-24T09:48:06 Manual roll Roll VK-GL-CTS from 7f30dc62428c to c67cffddd65a (18 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/7f30dc62428c..c67cffddd65a 2025-09-19 lorenzo@khronosgroup.org Merge vk-gl-cts/opengl-cts-4.6.6 into vk-gl-cts/main 2025-09-19 ziga@lunarg.com Add MRTSS tests with AHB 2025-09-19 rgarcia@igalia.com Test DGC IES with null pSetLayoutsInfo 2025-09-19 rgarcia@igalia.com Check timeline semaphore submit info is properly ignored 2025-09-19 marcin.zajac@cognizant.com Fix various validation errors 2025-09-19 ziga@lunarg.com Enable shader objects extension in coop matrix tests if available 2025-09-19 ewerness@nvidia.com Make ray query tests comply with VU 06353 2025-09-19 lionel.g.landwerlin@intel.com Fix mismatching pipeline creation flags in pipeline binary tests 2025-09-19 michal.jakubek@mobica.com Update white list: VUID-vkCmdDispatch-SampledType-04472 2025-09-19 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.4.3 into vk-gl-cts/vulkan-cts-1.4.4 2025-09-17 lorenzo@khronosgroup.org Allow Vulkan CTS 1.4.4.0 2025-09-12 lorenzo@khronosgroup.org Merge vk-gl-cts/opengl-cts-4.6.6 into vk-gl-cts/main 2025-09-12 javed@igalia.com Add tests for helper invocation 2025-09-12 mateusz.bahyrycz@cognizant.com Fix validation errors in ray query and ray tracing tests 2025-09-12 marcin.zajac@cognizant.com Fix validation errors in ycbcr tests 2025-09-12 ziga@lunarg.com Test buffer device address with OpAccessChain offset 2025-09-12 lorenzo@khronosgroup.org Merge vk-gl-cts/opengl-es-cts-3.2.12 into vk-gl-cts/main 2025-09-12 lorenzo@khronosgroup.org Remove \r (CR) characters from generated files 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,geofflang@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Change-Id: Ib4d4cd99e034e680f4f77ac5a2b72ceb1fc778b1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6979304 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Geoff Lang e3dc97b1 2025-09-22T16:38:28 Metal: fix SDK condition macro for mathMode. It was missing conditions for tvOS and visionOS and the conditions were > instead of >=. Bug: chromium:383994655 Change-Id: I0a565a7028a3fe43b745419d9bac1da0abcc99be Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6972592 Reviewed-by: Alexey Knyazev <lexa.knyazev@gmail.com> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Yuxiang Qian 7acb00a4 2025-09-15T15:35:51 Add egl config support GL_RGB16F for Linux Headless Add egl config support GL_RGB16F for Linux Headless. If it is renderable, then ANGLE would generate EGL config for this format. Bug: angleproject:446545299 Change-Id: I213fc6856c561890762eb8548a9a22b3e6fb53f1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6975604 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Amirali Abdolrashidi dd51c3e5 2025-09-16T00:03:20 Vulkan: Expand usage of BindVertexBuffers2 * bindVertexBuffers2() can now be used when vertex input dynamic state is enabled. * Since dynamic vertex input already sets the strides, there is no need to add the strides to bindVertexBuffers2() anymore and passing in nullptr should work. * Added the following token: BindVertexBuffers2NoStride * This is used to avoid the condition check overhead for the draw calls taking this code path. * Removed the condition of vertex input dynamic state from using vertex input binding stride. * The following pipeline flags can now be added to a pipeline object at the same time: * VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE * VK_DYNAMIC_STATE_VERTEX_INPUT_EXT * Changed the condition of positive vertex attribute count to any vertex attributes to add input binding stride flag to the pipeline. Bug: chromium:40059200 Change-Id: Id3be458580da0ca46db554bf292f240dae4d5097 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6944912 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Charlie Lao <cclao@google.com>
Xin Yuan b4d1333d 2025-07-24T10:28:25 Fix the issues when blitting within same resources Per GLES spec,when the attachments in src and dst framebuffers are identical, angle should generate GL_INVALID_OPERATION. But different mipmap levels of a texture, different layers of a 3D texture or 2D array texture, and different faces of a cube map texture do not constitute identical buffers, these are valid operations. Bug: angleproject:433816259 Change-Id: Ie6d34819dfbc2faa4af22ec370e59c1ed4521bcb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6780168 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Auto-Submit: Xin Yuan <xin.yuan@arm.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Hoyeon Lim 81d5ad4b 2025-09-23T16:54:46 FrameCapture: Set GL_TEXTURE_CROP_RECT_OES texture parameter Add texture parameter setting for GL_TEXTURE_CROP_RECT_OES in frame capture (GLES1 only) Bug: b/446779901 Change-Id: I174dc351292b3a928f75419590f5eaea37c5f376 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6975608 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Mark Łobodziński <mark@lunarg.com>
Shahbaz Youssefi bfdf223a 2025-09-23T11:42:39 Translator: Don't differentiate static read vs write In the end, the only thing that matters is whether a symbol is statically used, so no need to track whether the static use was in a read or a write context. Bug: angleproject:349994211 Change-Id: I4964fc9f76a5f7798f1b5e42ce2ae997dca78063 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6976297 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Yuxin Hu df433920 2025-09-23T11:16:44 Add instructions when apps do not have access to /sdcard Bug: None Change-Id: I41bcf8de82f03e1a4dbeae8cb1aefcfe6fa88474 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6976652 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Rafael Cintron ddc6885d 2025-09-22T17:22:20 Remove SubjectMessage::ContentsChanged handler from gl::Texture Case statement for SubjectMessage::ContentsChanged in gl::Texture::onSubjectStateChange was added during the development of multisampledRenderToTextureEXT on Windows. Since we're removed the partial implementation, we no longer need to handle this condition. Bug:chromium:443111620 Change-Id: I78f83121491c295961386e1e2a4da191c0ce7171 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6975022 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Mohan Maiya 8c263b84 2025-09-23T08:09:56 Update end2end expectations file A few pipeline cache related tests were removed recently, remove them from the end2end expectations file as well. Bug: angleproject:386749841 Change-Id: I8cb607e84a3463248a666abc8c4523ff782e50ca Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6976425 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: mohan maiya <m.maiya@samsung.com>
Hoyeon Lim 205a9a22 2025-09-22T14:04:59 FrameCapture: set starting binding GL_ELEMENT_ARRAY_BUFFER set starting binding GL_ELEMENT_ARRAY_BUFFER of vertex array object. Bug: b/446464003 Change-Id: I64f05694f66909fba81dc454df871d4cd49c20bf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6968196 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Matt Stark 3da898aa 2025-09-17T05:15:40 Add missing include for windows Bug: chromium:40263312 Change-Id: I3c4c82c3f6ec1c4b26b6a26b2fe56945be0351aa Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6957755 Auto-Submit: Matt Stark <msta@google.com> Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shyam Manohar c41ec91d 2025-07-03T13:34:09 CL/Vulkan: Zero-copy support added for CL Images - Using syncHost now for HostTransferConfigVisitor - Modified the interface of copyImageToFromBuffer Bug: angleproject:444481344 Change-Id: Iad315952720fcb23cbc0e58321594cb4d0db71dd Signed-off-by: Shyam Manohar <s.manohar@samsung.com> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6939059 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Austin Annestrand <a.annestrand@samsung.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Gowtham Tammana bc69e27d 2025-06-19T11:25:35 CL/Vulkan: Add helper routine to calculate VkBufferImageCopy When copying image to buffer and buffer to image, we need to construct VkBufferImageCopy object. Setting up a helper function for command usage. Bug: angleproject:444481344 Change-Id: I4d156454cea6e0de87604aaecde8809f1669de8c Signed-off-by: Gowtham Tammana <g.tammana@samsung.com> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6939058 Commit-Queue: Austin Annestrand <a.annestrand@samsung.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Charlie Lao 91263bbb 2025-09-18T14:55:02 Vulkan:Improve ContextVk::handleDirtyGraphicsDefaultAttribs ContextVk::handleDirtyGraphicsDefaultAttribs() calls updateDefaultAttrib(), which basically does the work ContextVk::onVertexArrayChange() is doing. This CL simplify the code by calling onVertexArrayChange directly from handleDirtyGraphicsDefaultAttribs. onVertexAttributeChange is removed. This also has the advantage that onVertexArrayChange put the for loop inside if check, versus current implementation does all the if check inside the for loop. Bug: b/439073246 Change-Id: Ic7b7f531f2f831d16f34794e23fefc9569a3e142 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6967318 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Mohan Maiya fde13336 2025-09-21T14:38:09 Update documentation for ANGLE_AHB_FORMAT_* Bug: angleproject:386749841 Change-Id: I235ac1abe7c0fc1e18751377e1a3953d81b507f2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6970621 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: mohan maiya <m.maiya@samsung.com>
Mohan Maiya a8ed5bd1 2025-09-20T16:38:48 Vulkan: Disable convertLowpAndMediumpFloatUniformsTo16Bits for Samsung Bug: angleproject:405795981 Change-Id: Ib71a5121ab71df57cd30ece8698694f11f91c563 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6970446 Commit-Queue: mohan maiya <m.maiya@samsung.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Geoff Lang 0e719508 2025-09-22T11:37:36 Metal: Gate mathMode usage on compile time SDK versions. Integrators of ANGLE who compile with SDK versions lower than macOS 15 would get compile errors by referencing mathMode. Bug: chromium:383994655 Change-Id: I152403977c1233e4049f13f3d99cdd12fdf87073 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6973058 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Avi Drissman <avi@chromium.org>
Mohan Maiya 50927761 2025-09-19T14:45:24 Vulkan: Add externallySynchronizePipelineCacheAccess feature Acquire renderer's pipeline cache mutex IFF externallySynchronizePipelineCacheAccess feature is enabled Bug: angleproject:386749841 Bug: angleproject:445240187 Change-Id: I91804e2713944768a5379adc3113ce7632a17111 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6969910 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: mohan maiya <m.maiya@samsung.com>
Mark Lobodzinski 02b53738 2025-09-08T08:55:23 Trace/Replay: Fix context grouping issues In tracing Harry Potter Magic Awakened, issues related to context grouping were found affecting shader and program state. While these objects are shared among all contexts, their state is not. This led to race conditions in object lifetimes as well as incorrect states for operations dependent on stader/program state. Test: angle_trace_tests --gtest_filter=*harry_potter_magic_awakened Bug: b/445208963 Change-Id: I8dbb22f72c917103f947cd34d088c4db0cd39731 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6950247 Commit-Queue: Mark Łobodziński <mark@lunarg.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Panfeng Hou 1e1830b7 2025-09-10T15:35:54 Vulkan: Return length=0 if the bufSize of glGetActiveAttrib is 0 Bug: angleproject:444058258 Change-Id: I9d1bd6f85f4340e1d330317923b954e5bfaeb3b9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6933702 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Panfeng Hou <panfeng.hou@arm.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Mark Lobodzinski c07bed66 2025-09-17T10:36:27 Trace/Replay: Allow for ignored uniform locations If a uniform location is -1 it must be ignored and no changes can be made. Skip default uniform location updates for these locations. Test: Capture GFXBench car chase scene Bug: b/441583445 Change-Id: Ifd476636f241a352ad058890bf945cf337e61f6d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6961035 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Cody Northrop 369e4e00 2025-09-19T15:34:40 Tests: Add trace batch for 2025-09-19 These traces were contributed by Samsung. Traces in the batch include: - cashman_casino - dc_dark_legion - jackpot_party - lightning_link Test: angle_trace_tests Bug: b/446235047, b/446234214, b/446235287, b/446235073 Bug: b/446064595, b/42264359 Change-Id: I1afd78bcfa9254a90890f9d8630463d93ba3d155 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6969917 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Amirali Abdolrashidi 75f6faf1 2025-09-05T17:01:43 Vulkan: Use size in BindVertexBuffers2 * Added the following attribute array to VertexArrayVk: mCurrentArrayBufferSizes * Updated during syncing/updating the vertex array attributes. * Added the pointer for buffer sizes to the following call: vkCmdBindVertexBuffers2EXT() Bug: chromium:40059200 Change-Id: I754741d12a729d42dab7e0f0b166a174c8d86181 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6917838 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Jeff Vigil 61c452ba 2025-09-03T17:23:37 Vulkan: Disable supportsShaderFramebufferFetch for Samsung Disable framebuffer fetch extensions for Samsung. Bug: angleproject:445083429 Change-Id: I89828b148ea1ac8ad2d59626e15d5f9358fe5b3c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6962954 Reviewed-by: mohan maiya <m.maiya@samsung.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: mohan maiya <m.maiya@samsung.com>
Gowtham Tammana 3d60009c 2025-02-26T00:09:37 CL/Vulkan: Don't serialize on external CQ events At the moment, the vulkan backend is setup with a single queue for all command buffer recordings. So flushing the external cq's on its dependencies is sufficient enough. Bug: angleproject:446112158 Tests-Passing: ocl_cts.test_events Change-Id: I7310f1b5e24abf7476b7a753a280456050e1afd5 Signed-off-by: Gowtham Tammana <g.tammana@samsung.com> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6939057 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Austin Annestrand <a.annestrand@samsung.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Solti Ho 7db4a404 2025-09-19T18:12:41 Vulkan: Fix UBSan by initializing CopyImageParameters A sporadic UBSan crash was caused by reading 'copyYuvWithoutColorConversion' member from an uninitialized CopyImageParameters struct. Fix this by zero-initializing the 'params' variable at the call site in TextureVk.cpp Bug: b/446185698 Bug: b/445180744 Change-Id: I92db7a735b91df8603698bb2a33d95ec6d7556a7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6965689 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Solti Ho <solti@google.com>
Gowtham Tammana 096924c1 2025-06-13T17:26:20 CL: Consolidate cl::{Offset,Extents} types The following definitions were equivalent, so consolidating their definitions. - cl::MemOffsets ~ cl::Offset - cl::Coordinate ~ cl::Extents Bug: angleproject:444481344 Change-Id: I6c1bd68bc3260b8da0ab4b4796668caf474e56a1 Signed-off-by: Gowtham Tammana <g.tammana@samsung.com> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6939056 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Austin Annestrand <a.annestrand@samsung.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Gowtham Tammana 04cbd20d 2025-06-16T11:06:44 CL/Vulkan: Fix the rect size calculation Take into consideration on the extraneous region when calculating the size of the enclosing buffer size for buffer rects. Bug: angleproject:444481344 Change-Id: Ifd146035565abf5bea0650ccee375bc2b28a55c1 Signed-off-by: Gowtham Tammana <g.tammana@samsung.com> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6939055 Commit-Queue: Austin Annestrand <a.annestrand@samsung.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Charlie Lao b1fc47c7 2025-09-17T18:21:02 Vulkan: add check for vertexAttributeInstanceRateZeroDivisor Allow zero divisor for vertex attributes when mVertexAttributeDivisorFeaturesmVertexAttributeDivisorFeatures.vertexAttributeInstanceRateZeroDivisor is true. Bug: b/439073246 Change-Id: I68705faffcefb38360f6fbcf5d937d1d902180aa Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6961233 Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Charlie Lao 17c0d100 2025-09-16T13:59:36 Vulkan: Remove VertexArrayVk::updateActiveAttribInfo This function get called from DIRTY_BIT_VERTEX_ARRAY_BINDING context dirty bit processing. It is doing exact same work as ContextVk::onVertexArrayChange(), which was already been optimized in earlier CL. In this CL VertexArrayVk::updateActiveAttribInfo() is deleted and onVertexArrayChange() is being used, which does minimum things when supportsVertexInputDynamicState is enabled. Bug: b/439073246 Change-Id: I6b388a8f89a63e654d290c6f8d2212052b8c0d1f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6945076 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Charlie Lao <cclao@google.com>
Charlie Lao cba665f3 2025-09-11T17:59:41 Vulkan: Add fast path for supportsVertexInputDynamicState In earlier CLs, we have stored stride/offset/format/divisor in Vulkan structs directly in VertexArray, this CL try to send these structs to vulkan driver directly without making another copy. divisor code has been modified to update inputRate as well as divisor in VertexArrayVk. WHen program and VertexArray's attribute types matches we use VertexArray's mVertexInputBindingDesc and mVertexInputAttribDesc without any data copy. If attribType mismatch then we make a copy and patch up the stride/format. Bug: b/439073246 Change-Id: I905b1e6d0609ffc4eb63b47e11a84f8617e06c29 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6898416 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Charlie Lao 45521eea 2025-09-17T15:57:04 Fix DrawWithMismatchedComponentCountLocationSpecified test bug The test has a bug that enabling the wrong vertex attribute. Instead of using hard coded attribute index (1), use colorLocation instead. Bug: angleproject:42264298 Bug: b/439073246 Change-Id: I3ae652e0ea6abe0392e6698c01af2f1c255cba26 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6962956 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Yuxin Hu f28c8029 2025-09-17T16:02:40 Re-enable the feature that transforms float uniforms to 16 bits Re-enable the feature after suppressing the WebGL conformance tests: https://chromium-review.googlesource.com/c/chromium/src/+/6937051. Temporary disable this feature on PowerVR while the bugs are under investigations. Bug: angleproject:405795981 Bug: angleproject:443302350 Bug: angleproject:443302625 Change-Id: I8263bd6fcf120b7bed8211f0439962be40afd992 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6962958 Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Geoff Lang 1b5fc24c 2025-09-17T16:36:33 Metal: Avoid deprecated fastMathEnabled on newer MacOS. Use the mathMode and mathFloatingPointFunctions properties instead. The new enum properties are set to the equivalent bool value from before. Bug: chromium:383994655 Change-Id: Ia28f5b8358fe0721183dd6041432856d25e16475 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6962694 Reviewed-by: Avi Drissman <avi@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Shahbaz Youssefi a44693f6 2025-09-17T14:50:37 Vulkan: Fix SPIR-V gen for invariant structs Bug: angleproject:349994211 Change-Id: I7db05d9a6232a577a65f7a337cfd1636bce0c53b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6961859 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Cody Northrop 3c588044 2025-09-17T22:44:36 Tests: Add trace batch for 2025-09-17 These traces were contributed by Samsung. Traces in this batch include: - match_factory - paper_io2 Test: angle_trace_tests Bug: b/445816053, b/445816060 Change-Id: Id75e9ca06cd3beafc0794b4c2cf134e22ee5318a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6961131 Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Austin Annestrand 7217890d 2025-06-17T11:51:08 CL/VK: Add SerializedExecution feature knob Feature allows for each enqueue-able CL command to submit and wait for fence (debugging aid). Bug: angleproject:444491489 Change-Id: I16b7e74f2a321680a81ab3c8a18dd9534a64ce1a Signed-off-by: Austin Annestrand <a.annestrand@samsung.com> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6941617 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Austin Annestrand 9e8f3c1f 2025-06-06T15:01:59 CL/VK: Cleanup buffer and image map handling - Create/move memory map routine(s) to CLBufferVK/CLImageVk. - Update image staging buffer routines. - Remove unused CLMemoryVk routines. Bug: angleproject:444481344 Change-Id: Ibd8361ce8eec67a1891effe0fee344ef977d25dd Signed-off-by: Austin Annestrand <a.annestrand@samsung.com> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6941607 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Brian Sheedy 44db20f2 2025-09-17T15:57:09 Revert "Add a "noncoherent" layout qualifier to PLS" This reverts commit ef9c5ce43110f4f8ba56124bdee927944ce3ddd1. Reason for revert: Causes issues on Apple silicon crbug.com/445727125 Original change's description: > Add a "noncoherent" layout qualifier to PLS > > Raster ordering can be expensive. If an app knows the geometry in a draw > does not overlap, it can mark the PLS planes as noncoherent and opt for > using barriers instead. > > Bug: angleproject:40096838 > Change-Id: I2d686c2e64f51940face186637a9fcadcc251bef > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6923300 > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > Reviewed-by: Kenneth Russell <kbr@chromium.org> > Commit-Queue: Chris Dalton <chris@rive.app> Bug: angleproject:40096838 No-Presubmit: true No-Tree-Checks: true No-Try: true Change-Id: Ibc24bed27cec406b6e4ffa9aaa8fe3a2110b58ba Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6962955 Reviewed-by: Kenneth Russell <kbr@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Brian Sheedy <bsheedy@chromium.org>