src/tests/angle_end2end_tests_expectations.txt


Log

Author Commit Date CI Message
Amirali Abdolrashidi 56868bd5 2025-09-04T12:21:40 Skip uniform bool in array test for Mac * Skipped the following test on AMD Macs using Metal: SimpleUniformUsageTestES3.BoolInArray Bug: angleproject:443101808 Change-Id: Ic58b1678a99632a42e351225525f8669f70a9d8a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6916348 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>
Amirali Abdolrashidi ded3e754 2025-08-18T14:42:59 Add more tests for RGB565 * Added more tests regarding RGB565 rendering, texture copy, blit, and border color clamp. Bug: b/409867243 Change-Id: Ic9d30aee89bda3e8f6c9147fffd99d8d2d8fac64 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6872406 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Yuly Novikov ef80e82f 2025-08-22T15:07:59 Skip slow test on Mac Metal AMD GLSLTest_ES3.ManySamplerFieldsInStructComplex/ES3_Metal takes 38 seconds and causes batch timeouts. Bug: angleproject:440536251 Change-Id: I53ad821bc4da4696609f9b8c0f5cbee1ed94dbd1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6874571 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Geoff Lang 86a8d11c 2025-08-11T16:45:39 Metal: Fix potential incorrect format used for texSubImage TextureMtl caches the most recent format used for a texture redefinition in mFormat. During subImage calls, this format may not be the same as the image being uploaded to. Pass ImageDefinitionMtl to these functions which reference mFormat, it contains the format of the image being updated. MacOS OpenGL is skipped because the driver generates errors in glCompressedTexImage2D. Bug: chromium:435683799 Change-Id: Idec6f71870c2d376cad3a5e3628b957009bdced9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6838878 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Quyen Le <lehoangquyen@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Liza Burakova 03068e0c 2025-08-20T17:36:22 [WebGPU] Implement direct copy for images. This CL implements CopyImage specifically in cases where the source is the same size and format as the destination. Bug: angleproject:438268609 Change-Id: Icf5f3685bb2f49874d996883c839515314f1c189 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6842317 Commit-Queue: Liza Burakova <liza@chromium.org> Reviewed-by: Matthew Denton <mpdenton@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Alex Dean 9bd6785d 2025-08-12T15:19:08 Revert "Tests: Skip CapturedTestCL to unblock vulkan-deps roll" This reverts commit 2a5ad67c883a28436d7399d73a2ccdb9ef53c641. Additionally, this modifies CapturedTestCL.cpp so there is no failure coming from the vulkan-deps roll. Bug: angleproject:438220619 Bug: angleproject:438195622 Change-Id: I6cf2d11d7ff77ce4513948b22b8c59d970c7810b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6842222 Reviewed-by: Austin Annestrand <a.annestrand@samsung.com> Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Cody Northrop 2a5ad67c 2025-08-12T10:23:10 Tests: Skip CapturedTestCL to unblock vulkan-deps roll Test: angle_end2end_tests --gtest_filter=CapturedTestCL.* Test: capture_tests.py Bug: angleproject:438195622 Change-Id: I9dd0f861ce4325c29305aa8de598f3434ec86ab3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6842935 Auto-Submit: Cody Northrop <cnorthrop@google.com> Commit-Queue: Geoff Lang <geofflang@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Charlie Lao 555b2328 2025-08-08T13:32:13 BindVertexBuffer should pick up buffer change in other context Buffer is modified in the first context and calling glBindVertexBuffer() of the same buffer on the second context should pick up the buffer changes made in first context. Bug: b/433331119 Change-Id: I694f66b38b11b87e0efa8d9b939f8384120823af Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6830125 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Charlie Lao <cclao@google.com>
Charlie Lao d63cff37 2025-08-06T13:31:02 Fix bug when rebind the same buffer not pick up the change Buffer is modified in one context and rebind the same buffer on the second context should pick up the buffer changes. Bug: b/433331119 Change-Id: I8085fe826c339692881f2d3d6515efb19bbc4a88 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6825767 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Yuly Novikov b778f1ce 2025-08-07T15:31:01 Balance test shards to 10 minutes Shards increased due to googletest roll: angle_end2end_tests on Win ASAN: 10 -> 14 angle_deqp_gles3_tests on Linux ASAN and TSAN: 8 -> 11 Drive-by shards increase for slowness which was not investigated: angle_end2end_tests: on Linux Intel and Windows and Linux NVIDIA: 2 -> 3 on Win Intel experiment (UHD 770, 2 processes): 3 -> 5 on Win Intel (UHD 630, 1 process): 4 -> 10 angle_restricted_trace_gold_tests on Linux Intel and Windows and Linux NVIDIA: 1 -> 3 on Win Intel UHD 770: 1 -> 4 on Win Intel UHD 630: 1 -> 5 angle_trace_perf_vulkan_tests on Win Intel UHD 770: 2 -> 4 on Win Intel UHD 630: 2 -> 3 Skip EGLDisplayTest.ContextLeakAfterTerminate on Linux Intel, which started failing with the new sharding. Bug: angleproject:428697844, angleproject:437259106 Change-Id: I3ba458aa7b68bddf9786bb9fcbc2a3ed7479556c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6827389 Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Charlie Lao 328a205f 2025-08-07T11:02:12 Revert "Fix bug when reattach the same buffer not pick up the change" This reverts commit a93f4c8d29c8d214e4823032e6e2c061d5dab1b1. Reason for revert: https://issues.chromium.org/437092065 Bug: b/433331119 Original change's description: > Fix bug when reattach the same buffer not pick up the change > > Added a test that the same buffer is used in two contexts. Buffer is > modified in one context and reattached the same buffer on the second > context's vertex array should pick up the buffer changes. This test > exposed the bug and it is fixed in this CL. > > Bug: b/433331119 > Change-Id: Ia5675581857a642fe9727f196326da9af43d52cf > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6821923 > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> > Commit-Queue: Charlie Lao <cclao@google.com> Bug: b/433331119 No-Presubmit: true No-Tree-Checks: true No-Try: true Change-Id: Iaa14b5dbbdb02c69bb060d5073072ec6ddd473ce Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6827998 Auto-Submit: Charlie Lao <cclao@google.com> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Charlie Lao a93f4c8d 2025-08-05T16:45:21 Fix bug when reattach the same buffer not pick up the change Added a test that the same buffer is used in two contexts. Buffer is modified in one context and reattached the same buffer on the second context's vertex array should pick up the buffer changes. This test exposed the bug and it is fixed in this CL. Bug: b/433331119 Change-Id: Ia5675581857a642fe9727f196326da9af43d52cf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6821923 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Charlie Lao <cclao@google.com>
Igor Nazarov 3e52318c 2025-06-26T10:46:00 Vulkan: Ensure always using resolved Window Surface size `WindowSurfaceVk::getWidth/Height()` methods return cached, previously resolved Surface size. Using these methods while current Window Surface size is unresolved may return stale values, causing undesired behavior. Appropriate ASSERTs were added to these methods to prevent such usage. Added ASSERTs revealed few places with incorrect usage: - In `Context::makeCurrent()` to set initial viewport or for capture. - In `IsPartialBlit()` and `ValidateReadPixelsBase()` validations. - In `SerializeFramebufferAttachment()` during capture. Rest of the code was thoroughly checked if it is possible to call `WindowSurfaceVk::getWidth/Height()` when size is unresolved. All other places always call these methods after framebuffer state synchronization, which acquires swapchain images and resolves the surface size. Added `ensureSizeResolved()` method that is called during validation and in the `SerializeFramebufferAttachment()` method. It is possible to use existing `Framebuffer::syncState()` method as alternative, but this solution was discarded since it may potentially interfere with `State::syncDirtyObjects()` method. The `Surface::getUserSize()` replaces old methods as optimization, to prevent calling relatively expensive method twice from `Context::makeCurrent()` to get width and height of the `drawSurface`. Test: angle_trace_tests --gtest_filter=EGLSurfaceTest.ResizeBeforeMakeCurrent/* Test: angle_trace_tests --gtest_filter=EGLSurfaceTest.ResizeBeforeMakeCurrentPostSizeQuery/* Test: angle_trace_tests --gtest_filter=EGLSurfaceTest.ResizeAndReadPixelsRobustANGLE/* Test: angle_trace_tests --gtest_filter=EGLSurfaceTest.ResizeAndBlitFramebufferANGLE/* Bug: angleproject:397848903 Change-Id: I082e13d0b8db5fd7d08ff25b102df1f283e1256d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6792928 Commit-Queue: Igor Nazarov <i.nazarov@samsung.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Charlie Lao 09bbe914 2025-07-28T12:53:53 Add test for mapBuffer and disable/enable attrib interaction Added a test that mapBuffer while attribute is disabled, the draw call should succeed. If attribute is then enabled, the next draw call should fail with GL_INVALID_OPERATION error. Bug: b/433331119 Change-Id: I61d9ff16b0d485309c58c2fe2939c3de8b25864a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6792268 Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com>
Tingwei Guo 4f4eab29 2025-06-30T14:58:28 Reset index buffer offset between indirect GL_LINE_LOOP draws In two consecutive glDrawArraysIndirect with GL_LINE_LOOP mode, and bound to a different Indirect Buffer, the variable value captured through TransformFeedback is the same as the first result when the second DrawArraysIndirect. When calling DrawArraysIndirect the second time, DIRTY_BIT_INDEX_BUFFER should be set to dirty so that it re-gets INDEX BUFFER to get the correct result. Bug: angleproject:428561247 Change-Id: I7f4ebb53e20cf8e362e67679b45185b8b68c56ef Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6687309 Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com> Auto-Submit: Tingwei Guo <tingwei.guo@arm.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi d38531e8 2025-07-23T09:39:11 Fix extension check for xfb mode validation With geometry and tessellation shaders, it's possible to use different primitive modes between transform feedback and draw, as long as they are from the same class. The code accidentally allowed this only if both extensions are supported, but it should be allowed if either is. Bug: angleproject:428561247 Change-Id: Ia18d4ac15a3d0739ce18dc0e1f3d3f0b1aea621c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6780744 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Tim Van Patten cf4c8c2a 2025-07-10T15:50:36 Add max sampler count to maxUniformLocations OpenGL ES 3.2 Spec: > ## 7.6. UNIFORM VARIABLES > > When a program is linked successfully, all active uniforms, except for > atomic counters, belonging to the program object’s default uniform > block are initialized as defined by the version of the OpenGL ES > Shading Language used to compile the program. A successful link will > also generate a location for each active uniform in the default > uniform block which doesn’t already have an explicit location defined > in the shader. The generated locations will never take the location of > a uniform with an explicit location defined in the shader, even if that > uniform is determined to be inactive. The values of active uniforms in > the default uniform block can be changed using this location and the > appropriate Uniform* or ProgramUniform* command (see section 7.6.1). > These generated locations are invalidated and new ones assigned after > each successful re-link. The explicitly defined locations and the > generated locations must be in the range of 0 to the value of > MAX_UNIFORM_LOCATIONS minus one. Currently, ANGLE sets the mNativeCaps.maxUniformLocations to the maximum number of supported uniform variables (maxUniformVectors). However, samplers are also uniforms and consume uniform locations during shader linking. This causes shader compilation to fail for context versions 3.1+ if a shader uses both the maximum number of uniform variables and maximum number of samplers because the number of uniform locations is exceeded. This specific edge case is being tested by the end2end test GLSLTest.VerifyMaxVertexUniformVectorsWithSamplers. Unfortunately, that test is only instantiated for GLES 2.0 and 3.0 and ANGLE's shader linker only validates the number of supported uniform locations are not exceeded for GLES 3.1+, so that error path is not being validated. 1. Include both the maximum number of supported uniform variables and maximum number of samplers whe calculating the supported maximum number of uniform locations. 2. Instantiate GLSLTest.VerifyMaxVertexUniformVectorsWithSamplers for GLES 2.0, 3.0, 3.1, and 3.2 so the edge cases are tested for all supported GLES versions. Bug: b/279980674 Test: angle_end2end_tests --gtest_filter=GLSLTest.VerifyMaxVertexUniformVectorsWithSamplers* Change-Id: I8ad1f4d2a040a189625d516b54bf2f79ef218edc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6724940 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Igor Nazarov 03676f3f 2025-07-22T15:34:18 Tests: Add MixedMultisampleSingleSampledDraw test Test: angle_trace_tests --gtest_filter=MultisampledRenderToTextureES3Test.MixedMultisampleSingleSampledDraw Bug: angleproject:433462527 Change-Id: I87b56452bd5ad1d7841341ddd7af9479fe966f6d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6773431 Commit-Queue: Igor Nazarov <i.nazarov@samsung.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Neil Zhang 364ad1c4 2025-07-15T12:47:55 Enable test ImageTestES3.SourceYUVAHBTargetExternalCopySrc on Pixel 6 This issue been fixed by patch: http://crrev.com/c/6679988, when sampling YUV formats, angle use texture() instead of texelFetch(), and should adjust texture coordinates by + 0.5 Bug: angleproject:395520107 Change-Id: I22166b28c5ee2949d5e9570137e110edc34fffaa Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6738562 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Auto-Submit: Neil Zhang <Neil.Zhang@arm.com>
Shufen Ma d3119b0a 2025-07-07T09:35:04 Relax shader interface matching for program link ES spec 3.2 section 7.4.1 shader interface matching: With separable program objects, interfaces between shader stages may involve the outputs from one program object and the inputs from a second program object. For such interfaces, it is not possible to detect mismatches at link time, because the programs are linked separately. Before this CL, we are applying the the number of output varying and the number of input varyings must match requirement to both glProgram object as well as glPipelineProgram object which is incorrect. This CL removes such check from Program::linkVaryings. A new function LinkValidateInOutNumberMatching is added to handle the this program pipeline specific spec requirement. Bug: angleproject:424050949 Change-Id: I0d2e4360b37d175b2b998e341f15815915771413 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6704827 Reviewed-by: Charlie Lao <cclao@google.com> Auto-Submit: Shufen Ma <Shufen.Ma@arm.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Mohan Maiya 3b90872b 2025-07-06T09:02:27 Vulkan: Selectively invalidate uniform buffers Call invalidateCurrentShaderUniformBuffers iff current program has active uniform buffers. Also add DIRTY_BIT_UNIFORM_BUFFERS bit to mNew*CommandBufferDirtyBits Bug: angleproject:426412564 Bug: angleproject:429585235 Tests: UniformBufferTest31.UniformBufferBinding*WithMultiplePrograms* Change-Id: I88c37c8317205aecad638553846ffe3beff87f11 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6706537 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: mohan maiya <m.maiya@samsung.com> Reviewed-by: Charlie Lao <cclao@google.com>
Mohan Maiya 30a1cbc9 2025-07-03T13:00:05 Vulkan: Separate out descriptor set for uniform buffers Bug: angleproject:426412564 Change-Id: Icdbb1e634fc543714d1e3b9cdba0530d400cb153 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6705153 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: mohan maiya <m.maiya@samsung.com> Reviewed-by: Charlie Lao <cclao@google.com>
Yuly Novikov 619e8bf8 2025-07-03T15:36:30 Skip MultisampleDepthStencilResolveSeparately on Pixel 6 Already skipped on Pixel 4. Fails on Pixel 6 Android 14. Bug: angleproject:42266019 Change-Id: I5e1dfd805b48d59c68e28e07a2d6e4f58653c27c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6702483 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Shahbaz Youssefi d59dd3e4 2025-06-23T10:17:46 Unskip passing tests The spec change to varying packing in Vulkan is reverted and so is the SPIR-V validation change that enforced it. Bug: angleproject:404418769 Change-Id: I6eb82b8285121f65a4ac071ad6ede106dfe07988 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6661620 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Yuxin Hu 5220e634 2025-06-16T11:14:22 Fix glCopyImageSubData validation check part 2 For compressed texture, we also need to check if the copy subregion starting points (offset) are aligned with the compressed block. This change also moves *FillsEntireMip check to the ValidateCompressedRegion() function, as it is easier to do a per-dimension check. Bug: b/419048313 Bug: angleproject:42264179 Bug: angleproject:42265887 Change-Id: I0f415e575bbc77bdf5178e2b5fc1260c43e7de4b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6648198 Commit-Queue: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Alexey Knyazev <lexa.knyazev@gmail.com>
Shufen Ma db70fca6 2025-06-11T16:59:36 Add a separable program test ES 3.2 spec section 7.4.1 Shader Interface Matching is vague about the case when a program has more than one shader whose interfaces do not match and the program is set to GL_PROGRAM_SEPARABLE by glProgramParameteri API. Angle implementation thinks it is not right and the program is not linked. But since the shaders are attached to one program, the program should have enough information to link. Bug: angleproject:424050949 Change-Id: Icb9c8cbff906671beb6679309795f5c1b3acec6f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6636452 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Shufen Ma <Shufen.Ma@arm.com>
Matthew Denton 005336e4 2025-06-11T17:17:16 WGPU: Basic texture cubes Allows uploading to texture cube faces and sampling from them in shaders using samplerCube. Bug: angleproject:420782526 Change-Id: I45d4370fcc418f39afb225114d13632a78c7c200 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6593999 Reviewed-by: Liza Burakova <liza@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Matthew Denton <mpdenton@chromium.org>
Jisun Lee d8c15499 2025-05-27T03:46:24 Vulkan: Clear depth and stencil unresolve separately To take into account two situations. 1. LoadOp for depth and stencil attachments are set differently. 2. depth and stencil unresolves could be different between the previous render pass and the current render pass. Bug: angleproject:42266019 Change-Id: I9e069b3972f86abb84eee6280919e6bba2901225 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6590197 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Amirali Abdolrashidi c39f4a5c 2025-06-05T15:35:06 Vulkan: Update border color assignment for stencil In texture border clamp, if the border color is assigned together stencil mode (both using glTexParameter()), its red component is used to set up a border color to be used in each backend: * (Set up in AdjustBorderColor()) In the Vulkan backend, this is used when updating SamplerDesc, which is then used later to set up the custom border color: * (VkSamplerCustomBorderColorCreateInfoEXT) According to the spec, in case of undefined format, integer border color, and stencil image, the implementation is required to use either the first or the second component of the custom color, although it is recommended to use the first. However, at the moment, only the first component is being populated, while using the second component is also valid. * Added feature: usesSecondComponentForStencilBorderColor * Added bit to SamplerDesc: mUsesSecondComponentForStencil * It is set based on the feature flag above and the texture format. * When setting the custom border color info, the second component will be used based on the above flag. * Added test suites to test this on ES31 and ES32: TextureBorderClampTestES3*.CustomBorderColorWithStencil* * Updated capture params for glTexParameterIuivEXT(). * Suppressed the ES32 version for the following: * P4 * Linux/NVIDIA (due to out-of-date driver) Bug: b/390710636 Change-Id: Ie50c19e8ea66da40dc8b8db49d7e622a582637a5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6626416 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Yuxin Hu 1e613fec 2025-05-27T16:59:26 Compiler: sort uniforms by precision This change reoreders the AST sequences so that uniform declarations with lower precisions are places in front of uniform declarations with higher precisions. This is to prepare for the upcoming change that converts uniforms declared with mediump or lowp to 16-bit and pack them to 32-bit integeter using packHalf2x16(). Bug: b/405795981 Change-Id: I5e1e293399dc8b51b9a6e83115f95beb0c4a7b1b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6594255 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Tim Van Patten 7644c9db 2025-06-02T11:44:38 test: Remove EGLSingleBufferTest.VerifyMutableRenderBufferKHR The test is enforcing that specifying/querying EGL_SINGLE_BUFFER requires the extension EGL_KHR_mutable_render_buffer. However, EGL_RENDER_BUFFER/EGL_SINGLE_BUFFER were introduced in EGL 1.4, removing any extension requirements for devices that support EGL 1.4+. 3.5 Rendering Surfaces 3.5.1 Creating On-Screen Rendering Surfaces ... EGL_RENDER_BUFFER specifies which buffer should be used by default for client API rendering to the window, as described in section 2.2.2. If its value is EGL_SINGLE_BUFFER, then client APIs should render directly into the visible window. If its value is EGL_BACK_BUFFER, then all client APIs should render into the back buffer. The default value of EGL_RENDER_BUFFER is EGL_BACK_- BUFFER The extension itself requires a minimum of EGL 1.2, meaning only versions 1.2 and 1.3 require EGL_KHR_mutable_render_buffer to use EGL_SINGLE_BUFFER. Remove the test since it doesn't gives us any information anymore since we always expose EGL 1.5 anyway. Bug: b/417459061 Change-Id: I060e196600e6ece6179a164d9125a8b98c0d8498 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6613123 Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
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>
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>
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>
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>
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>
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>
Cody Northrop 73dabb85 2025-04-29T12:39:12 Add end2end test for AdvancedSyncVertexArray This is just a port of the upstream test: KHR-GLES31.core.shader_image_load_store.advanced-sync-vertexArray Test: ComputeShaderTest.AdvancedSyncVertexArray Bug: b/416573908 Change-Id: Id04af0a7efa667b7afc8061a9ccaa044e709fe1d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6496293 Auto-Submit: Cody Northrop <cnorthrop@google.com> Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Charlie Lao <cclao@google.com>
Robic Sun b373892b 2025-04-26T20:59:07 Add test using array of array varyings in tessellation shaders For per-vertex variables in the Tess shader that support two-dimensional arrays, when calling GetResourceName, the string-like tt[0][0] should be returned instead of tt[0]. Bug: angleproject:413447006 Change-Id: Iafd316495ca3c254f9424d84cab71c8385b11e03 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6490616 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Auto-Submit: Robic Sun <Robic.Sun@arm.com>
Aurora Zhang ef61ff8d 2025-04-24T16:18:34 Improve the judgement of texture and attachment completeness When the GL_TEXTURE_MIN_FILTER is not mipmap, that is GL_LINEAR or GL_NEAREST, ANGLE should allow the texture's base level greater than the max level. The spec does not consider this situation as texture incomplete. Also, attachment completeness should ignore mipmap completeness when selected level is the base level. Hence, increase a constriction in CheckAttachmentCompleteness and end2end test Texture2DBaseMaxTestES3.Fuzz545ImmutableTexRenderFeedback. Bug: angleproject:42267266 Change-Id: I6a41f7d0716a7c9506b82390e2c0b083ab1626a6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6197735 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Auto-Submit: Aurora Zhang <Aurora.Zhang@arm.com>
Shahbaz Youssefi 6f9f343a 2025-04-16T14:45:33 Reland "Vulkan: Prune superseded updates during host-image-copy" This is a reland of commit f8a8adf63c5834a725d1bd752acc6d63c3f45c05 Original change's description: > Vulkan: Prune superseded updates during host-image-copy > > Bug: angleproject:42266771 > Change-Id: I7aa8e85720a54537389df615b575ddfa9951770d > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6462475 > Reviewed-by: Yuxin Hu <yuxinhu@google.com> > Reviewed-by: Cody Northrop <cnorthrop@google.com> > Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> > Commit-Queue: Cody Northrop <cnorthrop@google.com> Bug: angleproject:42266771 Change-Id: I95e6f1d2421327a6394e627f03ef5b4cddf4a1e1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6480011 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Mavis Deng 3c554454 2025-04-03T16:55:11 Incorrect BUFFER_DATA_SIZE and UNIFORM_OFFSET for ACB array of array The buffer size and offset calculation for the atomic counter buffer defined as an array of arrays is incorrect. The issue occurs with the following declaration: layout (binding=0, offset=0) uniform atomic_uint ac[2][2]; Observed Results: GL_BUFFER_DATA_SIZE -> 8; GL_UNIFORM_OFFSET of "ac[1][0]" -> 0; Expected Results: GL_BUFFER_DATA_SIZE -> 16; GL_UNIFORM_OFFSET of "ac[1][0]" -> 8; Bug: angleproject:407564097 Change-Id: Ibf99ccd5412629f0feb74a9a34337b82894e74c6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6429625 Auto-Submit: Mavis Deng <mavis.deng@arm.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Alex abe3c63a 2025-04-16T15:30:10 Add CubeMapBug2 test to trigger Angle bug in validation Add one extra texture sampler in fragment shader and adjust texture binding unit for textures Bug: angleproject:401546698 Change-Id: Ib5c3482a243075a98f1ce1b1f4d4cc9884f5f980 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6458622 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Tingwei Guo 3f88a505 2025-04-03T17:29:20 GenerateMipmap encode and decode sRGB when GL_SKIP_DECODE_EXT is set According to the spec, if TEXTURE_SRGB_DECODE_EXT is set before GenerateMipmap for a texture with format sRGB, mipmap generation should skips the encode and decode steps during mipmap generation, matching the mipmap generation for a non-sRGB texture. Bug: angleproject:406829410 Change-Id: Icea8c27a1ab2f20e9fd6c8d79187c0c5cfe8e789 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6428506 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Tingwei Guo <tingwei.guo@arm.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: mohan maiya <m.maiya@samsung.com>
Shahbaz Youssefi 50a4ad19 2025-04-22T09:29:17 Revert "Vulkan: Prune superseded updates during host-image-copy" This reverts commit f8a8adf63c5834a725d1bd752acc6d63c3f45c05. Reason for revert: Has a bug in the calculation of image layers whose updates should be dropped. Bug: angleproject:42266771 Original change's description: > Vulkan: Prune superseded updates during host-image-copy > > Bug: angleproject:42266771 > Change-Id: I7aa8e85720a54537389df615b575ddfa9951770d > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6462475 > Reviewed-by: Yuxin Hu <yuxinhu@google.com> > Reviewed-by: Cody Northrop <cnorthrop@google.com> > Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> > Commit-Queue: Cody Northrop <cnorthrop@google.com> Bug: angleproject:42266771 Change-Id: I2b992c8598f58c40386338ade3cf59ffdb03abd5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6480413 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Shahbaz Youssefi f8a8adf6 2025-04-16T14:45:33 Vulkan: Prune superseded updates during host-image-copy Bug: angleproject:42266771 Change-Id: I7aa8e85720a54537389df615b575ddfa9951770d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6462475 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Yuxin Hu b86d7d8f 2025-04-14T15:37:47 Android: Add Galaxy S24 support (Xclipse) Bug: b/410630704 Change-Id: I97fd649de4278f447893a01fbe5ceeee02dd100e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6456664 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Auto-Submit: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Shahbaz Youssefi ccabbbca 2025-04-16T23:52:32 Suppress flaky test on Nvidia/D3D Bug: angleproject:411157348 Change-Id: I08542c9ca0d332ab2f88a3174ab42e08d9a21f31 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6466885 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi b64d380e 2025-04-15T00:54:22 Vulkan: Ghost texture's image backing if overwritten If the texture's image is in use by the GPU but is overwritten completely, this change releases the old image and creates a fresh one. If the texture was used in a render pass, this avoids breaking the render pass. Otherwise, it allows the new image to be initialized with VK_EXT_host_image_copy functionality. In the very least, an unnecessary barrier is avoided. As a targeted optimization, this functionality is limited to non-array 2D color textures which are known to benefit from this ghosting in applications. Other texture types can be easily added, but need lots of tests to be added. Bug: angleproject:42265356 Change-Id: I18a7587599e36f9f70109264ddc1003b24b8b2df Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6456345 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 838c6596 2025-04-14T16:46:42 Add EGL image tests where source texture is modified Covering the following cases: * The source texture is changed with glTexImage2D. In this case, the image is orphaned and the siblings point to the old image. * The source texture is used in a compute shader. In Vulkan, the internal image backing is recreated, and siblings should continue to track the new image (which they don't, due to a bug). * The source texture is completely overwritten. This is in anticipation of a follow up change in the Vulkan backend that similarly may recreate the backing image of the texture (and should not be affected by the same bug). * The source texture's base level is completely overwritten while the image is in use, and glGenerateMipmap is called. This is also in anticipation of another follow up change in the Vulkan backend that may recreate the backing image. Bug: angleproject:42265356 Bug: angleproject:410584007 Change-Id: I2d5f7f668d77ec6940d34bdf80eb7c885fc6a59d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6454132 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Yuxiang Qian a5d750fb 2025-03-25T14:24:19 Add test to check EGL_KHR_platform_android Add an end2end test to check that eglGetPlatformDisplayEXT can use EGL_PLATFORM_ANDROID_KHR to get display. Also, to follow the spec, ValidateGetPlatformDisplayCommon should set EGL_BAD_PARAMETER for unsupported platform. Bug: angleproject:404581995 Change-Id: I20a962adb2dab4434141417b11c959924aff1597 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6369995 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Amirali Abdolrashidi 4f450985 2025-04-09T14:34:01 Skip 3D texture unpack test on Mac * Skipped the following test on the Mac bots (for AMD): Texture3DTestES3.PixelUnpackParamsChangeTexImage/ES3_OpenGL * Example of error on the bots: https://ci.chromium.org/ui/p/angle/builders/ci/mac-exp-test/2475 Bug: angleproject:406566447 Change-Id: Iea584dd8526ac1773c6a0bd22ea8ad3e1ef05b14 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6444358 Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Cody Northrop 3207b535 2025-04-08T12:50:19 Tests: Skip new denorm test on Pixel 6 Test: GLSLTest_ES3.DenormFloatsToIntValues Bug: b/406827038 Change-Id: I9202e750dc5f80f1ed0d9c2153cdc2c73b72c1d2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6441469 Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Auto-Submit: Cody Northrop <cnorthrop@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Yuly Novikov 8424dd22 2025-04-08T13:39:59 Suppress end2end test on iOS Metal PixelLocalStorageTest.FlushFinishSync added in https://chromium-review.googlesource.com/c/angle/angle/+/6427324 Bug: angleproject:40096838 Change-Id: Ibd357a357823e757c71c0d4527db774f721b28f6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6440285 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Cody Northrop d27a1fd0 2025-04-03T19:59:20 Compiler: Allow denorm float values in the lexer This adds an option to preserve denorm values in the lexer, skipping the explicit zero conversions for below range floats. There are applications in the wild that expect to be able to use denorm float values. They are typically immediately converted to integer values, not used in floating point operations. The option is only enabled for Vulkan backends. Test: FloatLexTest, DenormFloatsToIntValues, app traces Bug: b/406827038 Change-Id: Iab5a1a69a540b78ccbce8ea90b532d2d4976e29e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6432237 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Igor Nazarov f798b0d2 2025-04-04T08:17:57 Vulkan: Remove enablePreRotateSurfaces feature Removed to simplify the code and to avoid the problem for which `presentSubOptimalReturnedOnTransformChange` feature was added. Platforms without the per-rotation support always have `VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR` as the `currentTransform`, so the code will perform the same as when the feature was disabled. Add `warmUpPreRotatePipelineVariations` to explicitly control per-rotation pipeline warm up. Bug: angleproject:42262166 Change-Id: I44f6c221c11105f01f62f62622987b1955bc58aa Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6433586 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
Le Hoang Quyen 0f9feb49 2025-03-15T23:51:04 Metal: Use render passes for B2T PBO copies. This would make it possible to avoid setting ShaderWrite usage to all textures in future. Bug: chromium:392521084 Change-Id: I25145f3578589c71ee469df08162d3a3f17c8cbe Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6356129 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Quyen Le <lehoangquyen@chromium.org>
Yuly Novikov b1eecd41 2025-03-28T16:54:49 Skip flaky BlitFramebufferTest on Linux Intel GL Bug: angleproject:404958319 Change-Id: I287723feeb7ba3a526a9b4eab91ef53d16f436bd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6409092 Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Robic Sun 7fb1ac40 2025-03-10T20:28:56 Support EGLImageTargetTexture2DOES + GenerateMipmap According to the spec, If an application adds mipmap levels to a texture originally created with EGLImageTargetTexture2D, OpenGL will allocate new memory for the updated texture, copying existing data, including from the EGLImage source. So, relevant support is added. Bug: angleproject:405840226 Change-Id: I4495df2d8ee1e18b4482808a290dcd861ef85b77 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6335305 Auto-Submit: Robic Sun <Robic.Sun@arm.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Charlie Lao <cclao@google.com>
Igor Nazarov 081934f6 2025-03-12T15:22:31 Vulkan: Add avoidInvisibleWindowSwapchainRecreate feature There is a bug on some NVIDIA drivers on Linux X11 when `vkAcquireNextImageKHR()` constantly returns `VK_ERROR_OUT_OF_DATE_KHR` if recreate the swapchain while window is not visible. If not recreate the swapchain after window resize - nothing happens, acquire and present works without errors. But if recreate the swpahchain to the `VkSurfaceCapabilitiesKHR::currentExtent` the next `vkAcquireNextImageKHR()` will return `VK_ERROR_OUT_OF_DATE_KHR`. ANGLE will retry to recreate the swapchain one more time and fail the call. Enabling the "avoidInvisibleWindowSwapchainRecreate" feature will avoid swapchain recreation when window size changes while it is not visible. Test: angle_end2end_tests --gtest_filter=EGLSurfaceTest.ResizeInvisibleWindow/* Bug: angleproject:397848903 Bug: angleproject:42264022 Bug: angleproject:42263074 Change-Id: I48588bf467d15c0e84b923092e06a42c22084dcc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6348739 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
Igor Nazarov caf14998 2025-02-25T17:28:05 Vulkan: Fix window surface resize and size query Added `mSizeState` enum member. When it is not `Resolved`, surface size is not yet resolved and may change any time in response to native window resize. Otherwise, surface size is resolved and will not change until next swap. Updated `getUserWidth()`/`getUserHeight()` methods. They return current window size when surface size is not resolved, or current surface size, otherwise. Window size is queried either by `getCurrentWindowSize()`, when surface is sized by swapchain, or by querying vulkan surface capabilities. The "perFrameWindowSizeQuery" feature controls when `mSizeState` is updated. Initially it is not resolved. Marked as not resolved in `invalidateSwapchain()`, and in `deferAcquireNextImage()` when the feature is enabled. It is marked as resolved after swapchain is created when feature is disabled, or in `AcquireNextImageUnlocked()` function after acquire next image, otherwise. Enabled some tests that were previously failing. Replaced old resize tests with new versions. Test: angle_end2end_tests --gtest_filter=EGLSurfaceTest.Resize*/* Bug: angleproject:397848903 Bug: angleproject:373659619 Bug: angleproject:153329980 Bug: angleproject:42266013 Bug: angleproject:42265843 Bug: angleproject:42265529 Bug: angleproject:42264022 Bug: angleproject:42263074 Bug: angleproject:42261800 Bug: angleproject:40096826 Change-Id: I3ad836960a68229fab6c94624022f1a0aaf2c3e5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6300645 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Igor Nazarov <i.nazarov@samsung.com> Reviewed-by: Charlie Lao <cclao@google.com>
Igor Nazarov e265a38d 2025-03-26T09:32:47 Tests: Update ChangeFBOSizeWithNoAttachments test Replace `GL_DRAW_FRAMEBUFFER` with `GL_FRAMEBUFFER`. This should not make any difference, since test does not use the read framebuffer, but it causes failure on Intel GPU on Window. Test works as expected if bind default framebuffer to the `GL_READ_FRAMEBUFFER` binding. GL beck-end internally uses `GL_FRAMEBUFFER` in many places. Correct draw and read framebuffers are restored at draw time. Note, that syncing `DIRTY_BIT_READ_FRAMEBUFFER_BINDING ` during draw is unnecessary and may even cause bugs (because `DIRTY_OBJECT_READ_FRAMEBUFFER` is not also synchronized). This may be fixed in future CL, which will cause this test to fail even if keep it as-is. It is because read framebuffer binding will be left in dirty state after internal `GL_FRAMEBUFFER` bindings. Test: angle_end2end_tests --gtest_filter=FramebufferTest_ES31.ChangeFBOSizeWithNoAttachments/* Bug: angleproject:42266132 Change-Id: Ic6b7cdc2f0c94905f8387624d514a1d18e5b2572 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6396635 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Igor Nazarov <i.nazarov@samsung.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Yuly Novikov 253ceef5 2025-03-27T10:38:17 Skip PixelLocalStorageTest.TextureCubeFaces on iOS Metal Fails since it was added https://chromium-review.googlesource.com/c/angle/angle/+/6394235 https://ci.chromium.org/ui/p/chromium/builders/ci/ios-angle-intel/75904/overview Bug: angleproject:40096838 Change-Id: I850ca3c9abe9548c0ff04ec3dbec7a660ea4d4ea Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6400617 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Yuly Novikov 3bedb294 2025-03-26T13:04:52 Skip flaky BlitSmallColorLargeDepthAttachments on Mac Intel GL Bug: angleproject:404959032 Change-Id: Idf972e36a0f10b14e89df54fd94572e2c6cede1e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6394382 Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Liza Burakova 5024ccef 2025-03-25T11:37:19 WebGPU: Emulate line loops with primitive restarts Bug: angleproject:383356846 Change-Id: Iab1d658cb3c5e32f88241f6757d1c2e5a84bf8ec Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6297524 Commit-Queue: Liza Burakova <liza@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Yuly Novikov 316c99e1 2025-03-24T19:42:03 Suppress 3 PixelLocalStorageTest on iOS Metal PixelLocalStorageTest.ColorAttachment0Workaround PixelLocalStorageTest.CopyTexSubImage PixelLocalStorageTest.RasterizerDiscard Bug: angleproject:40096838 Change-Id: I92d403d67495907042b37ffc5a689eea8b18b1da Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6387040 Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Yuly Novikov 22744d7e 2025-03-24T18:29:29 Skip GLSLTest_ES3.MaxVaryingWithFeedbackAndGLline on iOS Metal Bug: angleproject:375244081 Change-Id: Id29dc201ff93f880c4de104e3194d7b4c51b118f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6388615 Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Jiaqi Li cbe26d0c 2025-03-04T16:56:26 Wrong texture coordinates sent to VULKAN for blit In ANGLE's Vulkan backend, complex blit operations are implemented using draw calls that utilize samplers and shaders, with texture coordinates passed via push constants. In this test case, texture coordinates are calculated based on the effective framebuffer size, which is determined by the smallest attachment dimensions. However, the draw call is executed on an attachment with its original size, leading to unexpected texture coordinates and incorrect sampling results. Use ReadImageExtent size instead of framebuffer effective size to calculate the sample texture coordinate. Bug: angleproject:400584608 Change-Id: I06f0a1e48463f36aef7189f772515561d2e752d1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6321348 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Jiaqi Li <Jiaqi.Li@arm.com> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi c0001bcf 2025-03-21T10:09:26 Skip flaky test on SwiftShader Bug: angleproject:405286904 Change-Id: Id96b0603ccdd0237a06d334b7530974d2cff3d40 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6382799 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 fca3fed3 2025-03-18T11:06:10 Manual roll vulkan-deps from 552ac332629b to bf9998679aee (25 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/552ac332629b..bf9998679aee Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/0051b92b6fff2fd3dbc99b7dae316fa51a7f4767..8842cf92e3de290f275c46d55cbfe42b7d0775a6 https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+log/9e470ef0f95d6923fa19dc5c5dc48c1442eb5a8b..ba1359d203e544bd458373ba249a47c44e97b071 https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader/+log/8491f31d36a8c642e588220b89729129721fec31..54cbefd25dbcaeb2bb03da207afce6cad7fb5dd1 https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/74a6b7dc828078cf2f1524d3947f65a29a1562e9..b2c8bd421aa5c1502fd56c3c07fb2831a8ceb882 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC angle-team@google.com,syoussefi@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: angleproject:404418769 Change-Id: I359e903e2d061b7bbde6b18d234d8927d2cca56c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6368274 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Roman Lavrov <romanl@google.com>
Chris Dalton fbb1829d 2024-12-08T01:46:39 Allow glClear while PLS is active It just makes sure to not clear any draw buffers that may be in use for pixel local storage. Bug: angleproject:402810076 Bug: angleproject:40096838 Bug: angleproject:42266150 Change-Id: I60a573d5e9e5dbadce12d79e3f4b6fc57747e655 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6312336 Reviewed-by: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Chris Dalton <chris@rive.app>
Cody Northrop db48967f 2025-03-05T09:07:10 Reland "Add GL_BGRA_EXT as a sized renderable format" This reverts commit 4bfb9da6f98b3e28905cc759a77bff750dfe3ff7. Reason for revert: More mapping fixes for GL backend Original change's description: > Revert "Reland "Add GL_BGRA_EXT as a sized renderable format"" > > This reverts commit 8f2fbbd1a0d16471596afad57c88f950a1ee3032. > > Reason for revert: http://anglebug.com/399913714 > > Original change's description: > > Reland "Add GL_BGRA_EXT as a sized renderable format" > > > > This reverts commit 22dfe435daa7c680c07bb8d4f1d98ab765e60ad0. > > > > Reason for revert: Fixed mapping back to BGRA_EXT for GL backend > > > > Original change's description: > > > Revert "Add GL_BGRA_EXT as a sized renderable format" > > > > > > This reverts commit 80093a7d8f850c3ab551ddb4972c2f1f27511433. > > > > > > Reason for revert: suspect for blocking rolling ANGLE into Chroimum > > > https://chromium-review.googlesource.com/c/chromium/src/+/6283973 > > > https://ci.chromium.org/ui/p/chromium/builders/try/chromeos-amd64-generic-rel-gtest/372754/overview > > > > > > Original change's description: > > > > Add GL_BGRA_EXT as a sized renderable format > > > > > > > > dEQP tests were updated to cover GL_BGRA_EXT as a sized renderable > > > > format. It was apparently always supposed to be, based on the > > > > wording of the spec. > > > > > > > > This CL adds that support and updates expectations, along with a few > > > > extra tests. > > > > > > > > Includes contributions from Robic.Sun@arm.com. > > > > > > > > Test: angle_end2end_tests, angle_deqp_*_tests > > > > Bug: b/42267264 > > > > Bug: angleproject:394384906 > > > > Change-Id: Ia10bcd61f66c5d99a3d27a2cfd6008c991ddcaa7 > > > > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6235444 > > > > Reviewed-by: Geoff Lang <geofflang@chromium.org> > > > > Commit-Queue: Cody Northrop <cnorthrop@google.com> > > > > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > > > > > > Bug: b/42267264 > > > Bug: angleproject:394384906 > > > Change-Id: I64572361cfed33b4ea17eabf278f580471d045c2 > > > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6285628 > > > Auto-Submit: Yuly Novikov <ynovikov@chromium.org> > > > Commit-Queue: Yuly Novikov <ynovikov@chromium.org> > > > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> > > > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > > > > Bug: b/42267264 > > Bug: angleproject:394384906 > > Change-Id: I1bd9df904d93fd54286cbfce53fe89db89e842b9 > > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6310699 > > Commit-Queue: Cody Northrop <cnorthrop@google.com> > > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > > Reviewed-by: Geoff Lang <geofflang@chromium.org> > > Bug: b/42267264 > Bug: angleproject:394384906 > Bug: angleproject:399913714 > Change-Id: I9f79f39a6d9cba3b23c261005bc3e012d70cd1cf > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6312977 > Auto-Submit: Cody Northrop <cnorthrop@google.com> > Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> > Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Bug: b/42267264 Bug: angleproject:394384906 Bug: angleproject:399913714 Change-Id: Ifc98fcbb0883dc4a55ad358825e9c1935fa26eaa Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6330036 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Igor Nazarov 9f9a0dfd 2025-03-06T21:20:40 Fix framebuffer attachment format sizes query for Surface Surface as framebuffer attachment is always specified and should return valid format sizes even if extents is empty. At the same time, accessing Window surface sizes without previously acquiring next swapchain image (Vulkan backend) may result in outdated values. In other words, without framebuffer synchronization. This change not only fixes the bugs, but also removes dependency on surface size. Test: angle_end2end_tests --gtest_filter=PbufferTest.ZeroSizedSurfaceFormatQuery/* Bug: angleproject:402532204 Bug: angleproject:397848903 Bug: angleproject:42261031 Change-Id: I736a484caf99e0ff306c244ca13e1eb181222e64 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6329487 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Roman Lavrov 235c0be1 2025-03-07T13:48:48 Fix program cache on relink with glTransformFeedbackVaryings glTransformFeedbackVaryings updates mState.mTransformFeedbackVaryingNames, which was then saved to cache during a post-link that might happen after this was executed. Change ::serialize() to save mState.mExecutable->mTransformFeedbackVaryingNames instead, as according to Shabi this is the intended behavior. Also do the same for isSeparable and transformFeedbackBufferMode. Adds a repro where this led to tfvaryings getting loaded from cache into a new program that didn't specify tfvaryings. This resolves the interaction between these tests executed sequentially (such as with --bot-mode): GLSLTest_ES3.UnsuccessfulRelinkWithBindAttribLocation/ES3_Vulkan MultithreadingTest.ProgramLinkAndBind/ES3_Vulkan Bug: angleproject:401554049 Bug: angleproject:383164783 Change-Id: I66c599bc68c537e0cd47fbb99dd61d1d7a8a2824 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6329734 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Roman Lavrov <romanl@google.com>
Shahbaz Youssefi a63c2826 2025-03-08T16:12:40 Skip MultithreadingTest.ProgramLinkAndBind on Intel/windows Due to flakiness Bug: angleproject:401554049 Change-Id: I7210ff90c6de3d9b225d1e3a65df3cc4452fc9d6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6334634 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Cody Northrop 4bfb9da6 2025-02-28T12:49:28 Revert "Reland "Add GL_BGRA_EXT as a sized renderable format"" This reverts commit 8f2fbbd1a0d16471596afad57c88f950a1ee3032. Reason for revert: http://anglebug.com/399913714 Original change's description: > Reland "Add GL_BGRA_EXT as a sized renderable format" > > This reverts commit 22dfe435daa7c680c07bb8d4f1d98ab765e60ad0. > > Reason for revert: Fixed mapping back to BGRA_EXT for GL backend > > Original change's description: > > Revert "Add GL_BGRA_EXT as a sized renderable format" > > > > This reverts commit 80093a7d8f850c3ab551ddb4972c2f1f27511433. > > > > Reason for revert: suspect for blocking rolling ANGLE into Chroimum > > https://chromium-review.googlesource.com/c/chromium/src/+/6283973 > > https://ci.chromium.org/ui/p/chromium/builders/try/chromeos-amd64-generic-rel-gtest/372754/overview > > > > Original change's description: > > > Add GL_BGRA_EXT as a sized renderable format > > > > > > dEQP tests were updated to cover GL_BGRA_EXT as a sized renderable > > > format. It was apparently always supposed to be, based on the > > > wording of the spec. > > > > > > This CL adds that support and updates expectations, along with a few > > > extra tests. > > > > > > Includes contributions from Robic.Sun@arm.com. > > > > > > Test: angle_end2end_tests, angle_deqp_*_tests > > > Bug: b/42267264 > > > Bug: angleproject:394384906 > > > Change-Id: Ia10bcd61f66c5d99a3d27a2cfd6008c991ddcaa7 > > > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6235444 > > > Reviewed-by: Geoff Lang <geofflang@chromium.org> > > > Commit-Queue: Cody Northrop <cnorthrop@google.com> > > > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > > > > Bug: b/42267264 > > Bug: angleproject:394384906 > > Change-Id: I64572361cfed33b4ea17eabf278f580471d045c2 > > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6285628 > > Auto-Submit: Yuly Novikov <ynovikov@chromium.org> > > Commit-Queue: Yuly Novikov <ynovikov@chromium.org> > > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> > > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > > Bug: b/42267264 > Bug: angleproject:394384906 > Change-Id: I1bd9df904d93fd54286cbfce53fe89db89e842b9 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6310699 > Commit-Queue: Cody Northrop <cnorthrop@google.com> > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > Reviewed-by: Geoff Lang <geofflang@chromium.org> Bug: b/42267264 Bug: angleproject:394384906 Bug: angleproject:399913714 Change-Id: I9f79f39a6d9cba3b23c261005bc3e012d70cd1cf No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6312977 Auto-Submit: Cody Northrop <cnorthrop@google.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Cody Northrop 8f2fbbd1 2025-02-27T13:33:06 Reland "Add GL_BGRA_EXT as a sized renderable format" This reverts commit 22dfe435daa7c680c07bb8d4f1d98ab765e60ad0. Reason for revert: Fixed mapping back to BGRA_EXT for GL backend Original change's description: > Revert "Add GL_BGRA_EXT as a sized renderable format" > > This reverts commit 80093a7d8f850c3ab551ddb4972c2f1f27511433. > > Reason for revert: suspect for blocking rolling ANGLE into Chroimum > https://chromium-review.googlesource.com/c/chromium/src/+/6283973 > https://ci.chromium.org/ui/p/chromium/builders/try/chromeos-amd64-generic-rel-gtest/372754/overview > > Original change's description: > > Add GL_BGRA_EXT as a sized renderable format > > > > dEQP tests were updated to cover GL_BGRA_EXT as a sized renderable > > format. It was apparently always supposed to be, based on the > > wording of the spec. > > > > This CL adds that support and updates expectations, along with a few > > extra tests. > > > > Includes contributions from Robic.Sun@arm.com. > > > > Test: angle_end2end_tests, angle_deqp_*_tests > > Bug: b/42267264 > > Bug: angleproject:394384906 > > Change-Id: Ia10bcd61f66c5d99a3d27a2cfd6008c991ddcaa7 > > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6235444 > > Reviewed-by: Geoff Lang <geofflang@chromium.org> > > Commit-Queue: Cody Northrop <cnorthrop@google.com> > > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > > Bug: b/42267264 > Bug: angleproject:394384906 > Change-Id: I64572361cfed33b4ea17eabf278f580471d045c2 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6285628 > Auto-Submit: Yuly Novikov <ynovikov@chromium.org> > Commit-Queue: Yuly Novikov <ynovikov@chromium.org> > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Bug: b/42267264 Bug: angleproject:394384906 Change-Id: I1bd9df904d93fd54286cbfce53fe89db89e842b9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6310699 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Robic Sun 34faa3db 2025-02-08T15:17:10 Fix issue that stride setting is incorrect when rotation is true When rotateXY is true, stride should increase or decrease on the Y axis. Bug: angleproject:395131251 Change-Id: I0f5363c9952ccdf0a036499a9f918853eff7cd10 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6242496 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Auto-Submit: Robic Sun <Robic.Sun@arm.com>
angle-autoroll eb22e1f8 2025-02-21T11:44:31 Roll vulkan-deps from 126c9b378eb7 to f489bd52916f (18 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/126c9b378eb7..f489bd52916f Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/e66176c3f685b14dfa83882329e5d02f4e027c9b..104bd85d990155f04f050972374a3502b4631830 https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers/+log/09913f088a1197aba4aefd300a876b2ebbaa3391..54a521dd130ae1b2f38fef79b09515702d135bdd https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+log/9fa14b91414994e2bf4d9509b8efc8071f154991..a80d3b5c505e6541d98003b880ae583bc706bbc9 https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers/+log/234c4b7370a8ea3239a214c9e871e4b17c89f4ab..952f776f6573aafbb62ea717d871cd1d6816c387 https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/087c22a441e5fb8563516b6b515483898c843242..a10e2725f99c333bbc468373159442fe41158039 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: Ifb414ab9bbbd524973d4944854649deb0f1714c5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6288472 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Chris Dalton be98f841 2024-11-30T02:11:05 Implicitly end PLS for framebuffer reads and writes In preparation for removing the PLS allow list, convert more problematic methods to the new paradigm of implicitly ending PLS instead of generating errors. Also simplify the disable logic for framebuffer modifications, and just blindly disable PLS for framebuffer updates, regardless of whether it's GL_READ_FRAMEBUFFER or GL_DRAW_FRAMEBUFFER. Bug: angleproject:40096838 Change-Id: Ie4390a219f5f05ef0a3d00f405d4914592726283 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6077335 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Yuly Novikov 22dfe435 2025-02-20T06:46:07 Revert "Add GL_BGRA_EXT as a sized renderable format" This reverts commit 80093a7d8f850c3ab551ddb4972c2f1f27511433. Reason for revert: suspect for blocking rolling ANGLE into Chroimum https://chromium-review.googlesource.com/c/chromium/src/+/6283973 https://ci.chromium.org/ui/p/chromium/builders/try/chromeos-amd64-generic-rel-gtest/372754/overview Original change's description: > Add GL_BGRA_EXT as a sized renderable format > > dEQP tests were updated to cover GL_BGRA_EXT as a sized renderable > format. It was apparently always supposed to be, based on the > wording of the spec. > > This CL adds that support and updates expectations, along with a few > extra tests. > > Includes contributions from Robic.Sun@arm.com. > > Test: angle_end2end_tests, angle_deqp_*_tests > Bug: b/42267264 > Bug: angleproject:394384906 > Change-Id: Ia10bcd61f66c5d99a3d27a2cfd6008c991ddcaa7 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6235444 > Reviewed-by: Geoff Lang <geofflang@chromium.org> > Commit-Queue: Cody Northrop <cnorthrop@google.com> > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Bug: b/42267264 Bug: angleproject:394384906 Change-Id: I64572361cfed33b4ea17eabf278f580471d045c2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6285628 Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Cody Northrop 80093a7d 2025-02-03T08:50:21 Add GL_BGRA_EXT as a sized renderable format dEQP tests were updated to cover GL_BGRA_EXT as a sized renderable format. It was apparently always supposed to be, based on the wording of the spec. This CL adds that support and updates expectations, along with a few extra tests. Includes contributions from Robic.Sun@arm.com. Test: angle_end2end_tests, angle_deqp_*_tests Bug: b/42267264 Bug: angleproject:394384906 Change-Id: Ia10bcd61f66c5d99a3d27a2cfd6008c991ddcaa7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6235444 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Yuly Novikov 688f328f 2025-02-12T06:55:55 Revert "Suppress ImageTestES3 on Pixel 6 Vulkan" This reverts commit ef2ef107242781000ebe2f4f11839ea233aae01b. Reason for revert: should be fixed by https://github.com/KhronosGroup/Vulkan-ValidationLayers/pull/9418 Original change's description: > Suppress ImageTestES3 on Pixel 6 Vulkan > > ImageTestES3.ClearYUVAHB > ImageTestES3.RenderToYUVAHB > > Report on Pixel 6 Android 14: > VUID-VkSubpassDescription2-nullColorAttachmentWithExternalFormatResolve-09336 > > Suppress temporarily while VUID is being fixed. > > Bug: angleproject:395223719 > Change-Id: I52c7fea1058b522badbbd3be5050a01b099d15a7 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6243416 > Auto-Submit: Yuly Novikov <ynovikov@chromium.org> > Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> > Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> > Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Bug: angleproject:395223719 Change-Id: I22b6ccde6444990d31b95771f067a31669ac3aa1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6258049 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Amirali Abdolrashidi 9e86d8c0 2025-02-05T16:31:22 Vulkan: Fix VVL due to memory map range VVL: VUID-VkMappedMemoryRange-size-01390 * Updated BufferBlock::map() so the device memory uses the actually allocated buffer size. * To flush and invalidate a mapped memory range (non-coherent), the memory size is now aligned with nonCoherentAtomSize from the physical device limits. * Added an assert to make sure that the mapped size is within the allocated buffer size range. * Unskipped ExternalBufferTestES31 cases for Pixel6, except one case which seems to take a long time and result in timeout. * BufferDoesNotLeakAHB Bug: angleproject:394685081 Change-Id: Iddfb45997fed53c5ee99938d9bb57b670550b9a6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6238059 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi d252425d 2025-02-06T14:51:36 Vulkan: Check source image usage flags in copy paths ... instead of the format feature flags. If the source of the copy is has external format (allowed with glCopy[Sub]TextureCHROMIUM), the format feature checks are unable to query the format features. However, the image usage flags already have the required information (whether the image can be copied from, sampled from, etc). Bug: chromium:383056998 Change-Id: I2ba8820751eb526ef497a8be724193276fd46160 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6238265 Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Charlie Lao <cclao@google.com> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Yuly Novikov ef2ef107 2025-02-09T10:53:00 Suppress ImageTestES3 on Pixel 6 Vulkan ImageTestES3.ClearYUVAHB ImageTestES3.RenderToYUVAHB Report on Pixel 6 Android 14: VUID-VkSubpassDescription2-nullColorAttachmentWithExternalFormatResolve-09336 Suppress temporarily while VUID is being fixed. Bug: angleproject:395223719 Change-Id: I52c7fea1058b522badbbd3be5050a01b099d15a7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6243416 Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Shahbaz Youssefi 03019646 2025-01-29T10:36:38 Vulkan: Fix invalidate of emulated format followed by more draws If invalidating a color image with emulated channels, a clear is automatically staged so the emulated channels don't contain invalid data later. This is problematic with deferred clears; the clear marks the framebuffer attachment as dirty, and the next command causes `FramebufferVk::syncState` to pick the clear up as a deferred clear. This is normally correct, except if the following command is another draw call; in that case, the render pass does not close, yet the clear is cached in `mDeferredClears`. When the render pass later closes, it undoes the invalidate and attempts to remove the clear from the image... but it does not exist there anymore (it's in `mDeferredClears`). Next usage of the image then clears it, undoing the draws after invalidate. In this case, the simplest approach is to close the render pass right away here. Note that it is not possible to make `FramebufferVk::syncState` avoid picking up the clear in `mDeferredClears`, not apply the clear, _and_ keep the render pass open; because future uses of the image (like with |glReadPixels|) will not trigger `FramebufferVk::syncState` and the clear won't be done. Bug: angleproject:353167428 Change-Id: Ie677bd12d9f11953cdcd5e4c374b59c4f63e7456 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6214331 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Charlie Lao <cclao@google.com> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Yuly Novikov 6f5b32d0 2025-01-29T18:55:21 Suppress flaky end2end test on Linux NVIDIA Vulkan ClearTextureEXTTestES31Renderable.Clear3D Bug: angleproject:362486580 Change-Id: Iff0195d85c828d172ea4b9e150b62da7df0769d3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6215271 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Liza Burakova 40523499 2025-01-29T12:13:45 WebGPU: Emulate line loops for drawElements Bug: angleproject:383356846 Change-Id: I82a6dfad4a1c5d434f029701611e4b61344655f8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6086120 Commit-Queue: Liza Burakova <liza@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Roman Lavrov d9128ff4 2025-01-28T09:43:58 Clean up Galaxy expectations for A/S23 and S24 Exynos/QC Split A23 and S23 into separate lists GALAXYS24EXYNOS for S24 Exynos ("International") GALAXYS24QUALCOMM for S24 Qualcomm Bug: angleproject:359904354 Bug: b/338429767 Change-Id: If9c1f184df6c6f15e3b5d5af3a7e1310cb445984 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6207255 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Roman Lavrov <romanl@google.com>
Amirali Abdolrashidi 54b69688 2025-01-21T11:28:59 Vulkan: Add max memory allocation size limit check During memory allocation, we should make sure that the attempted allocation size does not exceed the maximum allowed size. Failure to do so may result in validation errors. * Added the following object to the renderer: mMaintenance3Properties * It holds the following device property: maxMemoryAllocationSize * Inline renderer function: getMaxMemoryAllocationSize() * Buffer and image allocation sizes will now be checked with the function above. * In case of exceeding the maximum allocation size, a device OOM error is returned after issuing a warning: * MemoryAllocationTracker::onExceedingMaxMemoryAllocationSize() * Removed the suppression for the test failing due to this issue. * Removed the maxMemoryAllocationSize VVL skip targeted for MockICD. * Suppressed tests on S22 that now fail due to exceeding this limit: * KHR-GLES[31/32].core.texture_buffer.texture_buffer_max_size Bug: angleproject:391002353 Change-Id: Id271066bd872c80344ef8531653afda3e6b40a93 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6187981 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Yuly Novikov 680ff1f4 2025-01-22T19:17:40 Suppress flaky end2end test on Linux NVIDIA Vulkan ClearTextureEXTTestES31Renderable.Clear2DArray ClearTextureEXTTestES31Renderable.ClearCubeMap ClearTextureEXTTestES31Renderable.ClearCubeMapArray Bug: angleproject:362486580 Change-Id: I4254a4c28cb0b201d9e94511d5ddc8cce975d1c6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6190629 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com>
Yuly Novikov 4be68add 2025-01-22T18:24:24 Skip OcclusionQueriesTest.WrongSkippedQuery Fails on Win Intel UHD 770 Vulkan Bug: angleproject:388144480 Change-Id: Iee4bbae63991bb7d678bdd0777b45647322f3843 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6191327 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Amirali Abdolrashidi 3734b432 2025-01-21T14:24:42 Suppress some clear tests on Linux/Intel/GL * Suppressed the following tests on Linux/Intel/OpenGL due to observed flakiness on the bots: * ClearTextureEXTTestES31Unrenderable.Clear3D * (ismatch in output values) * ClearTextureEXTTestES31Renderable.Clear2DArray * (FBO status is shown as incomplete) Bug: angleproject:384967031 Change-Id: I46e23e95619c6836b03edf6a52514b138f1542dc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6182634 Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Alexey Knyazev a0e36ad5 2025-01-20T00:00:00 Vulkan: Fix image bindings for non-layered textures Layer index must be ignored if the texture does not have multiple layers or faces. Fixed: angleproject:344950165 Change-Id: I4b402ee28d365f0459f980e01488828c80c93527 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6185849 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Shahbaz Youssefi 8bf7d458 2025-01-20T09:37:25 Manual roll vulkan-deps from 476cafde9e9d to e8b712767b9e (8 revisions) Manual roll requested by syoussefi@google.com https://chromium.googlesource.com/vulkan-deps.git/+log/476cafde9e9d..e8b712767b9e Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+log/321692686b64873ccf4972754e36185697993e21..b9d5ced92ac454caf526c3b80d5105a1f38878ce https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader/+log/35a851d182cdebef408493b9a82ba212d1a2629c..1586f33d6d79eb9ffa5963ce4f70423986b95d8a https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries/+log/2fe3a7791dc9c34a581dc45522ab9b4363b4f321..7b23ba7a5f86936a8d783baf64a77c38977d6890 https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/a80bafccd11d2b4e44dee21c530da49b41083682..1ce4b30307301d20d58040e088eb57c5ea8bb6ad 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,geofflang@google.com,syoussefi@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Change-Id: I297016b55854913ceda6cc4afb80f67eafe65e26 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6183654 Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Roman Lavrov <romanl@google.com>
Aurora Zhang 0dabfe5a 2025-01-16T16:00:51 Tests: Supplement EXT_clear_texture tests * Added negative tests in ClearTextureEXTTest.Validation. * According to spec, divided format lists into color renderable and unrenderable two sets. * Bind the renderable format texture as a color attachment to test EXT_clear_texture. * Sample the unrenderable format texture then call glDraw to test EXT_clear_texture. Bug: angleproject:384967031 Change-Id: I71d77ef57772fbb5b174929e9ac2892e7dc3215f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6108999 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Matthew Denton c289b30f 2025-01-09T12:49:27 WGSL: Add test for failure case of uniform struct rewrites. Using a uniform struct outside of the uniform address space fails if we've rewritten any of the member types and want to assign to that member. E.g. this line of GLSL, assigning to a member of a struct used in the uniform address space: privUnis.x = float[3](1.0, 1.0, 1.0); Produces this WGSL warning: ERR: DisplayWgpu.cpp:295 (operator()): Error: 2 - message: Error while parsing WGSL: :50:63 error: expected ')' (ANGLE_Convert_ANGLE_wrapped_float_ElementsTo_float_Elements((_uprivUnis)._ux)) = (array<f32, 3>(1.0f, 1.0f, 1.0f)); This adds a test and suppresses it on WGSL. Future design options: https://docs.google.com/document/d/17Qku1QEbLDhvJS-JJ9lPQAbnuZtLxWhG-ha5eCUhtEY/edit?tab=t.0#bookmark=id.r89s1r69tl77 Bug: angleproject:376553328 Change-Id: I57304e9d2a889d00ac4fa02f265198ce3d78e7e2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6165290 Reviewed-by: Matt Denton <mpdenton@google.com> Commit-Queue: Matt Denton <mpdenton@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Liza Burakova <liza@chromium.org>
Shahbaz Youssefi 6f32ed6c 2025-01-03T23:54:22 Fix struct sampler rewrite vs comma Bug: chromium:377614665 Change-Id: I2c0e8230e31405c9e7fd165a9fca68b7e9f31a76 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6142516 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>