src/tests


Log

Author Commit Date CI Message
Brian Sheedy 81c7a7d9 2023-02-15T11:33:05 Use per-channel fuzzy threshold Switches the fuzzy threshold used in Gold-backed pixel tests to be per-channel instead of the sum of all channels. This means that a difference of [1, 1, 1, 0] between two pixels will now pass, whereas before that would have required a threshold of 3. This is intended to only ever auto-approve changes that can be attributed to rounding errors. Bug: angleproject:7985 Change-Id: Id057534c3e92ee9a4fbd1545fd1a16b28fea61b1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4256778 Auto-Submit: Brian Sheedy <bsheedy@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Alexey Knyazev 8c2fcc70 2023-02-02T00:00:00 Metal: Implement EXT_blend_func_extended Fixed: angleproject:8015 Change-Id: Ic92a8823869bf097349aee6241f6cfb86942c945 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4242128 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Kyle Piddington <kpiddington@apple.com>
Igor Nazarov ceb49b1c 2023-01-17T19:21:43 Vulkan: Fix crashes when Surface is not current. It is possible to destroy Surface while some resources are still in use (by CPU/GPU): 1. Make Surface current. 2. Draw something. 3. Make other Surface current (same Context). 4. (optional - if test Surface is Window Surface) Draw something. 5. Delete Surface. 6. UnMake the Context from current. 7. Different crashes possible depending on Surface type and what is done in step 2. Bug: angleproject:8017 Test: angle_end2end_tests --gtest_filter="EGLSurfaceTest.DestroyNotCurrent*Surface*" Change-Id: I3102aa237075b301b3222b420415753c83ba192a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4227073 Commit-Queue: Igor Nazarov <i.nazarov@samsung.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com>
Yuxin Hu 629da7fc 2023-01-26T12:25:04 Fix dEQP-EGL.functional.mutable_render_buffer#basic These are vulkan commands submitted between glClear() and glReadPixels() when the EGL_RENDER_BUFFER is EGL_SINGLE_BUFFER (ImageLayour is SharedPresent): ``` vkCmdClearColorImage() vkCmdPipelineBarrier: ( VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,//srcStageMask VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,//dstStageMask VK_ACCESS_MEMORY_WRITE_BIT,//srcAccessMask VK_ACCESS_MEMORY_WRITE_BIT|VK_ACCESS_MEMORY_READ_BIT//dstAccessMask ) vkCmdCopyImageToBuffer() ``` This means that operations at the bottom of pipeline in vkCmdCopyImageToBuffer() need to wait for operations at the top of pipeline in vmCmdClearColorImage(), which translates to vkCmdCopyImageToBuffer() does not have to wait for vkCmdClearColorImage() to finish. Even the dstAccessMask ensures that vkCmdCopyImageToBuffer() will invalidate cache before copying image, it is possible that it will retrieve the old Framebuffer color attachment data as the vkCmdClearColorImage() has not finished. This CL fixes the bug by making the srcStageMask to be VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT and the dstStageMask to be VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT, when the ImageLayout is SharedPresent. This ensures that vkCmdCopyImageToBuffer() waits for vkCmdClearColorImage() to finish. This CL also addresses similar issue in some other rx::vk::ImageLayout items in kImageMemoryBarrierData. Bug: b/264420030 Change-Id: If47ab071afaf96e396357cb0f50131339fa58509 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4198476 Commit-Queue: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com>
Constantine Shablya 31d576ca 2023-02-15T00:34:07 Tests: Add SuperTuxKart trace Test: angle_trace_tests --gtest_filter=TraceTest.supertuxkart Bug: angleproject:8023 Change-Id: I9d427700a5e3badde0e66e55b24d50725c338251 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4251637 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Mike Schuchardt 2e70fa15 2023-02-13T23:01:51 Tests: Add Top War: Battle Game trace Test: angle_trace_tests --gtest_filter=TraceTest.top_war Bug: b/269178202 Change-Id: I4537fb99227b6a357a2d16d83da6514ecfd2a39e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4246716 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Mike Schuchardt <mikes@lunarg.com>
Charlie Lao 9e33b83a 2023-02-14T11:47:17 Vulkan: Fix bug in EGLMultiContextTest.ReuseUnterminatedDisplay This test is not destroying the context properly, which leads to eglTerminate(dpy) not actually destroying the RendererVk. When the next test app runs, it calls RendererVk::initialize again and calls volkLoadInstance(mInstance). Because the previous RendererVk object is still there, and the two CommandQueue shares the same volk instance, writing to volk function table causes tsan to complain that other thread is still using the old function pointer that now gets overwritten. The test really should clean up properly here in order to have other test to continue to run. Bug: angleproject:7602 Change-Id: I93cd2439194aba9f28ce478aaf79ae8b81c6426b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4249984 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com>
Kenneth Russell ee64836f 2023-02-11T17:56:06 Revert "Metal: Optimized BufferSubData per device" This reverts commit 968041b54770af8917001d8fe9b52a881cfed0b2. Includes the following patches: git revert -n 995db1f66bcf87fc9e47d908fb2a885e810d2567 \ 9a6c90c8f802b4d107a081bfccaf4be007e7af54 \ dbd47e378582ef86db52c7379cd220cf0b2c8193 \ 369b320f92f54774879e8b8faff834fc8db0793e \ 4abae6f97586448712e2dc1cced4a678b0901d7b \ 968041b54770af8917001d8fe9b52a881cfed0b2 Several conflicts with top-of-tree were resolved during this revert. The aim is to reland this with additional code which will reduce the amount of excess buffer memory allocated, and release the resources associated with temporary buffer allocations. Bug: angleproject:7544 Change-Id: Ib7a6bc2ab1c2f23cb43112cd980106e2898c3826 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4240556 Reviewed-by: Kimmo Kinnunen <kkinnunen@apple.com> Reviewed-by: Gregg Tavares <gman@chromium.org> Commit-Queue: Kenneth Russell <kbr@chromium.org>
Igor Nazarov 48b6ebad 2023-02-13T16:37:15 Test: Move code of EGLSurfaceTest::runWaitSemaphoreTest(). To improve readability, code moved from class body closer to the tests. Bug: angleproject:7995 Change-Id: I2c0aef593b28cfffe2b04de308274d0007d863c5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4245177 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Geoff Lang cad19f01 2022-02-01T17:36:03 Vulkan: Wait forever when waiting on fences If a timeout occurs while waiting for the VK queue to be idle during context destruction, there is no way to safely delete the resources without potentially crashing as the driver is still reading them. Instead, wait forever and let Chrome's watchdog tear the process down. Bug: chromium:1223346 Change-Id: Ifa91465270f54b62a5ead88e8f26b3315072c380 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3430243 Reviewed-by: Zhenyao Mo <zmo@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Kimmo Kinnunen 62d35a60 2023-02-10T13:05:14 Metal Fix norm16 subimage uploads w/ signed types The supported texture format tables would have entries for a signed or unsigned internal format and matching type. The texSubImage variants do not communicate the sized internal format, rather unsized format type. Data parameters are validated based on format, not internal format. For these, the signed variants were missing. Add texture format table entries for signed types that match the format parameters. Add a precautionary validation case so that future such bugs would not pass the control flow forward, into the copying phase. Fixed: angleproject:8014 Change-Id: I5b00cca8672691fdb953f62093d62feaa724db99 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4238881 Commit-Queue: Kimmo Kinnunen <kkinnunen@apple.com> Reviewed-by: Kenneth Russell <kbr@chromium.org> Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
Roman Lavrov 90ddd7c7 2023-02-10T16:47:32 Tests: Add Mini Block Craft trace Test: angle_trace_tests --gtest_filter="*mini_block_craft*" Bug: b/267795849 Change-Id: Ia6087066476992367f432d5d032f6f5542eeb2d3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4241403 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Roman Lavrov <romanl@google.com>
Roman Lavrov a57e36dc 2023-02-10T12:21:36 Tests: Add Durak Online trace Test: angle_trace_tests --gtest_filter="*durak_online*" Bug: b/267794160 Change-Id: Id8047921bf5c48109fd7b59e8262849571701c5c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4241398 Commit-Queue: Roman Lavrov <romanl@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com> Auto-Submit: Roman Lavrov <romanl@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Igor Nazarov 0d0e8c37 2023-02-08T17:33:39 Vulkan: Fix mutable render buffer with protected content. Original implementation used Unprotected submission unconditionally. In case of protected content/commands this may cause undefined behavior. New test works OK despite the bug. VVL also did not show error, but should report: VUID-VkSubmitInfo-pNext-04120 If the pNext chain of this structure does not include a VkProtectedSubmitInfo structure with protectedSubmit set to VK_TRUE, then each element of the pCommandBuffers array must be an unprotected command buffer Also from spec: protectedSubmit specifies whether the batch is protected. If protectedSubmit is VK_TRUE, the batch is protected. If protectedSubmit is VK_FALSE, the batch is unprotected. If the VkSubmitInfo::pNext chain does not include this structure, the batch is unprotected. It is a bug in VVL. It ignores check entirely if VkSubmitInfo::pNext chain does not include VkProtectedSubmitInfo structure. Bug: angleproject:3966 Test: angle_end2end_test --gtest_filter="EGLProtectedContentTest.ProtectedContextWithProtectedMutableRenderBufferWindowSurface*" Change-Id: I0e0762e5fdfe19ce6c2184a36d057a95c2c79f00 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4232115 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Roman Lavrov 4c978523 2023-02-08T13:46:01 Tests: Add Add Words Crush: Word Puzzle Game trace Test: angle_trace_tests --gtest_filter="*words_crush*" Bug: b/267795212 Change-Id: I7c5c19b4306dd9b141f8880e1b4e7948629b6a73 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4233090 Commit-Queue: Roman Lavrov <romanl@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Yuly Novikov 1936ac00 2023-02-08T18:51:58 Fix InstancingTestES3.LargeDivisor suppression Really skip on Win SwANGLE Bug: angleproject:7900 Change-Id: Idcce5545eb4a990c1bc571acf537aac3347a3191 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4231842 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> 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>
Le Hoang Quyen 92f26ce3 2023-02-02T17:53:48 Metal: fix UBO argument buffers didn't work with managed storage. This bug would happen when forceBufferGPUStorage feature is turned on. This feature forces all buffers to use managed storage mode. We use mtl::BufferPool to allocate an UBO argument buffer. However, we didn't tell it to map the buffer. Later when we used MTLArgumentEncoder to encode the buffer, mtl::Buffer::flush would be a no-op because the Buffer didn't know that it was modified by the MTLArgumentEncoder on the CPU. Consequently, its memory's encoding write wouldn't be visible to the GPU. Fix by passing a mapped pointer to mtl::BufferPool::allocate. This will force a buffer mapping to occur. And memory flushing will properly be invoked after MTLArgumentEncoder finishes the encoding. Fixed: angleproject:7999 Change-Id: Ie486ae526672c89548ee14bc0824da1fdd5673c0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4217055 Reviewed-by: Kimmo Kinnunen <kkinnunen@apple.com> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Gregg Tavares <gman@chromium.org> Commit-Queue: Quyen Le <lehoangquyen@chromium.org>
Igor Nazarov b6cc5754 2023-01-17T16:17:22 Vulkan: Fixed Wait Semaphores problems. This feature fixes 2 problems. 1. Swapchain Image Acquire Semaphore added to wait list AFTER rendering commands: - Make Window Surface current. - Clear Window Surface (Image is Acquired). - Perform rendering to the Window Surface. - Change to other Surface (for example: PbufferSurface) using the same Context. - Unmake Context from current to ensure commands are submitted. - Rendering commands to the Window Surface will be submitted without Acquire Semaphore. 2. Context from other thread may submit command of another Context without proper Wait Semaphores: - Make Window Surface current in the first context. - Clear Window Surface (Image is Acquired). - Perform rendering to the Window Surface. - Call "glBeginQuery()/glEndQuery()" (or other commands) - this will flush command to the Primary Command Buffer without submitting. - In other Thread and Context make some Surface current (for example: PbufferSurface). - Clear that surface with scissor and unmake Context from current to ensure commands are submitted. - Rendering commands to the Window Surface from the first Context will be submitted without Acquire Semaphore. - Problem will happen even if add Wait Semaphore BEFORE writing rendering commands. Bug: angleproject:7995 Test: angle_end2end_tests --gtest_filter="EGLSurfaceTest.WaitSemaphoreAddedAfterCommands*" Test: angle_end2end_tests --gtest_filter="EGLSurfaceTest.CommandsSubmittedWithoutWaitSemaphore*" Change-Id: I28174ff98fdd09b4117962fc0810cfeeb2a4d1f1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4194182 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com>
Shahbaz Youssefi b3846714 2022-11-28T11:05:05 Vulkan: Feature to make async queue slow for testing Bug: angleproject:6746 Change-Id: I2573cae2dcf42d177168c55bc2a6d8bb012dde18 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4227986 Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com>
Charlie Lao 11951f2f 2023-01-31T09:56:16 Vulkan: Add FixedQueue class for CommandProcessor::mTask This CL adds FixedQueue class. It uses std::array for the storage. It supports concurrent push and pop from two different threads. If producer want to push from two different threads, then proper mutex must be used to ensure the access is serialized. Similarly if consumers want to pop from two different threads, a mutex must be used to ensure serialized access. Caller must ensure queue is not empty before pop and not full before push. This CL switches CommandProcessor::mTasks to FixedQueue and moved mSubmissionMutex to protect the serialized submission (i.e, pop from queue). mWorkerMutex is still used to protect push operation. With this change, we now supports continued enqueue to mTask of CommandProcessor while other context is doing CommandProcessor::waitForResourceUseToBeSubmitted(). Bug: b/267348918 Change-Id: I6c5fe288436daa7e0f3bcbbcd16c5d2e5e27f2e9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4210653 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Igor Nazarov 0ee67145 2023-02-06T18:08:26 Vulkan: Fix bug with ContextVk::mWaitSemaphores processing. Regression: 2e5ca217ca134a7ae4e241e2f7e4cfa637305af7 Vulkan: Let each current context has its own QueueSerial. Problem details: - Call to finishImpl()/flushImpl() will skip mWaitSemaphores processing when there are no pending commands. - finishImpl() will call clearAllGarbage() that will clear all mCurrentGarbage. - However, some mWaitSemaphores may be in the mCurrentGarbage (Semaphore created in SyncHelperNativeFence::serverWait()). Bug: angleproject:8007 Test: angle_end2end_tests --gtest_filter="EGLSyncTest.AndroidNativeFence_VkSemaphoreDestroyBug*" Change-Id: Ia51663eae739b505ca00437cea4ae71526dedbfb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4225392 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
Brian Sheedy 2510afd2 2023-02-02T13:30:26 Enable Skia Gold inexact matching Enables inexact matching for ANGLE tests that use Skia Gold using the fuzzy algorithm. This will allow images to be auto-approved if it appears that the differences are due to rounding. Bug: angleproject:7985 Change-Id: Iee791ff2bd06ce426d27e05cf5a6eb0058e857af Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4219862 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Alexey Knyazev db86154e 2023-02-03T00:00:00 Adjust TextureState::isStencilMode Backends that need special setup for sampling stencil data rely on the TextureState::isStencilMode() helper function. Ensure that it returns true only when: * the sampled texture has a combined depth-stencil format and the depth-stencil texture mode is set to stencil, OR * the sampled texture has a stencil-only format. New tests cover sampling of all six depth, stencil, and combined depth-stencil formats with both modes. Bug: angleproject:2373 Change-Id: I2b47dc86aea44de507f9eb8d301a0a6d5211aee4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4218603 Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Yuly Novikov 99063e20 2023-02-03T16:56:25 Skip flaky crashing test on TSAN MultithreadingTest.CreateMultiSharedContextAndDraw Bug: angleproject:8002 Change-Id: I58075b24f6767e4c23b8787234eff93b29cb0560 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4218362 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>
Mark Lobodzinski 173003af 2023-02-02T13:19:57 Tests: Add Lilys Garden trace Test: angle_trace_tests --gtest_filter=TraceTest.lilys_garden bug: b/267577743 Change-Id: I5dc64293767c30a0e4f79ca5779db092d34a9998 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4219853 Commit-Queue: Mark Łobodziński <mark@lunarg.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Alexey Knyazev 4391d807 2023-01-19T00:00:00 Metal: Fix gl_FragDepth shader specialization Adjust fragment shader variants cache to account for depth attachment presence. Fixed: angleproject:7961 Change-Id: Ia6390d336d8b5c4abceb1050853e0665f117b156 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4218391 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Kyle Piddington b23bf47c 2023-01-25T18:50:40 Reland "Metal: rewrite default uniforms and uniform blocks" Instead of rewriting uniforms in shaders to match std140 layout, re-pack incoming uniform blocks' std140 packed variables to match Metal's layout. This change intorduces a new BlockLayoutEncoder for Metal types The block encoder handles packing typically larger GL types (bools) into smaller types, and adding support for more compressed matrix types. Since we no longer need to do shader-time packing and unpacking of data from std140 padded structs, complicated shader transformations have been removed. This patch greatly reduces register pressure, especially when working with shaders with arrays of previously expanded types. (Vec3's) Reland: Fix an issue where the default uniform block's final size was not aligned to the default uniform block's alignment requirements, causing crashes with the debug layer enabled. Bug: angleproject:7137 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3733524 Commit-Queue: Kyle Piddington <kpiddington@apple.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Change-Id: I89d3b817675486fde73b91b0be0f4c25986d4ba5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4209867
Alexey Knyazev 17931e23 2023-01-27T00:00:00 Fix stencil and depth/stencil data uploads Multiple changes were made to depth and stencil load functions, removing redundant code and fixing issues. Failures were caused by incorrect assumptions about component locations in combined formats. * D32_FLOAT_S8X24_UINT has the same layout as GL_FLOAT_32_UNSIGNED_INT_24_8_REV * D24_UNORM_S8_UINT has stencil data in its MSBs, while GL_UNSIGNED_INT_24_8 puts it in LSBs. Bugfixes * Added LoadD24S8ToS8D24 that swaps D24 and S8 components * Added LoadS8ToS8X24 for stencil-only uploads on D3D * Replaced LoadD24S8ToD32F with LoadD32ToD32F * Fixed D and S extraction in LoadD24S8ToD32FS8X24 * Fixed stencil load and store in LoadD32FS8X24ToS8D24 and LoadD32FS8X24ToD32FS8X24 * Fixed S8_UINT subresource updates in Vulkan * Fixed D24_UNORM_S8_UINT subresource updates from GL_FLOAT_32_UNSIGNED_INT_24_8_REV data in Vulkan Cleanup * Renamed LoadUNorm16To32F to LoadD16ToD32F * Removed LoadUNorm32To32F, replaced it with LoadD32ToD32F * Renamed LoadR32ToR24G8 to LoadD32ToX8D24 * Renamed LoadD32FS8X24ToD24S8 to LoadD32FS8X24ToS8D24 * Removed unused LoadG8R24ToR24G8 * Removed Metal-specific LoadS8D24S8ToD32FX24S8, made use of the fixed LoadD24S8ToD32FS8X24 instead * Simplifed LoadD24S8ToD32F Added Texture2DTestES3.TexImageWithStencilData. Fixed: chromium:1408004 Fixed: angleproject:5317 Change-Id: I231345353aa4a7cebe46ded8458ac80de2c59e01 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4203427 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Dave Tapuska 2e9909f5 2023-01-31T13:50:08 Metal: Enable Metal on iOS in gni build. Use is_apple instead of is_mac to enable metal on iOS. Some iOS simulator Metal tests needed to be added to the test expectations as they fail on the Intel buildbot. These will to be progressively fixed out of band. Bug: chromium:1411704, angleproject:7994 Change-Id: I4df036d76f48d165da444f769607194dbe7d4957 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4210649 Auto-Submit: Dave Tapuska <dtapuska@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Kenneth Russell <kbr@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Igor Nazarov 3e65d0b6 2023-02-01T15:17:43 Test: Fixed EGLContext leak in the EGLSurfaceTest tests. "EGLSurfaceTest.RobustResourceInitAndEmulatedAlpha/*" causes "EGLContext" leak. This test calls "initializeSingleContext()" on "mContext" that was already implicitly initialized in the "initializeSurface*()". Added assertions in order to catch EGLContext/EGLSurface leaking. Fix details: - removed implicit "initializeContext()" call, to remove confusing when it is necessary make explicit call or not. - rename "initializeContext()" into "initializeAllContexts()" to better reflect what it does. - "initializeContext()" now creates contexts unconditionally, like once before. Lazy initialization is not required, because there is no longer implicit call in the "initializeSurfaceWithAttribs()". - Created "initializeMainContext()" instead of calling "initializeSingleContext()" directly. Bug: angleproject:7996 Change-Id: I05954f7a044c12798ac857b877ecede6989526eb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4208870 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Igor Nazarov <i.nazarov@samsung.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Cody Northrop 9399c508 2023-01-31T20:37:39 Tests: Add Piano Kids - Music & Songs trace Test: angle_trace_tests --gtest_filter="*piano_kids*" Bug: b/267393674 Change-Id: I77637aa04e4a38b2915f3cd3bcb224468bb6323f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4211594 Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Cody Northrop 6486b25a 2023-01-31T19:59:41 Tests: Add 2 3 4 Player Mini Games trace Test: angle_trace_tests --gtest_filter="*2_3_4_player_mini_games*" Bug: b/267390255 Change-Id: Ia3a20af6126534fb6004a46470fe40316512486c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4211592 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Roman Lavrov <romanl@google.com>
Cody Northrop 754c923b 2023-01-31T16:32:31 Tests: Add Callbreak trace Test: angle_trace_tests --gtest_filter="*callbreak*" Bug: b/267369413 Change-Id: I00910bf3f683eeb35e3a9c2320fb5c62a82a81ec Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4209863 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Alexey Knyazev 9cc2a0b8 2023-01-30T00:00:00 Remove EXT_polygon_offset_clamp suppressions Bug: angleproject:7957 Change-Id: I4bd9ff8433964a5d0b997f50cb2ecbe4a6eaa9c4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4205887 Auto-Submit: Alexey Knyazev <lexa.knyazev@gmail.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Kenneth Russell <kbr@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Mark Lobodzinski e4dfdde9 2023-01-31T11:35:02 Tests: Add Age of Origins Z trace Test: angle_trace_tests --gtest_filter=TraceTest.age_of_origins_z Bug: b/267289988 Change-Id: Ic7ca3270879b83a47101e58b86bad056a002dbf6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4209853 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Mark Łobodziński <mark@lunarg.com>
Yuly Novikov 6712c48e 2023-01-31T16:09:34 Skip flaky timeout test on Win SwANGLE MultithreadingTestES3.ProgramUseAndDestroyInTwoContexts Bug: angleproject:7992 Change-Id: I6c0df0f7c9e1b037fe67ee955e72fa65a0916c77 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4208869 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Igor Nazarov 786d237f 2023-01-26T22:24:03 Vulkan: Fixed bug in rx::vk::SharedFence with repeated init(). Bug: b/261106868 Test: angle_white_box_tests VulkanSharedFenceTest* Change-Id: I1e657a52332b2166f05841f91747b1bfec1504e7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4194177 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Charlie Lao <cclao@google.com>
Charlie Lao 7101b374 2023-01-27T16:03:16 Vulkan: Enable AndroidNativeFence_ClientWait test EGLSyncTest.AndroidNativeFence_ClientWait test appears working. Re-enable the tests. Bug: angleproject:5981 Bug: angleproject:6931 Change-Id: Ic031d0ad9bddc75156222594ddc9809764a62f18 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4201090 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Charlie Lao <cclao@google.com>
Cody Northrop 4716d85e 2023-01-10T20:31:37 Tests: Add LIMBO trace Test: angle_trace_tests --gtest_filter="*limbo*" Bug: angleproject:7945 Change-Id: Ic52af324ed554d62daafc8e27c373cebd52f9bdb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4152869 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Roman Lavrov <romanl@google.com>
Sean Risser b96d1955 2023-01-20T16:06:34 Implement GL_ARM_shader_framebuffer_fetch GL_ARM_shader_framebuffer_fetch allows fragment shaders to read gl_LastFragColorARM. The extension is similar to GL_EXT_shader_framebuffer_fetch, but is more limited in its capabilities. GL_ARM_shader_framebuffer_fetch was removed from HasFramebufferFetch() because it acts differently from GL_EXT_shader_framebuffer_fetch in significant enough ways that it should not be included in that single-use function. Tests: FramebufferFetchES31.*_ARM Bug: b/242419750 Bug: angleproject:7882 Change-Id: Id3a25c8ee50ca3e2a4c30a2261f507b0b53511ec Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4083108 Commit-Queue: Sean Risser <srisser@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Mark Lobodzinski 60ad92e4 2023-01-27T11:53:05 Tests: Add Goddess Of Victory: Nikke trace Test: angle_trace_tests --gtest_filter=TraceTest.goddess_of_victory_nikke Bug: angleproject:7982 Change-Id: Id4b49dce6be91bdca85c493d36dec2616be3392c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4199070 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Mark Łobodziński <mark@lunarg.com>
Roman Lavrov 06720c9b 2023-01-25T11:46:16 Add binding to DescriptorInfoDesc. Otherwise we're hitting the cache falsely https://anglebug.com/7974#c1 (repro in test added in this CL) UpdatePreCacheActiveTextures now gets the binding using the same calls as updateFullActiveTextures, updateExecutableActiveTexturesForShader There might be a better way to do this but it's more complicated. Filed https://anglebug.com/7974 to track. Test credit of Shahbaz Youssefi syoussefi@chromium.org Bug: b/242887117 Bug: angleproject:7974 Change-Id: I481147336437ee4bdce040a3ae81f168e5dffe29 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4104121 Commit-Queue: Roman Lavrov <romanl@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com>
Mohan Maiya 1d9b8d80 2023-01-24T16:50:32 Reland "Add support for glShaderBinary" This is a reland of commit 228973e73135924ddf6116e0b63eff5a1ccbf232 with the following fixes - 1. Apply patch from Yuly to fix chromium build errors 2. Fix ShaderBinaryTest instantiation call 3. Add ShaderBinaryTest to expectations file for IOS Original change's description: > Add support for glShaderBinary > > This patch adds the following - > 1. ANGLE_shader_binary extension and GL_SHADER_BINARY_ANGLE token. > 2. Compiler support to generate shader binaries. > 3. Update compiler to use SH_SPIRV_VULKAN_OUTPUT as output type for > Vulkan translator. > 4. Support to load GL_SHADER_BINARY_ANGLE binaries. > 5. end2end tests for glShaderBinary. > > Tests: ShaderBinaryTest* > Bug: angleproject:7833 > Change-Id: I191d5ba7c4d5304696f5e743c851dc945fa57858 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4137306 > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > Commit-Queue: mohan maiya <m.maiya@samsung.com> > Reviewed-by: Charlie Lao <cclao@google.com> Bug: angleproject:7833 Change-Id: I21135c52e2bae955342a99aff5631ba0e687eff1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4195852 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Mike Schuchardt 6938b883 2023-01-26T13:57:00 Tests: Add Dragon Ball Z Dokkan Battle trace Test: angle_trace_tests --gtest_filter=TraceTest.dragon_ball_z_dokkan_battle Bug: angleproject:7980 Change-Id: If7a69d81d7256a90420fad65739ff61e907f5d16 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4198477 Commit-Queue: Mike Schuchardt <mikes@lunarg.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Cody Northrop bed19c47 2023-01-26T10:41:23 Tests: Add Bubble Shooter and Friends trace Test: angle_trace_tests --gtest_filter="*bubble_shooter_and_friends*" Bug: b/266823872 Change-Id: I6dfec3b3349675791e3cb7c41bed52b146cb7bee Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4195848 Auto-Submit: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Alexey Knyazev ef0fe638 2023-01-16T00:00:00 Implement EXT_polygon_offset_clamp * Added polygonOffsetClamp to the RasterizerState * Adjusted State::setPolygonOffsetParams * Added PolygonOffsetClampTest end2end tests * Added StateChangeTestES3.PolygonOffsetClamp test * Suppressed the affected dEQP test as it has a bug Capture * Updated serialized rasterizer state * Updated CaptureMidExecutionSetup OpenGL * Rely on the EXT extension defined both for desktop and ES contexts * On desktops, might as well use the ARB extension or GL 4.6 once ANGLE supports them D3D11 * Requires FL10_0 or higher * Maps to D3D11_RASTERIZER_DESC.DepthBiasClamp * Drive-by cleanup of extensions init code Vulkan * Requires depthBiasClamp physical device feature * Maps to the depthBiasClamp parameter of the vkCmdSetDepthBias command Metal * Maps to the clamp parameter of the setDepthBias command Bug: angleproject:7957 Change-Id: If6b28df4084f0a81db29f75fb434e75d394c8730 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4169945 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Sean Risser 0133b6f1 2023-01-20T16:02:27 Add GL_ARM_shader_framebuffer_fetch builtins Bug: b/242419750 Bug: angleproject:7882 Change-Id: I85582ad21e58e448b740789ec88f783c8b95ee01 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4189028 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Sean Risser <srisser@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 862e3e95 2023-01-26T10:01:23 Skip failing capture/replay multithreaded test Bug: angleproject:7423 Change-Id: If193d7d2cdbec661c4d73cd039341333f8f1936d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4197835 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Yuly Novikov 0c9cbf39 2023-01-26T12:07:51 Revert "Add support for glShaderBinary" This reverts commit 228973e73135924ddf6116e0b63eff5a1ccbf232. Reason for revert: breaks compile on ANGLE into Chromium roll https://cr-buildbucket.appspot.com/build/8790942326644064097 https://cr-buildbucket.appspot.com/build/8790942759045412865 https://cr-buildbucket.appspot.com/build/8790942417069789217 Leaks detected on ASAN https://cr-buildbucket.appspot.com/build/8790946657703508337 Original change's description: > Add support for glShaderBinary > > This patch adds the following - > 1. ANGLE_shader_binary extension and GL_SHADER_BINARY_ANGLE token. > 2. Compiler support to generate shader binaries. > 3. Update compiler to use SH_SPIRV_VULKAN_OUTPUT as output type for > Vulkan translator. > 4. Support to load GL_SHADER_BINARY_ANGLE binaries. > 5. end2end tests for glShaderBinary. > > Tests: ShaderBinaryTest* > Bug: angleproject:7833 > Change-Id: I191d5ba7c4d5304696f5e743c851dc945fa57858 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4137306 > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > Commit-Queue: mohan maiya <m.maiya@samsung.com> > Reviewed-by: Charlie Lao <cclao@google.com> Bug: angleproject:7833 Change-Id: Ice19576acbc1351810ff0cd769ac17ad6c0abdf3 No-Try: true No-Presubmit: true Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4197375 Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Roman Lavrov b64b573b 2023-01-25T18:25:27 Capture/Replay: disable more multi-threaded tests. EGLMultiContextTest tests similar to the already-disabled tests in MultithreadingTestES3 Something flaked in https://ci.chromium.org/ui/p/angle/builders/try/win-trace/4839/overview Bug: angleproject:7423 Change-Id: I4a484954bca727a053437d1d6e52562f2b1344a9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4191998 Auto-Submit: Roman Lavrov <romanl@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Mohan Maiya 228973e7 2023-01-24T16:50:32 Add support for glShaderBinary This patch adds the following - 1. ANGLE_shader_binary extension and GL_SHADER_BINARY_ANGLE token. 2. Compiler support to generate shader binaries. 3. Update compiler to use SH_SPIRV_VULKAN_OUTPUT as output type for Vulkan translator. 4. Support to load GL_SHADER_BINARY_ANGLE binaries. 5. end2end tests for glShaderBinary. Tests: ShaderBinaryTest* Bug: angleproject:7833 Change-Id: I191d5ba7c4d5304696f5e743c851dc945fa57858 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4137306 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: mohan maiya <m.maiya@samsung.com> Reviewed-by: Charlie Lao <cclao@google.com>
Charlie Lao 6a5e61cd 2023-01-11T16:49:52 Vulkan: Make ThreadSafeCommandQueue's wait without lock This CL makes all wait functions in ThreadSafeCommandQueue class to wait without holding the lock, so that other contexts can still submitting commands or make calls into CommandQueue. To make this work, Shared<Fence> has been refactored into SharedFence class which is RAII and manages refcounted VkFence object. It's copy constructor simply adds a reference to the underline fence object, so that the local copy of a SharedFence object guarantees underline vkfence will remain valid. RAII makes sure that local copy of SharedFence will not leak refcount. The ThreadSafeCommandQueue wait functions makes a local copy of SharedFence so that it can unlock and wait and then relock. This CL also adds a new test for this: EGLMultiContextTest.ThreadBCanSubmitWhileThreadAWaiting Bug: b/261106868 Change-Id: I96ecfa1d9f7a3dc646ff2287d789313a9f8fb75d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4159871 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Yuxin Hu c9094ca6 2023-01-25T11:46:44 Skip flaky tests dEQP-GLES31.functional.image_load_store.buffer* Skip these flaky tests on OpenGL backends on Windows and Linux: dEQP-GLES31.functional.image_load_store.buffer.atomic. comp_swap_r32i_return_value; dEQP-GLES31.functional.image_load_store.buffer.atomic. comp_swap_r32ui_return_value Bug: b/266710445 Change-Id: I78684e661ec789ff116658c06c8c341b4db8aa9e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4194034 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Charlie Lao <cclao@google.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Charlie Lao 9a72a98e 2023-01-19T13:17:42 Vulkan: Fix the VVL error for shaderRead to shaderRead barrier When we use image from fragment shader read to vertex shader read, we detect the case (same layout with only shader stage change) and just merge the barrier into one. But that can only done if these two usages are for the same render pass. If it is different render pass, then you still have to issue a new barrier. Previously there is no way to detect that the barrier was issued for which render pass. With the fix in crrev.com/cl/4136948, we now know which render pass issued the last barrier. With that we are able to limit the shader stage consolidation only if they are for the same render pass, thus fixing the VVL errors. Bug: angleproject:6663 Change-Id: I3d884336e8cf1f3cf16fc3e5a3423357ae2ed3c1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4182542 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Jeff Vigil 6338909e 2023-01-19T13:18:41 EGL: Remove protected content test case Remove Protected content test: Protected context with unprotected texture since it is a spec violation to render to an unprotected texture from a protected context Bug: angleproject:7967 Change-Id: I40ce205a962614fe726417b0ed921b3a5133c079 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4182560 Commit-Queue: mohan maiya <m.maiya@samsung.com> Reviewed-by: Jeff Vigil <j.vigil@samsung.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Cody Northrop 057997e4 2023-01-20T16:47:00 Tests: Add CSR2 Drag Racing trace Test: angle_trace_tests --gtest_filter="*csr2_drag_racing*" Bug: b/266249089 Change-Id: I61e4d44fa9ed4bfc5cce1177189d93397cc8a8ae Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4184944 Auto-Submit: Cody Northrop <cnorthrop@google.com> Commit-Queue: Roman Lavrov <romanl@google.com> Reviewed-by: Roman Lavrov <romanl@google.com>
Roman Lavrov 77e995c0 2023-01-20T15:03:45 Tests: Add Family Island trace Bug: b/266228507 Change-Id: I077236dad048662f093f65a7702a27b09205bdd4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4185155 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Roman Lavrov <romanl@google.com>
Cody Northrop 134acaba 2023-01-20T11:34:55 Tests: Add Royal Match trace Test: angle_trace_tests --gtest_filter="*royal_match*" Bug: b/266220659 Change-Id: I7fcc81611dd2a566ba9b6f7cc97ea6efdc345339 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4184935 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Roman Lavrov <romanl@google.com>
Cody Northrop d2be1163 2023-01-18T23:10:26 Tests: Add Words of Wonders trace Test: angle_trace_tests --gtest_filter="*words_of_wonders*" Bug: angleproject:7965 Change-Id: I6fa9176a1ae90a85421aed6ed5a2101155bbe87b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4179705 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Jamie Madill 2c4de3a7 2023-01-03T16:07:35 Trace Interpreter: Support Genshin Impact. Includes a couple fixes: - parsing hexidecimal values instead of enums - support sharing strings and functions between modules - support 32-bit int pointers Bug: angleproject:7887 Change-Id: I6e20a64a862c45c17ccde78a58d6069d83b31867 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4135797 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Jamie Madill c0931807 2023-01-18T12:26:35 Fix flaky Capture/Replay FenceSyncTests. These tests were flaky because of the window size. Bug: angleproject:6510 Change-Id: Ib3fc9de75ab3ffa2c4ff95e6ac9fedea1055c993 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4178013 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Mohan Maiya 90b6d511 2023-01-13T10:06:12 Vulkan: Add support for AHB usage FRONT_BUFFER flag AHB usage flags have been updated to include front buffer usage. AHBs tagged with this flag need to be handled similar to single-buffered window surfaces especially w.r.t glFlush semantics. Account for the new usage flag when deferring flushes. Bug: angleproject:7956 Test: Android VTS GraphicsFrontBufferTests.* Change-Id: I79440d8447ac569c3d785de191815d2d2f3f069f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4167063 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: mohan maiya <m.maiya@samsung.com>
Jamie Madill fb94622c 2023-01-18T14:47:56 Trace Tests: Clean up desktop skips. These were confusing SwiftShader and ANGLE / Native drivers. Fix these by using helper variables. This isn't an issue on Android because our Android tests don't have SwiftShader. Bug: angleproject:7887 Change-Id: I414f59a8eb1155aaf8b98bf5c3104273cbb5b72d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4178015 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Roman Lavrov 2ce5a632 2023-01-18T11:01:41 Log screen state if log=debug. Prints either of: mScreenState=ON_UNLOCKED mScreenState=ON_LOCKED mScreenState=OFF_LOCKED Oddly, there doesn't seem to be a standard way to do this on Android, so using the nfc trick with "|| true" to ignore potential failures. Also setup logging using the util in run_angle_android_test as the current way seems to no longer be working. Bug: chromium:1405504 Change-Id: I448be86e8f0d72905948e68ffb076605273fa958 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4178011 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Auto-Submit: Roman Lavrov <romanl@google.com> Commit-Queue: Roman Lavrov <romanl@google.com>
Qin Jiajia e58e77f5 2022-11-10T12:49:03 Support timestamp behind flag enableTimestampQueries All timestamp queries happen in the same disjoint query in one Context11. The whole design is that we start a disjoint query in D3D11 at the first timestamp request and keep it continuously running in current context. Only end it and read it back when the user queries if there is a disjoint. We cache the frequency and assume it doesn't change. For the first timestamp, we create a temporary D3D disjoint query and end it so we have a frequency to convert the ticks to nanoseconds. This task is taken over from https://chromium-review.googlesource.com/c/angle/angle/+/3694732 Bug: angleproject:7367 Change-Id: I747c9b00e10ac58362df66332efd01a24aa395f2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4021139 Commit-Queue: Jiajia Qin <jiajia.qin@intel.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 24527150 2023-01-12T12:55:59 Fix test teardown in ProgramPipelineTest31. We were deleting objects in the test desctructor, which could cause crashes in TSAN. Bug: angleproject:7944 Change-Id: Ib9d4f236cc79bcb20c971feca86d053120440769 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4162557 Auto-Submit: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Charlie Lao 410d8ba5 2022-12-21T13:27:00 Vulkan: Cleanup ContextVk::hasStartedRenderPass APIs ContextVk has a few hasStartedRenderPass APIs which interpret "start" inconsistently. A RenderPassCommands' life should be notStarted, started, requestEnd, and end (which is equivalent to notStarted). When someone calls onRenderPassFinished on a started renderpass, it does not immediate endRenderPass, but it will set DIRTY_BIT_RENDER_PASS dirty bit so that next draw call will trigger endRenderPass and start a new renderPass. We do not have a name for this state, which adds some confusion. This CL renames the stage between start and onRenderPassFinished to be "active" renderpass, when you have mRenderPassCommandBuffer pointer being valid and you can actively adding draw commands into the renderPass. For this purpose, I haves renamed hasStartedRenderPass to hasActiveRenderPass. This CL also simplifies hasStartedRenderPass implementation to only check mRenderPassCommandBuffer and turned mRenderPassCommands.started as assertion. This CL also changes hasStartedRenderPassWithQueueSerial to actually check mRenderPassCommands.started instead of being "active", so that name reflects what it is actually checking. This CL also changed hasStartedRenderPassWithCommands to hasActiveRenderPassWithCommands to make name and implementation consistent. One added benefit of this is that after this CL we now allow load/store optimization on a started but inactive renderPass as well (for example glInvalidateFramebuffer call after glFenceSync call, or invalidate after FBO blit as demonstrated by MultisampleResolveTest.ResolveD32FSamples tests). Bug: angleproject:7903 Bug: angleproject:7551 Change-Id: I8c8ec4c0d54b9ad0a9e373108dfce6b151c8fe0e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4119693 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com>
Alexey Knyazev 8f1a7190 2022-12-23T00:00:00 Accept clip distance enums for simple queries State variables for which IsEnabled is listed as the query command can also be obtained using any of the simple queries. Bug: angleproject:4452 Change-Id: I075db600b772e5370c72c0f4de9b35e007259987 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4158331 Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Jamie Madill e21b95ed 2023-01-11T12:56:29 Fix bad ANGLE GL tests. These tests were calling GLES functions in the destructor, which would lead to nullptr deferences. This was only caught in TSAN for some reason. Bug: angleproject:7947 Change-Id: I47dd0edba19d029757c8ddb282ca06a7e1baab45 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4157174 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Amirali Abdolrashidi f1872822 2022-12-22T17:17:37 Vulkan: Fix imageless framebuffer VVL issue In some tests, including some blink tests, there were cases of VVL messages spamming the output log, even though they did not always cause a failure. Investigation showed that in some cases, the call to EGL_CreateImageKHR() was not setting all the attributes in the ImageHelper object that is used later for an imageless framebuffer, specifically the one created in VkImageImageSiblingVk::initImpl(). * Added the usage flags and view formats in the new image created in VkImageImageSiblingVk. * Added a Vulkan image test to make sure the error is fixed. Bug: b/261473248 Bug: angleproject:7845 Change-Id: I1874b2930e9ce62e5b603cf7acff6fd78b957d5b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4117584 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Alexey Knyazev d0c936cf 2022-12-23T00:00:00 Check clip and cull distance storage qualifiers When redeclared, these built-ins must be outputs in vertex shaders and inputs in fragment shaders. Bug: angleproject:4452 Change-Id: I811764009669ec358f05eb7a26297742baf2de63 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4120264 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Constantine Shablya e6057341 2023-01-11T00:35:34 Add test coverage for CL 3906392 Test: angle_end2end_tests --gtest_filter="*ColorMaterialTest*" Bug: angleproject:6201 Change-Id: Ic92a185f60180d6e88a5a414626e3d9b4585e2b8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4152532 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Constantine Shablya <constantine.shablya@collabora.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Kenneth Russell 70b5620e 2023-01-10T17:16:41 Metal: skip out variable rewrite for array element references. ANGLE_elem_ref already returns a reference which is incompatible with the ANGLE_out and ANGLE_inout builtins. Skip the rewrite for this builtin, similarly to swizzle_ref for which it was already skipped. Add a small regression test which catches this bug. Fixed: angleproject:7939 Change-Id: Iff8ead697220466ceb063ea2f8eebdb7d9e5896d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4152866 Commit-Queue: Jamie Madill <jmadill@chromium.org> Auto-Submit: Kenneth Russell <kbr@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 0d06cb47 2023-01-10T15:33:30 Disable ContextCompatibilityTests on TSAN. Registering these tests causes issues with local runs on Linux. Bug: angleproject:7944 Change-Id: I7ec9ac45bb0d66e3b934bab0d06dbfa3f1ab5d0d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4153010 Auto-Submit: Jamie Madill <jmadill@chromium.org> Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Roman Lavrov <romanl@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Roman Lavrov 2b1bc4fd 2023-01-09T12:17:17 Upload angle metrics to the gs bucket in skia perf format. ConvertToSkiaPerf converts the data format from angle_metrics.json to what skia perf ingests. Injestion happens automatically when the gs bucket is updated. Example data from this CL on non-perf bots with upload enabled (smoke mode so actual values aren't meaningful): https://angle-perf.skia.org/e/?queries=buildername%3Dlinux-test%26metric%3Dwall_time%26test%3Dtrex_200 Bug: angleproject:7299 Change-Id: Ica700b586e08c205968fbc3c1d15cf742ad537f4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4148167 Commit-Queue: Roman Lavrov <romanl@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Akihiko Odaki bec220f6 2022-11-01T22:05:30 Translator: Fix operand component specifications Before this change, TIntermConstantUnion::foldUnaryComponentWise always used the first operand component for some operators. Use the operand component corresponding to the result component. Bug: angleproject:7801 Change-Id: I99a941a9eee0c10a4bcb3f515aa5cbf5accc0d52 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3996520 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Auto-Submit: 小田喜陽彦 <akihiko.odaki@gmail.com> Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Cody Northrop fa612d04 2023-01-09T19:38:42 Tests: Add MARVEL SNAP trace Test: angle_trace_tests --gtest_filter="*marvel_snap*" Bug: angleproject:7941 Change-Id: Ie028c3184966d2f10717ed6fd0fabe8ecad75c8e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4149929 Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Charlie Lao 493f3f31 2022-11-11T17:01:40 Reland "Vulkan: Only allocate default attribute if needed" This is a reland of commit 85c98a92bb763452133bd7b4580d80625bb2c75d Original change's description: > Vulkan: Only allocate default attribute if needed > > mDirtyDefaultAttribsMask has all bits set when starts. > ContextVk::handleDirtyGraphicsDefaultAttribs() is looping all dirty bits > and try to allocate buffer for it, which means we are looping 16 > times when app starts. This CL changes to allocate a buffer only if used > by program. > > Bug: b/258862506 > Change-Id: I2f0a75d1fe141c9ac3101088fdc4ce4f60b0c4ee > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4024544 > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > Reviewed-by: Yuxin Hu <yuxinhu@google.com> > Commit-Queue: Charlie Lao <cclao@google.com> Bug: b/258862506 Bug: angleproject:7866 Change-Id: Iad0b6a6ce5ec42e48461a199773eb8dc9976265e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4144938 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Charlie Lao <cclao@google.com>
Alexey Knyazev 9d5d619c 2022-12-26T00:00:00 Adjust clip distance compiler state and validation The internal uniform, which is used for passing GL state on some platforms, could be removed by GL drivers when built-ins are not accessed; this may lead to failed frontend assertions. Refactored relevant compiler state and validation helpers to avoid ambiguous usage. Added ClipCullDistanceTest.Unused test. Bug: angleproject:4452 Change-Id: I06fdf9a69e01afb2ad11fa12e0510d8b0421e4bc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4143839 Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Roman Lavrov 6e3f4048 2023-01-09T11:13:34 Log free space on device (df -h) if log=debug. Bug: chromium:1405504 Change-Id: I4c4f2e291bf10669b55adcd08bc57e338ca8ae62 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4147388 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Roman Lavrov <romanl@google.com>
Yuly Novikov 1f997cef 2023-01-06T19:09:37 Skip crashing final_fantasy trace perf on Pixel 6 native Bug: angleproject:7936 Change-Id: Ied2399e66052d3b3f2b26f39c32aaf3950579eea Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4143838 Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Roman Lavrov <romanl@google.com>
Yuly Novikov ca0489f0 2023-01-06T13:13:55 Skip couple flaky trace perf tests on Win Intel beach_buggy_racing on Vulkan aliexpress on native Bug: angleproject:7934 Change-Id: I78f78174e95aa0a4bab6685efb62b52f87e6e4f0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4143158 Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Roman Lavrov <romanl@google.com> Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Charlie Lao 341f2908 2023-01-04T16:17:17 Vulkan: Remove the car_chase skip This should now be fixed by crrev.com/c/4133548. Re-enable the test for pixel6. Bug: angleproject:7916 Change-Id: Ice0adc2c81c797f31354e086e5606744941de311 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4137290 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Charlie Lao 2662f28f 2022-12-30T17:26:22 Vulkan: Fix imageRead from RP and outsideRP simultaneously When a texture is been sampled from both fragment shader and compute shader, you will have the same VkImageLayout. We will not try to end renderPass, which means you end up running into similar situations with OutsideRenderPassCommandBufferHelper::bufferRead where an image is already read accessed by a started renderPass and now read accessed by an outsideRenderPassCommands. Since renderPass has greater queueSerial, we should not tag it with outsideRenderPassCommands' queueSerial. This CL also adds two tests, one for color texture and another for depth texture (which is car_chase uses). Both exposes the same bug. Bug: angleproject:7916 Change-Id: I840ca8947caeb7a96c4c9ccb7c9eca2476837c9c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4133548 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Charlie Lao <cclao@google.com>
Yuly Novikov d88464de 2023-01-05T17:27:48 Skip 2 slow trace perf tests on Win Intel five_nights_at_freddys on Vulkan pubg_mobile_launch on native Bug: angleproject:7929 Change-Id: Ie6ebcc3db616a55fdbb9f1a0d67c950b80dc2010 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4133268 Reviewed-by: Jamie Madill <jmadill@chromium.org> Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Yuxin Hu 5f1ab1d1 2023-01-03T11:48:51 Fix Deferred Flush Bug On Android Hardware Buffer When does app read from Android Hardware Buffer is outside of ANGLE's control. If we defer glFlush, it is possible that when the app is reading from AHB, the commands have not been flushed and executed, causing app to read unexpected data. This change adds a check to not defer glFlush when the Framebuffer draw attachment is Android Hardware Buffer. Bug: b/262886794 Change-Id: Ie0606f71b1a4f4f20511b7327e7ffb8c096ac727 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4126700 Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Jamie Madill 968c429e 2023-01-04T14:18:11 Tests: Use ISOLATED_OUTDIR for test artifact directory. This should fix the missing CAS outputs on the bots. Bug: angleproject:7926 Change-Id: Id09e5ccc19a454e2c0bf63076788187f3c7ef24f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4135158 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> Auto-Submit: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Roman Lavrov 056f8044 2022-10-11T11:58:20 Perf tests: write metrics to file and read from merge script. The idea behind is to save metrics in a structured output with full context so that we don't have to parse stdout and reconstruct that context (e.g. which test was running when the output was printed etc). Note: we already have a "histogram" file (addHistogramSample) written but it is structured using some UUID-based ids making its digestion more complicated (https://anglebug.com/7299#c3). This CL just writes events as one-json-per-line simplifying downstream handling and debugging. Just a sanity check / logging in the merge script for now. Bug: angleproject:7299 Change-Id: I56dada643eceef180ce9bb1aa9ae6a641ea41e4c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3945112 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Roman Lavrov <romanl@google.com>
Cody Northrop b354667e 2022-12-24T12:21:17 FrameCapture: Fix tracking of glCopyImageSubData When tracking texture updates during glCopyImageSubData, choose an enum supported by PackedEnum when looking up the textureID. Also add a test for a common pattern used by the Unreal Engine that trips up FrameCapture. Test: CopyImageTestES31.CubeMapCopyImageSubData/* Bug: angleproject:7913 Change-Id: I6c0fee69064cc6dc81177093ec9461dd5ccc152a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4126449 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Cody Northrop a0939325 2023-01-01T17:41:33 Tests: Add Catalyst Black trace Test: angle_trace_tests --gtest_filter="*catalyst_black*" Bug: angleproject:7921 Bug: angleproject:7924 Change-Id: I626d6790ef602f3ca09c9c9a4e03c5df32a985ba Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4133886 Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Alexey Knyazev 7c08f0a5 2023-12-03T00:00:00 Skip ClipCullDistanceTest.SizeCheckCombined on TSAN Bug: angleproject:7922 Change-Id: I19c9ce729be8bf7a68517f340cd001332f22be08 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4134844 Auto-Submit: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Cody Northrop b5a8cb42 2022-12-30T21:00:54 Tests: Add Cut the Rope trace Test: angle_trace_tests --gtest_filter="*cut_the_rope*" Bug: angleproject:5823 Bug: angleproject:7920 Change-Id: I6c607c593d828623afadff5677e0a8324e6b89f8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4129086 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Roman Lavrov <romanl@google.com>
Jamie Madill 71e89320 2023-01-03T09:10:08 Tests: Support multiple filters with ":". Now we can run multiple traces per invocation, e.g.: "trex_200:among_us" Bug: angleproject:7775 Change-Id: I8e8176d444f20ae97234469ab8c553543b81b331 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4132944 Auto-Submit: Jamie Madill <jmadill@chromium.org> Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Roman Lavrov <romanl@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Cody Northrop e5efa2a7 2022-12-30T17:10:37 Tests: Add Portal Knights trace Test: angle_trace_tests --gtest_filter="*portal_knights*" Bug: angleproject:7919 Change-Id: Ie11fd45afdd2cb70d1caef2e0006ba26ac5fdf25 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4129107 Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Cody Northrop 8e2b87ac 2022-12-29T21:19:29 Tests: Add MU Origin 3 trace Test: angle_trace_tests --gtest_filter="*mu_origin_3*" Bug: angleproject:7917 Change-Id: Ic00a42d3c8b7c6c92a66c09c258a32d22e5f4805 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4129866 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Roman Lavrov <romanl@google.com>
Cody Northrop b9e38879 2022-12-28T21:00:57 Tests: Add Agent A: A puzzle in disguise trace Test: angle_trace_tests --gtest_filter="*agent_a*" Bug: angleproject:7914 Change-Id: I3be5192a64c400b341b313e92211126e3ad1fd38 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4128940 Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Yuly Novikov 4a8bc146 2022-12-29T17:26:05 Skip angle_restricted_trace_gold_tests.car_chase asserts on Pixel 6 Assert failed in setSerial Bug: angleproject:7916 Change-Id: I05a91cfd29194e29e6c512c9001c064951dcf466 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4127959 Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Charlie Lao <cclao@google.com>
Yuly Novikov fe704fb5 2022-12-27T18:34:43 Crash end2end tests when loading driver library fails Switch from GTests's ASSERT_NE(), which allowed to continue execution and hid the error from Swarming, to ANGLE's ASSERT(), which makes bots to report this error. Bug: angleproject:7885 Change-Id: I7937a9419f3fbfd9f6ab2d696e40771bde763a1e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4126355 Reviewed-by: Jamie Madill <jmadill@chromium.org> Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Yuly Novikov 309269ce 2022-12-23T18:10:22 Fix ReadOnlyFeedbackLoopTestES31 not instantiated on iOS Bug: angleproject:7899 Change-Id: I0641574cae2f74315297df8eac0268ab5676dd3d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4116926 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 6c41793f 2022-12-20T15:20:50 Vulkan: Use read/write depth/stencil layouts This allows an application to have depth in read-only feedback loop while stencil is being written to for example. Bug: angleproject:7899 Bug: b/192477489 Change-Id: Ic2e11d32da7c7e3a7f3cd86dbafc5c56a0dbbfd7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4116730 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>