src/tests


Log

Author Commit Date CI Message
Roman Lavrov efeb6570 2024-01-16T10:00:32 Suppress ParallelLinkProgramBenchmark.Run/gl_* on Linux Already suppressed on Windows, linux-nvidia-gtx1660-perf has a high rate of flakes. Bug: angleproject:8410 Change-Id: I5031ec0ab913938d10141121b555878883e9bb9b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5201387 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 572323cc 2024-01-11T16:20:02 Fix program link after backend rejects program binary If ANGLE believes the program binary is fine, it populates the program executable. If the backend then rejects the program binary, the executable was not reset. After the rejection, ANGLE proceeds to redo the program link, in which case it fails in various ways (ASSERT failures, incorrect data etc) as it tries to accumulate info on top of the previous executable. Bug: angleproject:8471 Change-Id: Ia4d626f5f9643c39a81062da3d5d58aa4c6be762 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5189152 Reviewed-by: Quyen Le <lehoangquyen@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Yuxin Hu 7d9c1d5f 2024-01-11T23:09:22 Add a test to check eglInitialize works in multithread Bug: angleproject:8265 Change-Id: Ib87c5e66be1387c21642353cb3f3dc8841150ba9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5190063 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Mohan Maiya 073b6510 2024-01-11T07:40:32 Add missing GLES1 glGetBooleanv() enums In OpenGL ES 1, capabilities that can be queried using glIsEnabled() can also be queried using glGetBooleanv(). As such, some valid glGetBooleanv() calls were returning "Invalid pname" error. Added support for the missing enums in glGetBooleanv(). Bug: angleproject:8481 Tests: GLES1 - QueryTest* Change-Id: Ic3a50eda4eae5855cd9491dbf217b5f69c1669b4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5188456 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi e3708149 2024-01-11T15:23:30 Add a test to ensure multiple eglInitialize calls work Bug: angleproject:8265 Change-Id: I186942a7830a35c563df503aa2b06e407288eef3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5191165 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Shahbaz Youssefi c0dae760 2024-01-10T18:37:03 Wildcards instead of redundant API specification in expectations The expectations already specify the API they relate to. As such, specifying the API tag in the gtest name is redundant. For example, it is preferred to specify: 1234 MAC OPENGL : Foo.Bar/* = SKIP instead of: 1234 MAC OPENGL : Foo.Bar/ES2_OpenGL = SKIP 1234 MAC OPENGL : Foo.Bar/ES3_OpenGL = SKIP This change also adds a presubmit to make sure the latter is not reintroduced. The only possibly legitimate use case for being specific about the test name is if only a variant of the test fails (such as ES3_OpenGL_SomeWorkaround). Note that if the opposite is the case (i.e. ES3_OpenGL fails, but ES3_OpenGL_SomeWorkaround passes), it's an indication that the feature that made the test pass should have been enabled by default. Bug: angleproject:8465 Change-Id: I11476e36c83cbbeb8148b6e934c42ccd9b988de1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5185675 Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Alexey Knyazev 950d054a 2024-01-11T00:00:00 Metal: Do not defer global const initializers Since MSL supports constant global variables, they should not be included in the DeferGlobalInitializers operation. This reduces temporary register usage and thus makes shaders that use large const arrays more compatible with Apple GPUs. Fixed: angleproject:8479 Change-Id: If1cd17a0a194173e60e6b5152297054fc384c0b2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5189165 Reviewed-by: Kimmo Kinnunen <kkinnunen@apple.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Mohan Maiya f1fee64d 2024-01-10T13:35:53 Bugfix in MultithreadedAHBImport tests Depending on thread scheduling it is possible that thread0 moves beyond Step::Start before thread1 waits for it. This causes a FATAL error with log - FATAL: MultiThreadSteps.h:73 (waitForStep): \ waitForStep requires increasing order. mCurrentStep=1, waitStep=0 Fix this by making thread1 wait on Step::Thread0Created* Bug: b/261552549 Change-Id: I8e7c9ed554285fea5674263c5807db67b908a725 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5186836 Commit-Queue: mohan maiya <m.maiya@samsung.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi e00995d4 2023-12-21T15:57:39 Vulkan: Invalidate pipeline with FBO draw buffer change Enabling/disabling draw buffers can affect the graphics pipeline without changing the render pass description. In that case, the graphics pipeline was not being invalidated. Bug: angleproject:8463 Change-Id: I6848472dcbb3d3ce4c34d95be28c8ec3fc50dcd7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5147847 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: mohan maiya <m.maiya@samsung.com>
Alexey Knyazev 473dd389 2024-01-04T00:00:00 Metal: Fix out/inout parameter aliasing Ensured that MSL-internal structs are included in the parameter aliasing checks. Fixed the following tests: dEQP-GLES2.functional.shaders.function .global_variable_aliasing_fragment .global_variable_aliasing_vertex dEQP-GLES3.functional.shaders.function .global_variable_aliasing_fragment .global_variable_aliasing_vertex Fixed: angleproject:7145 Change-Id: Ia1e40e72a69e2f91b480ef5fbb75ff0f0a1a772a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5176988 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
angle-autoroll 2937ee27 2024-01-08T20:01:48 Manual roll VK-GL-CTS from c92e4b2608d4 to 75a6a8315e20 (14 revisions) Includes manual ANGLE changes to reference new file names. https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/c92e4b2608d4..75a6a8315e20 2024-01-08 lorenzo@khronosgroup.org Update external sources 2024-01-07 rgarcia@igalia.com More VK_EXT_host_image_copy tests with depth/stencil buffers 2024-01-07 rgarcia@igalia.com Additional host image copy tests 2024-01-07 rgarcia@igalia.com Fix identical_memory_layout host image copy tests 2024-01-07 james.fitzpatrick@imgtec.com Check for entry points dependencies and validate all entry points from extensions 2024-01-07 rgarcia@igalia.com Add --quiet option to suppress standard output messages 2024-01-07 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.3.7 into vk-gl-cts/main 2024-01-05 gleese@broadcom.com Allow VK_KHR_vertex_attribute_divisor 2024-01-05 jbolz@nvidia.com Disable KHR attrib_divisor tests for VulkanSC 2024-01-05 cturner@igalia.com Populate all members of StdVideoDecodeH265PictureInfoFlags 2024-01-05 eilif.swensen@arm.com Add external_format_resolve to no_unknown_extensions 2024-01-05 marcin.hajder@mobica.com TransformFeedback API errors in compatibility profiles 2024-01-05 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkansc-cts-1.0.2 into vk-gl-cts/main 2024-01-02 aitor@lunarg.com Rename files/directories from master to main If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vk-gl-cts-angle-autoroll Please CC angle-team@google.com,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: angleproject:8475 Change-Id: Iab2df38c310becb4785828d7129fe10c6d0228fc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5177828 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Amirali Abdolrashidi 82c0ba93 2023-12-21T16:18:40 Set dirty bit when GLES1 texture state changes During experiments, it was seen that some devices fail to use the tex coord pointer properly after GL_TEXTURE_2D is re-enabled and there is a draw without updating any additional attribute pointers. * The GLES1 renderer will now also set the dirty bit for the vertex array when GL_TEXTURE_2D state changes. * (via setEnableVertexAttribArray()) * Updated the following test: DrawWithTexCoordPtrThenDisableTexture2DAndDrawAnother * Updated so after GL_TEXTURE_2D is enabled, we draw without updating the vertex pointer to check that simply enabling textures is enough to use the texture data. Bug: b/310688730 Change-Id: I0d93bd6fae3d07ea86cf0e5e094ce7a29f2e5f1e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5147197 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Alexey Knyazev a6b9a744 2023-12-21T00:00:00 Metal: Implement vertex attribute aliasing When vertex attribute aliasing is supported, the external vertex input struct is filled post-link to account for potentially aliased attributes. Fixed the following tests: dEQP-GLES2.functional.attribute_location.bind_aliasing .cond_float .cond_vec2 .cond_vec3 .cond_vec4 .cond_mat2 .cond_mat2_offset_1 .cond_mat3 .cond_mat3_offset_1 .cond_mat4 .cond_mat4_offset_1 dEQP-GLES3.functional.attribute_location.bind_aliasing .cond_float .cond_vec2 .cond_vec3 .cond_vec4 .cond_mat2 .cond_mat2_offset_1 .cond_mat3 .cond_mat3_offset_1 .cond_mat4 .cond_mat4_offset_1 .max_cond_float .max_cond_vec2 .max_cond_vec3 .max_cond_vec4 .max_cond_mat2 .max_cond_mat3 .max_cond_mat4 Fixed: angleproject:6297 Change-Id: Ifa6b82e0d7d4e12115ec19e342cfb82ab4389f5a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5148210 Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Alexey Knyazev 3c8501b3 2023-12-21T00:00:00 Metal: Handle embedded uniform struct arrays Preserve arrayness type information when replacing uniform declarations. Fixed: angleproject:6525 Change-Id: I09ea79ffa5bf74e06503985d4f90ccbe0bf25570 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5150729 Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Alexey Knyazev 706b5abe 2023-12-21T00:00:00 Avoid UB in 16-bit IOSurface tests * Removed incorrect R16UI mappings from backends * Fixed the enum used in RenderToR16IOSurface * Added more 16-bit tests Fixed: angleproject:7445 Change-Id: I7d5fb8b6a5fc7a57de8f988fdcc21e66606f875d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5148211 Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Mark Lobodzinski d18f22ca 2023-12-14T11:50:19 ANGLE: Update syncval exceptions and add test for syncval errors Trace testing found some new cases where the current sync val error messages needed to be widened to cover more cases. A test was added to reproduce the behavior seen in the Asphalt 9 ANGLE trace. Test: FramebufferTest.InvalidateAttachmentStencilOnly Bug: b/316337308 Change-Id: Icde7ad560e6949712bfd785d9969b9e179d11492 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5124314 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Mark Łobodziński <mark@lunarg.com>
Hailin Zhang 536042b6 2023-12-20T12:26:00 vulkan: fix etc2 srgb8_alpha8 alpha decode issue. for etc2_srgb8_alpha8 format, we should not use signed alpha decoder. Bug: b/314875175 Change-Id: I89f7eaf71e31f279da08c83989f8d692a8ba2c81 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5142566 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Hailin Zhang <hailinzhang@google.com>
Shahbaz Youssefi a1143857 2023-12-18T15:24:42 Fix UBO dirty bits vs PPOs This change fixes propagation of UBO dirty bits (such as through glUniformBlockBinding and glBindBufferRange) to program pipeline objects. Since PPOs concatenate the attached programs' UBOs in a list, a map of program UBO indices to PPO UBO indices is introduced to offset these dirty bits appropriately. Additionally, when the program's executable's buffer bindings change (through glUniformBlockBinding), a notification is send to the PPO to update its executable's buffer binding accordingly (which is otherwise only updated during PPO link). Bug: angleproject:8462 Change-Id: I4965ae23e6fc6cac0842e1643755e42e95d3d5cc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5131418 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Shahbaz Youssefi 16bfe951 2023-12-21T10:23:05 Add README.chromium for llvm and clspv Bug: angleproject:8369 Change-Id: I20bbb38b45aace848f8002cb49f206d98c2d7aa1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5145927 Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Amirali Abdolrashidi c51259ec 2023-12-14T15:58:56 Vulkan: Ignore tex coord at draw if tex disabled In GLES1, it is possible to disable texture rendering in some cases. It is done using glDisable(GL_TEXTURE_2D). In that case, if TexCoordPointer has been enabled in the client state prior to disabling the texture, its data should no longer be used, especially if the primitive changes to use more vertices. In that case, there is a risk of unauthorized memory access. In this CL, the active vertex attributes are updated accordingly if texture is disabled using the aforementioned API call. * Updated GLES1 renderer to ignore TexCoordPointer if texture has been disabled. * Added GLES1 tests for tex coord pointer, including tests to make sure that tex coord pointer is no longer used if the texture is disabled using glDisable(), and that it is used again when texture is enabled using glEnable(). * To ensure that tex coord pointer is not used, the test draws using enough vertex data that would exceed the texcoord array size, which can trigger segfault if accessed. Bug: b/310688730 Change-Id: I5d259c83a172cc1a11733c0b42c2f9b02c9b2967 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5124259 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Charlie Lao <cclao@google.com>
Shahbaz Youssefi 0aaa8de9 2023-12-19T23:23:40 Vulkan: Fix memory tracking vs external texture acquire ... with a layout of GL_NONE. Bug: angleproject:8464 Change-Id: I94690c5693c5bcb6d510e4a27097206f0da58a41 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5138656 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi e9c0241d 2023-12-19T10:23:13 Vulkan: Rely on Vulkan 1.1 entry points in tests Some KHR entry points that were promoted to Vulkan 1.1 no longer seem to be loadable with their KHR symbols. Bug: angleproject:8464 Change-Id: Id5417e5b047e6bd34d144fead518f771c17658e3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5135676 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Alexey Knyazev 9f148c41 2023-12-14T00:00:00 Metal: Fix triangle fan indices generation * Ensured that the second index is preserved when skipping leading primitive restart values * Restricted the search loop to the index count * Ensured that draw calls are skipped when the generated index buffer is empty to avoid Metal validation errors, also for line loops Fixed: angleproject:6458 Change-Id: I3194eb9db3e7e225448901edce167a2091563cd5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5132092 Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Kenneth Russell <kbr@chromium.org>
Yuly Novikov 66da618c 2023-12-19T16:25:35 Skip UniformBufferTest.BufferBlockBindingChange on Mac NVIDIA GL Flaky Bug: angleproject:8465 Change-Id: Ic923a3af4937a346fdba0b80d486a9ed8e46402e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5136275 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> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Geoff Lang bd5dce9a 2023-11-21T15:39:04 Metal: Use MTLEvent instead of MTLSharedEvent when possible Refactor mtl::Sync to be abstract and have multiple implementations using either MTLEvent or MTLSharedEvent. Use MTLEvent in all cases except for EGL Syncs when the user sets the sync type to EGL_SYNC_METAL_SHARED_EVENT_ANGLE. Determine completion of the sync object by watching for completion of the command buffer where the event's signaling was enqueued. Avoid any sleep loops by waiting on a condition_variable which is notified when the completed queue serial is updated. Forked from CLs by sky@ and kbr@ Bug: angleproject:8153 Change-Id: I4547444b596366496c811cb9954872b85ab14ad8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5133706 Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Kenneth Russell <kbr@chromium.org>
Shahbaz Youssefi 4bf40237 2023-12-18T15:24:15 GL: Fix missing glUniformBlockBinding handling When a program is current and this call is made, the program is made dirty so that the GL backend reacts to this call. Prior to https://chromium-review.googlesource.com/c/angle/angle/+/4922969, the program was made dirty when its executable was installed as well (if it had any UBOs dirty), but that change removed it. As a result, if this call was made while the program was _not_ current, the GL backend would miss processing it. This call ensures that the appropriate dirty bit is set when the program is made current again. This revealed a bug in the Vulkan backend where sometimes the executable's dirty bits would not get reset. This was benign but fired an assertion, and is fixed in this CL as well. Bug: chromium:1511506 Change-Id: Iae86ba0aa5b8f9e4f20dd6df6002d37e405280e7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5123005 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com>
Stephen White a950f005 2023-12-06T18:58:35 Move compressed format validation to Vk backend. Add test to call glCompressedTexSubImage3D() from a pixel unpack buffer. This currently fails on OpenGL. Bug: angleproject:8449 Change-Id: I863b602e39a14878af8745ff62b408bdd879bc98 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5100348 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Stephen White <senorblanco@chromium.org>
Shahbaz Youssefi 18a68f6d 2023-12-07T16:23:10 Fix vertex attribute limit check Bug: angleproject:8448 Change-Id: Ie5d2b71f0be86b31ec74a1d55501b60a25245668 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5101508 Reviewed-by: Alexey Knyazev <lexa.knyazev@gmail.com> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Alexey Knyazev 8f966559 2023-12-07T00:00:00 Metal: Fix matrix vertex attributes with mixed sources Updated VertexArrayMtl::setupDraw to support matrix vertex attributes that use current and array values simultaneously. Simplified the helper function. Fixed: angleproject:8456 Change-Id: I09a26a978cda4b9ac3747325ad571d5ad2fff72d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5116500 Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Quyen Le <lehoangquyen@chromium.org>
Solti 5e63cee5 2023-12-12T20:59:44 update e2e expectation Bug: b/316013423 Change-Id: I4a70fdc0b38d8e412c0ca1035564aecb1f1dbc32 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5118119 Commit-Queue: Cody Northrop <cnorthrop@google.com> Auto-Submit: Solti Ho <solti@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Geoff Lang f8fae1ff 2023-12-08T13:20:36 Validate Uniform variable limits with each iteration VariablePacker would loop over all variables and sum up the total row counts before validating. Each variable can take hundreds of rows so it is possible to overflow the counters before validating them. Validate the limits with each iteration and early-out when the limits are exceeded. https://bugzilla.mozilla.org/show_bug.cgi?id=1864587 Bug: chromium:1864587 Change-Id: Ic235ada1516a0d5a9948d82b22f6316a037c09ca Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5106408 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Alexey Knyazev 5c8cb8a6 2023-12-07T00:00:00 Update WebGLReadOutsideFramebufferTest tests Enabled robust resource init for these tests as they access out-of-bounds values. This flag is required to pass some of the tests on Vulkan backend. WebGL clients always set it. Fixed subresource index computation on D3D11 to pass CopyTexSubImage3D with 3D textures there. Added a similar test for 2D array textures. Bug: angleproject:4092 Fixed: angleproject:4136 Change-Id: I191c6df3c672e583568aadecac5885da015cfa8b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5106511 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Cody Northrop 80fca933 2023-12-08T18:30:01 Tests: Add Thimbleweed Park trace Test: angle_trace_tests --gtest_filter="*thimbleweed_park*" Bug: b/315540661 Change-Id: I78d45d51531b81dbe05427db0dff4dc685b98cbc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5106864 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Mark Łobodziński <mark@lunarg.com>
Alexey Knyazev 7288507c 2023-12-07T00:00:00 Lift SNORM framebuffer completeness suppressions The CTS has been updated to allow GL_EXT_render_snorm exposure on OpenGL ES 3.0 contexts. Bug: angleproject:8048 Change-Id: If00df67dbcb541565ad236983b9d406a9f4444e8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5106510 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Alexey Knyazev bc301691 2023-12-07T00:00:00 Run PackUnpackTest on all backends Fixed negative zero serialization for capture/replay. Bug: angleproject:4092 Change-Id: Ic12a556f56e40064da8bf3a8ce7d01af92c7086a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5106509 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Alexey Knyazev ede15b85 2023-12-07T00:00:00 Metal: Run multi draw tests Added ANGLE_INSTANTIATE_TEST_COMBINE_3. Used the new macro for multi draw and BVBI tests. Bug: angleproject:6963 Change-Id: If05800f92f670bf21b7ff889a2fb8bb30f62a488 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5106508 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Charlie Lao d0eb968d 2023-12-08T16:11:46 Vulkan: Fix the AHB leak for AHB backed buffer object For client buffer backed OpenGL buffer object, we call InitAndroidExternalMemory which calls AHB acquire. But when buffer object is released/destroyed, we never call ReleaseAndroidExternalMemory, which end up leaking AHB. Bug: b/314791770 Change-Id: I693c74213e73008497a6dfeca93ea62e84c71352 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5106599 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Charlie Lao <cclao@google.com>
Alexey Knyazev 0b0b4b22 2023-12-07T00:00:00 Avoid UB in VertexAttributeTestES3.DrawWithUnalignedData The test uses a signed normalized vertex attribute, which requires a floating point vertex input. Bug: angleproject:7001 Fixed: angleproject:7068 Change-Id: I97afc97b03a58130e0d6ee63ec7ee3e44f1e0230 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5105194 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi b8ca8de4 2023-12-05T13:36:53 Vulkan: Don't crash when glCopyTexImage2D redefines itself The Vulkan backend marks a level being redefined as such before doing the copy. If a single-level texture was being redefined, it releases it so it can be immediately reallocated. If the source of the copy is the same texture, this causes a crash. This can be properly supported by using a temp image to do the copy, but that is not implemented in this change. Bug: chromium:1501798 Change-Id: I9dde99aa0b88bc7d5f582ff15772f70b36f424e0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5089150 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi dc4b1acd 2023-11-30T15:42:32 Translator: Limit private variable size to 64KB This is indirectly fixing an issue where passing large arrays in SPIR-V such that an internal cast is needed (such as array inside interface block copied to local varaible) causes an overflow of the instruction length limit (in the absence of OpCopyLogical). By limiting the size of private variables to 32KB, this limitation is indirectly enforced. It was observed that all the test shaders added in this CL fail on the Nvidia OpenGL drivers, so such a limit seems to be reasonble. Bug: chromium:1505009 Change-Id: Ia36134b2bf8501a5b875814db3566be28b183e0f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5077408 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi d788c2c0 2023-12-04T22:43:39 Remove team members no longer part of the project Bug: None Change-Id: I66bf34ece50995fdecfab55a2198e9946e9be4cd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5087208 Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Daniel Cheng bc7af34c 2023-12-06T00:15:33 Use googletest flag macros to access googletest flags. The implementation details of flags can change; fixing this proactively makes it easier to roll googletest. Bug: chromium:1409870 Change-Id: I5efa2487d9e38e122ca20f201748faf8e8050347 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5092928 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Daniel Cheng <dcheng@chromium.org>
Cody Northrop f58ba088 2023-11-05T16:40:37 Tests: Add Warcraft Rumble trace Test: angle_trace_tests --gtest_filter="*warcraft_rumble*" Bug: b/309345647 Change-Id: I6e78fb0465edcfa97943ff8374c568dcd9b8eba7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5007173 Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Alexey Knyazev d7077e9f 2023-12-05T00:00:00 Update macOS end2end expectations Bug: angleproject:2273 Bug: angleproject:2408 Bug: angleproject:3837 Bug: angleproject:5325 Bug: angleproject:5360 Bug: angleproject:5594 Bug: angleproject:6358 Bug: angleproject:6418 Bug: angleproject:6454 Bug: angleproject:6457 Bug: angleproject:6540 Bug: angleproject:6702 Bug: angleproject:6751 Bug: angleproject:7068 Bug: angleproject:7309 Bug: angleproject:7445 Change-Id: I7f4c012ed2de6af83188ed69170b19f8d2bb19de Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5087774 Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Cody Northrop 18d51f01 2023-12-03T18:26:12 Tests: Add Black Clover M trace Test: angle_trace_tests --gtest_filter="*black_clover_m*" Bug: b/314683298 Change-Id: Icee6102aa5161f2054134831e00eb99b8048c448 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5082209 Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Shahbaz Youssefi fb6b960c 2023-11-27T14:24:28 Remove GL_CHROMIUM_texture_filtering_hint This was using an unregistered Vulkan extension to set the precision of SwiftShader's internal filtering for the sake of Chrome. That's baked in at build instead. Bug: angleproject:8349 Bug: chromium:726075 Change-Id: I12849d2d29d99626f22a92ee9d74366f78658476 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5063344 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Charlie Lao 90767546 2023-12-01T12:27:15 Vulkan: Add test for __samplerExternal2DY2YEXT then swizzle Added a correctness test SourceYUVTextureTargetExternalRGBSampleYUVSampleWithSwizzle for applying swizzle after sampler. Also removed some bug workaround for VVL and drivers since they are fixed now. Bug: b/309480316 Change-Id: If82b2251745a96335b535c67b6e0c0847268b25b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5080497 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: mohan maiya <m.maiya@samsung.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Cody Northrop 554d761a 2023-12-01T15:14:22 Tests: Add AFK Arena trace Test: angle_trace_tests --gtest_filter="*afk_arena*" Bug: b/314365671 Change-Id: Id0213199b0e75919701be8ec9e216a224a6725d4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5078682 Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Shahbaz Youssefi caa5e4ea 2023-11-30T14:12:42 Translator: Fail compilation if too many struct fields If there are too many struct fields, SPIR-V cannot be produced (as it has a hard limit of 16383 fields). The Nvidia GL driver has also been observed to fail when there are too many fields. Bug: chromium:1505009 Change-Id: If9b01716c1cab35a6e537da64421e29fe0eda91e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5074629 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Roman Lavrov <romanl@google.com>
Mark Lobodzinski 25f448f4 2023-12-01T12:33:27 Tests: Add Walking Dead Survivors trace Test: angle_trace_tests --gtest_filter=TraceTest.walking_dead_survivors Bug: b/314311102 Change-Id: Icf104613b59a8de0f89fc5fa3dd6db4ad9a3dc2b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5080498 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Shahbaz Youssefi 6df603ed 2023-11-30T13:53:00 Translator: Optimize field-name-collision check As each field of the struct was encountered, its name was linearly checked against previously added fields. That's O(n^2). The name collision check is now moved to when the struct is completely defined, and is done with an unordered_map. Bug: chromium:1505009 Change-Id: If28d738254a541450912eba4ed168424dad9d8be Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5077407 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Roman Lavrov <romanl@google.com>
Sergey Kataev 75e13e68 2023-11-29T22:19:46 Metal should not inline non-const global initialisers Bug: angleproject:8403 Change-Id: Iaa6126d7043931a16104ea84c5f7e737017dabc3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5076256 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Sergey Kataev <sergeyka@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Shahbaz Youssefi ab992c3e 2023-12-01T11:51:13 Clarify which link failed in link program perf test Bug: angleproject:8417 Change-Id: I5445518fdf6dcc2533ea055588221d6e45c45d9a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5077412 Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Roman Lavrov eef89870 2023-12-01T09:47:40 Trace tests: skip mini_world on win intel native Flaking Bug: angleproject:8440 Change-Id: Iff415531d4820937ef5e42c8fcba05c305494c38 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5078288 Auto-Submit: Roman Lavrov <romanl@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Roman Lavrov <romanl@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Shahbaz Youssefi 3680a5dc 2023-11-17T13:51:07 Vulkan: Let program warmup continue passed link The warmup task does not actually affect the link results, so there is no reason to wait for it when the application queries the link status. This change allows the warm up task to continue in parallel until the program is used at draw time. This allows the warm up to be more efficient when the link itself is not parallelized. For applications that create programs in the middle of every frame, it's still likely best to disable warm up (as the following immediate draw will already effectively do the warm up). Note that currently the warm up code in the Vulkan backend is not completely thread-safe, and so the program still blocks on that task before the first draw can happen (or the program is modified in any way). Bug: angleproject:8417 Change-Id: I0877fef39a0585c3279e32699ce817d4643d7cd6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5037538 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Sergey Kataev 058a2fd6 2023-11-28T17:38:28 Clear active queries before Begin Bug: angleproject:8415 Change-Id: I97dfd904d65933a66f25cd168c50fe150ef9c765 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5068525 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Sergey Kataev <sergeyka@chromium.org>
Alexey Knyazev 05e9ec11 2023-11-23T00:00:00 Metal: Saturate floating-point depth textures on upload Metal does not clamp uploaded floating-point depth texture values to the normalized range. Used a compute shader to enforce the expected OpenGL ES semantics. Fixed the following tests on Intel and Apple GPUs: dEQP-GLES3.functional.texture.specification .teximage2d_depth.depth_component32f .teximage2d_depth.depth32f_stencil8 .teximage2d_depth_pbo.depth_component32f .teximage2d_depth_pbo.depth32f_stencil8 .teximage3d_depth.depth_component32f_2d_array .teximage3d_depth.depth32f_stencil8_2d_array .teximage3d_depth_pbo.depth_component32f_2d_array .teximage3d_depth_pbo.depth32f_stencil8_2d_array .texsubimage2d_depth.depth_component32f .texsubimage2d_depth.depth32f_stencil8 .texsubimage3d_depth.depth_component32f_2d_array .texsubimage3d_depth.depth32f_stencil8_2d_array Fixed: angleproject:8422 Fixed: angleproject:8426 Change-Id: I843024f098fef2fbca15e7b6124052681d05b6ad Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5062710 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Alexey Knyazev d696b40f 2023-11-23T00:00:00 Metal: Use precise tanh for highp result types When fast math is enabled, default tanh does not pass dEQP precision tests. Explicitly request precise tanh when the result type has high precision. Bug: angleproject:8287 Change-Id: I07c8c2638b5f0a51feacbeadb78382152a95b03c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5057298 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Roman Lavrov 989b1143 2023-11-28T14:06:06 Trace perf: logcat output captured line-buffered I've seen warmup detection getting stuck intermittently not seeing the log line despite the line being there. Hopefully this fixes. Bug: b/291604008 Change-Id: I10da772c485f7b1badd34efc00c20fc6d55139cb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5067855 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Roman Lavrov <romanl@google.com>
Cody Northrop ee4b7a27 2023-11-03T09:06:50 Add --memory to restricted_trace_perf.py Detailed analysis of our power results showed that even checking memory can impact power. This CL makes memory measurement optional (like power) to enhance power measurements. Test: restricted_trace_perf.py --memory --power Bug: b/292249127 Change-Id: I69b34d378ca923de42af59fc1b532a1d766b4391 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5066797 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Roman Lavrov <romanl@google.com>
Mark Lobodzinski 068a0ee8 2023-11-28T08:43:45 Tests: Add Retro Bowl trace Test: angle_trace_tests --gtest_filter=TraceTest.retro_bowl Bug: b/313610392 Change-Id: Iec30c95fd46a75c6995d968dfac5652a89209bc3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5066795 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Amirali Abdolrashidi 716c5d00 2023-11-13T10:23:10 Vulkan: Add RGB8-to-RGBA8 ubyte loading function Currently, to update RGB8 on desktop, ANGLE uses memcpy for each pixel, which is suboptimal. This CL adds a loading function to improve the copy time for RGB textures where RGBA is needed on the hardware. * Added a specialization to LoadToNative3To4() for unsigned bytes using 0xFF as the fourth component. * It is optimized for unsigned bytes when converting an RGB format to its corresponding RGBA format, e.g., RGB8 to RGBA8. * It uses uint32_t operations to speed up the process. * Added unit tests for the specialized LoadToNative3To4. * LoadToNative_unittest.cpp * Added perf test for RGB8 image allocation and loading. * RGBImageAllocationBenchmark in RGBImageAllocation.cpp. * RGBImageAllocationBenchmark shows some improvement in cpu_time and wall_time on a Linux and a Windows device. (Results below using aligned source pointer and texture size of 2048): * On Windows: +~85% cpu_time, +~71% wall_time * On Linux: +~26% cpu_time, +~27% wall_time Bug: b/308177124 Change-Id: I421d83f75fdc513b0111dffb0a5d5e74682dd6fb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4995489 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Steven Noonan 99b077b7 2023-11-26T08:24:18 Vulkan: fix data clobbering with AllocateNonZeroMemory The offset of the suballocation was not being used when initializing memory, so it was possible to overwrite the start of an existing buffer with garbage. Bug: angleproject:8427 Change-Id: I8205068a173dc4342894c6c49ee5fa9c4a8a255a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5060776 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Steven Noonan <steven@uplinklabs.net>
Alexey Knyazev 3e617615 2023-11-23T00:00:00 Metal: Update depth texture dEQP expectations Bug: angleproject:5243 Bug: angleproject:8425 Bug: angleproject:8426 Change-Id: I62fe901e50cd76b483ba415ad01707129c4ff857 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5054336 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Alexey Knyazev b7a31b7f 2023-11-27T00:00:00 dEQP: Treat signed integer overflow as two's complement Bug: b/307584642 Fixed: angleproject:8429 Change-Id: Ib3cdd1835d4c669a79a4553b24da676eb41e21b0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5062708 Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 1169f6b4 2023-11-18T21:03:54 Add bad app behavior to parallel link perf test A large majority of apps hinder parallelism by immediately querying the link status after glLinkProgram. The parallel link perf test is now exercising this behavior as well. Additionally, since the Vulkan backend's default is to disable parallel link, the perf test is also enhanced to include this case. A follow up change will improve the performance of both these scenarios with the Vulkan backend. Bug: angleproject:8417 Change-Id: I39b9d5703a17d051d20d35fd4cede2b415e770a4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5042344 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Charlie Lao <cclao@google.com> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Mohan Maiya 8ae36a93 2023-11-14T10:11:51 Vulkan: Bugfix in isFastUnpackPossible Disallow fast unpack when there is a mismatch between the actual texture format and intended buffer (PBO or client buffer) format. Bug: angleproject:3777 Test: Texture2DTestES3.UnpackCompatibleFormatButDifferentType* Change-Id: I9ea9d9cdd5e1391acebb3d75d69437e27cfa90df Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5029504 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: mohan maiya <m.maiya@samsung.com>
Yuxin Hu 3944ffce 2023-11-13T18:32:13 Add missing validation code The validation code for below GLES 3.2 entry points is added: GL_TexParameterIiv GL_TexParameterIuiv GL_GetTexParameterIiv GL_GetTexParameterIuiv GL_SamplerParameterIiv GL_SamplerParameterIuiv GL_GetSamplerParameterIiv GL_GetSamplerParameterIuiv Also add extension check in validation functions of entry points that are exposed through these two extensions: GL_OES_texture_border_clamp GL_EXT_texture_border_clamp The validation functions of GL_OES_texture_border_clamp extension are moved to validationESEXT.cpp for readability. Bug: b/286572199 Bug: b/224537784 Change-Id: I77ed22e8dc961a30a5d86b0597c25555d15c517b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5028139 Auto-Submit: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
mark a. foltz a75659eb 2023-11-13T16:03:26 [Cast Convergence] Remove unused GN include. This file is being removed from Chromium. It is not needed in this file and can be removed, which will avoid breakage when that happens. Bug: angleproject:8413 Change-Id: Iccc4b45393bcbc268add434b16172e90d2b9d13b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5027723 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 49f8f8a0 2023-11-13T10:01:37 Manual roll vulkan-deps from 448a71c0790c to 855191177ccd (17 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/448a71c0790c..855191177ccd Manual edits: * Includes compile fixes for vulkan_command_buffer_utils Changed dependencies: * glslang: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang.git/+log/a8d39f97cd..1dcb072cda * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/fbf047cc8b..6b1e609ef1 * vulkan-headers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers.git/+log/8ccd414a46..af4fb97d7b * vulkan-loader: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/6342790c86..0b31098e53 * vulkan-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/322e7b3f08..90e25ec83a * vulkan-utility-libraries: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries.git/+log/5b3147a535..177e2312fa * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/0eec8db60d..312716a437 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: angleproject:8412 Tbr: cnorthrop@google.com Change-Id: Iddbfda975afd44f100c02a399f9f80b3ba9c7d73 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5023272 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Takuto Ikuta 7b9b95f8 2023-11-13T11:42:26 drop goma support from capture_replay_tests.py https://ci.chromium.org/ui/p/angle/builders/try/win-trace/7316/overview failed, but it seems unrelated to this CL. Bug: angleproject:8309 Change-Id: Id4fd9cad341973c87570adbea63809b5aa84c4a0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5019418 Reviewed-by: Roman Lavrov <romanl@google.com> Auto-Submit: Takuto Ikuta <tikuta@chromium.org> Commit-Queue: Roman Lavrov <romanl@google.com>
Shahbaz Youssefi 64eb87af 2021-05-12T00:02:22 Add test for VectorizeVectorScalarArithmetic bug Bug: chromium:1201084 Change-Id: Icfb659ae5195f8dd80fecd0904cb90b77697fa70 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2889601 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Roman Lavrov <romanl@google.com>
Shahbaz Youssefi 35f4ff2f 2023-11-13T09:50:08 Test suppressions Bug: angleproject:8409 Bug: angleproject:8410 Change-Id: I9fb41292382563f7b9cc802167bf48432a46f55d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5023829 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Roman Lavrov <romanl@google.com> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Cody Northrop 108bd958 2023-11-10T17:30:43 Tests: Add Slay the Spire trace Test: angle_trace_tests --gtest_filter="*slay_the_spire*" Bug: b/310281616 Change-Id: I6c94b0e3c72be1ad3cb2897981febd3f67722a20 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5021241 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Roman Lavrov <romanl@google.com>
Shahbaz Youssefi aec4ffac 2023-11-06T14:13:06 Add a perf test for parallel compile and link Bug: angleproject:8297 Change-Id: I40ec3af49bd0f5effbafc82b557840c615fd4c64 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5008040 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 3a6b385f 2023-11-09T15:48:48 Vulkan: Fix depth/stencil texture copy Bug: angleproject:7289 Change-Id: Icde8a26e855e95a6c0a1e506d2435e981adc6f28 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5018798 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Charlie Lao <cclao@google.com>
Shahbaz Youssefi d896fab8 2023-11-09T15:03:05 Vulkan: Fix texture self-copy A new layout is introduced to support self-copy. Bug: angleproject:7289 Change-Id: Ib914c433d55b9a79cfeb7a91f8a2b8680824d473 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5018797 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Shahbaz Youssefi 4c500944 2023-11-08T16:16:23 Translator: Mark most builtins as not having side effect This helps the translator eliminate stray uses of these builtins. Bug: angleproject:6061 Change-Id: Ic0e72bddad5730fb1f906a4c8e53191ab3318d29 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5012988 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Geoff Lang 2155534b 2023-11-06T11:49:20 Don't set dirty bits for attribs that are out of range. PrivateState::setAllDirtyBits sets all bits in mDirtyCurrentValues. When the context has fewer max attibutes than MAX_VERTEX_ATTRIBS, this can cause out-of-bounds access to PrivateState::mVertexAttribCurrentValues if the dirty bits are iterated over without range validation. Bug: chromium:1496378 Change-Id: I65481c432263a6e353a9361bba741b97dc5e20b1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5008034 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Takuto Ikuta 1bb2c5ec 2023-11-07T15:44:41 support reclient in capture_replay_tests This also uses autoninja to start and stop reclient automatically. This will be used with https://crrev.com/c/4797373. Bug: angleproject:8309 Change-Id: I2e17c87c8ff0e253f16201297ef979337bf30292 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4796170 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Auto-Submit: Takuto Ikuta <tikuta@chromium.org>
Roman Lavrov 9a7e8b7b 2023-11-07T17:02:02 Perf tests: log hwmon temps on linux Syslog on a failed bot indicates possible overheating. Log all hwmon temps which include CPU temps but also some other system temps (disk probably not included). We might need to self-throttle if crashes are correlated with higher temps. Bug: b/296921272 Change-Id: I25f8dd899dd25880fc1567ecc18e102759fb868f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5008089 Auto-Submit: Roman Lavrov <romanl@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Le Hoang Quyen 383df961 2023-11-06T22:00:52 Metal: only convert vertex if offset is not multiple of 4. Previously we always convert vertex attribute if its binding offset is not multiple of the attribute's size. This requirement seems to be unnecessary. This CL removes that requirement so the only requirement left for offset is that it must be multiple of 4. Bug: chromium:1496807 Change-Id: I35c421951c7817b77bd0c006ed4b72cd04b5a8d7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5006359 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Quyen Le <lehoangquyen@chromium.org>
Charlie Lao 32f209b8 2023-11-03T09:57:00 Vulkan: Fix __samplerExternal2DY2YEXTtnd combined with swizzle Pixel camera app is hitting assertion due to swizzle applied to swizzle. This CL adds ReswizzleYUVOpsTraverser::visitSwizzle() method and detects there is a swizzle on YUV sampler and apply YUV swizzle first and then original swizzle and then fold two swizzle into one. This CL added a test to reproduce the bug. This CL also makes ShCompileOptions in ShaderExtensionTest class a class member instead of local variable so that subclass can modify for testing or debugging purpose. Bug: b/309480316 Change-Id: I72353fbad8dcacd77ca17a9f44e84485f4656a34 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5001614 Reviewed-by: Chris Forbes <chrisforbes@google.com> Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Dan Glastonbury 34e5620b 2023-11-01T17:52:34 Metal: Reuse UBO conversion buffer only if size matches BufferMtl::getUniformConversionBuffer will recycle an existing buffer if the request has the same buffer index and offset that is a multiple of existing block size. This disregards the GL std size of the request leading to incorrect allocation of blocks in the conversion buffer. The fix is to create a new conversion buffer when stdSize != buffer.uniformBufferBlockSize. Bug: angleproject:8393 Change-Id: Ife87309e66f65baa7f636b734a5586d0ae3b9768 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4995450 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Quyen Le <lehoangquyen@chromium.org>
Shahbaz Youssefi ae3af8ee 2023-11-03T16:20:12 Manual roll VK-GL-CTS from 7d738783bf28 to b127977ddad4 (29 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/7d738783bf28..b127977ddad4 2023-11-03 gleese@broadcom.com Simplifications for float_controls tests 2023-11-03 javed@igalia.com Add tests for verifying VK_FORMAT_UNDEFINED as input format. 2023-11-03 rgarcia@igalia.com Remove ESO tests which do not actually use ESO 2023-11-03 rgarcia@igalia.com Add missing mandatory features #ifdef 2023-11-03 tzlatinski@nvidia.com Fix the verification of multi-layered decode images 2023-11-03 gleese@broadcom.com Remove unused code from integer function tests 2023-11-03 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.3.7 into vk-gl-cts/main 2023-10-30 lorenzo@khronosgroup.org Update external dependencies to the latest version 2023-10-27 lorenzo@khronosgroup.org Merge remote-tracking branch 'vk-gl-cts/dev/VK_EXT_nested_command_buffer' 2023-10-27 lorenzo@khronosgroup.org Merge vk-gl-cts/opengl-es-cts-3.2.9 into vk-gl-cts/main 2023-10-27 rgarcia@igalia.com Fix warning when building deqp-vksc 2023-10-26 gleese@broadcom.com Fix offsets in float controls tests 2023-10-26 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.3.7 into vk-gl-cts/main 2023-10-20 Tyler.Schneider@amd.com Ray Query multiple queries tests cases: dEQP-VK.ray_query.multiple_ray_queries.* 2023-10-20 rgarcia@igalia.com Test multiple geometry query stats simultaneously 2023-10-20 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.3.7 into vk-gl-cts/main 2023-10-20 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.3.7 into vk-gl-cts/main 2023-10-19 mateusz.bahyrycz@mobica.com Tests for depth stencil buffer resolve 2023-10-19 gleese@broadcom.com Add coverage of compute workgroup sizing 2023-10-19 gleese@broadcom.com Simplifying changes to spirv_assembly test structure 2023-10-19 rgarcia@igalia.com Remove redundant ESO and feedback loop layout tests 2023-10-19 mateusz.bahyrycz@mobica.com Tests for sparse resources on transfer queue 2023-10-19 amber@igalia.com Add tests for inherithed framebuffers with VK_EXT_depth_bias_control. 2023-10-19 cturner@igalia.com Remove the custom device code in the copies and blitting tests 2023-10-19 piotr.byszewski@mobica.com Improve compile times of some generated glsl tests 2023-10-19 gleese@broadcom.com Simplify BorderSwizzle TestNode 2023-10-18 ziga@lunarg.com Fix duplicated files in cmakelists.txt 2023-10-18 cturner@igalia.com Fix an unused variable warning in release mode 2023-10-16 lorenzo@khronosgroup.org Merge "Merge branch 'dev/VK_ANDROID_external_format_resolve'" into main If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vk-gl-cts-angle-autoroll Please CC angle-team@google.com,syoussefi@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: angleproject:8402 Change-Id: I99ac9c068080abf59f31e0f391da85cc0eb130b2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5002011 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Yuxin Hu <yuxinhu@google.com> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Geoff Lang f441e3ee 2023-11-01T15:22:55 Metal: Fix missing mix(float,float,bool) overload ANGLE has an ANGLE_mix_bool overload when the last parameter is a bool but it is not needed when the other parameters are scalar. Bug: chromium:1493243 Change-Id: I6ea904ed63055b49cf3eaded475eafa607ca5976 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4995278 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Geoff Lang 59f7467a 2023-11-01T14:53:42 Metal: Add missing ScalarMatrix ops Translations for the following built-ins were missing: scalar - matrix scalar + matrix scalar / matrix Bug: angleproject:7525 Change-Id: I5da85781829c195906cc689ffee55cb681f0337c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4995668 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Hailin Zhang 67222ef4 2023-10-20T22:56:09 Reland "Vulkan: merge client buffer data." This is a reland of commit 563569acfcaf56ea87916d2ab5d50f09c8e0094e Original change's description: > Vulkan: merge client buffer data. > > some old fashion game still use lots of interleaved > client buffer. instead of copy each attrib alone. > this cl try to merge all the attrib ranges. reduce > allocated memory and do whole range memcpy. > > Bug: b/306763053 > Change-Id: I493d7f0e1ef593fb7059c36ae0ed2149c4595e42 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4960642 > Commit-Queue: Hailin Zhang <hailinzhang@google.com> > Reviewed-by: Charlie Lao <cclao@google.com> Bug: b/306763053 Change-Id: If079ab055b7b7a2d14235bee3311fd628f657f35 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4997325 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Hailin Zhang <hailinzhang@google.com>
Mike Schuchardt 221117ab 2023-11-02T08:48:51 Tests: Add The Sims Mobile trace Test: angle_trace_tests --gtest_filter=TraceTest.the_sims_mobile Bug: b/308927628 Change-Id: I5de44b7eedb904c318168fbc7e308af218dc5ab1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5002145 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Mike Schuchardt 4cc9e0af 2023-10-31T11:19:51 Capture Tests: Fix unintentional gen-on-bind usage A handful of tests are binding handles without glGen'ing them first. This causes mismatched handles in capture_replay_test.py now that replay inserts additional gen calls for resources that aren't explicitly gen'd. For handles that are intentionally gen-on-bind, clean up the GL state so it doesn't miscompare. Test: capture_replay_tests.py --gtest_filter=*/ES3_Vulkan_SwiftShader Bug: b/303100333 Change-Id: I5ce8060ff62264b3d648722b3c4542a136d95db5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4994414 Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Mike Schuchardt <mikes@lunarg.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Yuly Novikov 918028a2 2023-10-31T17:53:07 Update bot detection in capture_replay_tests Since GOMA is going away, check username instead. Bug: angleproject:6085, angleproject:8309 Change-Id: Ie4fa4ec7fad8b52450c1ef8be9e5099f30c8fc7c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4994667 Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Shahbaz Youssefi 9a5d75de 2023-10-30T11:59:19 Vulkan: Fix incompatible redefinition of cube faces The TextureVk::mRedefinedLevels bitmask tracked which levels are incompatibly redefined, greatly reducing the complexity of dealing with GL's mutable textures. It did not however take into account the fact that GL allows each cubemap face to be separately redefined (unlike 2D arrays, where all layers are defined together). This change turns the bitmask into an array of bitmasks. Previously, a single bit represented whether the level is incompatibly redefined. Now, elements of the array track the same information for each cube face. For non-cube-map textures, only element 0 is used. Bug: chromium:1494664 Change-Id: I69568d3da2391796bf5f01505861fee42c6c8924 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4986289 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Chris Forbes c0c20673 2023-10-31T09:03:16 Remove expections for some AHB tests which are now fixed Bug: b/223456677 Change-Id: Ibdc5b529e249c39c241a8e8e2b78ac10ff3d5ad2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4988292 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Charlie Lao <cclao@google.com>
Alexey Knyazev b6607672 2023-10-30T00:00:00 Test sampling from a texture with renderable levels below base Bug: angleproject:8378 Change-Id: Id847849e1920c0d1706a4b3441c907ea2451cb6e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4994791 Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Geoff Lang 36f41997 2023-10-30T15:14:09 D3D11: CopySubTexture: Handle sRGB source with D3D11 Use typeless formats for sRGB textures that can be reinterpreted as linear. Add a parameter to SRV creation to request samplers that do not do sRGB for copying sRGB textures. Bug: angleproject:7907 Change-Id: I3d94dfa5b25a1c2c531cd9bef4247097aa4bfb61 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4986290 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Alexey Knyazev 118a9b14 2023-10-30T00:00:00 Test sampling from a texture with extra renderable levels Bug: angleproject:8378 Change-Id: I4790d59ce193a2aa4ba9e468debf0933a6e3fe47 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4987639 Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Charlie Lao c0f94afb 2023-10-30T11:07:02 Vulkan: Limit ImageTestES3.RGBXAHBImportMultipleLayers to 1 layer ImageTestES3.RGBXAHBImportMultipleLayers is testing 3 layer AHB with CPU write. It assumes alignment between each layer is 4096 which appears not always true in ARM driver. I am also not seeing any API that would tell us the underlying layer alignment. So for now restrict this test to single layer. Bug: b/223456677 Change-Id: I447990d08d31c2a20e8765686834f43b81560840 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4990044 Reviewed-by: Chris Forbes <chrisforbes@google.com> Commit-Queue: Charlie Lao <cclao@google.com>
Charlie Lao 5fa65ec8 2023-10-27T16:12:46 ImageTest: check support before test cubemap ImageTestES31.SourceAHBCubeArrayTargetCubeArray crahes because AHB creation failed. We should check kAHBUsageGPUCubeMap support and bail out if not supported. Bug: b/223456677 Change-Id: I0d66830ac892e673bc39cca8caf5e25822957775 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4985412 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Chris Forbes <chrisforbes@google.com>
Cody Northrop e519da9a 2023-10-29T14:33:06 Tests: Add Streets of Rage 4 trace Test: angle_trace_tests --gtest_filter="*streets_of_rage_4*" Bug: b/308334509 Change-Id: I3cc2d41c83bfcc6a32e6d1aec5e306cefb15afdc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4988132 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Mike Schuchardt <mikes@lunarg.com>
Charlie Lao bcd331f1 2023-10-27T15:21:35 ImageTest: Allow writeAHBData to fail ImageTest::SourceNativeClientBufferTargetRenderbuffer test is using EGL to create a AHB. eglCreateNativeClientBufferANDROID does not allow us to specify CPU access. So driver may allocate AHB in a way that prohibits CPU access. That will cause AHB lock to fail and writeAHBData crash. This is within AHB specification. This CL allows this to fail so that we wont crash. Bug: b/223456677 Change-Id: I549b940d1283165cec1dc48ea5b43ba917081252 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4985627 Reviewed-by: Chris Forbes <chrisforbes@google.com> Commit-Queue: Charlie Lao <cclao@google.com>