src/tests


Log

Author Commit Date CI Message
Charlie Lao b97aab3f 2022-03-09T17:36:24 Vulkan: resync mCurrentElementArrayBuffer when out of lineloop When glDrawElements is called with GL_UNSIGNED_BYTE type or LineLoop mode, we will internally allocate an element buffer and copy data to it. But when we switch out of that mode, we must re-sync mCurrentElementArrayBuffer to what it should be based on VertexArray buffer binding. This CL fix the bug that we were previously not updating it and end up using the wrong element buffer. Also added three tests: DrawWithSameBufferButDifferentTypes: that uses GL_UNSIGNED_BYTE data and GL_UNSIGNED_SHORT data in the same buffer and switch between these two data types without incurring buffer change. DrawWithSameBufferButDifferentModes: draw line mode followed by triangle without the same element buffer. DrawArraysLineLoopFollowedByDrawElementsTriangle: draw line mode with glDrawArrays and then followed by DrawElements. Bug: chromium:1299261 Change-Id: I5c471117d300e9fac9127a9d8fa66d48ac312f03 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3513553 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Charlie Lao <cclao@google.com>
Jamie Madill 1cfbe863 2022-03-09T13:35:44 perf tests: Report multiple time metrics. We can now report cpu/wall/gpu time instead of just a single timing metric. This is in preparation for reporting other types of metric including counters. Also includes some other minor script improvements. Bug: angleproject:4918 Change-Id: I52a3241893c56a1bfe982990ebac0fa168dbac51 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3516969 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Geoff Lang 6404be2d 2022-03-10T11:04:22 Emulate RGB10 (no alpha) on desktop OpenGL. The OpenGL ES extension GL_EXT_texture_type_2_10_10_10_REV requires RGB and RGBA formats to be supported but Desktop OpenGL does not support RGB. Emulate it with the existing emulatedAlphaChannel path in TextureGL. Bug: chromium:1300575 Change-Id: I0e6d1044afbc55cf6d4f987cc98b357ff11ff006 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3517346 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Jamie Madill a956162c 2022-03-01T13:05:29 Vulkan: Expose performance counters via extension. This CL rewrites the Vulkan perf counters test to work in the angle_end2end_test suite using the newly exposed AMD extension. Note that we implement only a subset of the extension. Instead of generating monitors and starting/stopping them we simply read back all performance counter data at once using the special montior value "0". The CL also enables these tests on SwiftShader. Bug: angleproject:4918 Change-Id: I5d8f6eecb1ccff448657cbdb65b51a225dfb90c0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3497538 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Gert Wollny af2e0c01 2021-12-13T20:47:25 Capture/Replay: Override GL_HALF_FLOAT type for legacy formats Because GL_HALF_FLOAT and GL_HALF_FLOAT_OES have different values, and the format table created by BuildInternalFormatInfoMap() and queried to obtain the readback format uses GL_HALF_FLOAT_OES for legacy formats, we have to override the type in this case. Bug: angleproject:6333 Change-Id: Ibfdcf2ad80ccfb15872ab441c0f22f0851ffe3f0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3332721 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Gert Wollny <gert.wollny@collabora.com>
Cody Northrop 48c86e1b 2022-03-04T15:38:38 Test: Add Solar Smash trace Test: angle_perftests --gtest_filter="*solar_smash*" Bug: angleproject:7080 Change-Id: Ia47c9fb40c0730b5131deaf81c5eb4fda0f43a04 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3504189 Auto-Submit: Cody Northrop <cnorthrop@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Lubosz Sarnecki <lubosz.sarnecki@collabora.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Mohan Maiya 4cca6b3e 2022-03-08T14:54:02 Early return when rebinding the same buffer, sampler or texture Bug: angleproject:6955 Test: SimpleStateChangeTestES3.BindingSame* Change-Id: If946a7cf534809d21e49138d9f34dcee61a73627 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3029049 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 24c641dc 2022-03-01T11:12:38 Add stubs for AMD_performance_monitor. We can piggy-back on this extension to report internal ANGLE performance counters to the ANGLE tests. Includes a minor variable de-duplication in the EP generator. Bug: angleproject:4918 Change-Id: I4a76aea957b423a36a90349643bd50a4e1905849 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3497537 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Gregg Tavares 2764bda9 2022-03-07T15:23:25 Metal: Fix MultisampleResolveTest failure on Vulkan_SwiftShader Bug: angleproject:7081 Change-Id: Ia62ec86431692c6550b642b2d992b883dfa3b43a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3508445 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Gregg Tavares 74f32702 2022-03-03T13:13:34 Metal: Fix for mulitsampled buffers losing their contents Fixes tst included as well as WebGL CTS https://www.khronos.org/registry/webgl/sdk/tests/conformance2/renderbuffers/multisample-draws-between-blits.html Both fail on M1 without this fix. Also fixes WebKit bug https://bugs.webkit.org/show_bug.cgi?id=237113 Bug: angleproject:7073 Change-Id: Id7baa2575c817561f8a0a99181c986b758376a8d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3506089 Reviewed-by: Kyle Piddington <kpiddington@apple.com> Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Gregg Tavares <gman@chromium.org>
Jamie Madill ea70300b 2022-03-01T14:55:00 Fix base level changes not updating FBO completeness check. Bug: chromium:1299264 Change-Id: I0881a4916c3eeb9ee023d28d207795899417d530 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3498282 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org> Auto-Submit: Jamie Madill <jmadill@chromium.org>
Gregg Tavares 2e7cfa9b 2022-02-22T13:10:12 Metal: Fix WebGL CTS fbomultisample tests failing in Metal These tests were failing in Metal: deqp/functional/gles3/fbomultisample.2_samples.html deqp/functional/gles3/fbomultisample.4_samples.html deqp/functional/gles3/fbomultisample.8_samples.html This CL only fixed the tests failing on AMD. Intel still fails. See: https://anglebug.com/7079 Bug: angleproject:7049 Change-Id: I745672bba2e9b8b1d34c7a81e07410889eddd35f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3482157 Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Gregg Tavares <gman@chromium.org>
Mohan Maiya f9ade9fb 2022-02-18T15:08:54 Vulkan: Add feature to create pipeline during glLinkProgram Creating the pipeline will trigger the compilation of shaders to byte code thus warming up Vulkan shader caches. Typically most apps call into glLinkPrograms during app loadtime and the goal is to improve cache hit rate and reduce CPU workload during game play. Bug: angleproject:7046 Test: ProgramBinary*CreatePipelineDuringLink* Change-Id: I71351d45a9aa84e220ca38503735e94cff1dcf98 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3478354 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: mohan maiya <m.maiya@samsung.com>
Roman Lavrov bf3cdca5 2022-03-04T11:46:16 Capture/Replay: Mark two more tests as flaky. TransformFeedbackTest.BufferOutOfMemory VertexAttributeTestES3.DrawWithUnalignedData Flaked on win-trace. Bug: angleproject:6180 Bug: angleproject:7076 Change-Id: I75f3ca2468f2802cb3809340f32c064d56438c65 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3503693 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill ee96a461 2022-02-22T12:23:06 Vulkan: Fix missing empty buffer descriptor. This could happen for SSBOs and UBOs when the shader renders without a bound buffer, and robustness enabled. Bug: angleproject:6707 Change-Id: I993f2489aca47f07068908858c83afa78c9e0402 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3484979 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org> Auto-Submit: Jamie Madill <jmadill@chromium.org> Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Roman Lavrov <romanl@google.com>
Lubosz Sarnecki 61e0c319 2022-03-04T15:39:40 Tests: Add Fire Emblem Heroes trace. Test: angle_perftests --gtest_filter="*fire_emblem_heroes*" Bug: angleproject:7077 Change-Id: I1121cca8bab51bb9a820215f7526a88e8b28e51d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3501893 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
Jamie Madill d9002eef 2022-03-01T16:14:47 Protect against deleting a current XFB buffer. Bug: chromium:1295411 Change-Id: I097f272c38e444e0af71aa55c0dc508a07aa0bd3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3498262 Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 348ece42 2022-03-01T15:40:38 Vulkan: Fix issue with redefining a layered attachment. The fix ensures we complete level redefinition before we get the layer render target in TextureVk::getAttachmentRenderTarget. Bug: chromium:1296866 Change-Id: Id7fa8e9fed5e766c30580b09336713c675c4e4f0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3498283 Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Roman Lavrov 722ac971 2022-03-02T19:24:26 Fix glClearColor calls to use GLColor32F constants. Bug: angleproject:5025 Change-Id: I8d8bc8ff0b93951e19697d57c07368e1196498ae Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3499564 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Mohan Maiya 19fd3bc5 2022-02-28T13:23:20 Fix unaligned reads on armeabi-v7a If an application provides unaligned data to glVertexAttribPointer, we may attempt an unaligned read from this application-provided buffer. This change detects such a case and copies the data byte-by-byte in order to prevent SIGBUS errors on architectures that do not support unaligned reads. This fixes the issue ONLY for integer-to-float vertex attribute conversion. Other vertex attribute processing functions may still be affected by this problem. Bug: angleproject:7001 Test: VertexAttributeTestES3.DrawWithUnalignedData* Change-Id: Ic66a150a0bf9fe4df3afe5fc5c91646a46186e8d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3448420 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: mohan maiya <m.maiya@samsung.com>
Cody Northrop 37bfc40d 2022-02-27T16:27:26 Tests: Add Blade&Soul Revolution trace Test: angle_perftests --gtest_filter="*blade_and_soul_revolution*" Bug: angleproject:7053 Change-Id: I0ef1442c5cf12c08f9b461559512ae858829e41c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3492850 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Cody Northrop 6acb927f 2022-02-28T16:40:57 Tests: Add Castlevania: Symphony of the Night trace Test: angle_perftests --gtest_filter="*castlevania_sotn*" Bug: angleproject:7067 Change-Id: Id93190d4827e7c87aa585d5d73ba55321e0d09f3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3495881 Reviewed-by: Lubosz Sarnecki <lubosz.sarnecki@collabora.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Antonio Caggiano 2a9c4b01 2022-02-10T11:33:32 dEQP: Enable CreateSurfacePlatformEXT tests Add the corresponding capability to NativeWindow and implement getPlatformExtension virtual method to return a native pointer that can be used with eglCreatePlatformWindowSurfaceEXT(). Bug: angleproject:6961 Change-Id: Ieb1a1fd8b3cae4e6f199c269f3922cbd0307aa35 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3452102 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Antonio Caggiano <antonio.caggiano@collabora.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Antonio Caggiano b92ebdb7 2022-02-24T12:23:09 EGL: Add code-gen for dmabuf extensions Add code-gen for EGL_EXT_image_dma_buf_import and EGL_EXT_image_dma_buf_import_modifiers. Bug: angleproject:7065 Change-Id: Ib1bd2a881f11e96b1e7e5128975bdba3bdc41e0f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3495122 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Cody Northrop ef6688c9 2022-03-01T09:21:20 Tests: Add Five Nights at Freddy's trace Test: angle_perftests --gtest_filter="*five_nights_at_freddys*" Bug: angleproject:7066 Change-Id: Iad911da90eea7e798fabeaf697afea29fb53ce93 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3495880 Reviewed-by: Lubosz Sarnecki <lubosz.sarnecki@collabora.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Lubosz Sarnecki 309e6dad 2022-02-18T12:31:31 Tests: Add Final Fantasy Brave Exvius trace. Test: angle_perftests --gtest_filter="*final_fantasy_brave_exvius*" Bug: angleproject:7041 Change-Id: I3a30a317b1c10b016652dbdaadcd577bf167c5f0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3475352 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
Gert Wollny 5118002e 2021-11-29T21:01:03 Capture/Replay: test and handle texture gen-on-bind Bug: angleproject:6425 Change-Id: Ieb4c0a7a6ffdbf0690c07c10e001835a0dcbb6e1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3295620 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Gert Wollny <gert.wollny@collabora.com>
Gert Wollny bc20e55b 2021-11-29T21:00:45 Capture/Replay: test and handle renderbuffer gen-on-bind Bug: angleproject:6425 Change-Id: I591bf0fdfe2e7f83d7e02f63c8265234f7b85df6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3295618 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Gert Wollny <gert.wollny@collabora.com>
Gert Wollny efb951e8 2021-11-29T21:00:02 Capture/Replay: test and handle buffer gen-on-bind Bug: angleproject:6425 Change-Id: If8b573d0d77192befe6db82498158c535bd3b104 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3295619 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Gert Wollny <gert.wollny@collabora.com>
Gert Wollny 5236a767 2022-02-23T12:15:26 Capture/Replay: enable running GLES 3.2 tests with script In addition add annotations for the tests that fail (crash) Bug: angleproject:5366 Change-Id: I92747e70b4c0a494fb7f67ed0c282bd76788f505 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3484057 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Gert Wollny <gert.wollny@collabora.com>
Gert Wollny 32881018 2022-01-14T16:03:22 Capture/Replay: atomic counter buffer limits are shader specific Therefore, the override must also be applied to the per shader values. Bug: angleproject:6895 Change-Id: Iecd790afaca9358ee767d41b4c806bb8257b5fa6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3386948 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Gert Wollny <gert.wollny@collabora.com>
Tim Van Patten 5749ec7d 2022-03-01T02:14:42 Revert "Vulkan: Move mid-RP color clear to loadOp if content undefined" This reverts commit cfe5a1735a934cc83133bb6c69d19aa27278a270. Reason for revert: https://bugs.chromium.org/p/angleproject/issues/detail?id=5048#c7 @timvp That change just caused a regression in my project. I clear the color + depth buffer before drawing, but initially draw only to the depth buffer. It seems that it decided to ignore the color buffer clear as a result of that. Original change's description: > Vulkan: Move mid-RP color clear to loadOp if content undefined > > Instead of using vkCmdClearAttachments, if the color attachment has not > been written to, modify the loadOp of the currently open renderpass to > CLEAR. > > Bug: angleproject:5048 > Test: VulkanPerformanceCounterTest.MidRenderpassClear > Change-Id: Ida47e6ac7d0f29e2c49bdf2e74c1d876a5d7c223 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3381912 > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > Commit-Queue: Tim Van Patten <timvp@google.com> Bug: angleproject:5048 Change-Id: Iec5c73632429a80f955f7d659cf670f9cbb6c9b7 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3496662 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Tim Van Patten <timvp@google.com>
Tim Van Patten cfe5a173 2022-01-11T19:26:42 Vulkan: Move mid-RP color clear to loadOp if content undefined Instead of using vkCmdClearAttachments, if the color attachment has not been written to, modify the loadOp of the currently open renderpass to CLEAR. Bug: angleproject:5048 Test: VulkanPerformanceCounterTest.MidRenderpassClear Change-Id: Ida47e6ac7d0f29e2c49bdf2e74c1d876a5d7c223 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3381912 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Tim Van Patten <timvp@google.com>
Cody Northrop 802e0d4d 2022-02-15T16:40:07 Document perf test metrics Bug: angleproject:1944 Change-Id: I7f0d5c73c943ba28b3e0270e17681d7e69a7ee4a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3466757 Reviewed-by: Lingfeng Yang <lfy@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com> Auto-Submit: Cody Northrop <cnorthrop@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Gregg Tavares c11cef2f 2022-02-16T10:42:41 Add Clearifying comment about Occlusion Query Test Bug: angleproject:6752 Change-Id: I710273c43694b50ab4fb59a840ae15d6cb14391d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3469718 Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Kenneth Russell <kbr@chromium.org>
Amirali Abdolrashidi fd44f1a0 2022-02-25T13:34:01 Update API version in VulkanHelper to 1.1 * Updated the API version in VulkanHelper to avoid the validation error regarding UNASSIGNED-API-Version-Violation on Android devices. Bug: angleproject:7062 Change-Id: Iacb12cd5c79ecc803cdb5fe5c8738d1ac352eec0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3491502 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Tim Van Patten 6db60483 2022-02-25T11:13:40 Android: Skip flaky EGL end2end tests Skip flaky EGL end2end tests on Android. Bug: angleproject:7059 Test: EGLSurfaceTest.ResizeWindowWithDraw Test: EGLReadinessCheckTest.IsRunningOnANGLE Test: EGLReadinessCheckTest.GetProcAddressNegativeTest Test: EGLReadinessCheckTest.HasGetPlatformDisplayEXT Test: EGLContextSharingTestNoSyncTextureUploads.NoSync Change-Id: Ib6637625fa3bead4860268fcacd108da2183ce86 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3491501 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Tim Van Patten e2f8c5c6 2022-02-22T19:15:11 Vulkan: Add ClearBenchmark.Run/vulkan_scissoredClear Add the test ClearBenchmark.Run/vulkan_scissoredClear to benchmark scissored clears with the Vulkan backend. Bug: angleproject:5194 Test: ClearBenchmark.Run/vulkan_scissoredClear Change-Id: I7d6aeb8683b2ac2488e1c961d0cc194e6107b7f1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3408457 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Tim Van Patten <timvp@google.com>
Shahbaz Youssefi 1e773db9 2022-02-22T10:51:15 Vulkan: Shader support for KHR_blend_equation_advanced Translator can accept the layout qualifiers for the advanced blend equation. No emulation code is currently generated, and ANGLE will initially rely on the corresponding Vulkan extension. Based on change by Brandon Schade <b.schade@samsung.com> Bug: angleproject:3586 Test: angle_unittests --gtest_filter=*KHRBlendEquationAdvanced* Change-Id: I3b728c5f144386d7030bbbb301ddb07daa1492b9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3481309 Reviewed-by: Brandon Schade <b.schade@samsung.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Lubosz Sarnecki b69349bc 2022-02-15T14:59:03 Tests: Add Real Racing 3 trace. Add GL_EXT_shader_framebuffer_fetch prerequisite. Test: angle_perftests --gtest_filter="*real_racing3*" Bug: angleproject:7026 Change-Id: Ie76e7ca43bb3a95c343e56d3b830f1f6d6e733c4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3475351 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Gert Wollny 19704a89 2022-02-15T13:21:12 Capture/Replay: Capture GetTexLevelParameterfvANGLE params Bug: angleproject:3565 Change-Id: I940154a4e3ace9a3b8683eebdcd7bbb14402a641 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3461564 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Gert Wollny <gert.wollny@collabora.com>
Gert Wollny 913d8add 2022-01-25T11:43:40 Capture/Replay: Mark another test as Windows-only crash Bug: angleproject:6631 Change-Id: I30395b2cc9358963d73f0748c179300c5bfbe72b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3413158 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Gert Wollny <gert.wollny@collabora.com>
Gert Wollny 223a25f0 2022-01-25T11:15:16 Capture/Replay: Allow capturing of multisample texture content It just works. Bug: angleproject:6611 Change-Id: Ia3da2ee0ea3e09889a65910fd101a7daaa99ea56 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3413157 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Gert Wollny <gert.wollny@collabora.com>
Lubosz Sarnecki d98f4812 2022-02-17T15:22:22 FrameCapture: Capture empty buffer generation. This avoids emitting VertexAttribPointer with non-null offsets when the array buffer is empty and a vertex array is bound in MEC. When no buffer is bound, which was also the case if the buffer was empty, non-null offsets are not allowed in VertexAttribPointer and will result in: "Client data cannot be used with a non-default vertex array object." Add EmptyArrayBuffer test to VertexAttributeTestES3. Test: angle_end2end_tests --gtest_filter="VertexAttributeTestES3.EmptyArrayBuffer/*" Bug: angleproject:7026 Change-Id: I0cb02a5588f5d2bbc85f58b75fd14493b644d52b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3468524 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
Charlie Lao f996d4d8 2022-02-16T09:27:04 Vulkan: Fix DynamicBuffer cache reuse. There is a regression bug that the DynamicBuffer's BufferHelper's size is no longer the size of entire buffer block's size, but the size of suballocation. This caused buffer reuse logic to screw up since it relies on the size to make the decision to keep or free the mFreeBufferList. This CL fixes this bug by using the buffer block's size. This CL also removes DynamicBufferPolicy since it is not used any more since most of DynamicBuffer usages that triggered that DynamicBufferPolicy implementation have been switched to BufferPool. The remaining DynamicBuffer usage is only for attributes and uniforms which are generally small and per context. Bug: angleproject:6980 Change-Id: I9e013cbd67dd74f5e7fc5bb7d9c9696bd1f69965 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3469714 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com>
Shahbaz Youssefi 8dc9e83e 2022-02-16T21:48:53 Translator: Fix RunAtTheEndOfShader w.r.t discard RunAtTheEndOfShader wrapped main() if it ended in discard. However, it didn't account for the fact that the discard instruction could be wrapped in a block. This change makes RunAtTheEndOfShader more conservative w.r.t discard and has it wrap main() on any encounter of discard. The change additionally adds AST validation to ensure transformations don't generate dead code after branches. Test credit to Cody Northrop. Test: GLSLTest_ES3.ConstantConditionGuardingDiscard Test: GLSLTest_ES3.NestedUnconditionalDiscards Bug: angleproject:7033 Change-Id: Ie9d5210a5cfbb13449720a8a3f44666df9443d98 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3471014 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Lubosz Sarnecki 00169174 2022-02-17T14:11:01 gl.xml: Remove GL_BLEND_EQUATION_EXT from GetPName. When retrieving the GL_BLEND_EQUATION enum using glGet, FrameCapture incorrectly emitted GL_BLEND_EQUATION_EXT, which is not part of core GL4, GLES 2+3. Add BlendEquationGetInteger test to SimpleOperationTest which failed to compile in the capture/replay tests before this change. Bug: angleproject:7026 Test: angle_end2end_tests --gtest_filter="SimpleOperationTest.BlendEquationGetInteger/*" Change-Id: I886e64ca316754f05ada8e45604bd3aef58a5ba5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3468522 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
Jamie Madill 8d966f7d 2022-02-08T11:05:09 Vulkan: Simplify SubAllocation data types. We no longer need to bootstrap on the wrapper classes because we use a separate garbage list. This simplifies the code for the allocation tracking considerably. Also we remove a few mutable accessor to fortify our OOP design. (Credit to Jamie since it is splited from his CL) Bug: angleproject:6980 Change-Id: I2025ec4d141531273e824bb586957a38efc30be1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3469715 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Kenneth Russell ad462491 2022-02-16T13:36:21 Refine suppression for GLSLTest.SwizzledChainedAssignIncrement. On NVIDIA, skip only on OpenGL and GLES, not Vulkan. Bug: angleproject:7029 Change-Id: I2ec2732a94d3952a147df8616fd248876f12172c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3469723 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Jamie Madill 8cb58667 2022-02-16T13:47:22 Vulkan: Add uniform descriptor set caching test. This covers the case where we'd continually miss the cache due to buffer size mismatches. Bug: angleproject:6980 Change-Id: Ia58871f431b6241af52fa0c37ab51952bc1c4f97 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3469227 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org> Auto-Submit: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi a0d558f0 2022-02-16T12:23:29 Vulkan: Fix D/S invalidation for MSAA EGL configs Bug: angleproject:7007 Change-Id: I165ce16e8fdd388ae13aa2e3d05901199706ee24 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3469221 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Lubosz Sarnecki 2893effa 2022-02-10T14:28:32 validationESEXT: Implement ValidateGetCompressedTexImageANGLE. Add CompressedTexImageNegativeAPI test. Bug: angleproject:6177 Test: angle_end2end_tests --gtest_filter="GetImageTest.CompressedTexImageNegativeAPI*" Change-Id: Ia7ed503a7a98f10e4b02deb3954f367f842da3fa Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3452112 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
Lubosz Sarnecki b1075951 2022-02-09T17:35:56 vk_helpers: Adjust CopyImageToBuffer extent to block size. When using readPixels with compressed formats, the VkBufferImageCopy bufferRowLength and bufferImageHeight need to be a multiple of the block size. This prevents the following Vk validation errors: VUID-vkCmdCopyImageToBuffer-bufferRowLength-00203 VUID-vkCmdCopyImageToBuffer-bufferImageHeight-00204 Add tests with texture sizes that are not multiple of block size. Test: angle_end2end_tests --gtest_filter="GetImageTest.CompressedTexImageNotBlockMultiple*" Test: angle_end2end_tests --gtest_filter="GetImageTest.CompressedTexImageCubeMap*" Test: angle_end2end_tests --gtest_filter="GetImageTestES32.CompressedTexImageCubeMapArray*" Bug: angleproject:6177 Change-Id: I34c788efece285753857500801e88abeaa6a8a78 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3452111 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
Lubosz Sarnecki bdedf146 2022-01-14T13:35:30 TextureVk: Implement getCompressedTexImage. Extend ImageHelper::readPixels to support compressed formats. Implement readPixelsForCompressedGetImage. Add compression tests to GetImageTest. Implement CaptureGetCompressedTexImageANGLE_pixels in capture_gles_ext_params. Test: angle_end2end_tests --gtest_filter="GetImageTest*.CompressedTexImage*" Bug: angleproject:6177 Change-Id: I6e5b6d746b9c6cc9b885fa44f75a985660d8fb58 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3452110 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
Kyle Piddington eeddb050 2022-01-27T11:36:10 Metal: Incorrect parenthization for assignment expressions Fix for Webgl tests conformance/ogles/GL/build/build_017_to_024.html Create intermediate values for assign-equals operations, as they cause issues on expansion later. Bug: angleproject:6489 Change-Id: I7fea162bd1f59c7c765868af739d6ddfc1c1747f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3421527 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Kyle Piddington <kpiddington@apple.com>
Gregg Tavares ed39d49a 2022-02-14T11:32:12 Metal: Fix Hang in WebGL CTS Occlusionquery_strict test If a query was just in progress and then we switch contexts a command buffer, which has already been enqueued, is not committed. Later, other command buffers are enqueued and committed and Metal hangs, waiting on the uncommitted but previously enqueued command buffer. The solution was to not enqueue a command buffer early but instead, enqueue just before committing. Bug: angleproject:6752 Change-Id: I62c07ca3d1ed98cc5b27c8c4af405fdedff922b8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3461419 Reviewed-by: Kyle Piddington <kpiddington@apple.com> Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Gregg Tavares <gman@chromium.org>
Cody Northrop e2f8ff32 2022-02-14T15:55:04 Tests: Add State of Survival trace Test: angle_perftests --gtest_filter="*state_of_survival*" Bug: angleproject:7020 Change-Id: I3e09fa1aaffbd647c4e99316f21db984bbebb2f0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3462802 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Cody Northrop 54d428dd 2022-02-10T20:25:51 Tests: Add MARVEL Strike Force trace Test: angle_perftests --gtest_filter="*marvel_strike_force*" Bug: angleproject:7005 Change-Id: Ife9c6f303651bc746953e0ecfc529a2c9ec0b0d7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3457744 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Brandon Schade 06edae72 2022-01-11T11:13:20 Vulkan: Allow duplicated block name in different shader interface In OpenGL ES 3.2 Shading Language specification(4.3.9), A block name is allowed to have different definitions in different shader interfaces within the same shader. Bug: angleproject:5557 Test: KHR-GLES32.core.tessellation_shader.single.max_patch_vertices Change-Id: I49f149cfd8f6f063fc5045aa154cc401d3e38cfb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3429684 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Brandon Schade <b.schade@samsung.com>
Jamie Madill 9b7a77b0 2022-02-11T11:34:19 Double batch timeout for sanitizer tests. It seems the batch was timing out in ASAN builds. Bug: angleproject:6965 Change-Id: I059e138e7fc43928fb25f905bf85fbb34becd500 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3456662 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Constantine Shablya 3f0a28ba 2022-02-11T16:18:37 Add entry points for EGL_KHR_partial_update Bug: angleproject:6960 Change-Id: If248b7ef5ebacd7dfb8c612e5a9106ba0060282e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3455787 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Cody Northrop 3b4548bb 2022-02-02T15:19:06 Traces: Add restricted_trace_perf.py script for Android We've been using restricted_trace_perf.py to gather numbers on Android devices. The script uses angle_perftests and records: - Wall time per frame - GPU time per frame - CPU time per frame - GPU power per frame - CPU power per frame - GPU memory per frame It reports numbers to the terminal and creates a spreadsheet at the end. A typical command to run it would be: python3 restricted_trace_perf.py --fixedtime 10 --power \ --output-tag <tag> --loop-count 5 Power numbers are only available on Pixel 6 as we read directly from power rails. Also included is a gpumem shell script run on the Android device, and a power_denoising script that deactivates a number of services to reduce variance. The former is invoked automatically, the latter is only invoked by hand. Bug: angleproject:6970 Change-Id: I11fd346790565b5efcda228f43dc36dd41025642 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3432821 Reviewed-by: Roman Lavrov <romanl@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Hyunchang Kim fd378ce5 2022-01-25T18:06:31 Rebind program on glUseProgramStages Rebinding program causes all uniform resetting. And uniform resetting is required not to use wrong uniform for changed program stages. Bug: angleproject:6946 Change-Id: Ic969aa8fec2ff6e16f46b96a61c6d876bf37ff2f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3416791 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Cheryl Wei 3a72994e 2022-01-26T13:18:14 Vulkan: Add an end2end test Add this test for re-producing http://anglebug.com/6926, currently it has been skipped,once the bug is fixed,will re-open this test. Bug: angleproject:6926 Change-Id: Idbd2b3b60bdbf2a4100e6f6c89353cbf09e5e36b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3412970 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Lubosz Sarnecki 0a320d16 2022-02-09T13:36:18 GetImageTest: Enable on Vulkan SwiftShader. Add SwiftShader ES2 and ES3 Vulkan targets to ANGLE_INSTANTIATE_TEST. Bug: angleproject:6177 Change-Id: Idc964202d8b02f38118b69bbef7984bf4d22e61b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3452109 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
Charlie Lao d5df2331 2022-02-10T11:55:17 Vulkan: Disable EGLContextSharingTestNoSyncTextureUploads on Pixel6 This test is causing other tests to crash on pixel 6. Disable it for now until we root cause it. Bug: angleproject:7004 Change-Id: I88c71b44cc2b56caf2aaf3a1d9741ccd8aca3725 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3452503 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com>
Mohan Maiya 670a6e47 2022-02-09T09:18:33 Ignore invalid texture type error When EGL_KHR_create_context_no_error is enabled, silent return when an invalid texture type is passed in to glBindTexture and glTexParameteri. Bug: angleproject:6995 Test: ContextNoErrorTest.InvalidTextureType* Change-Id: I80034b18e7cb757bfa0e835f3aa15df7cd96775d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3447274 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: mohan maiya <m.maiya@samsung.com>
Kyle Piddington 91f92540 2022-01-14T18:34:44 Metal: Fix multisample resolves. 1) Only use MTLLoadActionDontCare if store action was MTLStoreActionDontCare, ignoring MTLStoreActionMultisampleResolve. 2) For color, depth and stencil attachments, if they have implicit multisample textures, use MTLStoreActionStoreAndMultisampleResolve rather than MTLStoreActionStore. This addresses bugs when resolving a multisampled framebuffer and copying it to a texture, and fixes these two Three.js demos: https://threejs.org/examples/webgl_framebuffer_texture https://threejs.org/examples/webgl_decals Added CopyTextureTestES3.DrawThenCopyThenBlend modeled after new WebGL 2.0 conformance test in: https://github.com/KhronosGroup/WebGL/pull/3379 Confirmed to catch the bug. On Intel Macs, the Metal debug layers and load/store action validation must be enabled: MTL_DEBUG_LAYER=1 \ MTL_DEBUG_LAYER_VALIDATE_LOAD_ACTIONS=1 \ MTL_DEBUG_LAYER_VALIDATE_STORE_ACTIONS=1 \ MTL_DEBUG_LAYER_VALIDATE_UNRETAINED_RESOURCES=4 \ angle_end2end_tests ... Bug: angleproject:6972 Change-Id: I7bcb7c19e434e22e24b800fdce4c480d10b1fc40 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3450033 Reviewed-by: Gregg Tavares <gman@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Kenneth Russell <kbr@chromium.org>
Charlie Lao 82352237 2022-02-08T12:01:38 Vulkan: Fix incorrect DescriptorSet's bufferInfo in XFB emulation path The mAlignmentOffsets are pre-calculated at TransformFeedbackVK::begin() time but never gets updated when buffer changes after XFB begin call, which causes us sending down incorrect bufferInfo to the descriptor set. This CL removes mAlignmentOffsets and always calculate the aligned offset when mBufferOffsets is needed. This CL also modify the existing test to demonstrate the bug. Test: SimpleStateChangeTestES3.RespecifyBufferAfterBeginTransformFeedbackInDeletedPaddingBuffer Bug: angleproject:6998 Change-Id: I11a9f114385d2e49ba9bdc2d820727c85c8244dd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3448682 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com>
angle-autoroll 37f59b85 2022-02-07T19:34:11 Roll VK-GL-CTS from 97ceb2222747 to b594e2aabae9 (64 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/97ceb2222747..b594e2aabae9 2022-02-05 quic_mnetsch@quicinc.com Merge "Merge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/master" 2022-02-04 quic_mnetsch@quicinc.com Merge vk-gl-cts/opengl-cts-4.6.2 into vk-gl-cts/master 2022-02-03 quic_mnetsch@quicinc.com Merge vk-gl-cts/opengl-es-cts-3.2.8 into vk-gl-cts/master 2022-01-29 ilkka.saarelainen@siru.fi Add depth and stencil multisample copy tests 2022-01-29 juha.heiskanen@siru.fi Add color output check to early fragment sample count tests 2022-01-29 juha.heiskanen@siru.fi Test dynamic descriptors with different stage visibility 2022-01-29 antto.makinen@siru.fi Add a batch of GraphicsFuzz coverage tests 2022-01-29 mika.vainola@siru.fi Remove EnableBlendCase from ES 3.1 2022-01-29 srisser@google.com Delay initializing fragment_shading_rate tests 2022-01-28 quic_mnetsch@quicinc.com Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/master 2022-01-27 quic_mnetsch@quicinc.com Merge vk-gl-cts/opengl-cts-4.6.2 into vk-gl-cts/master 2022-01-23 quic_mnetsch@quicinc.com Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/master 2022-01-18 quic_mnetsch@quicinc.com Merge "Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/master" 2022-01-16 ari.suonpaa@siru.fi Add coverage for transition between compute and indirect draw 2022-01-14 emmanuel.tanguy@broadcom.com Add missing barrier to fix multi-core issue 2022-01-14 juha.heiskanen@siru.fi Test EarlyFragmentTests effect on color output and sample counting 2022-01-14 jari.komppa@siru.fi Add more power of two checks 2022-01-14 piotr.byszewski@mobica.com Update vulkan-docs version 2022-01-14 jari.komppa@siru.fi Add missing formats to mapTextureFormat 2022-01-14 quic_mnetsch@quicinc.com Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master 2022-01-13 ari.suonpaa@siru.fi Move draw buffers indexed tests from ES3.1 to ES3 group 2022-01-11 pdaniell@nvidia.com VK_EXT_pageable_device_local_memory test coverage 2022-01-10 piotr.byszewski@mobica.com Rename mustpass master branch to main 2022-01-10 quic_mnetsch@quicinc.com Merge "Merge vk-gl-cts/dev/VK_EXT_image_view_min_lod into vk-gl-cts/master" 2022-01-10 quic_mnetsch@quicinc.com Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/master 2022-01-07 corentin.noel@collabora.com gl4cMapBufferAlignmentTests: ensure that the GL_ARB_buffer_storage extension is present 2022-01-07 jari.komppa@siru.fi Update README.md files, replacing old link 2022-01-07 arkadiusz.sarwa@amd.com Add support for building with Visual Studio 2022 2022-01-07 juha.heiskanen@siru.fi Remove unused variables from occlusion query tests 2022-01-07 dneto@google.com Assert that isnan and isinf cases cover intended classes 2022-01-07 antto.makinen@siru.fi Add a batch of GraphicsFuzz coverage tests 2022-01-07 venni.ihanakangas@siru.fi Improve AHB image_formats subtest log output 2022-01-07 marcin.zajac@mobica.com OpPtrEqual OpPtrNotEqual for non-variable pointers 2022-01-07 piotr.byszewski@mobica.com Extend FSR multiview tests 2022-01-07 michal.jakubek@mobica.com Handle VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_* flags 2022-01-07 jari.komppa@siru.fi Add 8-bit blend_operation_advanced tests 2022-01-07 rgarcia@igalia.com Test constant and dynamically uniform subgroup shuffle deltas 2022-01-07 ilkka.saarelainen@siru.fi Rework platform memory limits 2022-01-07 quic_mnetsch@quicinc.com Merge vk-gl-cts/opengl-cts-4.6.1 into vk-gl-cts/master 2022-01-07 quic_mnetsch@quicinc.com Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master 2022-01-05 quic_mnetsch@quicinc.com Notice of withdrawal of Vulkan CTS 1.2.5.x 2021-12-11 antto.makinen@siru.fi Add a batch of GraphicsFuzz coverage tests 2021-12-11 rgarcia@igalia.com Fix dot product with saturation tests 2021-12-11 piotr.byszewski@mobica.com Add dynamic rendering to attachment rate tests 2021-12-11 rgarcia@igalia.com Further VK_NV_mesh_shader test variants and fixes 2021-12-11 pdaniell@nvidia.com Fix and enable dynamic rendering multivew coverage 2021-12-11 quic_mnetsch@quicinc.com Merge "Merge dev/VK_EXT_depth_clip_control into master" 2021-12-11 ari.suonpaa@siru.fi Fix integer overflow in Random::getInt() 2021-12-11 juha.heiskanen@siru.fi TRANSIENT_ATTACHMENT_BIT store/load op test 2021-12-11 quic_mnetsch@quicinc.com Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/master 2021-12-10 quic_mnetsch@quicinc.com Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master 2021-12-06 quic_mnetsch@quicinc.com Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/master 2021-12-03 ilkka.saarelainen@siru.fi Add missing feature check to MS copy tests 2021-12-03 jarcher@nvidia.com Update Android API and permissions for OpenGL 2021-12-03 antto.makinen@siru.fi Test no-op image layout transitions in VK_KHR_synchronization2 2021-12-03 antto.makinen@siru.fi Ensure that compute shaders have a subgroup size that is uniform in command scope 2021-12-03 quic_mnetsch@quicinc.com Merge "Merge vk-gl-cts/dev/VK_ARM_rasterization_order_attachment_access into vk-gl-cts/master" 2021-12-03 juha.heiskanen@siru.fi Missing coverage for vkCmdCopyQueryPoolResults 2021-12-03 jari.komppa@siru.fi Add suite of div by zero tests 2021-12-03 ari.suonpaa@siru.fi Enable packed formats for border swizzle tests 2021-12-03 piotr.byszewski@mobica.com Add portability_subset to extensions_data.txt 2021-12-03 lionel.g.landwerlin@intel.com Verify that timeline semaphores cannot import/export SYNC_FD 2021-12-03 piotr.byszewski@mobica.com Execute FDM tests with dynamic rendering 2021-12-03 piotr.byszewski@mobica.com Execute FDM tests with legacy renderpass 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-bots+autoroll-info@google.com,ianelliott@google.com,ynovikov@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: angleproject:6773, angleproject:6737, angleproject:4394 Change-Id: I5e8157787a821d116231640f89b67cde2cc2fce4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3442372 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Ian Elliott <ianelliott@google.com> Commit-Queue: Ian Elliott <ianelliott@google.com>
Cody Northrop 02ce52d2 2022-02-08T20:41:01 Test: Add Lords Mobile trace Test: angle_perftests --gtest_filter="*lords_mobile*" Bug: angleproject:7000 Change-Id: I451433be5269c199ff404162df406b16ecee155b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3450029 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Jonah Ryan-Davis 4349904b 2022-02-04T14:22:53 Add keying on backend to ANGLE Display caching. Webkit needs to use one ANGLE display with OpenGL and another with Metal. Our display caching is interfering with this, so it should be updated to also key on the selected backend. Bug: angleproject:6978 Change-Id: I9ec47a28e16646f5fc75956e3bd78236990cc392 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3440780 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Mohan Maiya 1b9774f5 2022-01-26T13:37:03 Vulkan: Force submit updates to immutable textures Submit immutable texture updates recorded in outside renderpass commands when the following conditions are met - 1. "forceSubmitImmutableTextureUpdates" feature is enabled 2. The texture is immutable This works around a problem that manifests in some applications that do not perform appropriate synchronization of shared contexts. Bug: angleproject:6929 Test: EGLContextSharingTestNoSyncTextureUploads.* Change-Id: I2a237046e2cc53650eb8dc07e3697f7481df9b02 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3418138 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: mohan maiya <m.maiya@samsung.com>
Jamie Madill 50fb842d 2022-02-08T12:52:09 Expand SwiftShader Win/ASAN suppression. Bug: angleproject:6965 Change-Id: I00021add3d22f1c64610355e4a6dc73c6c0471e2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3447565 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Greg Thompson d635feb1 2022-02-08T11:49:21 [fuchsia] Tests using additional_manifest_fragments are CFv1. These tests will be migrated to CFv2 as their fragments (and their respective required capabilities) are migrated to CFv2. Bug: chromium:1256502 Change-Id: I9ae42c35da005fe174cb0cebec925995f4fa7026 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3447540 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Cody Northrop 236a3d0f 2022-02-06T16:09:24 Tests: Add Dead Trigger 2 trace Test: angle_perftests --gtest_filter="*dead_trigger_2*" Bug: angleproject:5823 Bug: angleproject:6986 Change-Id: I259cfb2f9c9d2d0f14af315c0e02fcd42d24cb8d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3442757 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Cody Northrop 1acfe659 2022-02-06T21:18:44 Test: Add Last Shelter: Survival trace Test: angle_perftests --gtest_filter="*last_shelter_survival*" Bug: angleproject:6987 Change-Id: Ia565a0b75aff74fc9cd136763a7063890072225c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3442766 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Shahbaz Youssefi 02ad19e3 2022-02-07T13:46:46 Vulkan: Fix vkCmdResolveImage offsets glBlitFramebuffer takes identical regions for src and dst when resolving. vkCmdResolveImage should use the clipped area instead of using the actual offsets passed to this function. Bug: chromium:1292537 Change-Id: I13b91a4e14bdb3fcbf8f01edb36d7fb4110429ea Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3444340 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi d9fcebb8 2022-02-07T14:11:58 Vulkan: Make framebuffer fetch syncval errors more specific The errors are very generic, so now they are only suppressed if framebuffer fetch is used by the application. This change partially relands 2eeb87488. Bug: angleproject:6951 Change-Id: I55f444d19360d3066f1d4b0959d25e676dbb1a38 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3444341 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Ian Elliott <ianelliott@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Cody Northrop 939da294 2022-02-05T17:12:31 Tests: Add Magic Rush: Heroes trace Test: angle_perftests --gtest_filter="*magic_rush_heroes*" Bug: angleproject:6985 Change-Id: I29ea1746202345cb09d994336ad4c01719bae70e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3440686 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Ian Elliott 9208dcc6 2022-02-07T18:23:12 Revert "Vulkan: Enable framebuffer fetch on SwiftShader" This reverts commit 2eeb8748867c529474200d302f21f20ab461b9b4. Reason for revert: Breaks tests for ANGLE-to-Chromium autoroller Original change's description: > Vulkan: Enable framebuffer fetch on SwiftShader > > Bug: angleproject:6951 > Change-Id: I10eeb58be9e8639c0519fc47f327a0894155b755 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3437409 > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Bug: angleproject:6951 Change-Id: I35eaf2b7411d1bf055484bbb32f7e681286edd42 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3442370 Reviewed-by: Ian Elliott <ianelliott@google.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Ian Elliott <ianelliott@google.com>
Cody Northrop 44deda4c 2022-02-05T15:43:51 Tests: Add Dragon Mania Legends trace Test: angle_perftests --gtest_filter="*dragon_mania_legends*" Bug: angleproject:6984 Change-Id: Ia9242ec9850f4f9418617829314c381451f98dc1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3442140 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Tim Van Patten <timvp@google.com>
Mohan Maiya f65e7c3c 2022-02-02T14:23:31 Vulkan: Take base level into account in image views Similarly to how max level changes are handled, this change also handles base level changes. In either case, the old views are retained and new views are created for the [base, max] level range. Test provided by m.maiya@samsung.com Bug: angleproject:6967 Test: MipmapTestES31.UpdateBaseLevel/* Change-Id: Iee8b2f035c1cc0fa916b987a91939b8ae65d27c5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3441074 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: mohan maiya <m.maiya@samsung.com> Reviewed-by: Shahbaz Youssefi <syoussefi@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@google.com>
Shahbaz Youssefi 2eeb8748 2022-02-03T13:10:54 Vulkan: Enable framebuffer fetch on SwiftShader Bug: angleproject:6951 Change-Id: I10eeb58be9e8639c0519fc47f327a0894155b755 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3437409 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Sergey Ulanov 2ab8f48f 2022-02-04T08:23:09 Allow glCopyTexImage2D from BGRX and RGBX to GL_LUMINANCE glCopyTexImage2D was failing with GL_INVALID_OPERATION when copying from GL_RGBX8_ANGLE buffer to GL_LUMINANCE texture, while it should be supported. Also updated validator to allow copying from RGBX & BGRX to GL_RED_EXT, GL_RG_EXT. Bug: chromium:1269826 Change-Id: I865dcdd46921730968995822d71ba34b39e49262 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3439129 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Jeff Vigil 2b00f4f5 2022-02-01T13:59:50 Fix bug in protected content validation 1. It is valid for a protected context to sample from an unprotected texture 2. It is necessary to match protected state of framebuffer attachment and the context Bug: angleproject:6602 Change-Id: Ia3138c1a6dc46ff6b85fc5948c6a04ef48fba8a8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3430241 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi e897bf9a 2022-02-03T13:53:11 Remove gl_PerVertex-related suppression Bug: angleproject:5579 Change-Id: I532bc2628f8d69aa429c73dc5613ccb5375109a5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3437411 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 3dbba51d 2022-01-28T16:47:19 Reland "Vulkan: Enable ANGLE_texture_multisample" This is a reland of fe56532f503c9a6acde95f7573d705468102faff Fixed to include suppression of trace tests that were failing. Original change's description: > Vulkan: Enable ANGLE_texture_multisample > > Bug: angleproject:3565 > Change-Id: Ic9556d25608a67540f7eee8841e54dc11773ca22 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3424664 > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Bug: angleproject:3565 Change-Id: I9b95ce0823b0ee8cd82c8933f0d4c68bb044dda9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3437525 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Shahbaz Youssefi 83a3f654 2022-02-03T18:00:26 Revert "Suppress GLSLTest.FramebufferFetch... on Pixel6 / Vk / Glslang" This reverts commit 600ffa6ec6729e82cf76694c2039c05af13dfbaa. Reason for revert: Bug is fixed in https://chromium-review.googlesource.com/c/angle/angle/+/3434898 Original change's description: > Suppress GLSLTest.FramebufferFetch... on Pixel6 / Vk / Glslang > > GLSLTest.FramebufferFetchWithLastFragData was recently added and > fails on Pixel6 Vulkan Glslang. > > Bug: angleproject:6969 > Change-Id: I249feacd9949528275d6c077a73241c97d1ca24a > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3433273 > Reviewed-by: Yuly Novikov <ynovikov@chromium.org> > Commit-Queue: Jonah Ryan-Davis <jonahr@google.com> Bug: angleproject:6969 Change-Id: Ie3272fd3362960112fe4df85c71ba31c57f4b3e3 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3437408 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Jonah Ryan-Davis f1159253 2022-02-03T10:38:58 Expand suppression of Mimap tests to any Win/Swiftshader config. These tests are still flaking on Win/Swiftshader/AsyncQueue. Bug: angleproject:6965 Change-Id: Ieeaff96a320ac8839aa0ad238ed3f2f02aa845f4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3437405 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Cody Northrop e56f0e29 2022-01-26T19:46:01 Vulkan: Check program fetch status when switching framebuffers Before this patch, we only checked whether to update the framebuffer fetch status when the program changes. We also need to check when the framebuffer itself changes. Test: FramebufferFetchES31.FramebufferMixedFetchTest Bug: angleproject:6893 Change-Id: I92ff1f30dfb3f17aee362e5931fc4c94d18142ba Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3418842 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Jonah Ryan-Davis 600ffa6e 2022-02-02T16:58:33 Suppress GLSLTest.FramebufferFetch... on Pixel6 / Vk / Glslang GLSLTest.FramebufferFetchWithLastFragData was recently added and fails on Pixel6 Vulkan Glslang. Bug: angleproject:6969 Change-Id: I249feacd9949528275d6c077a73241c97d1ca24a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3433273 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Jamie Madill 4a65040b 2022-01-30T14:00:48 Add new Vulkan uniform update test. This covers a specific case with multiple programs and descriptor set caching. It could get tripped up by more complicated patterns in the trace tests. Bug: angleproject:6776 Change-Id: Ic8e42e55e60ef0fc01f0386712d3457abeea94e9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3426884 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jonah Ryan-Davis b756b2c2 2022-02-02T16:16:14 Suppress flaky Mipmap/Multithreading tests on Win/SwS/ASAN Tests started flaking a while ago, but the problem may be getting worse Bug: angleproject:6968 Bug: angleproject:6965 Change-Id: I82e4be369e78ad96f93047c01c09914ccb6d481e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3433271 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Kenneth Russell 812d5fff 2022-01-31T17:32:47 Metal: End the current render pass at glInvalidateFramebuffer. Prior to this, glInvalidateFramebuffer calls were discarding the effects of draw calls made afterward, in the same render pass. Add StateChangeTestWebGL2.InvalidateThenDrawFBO reproducing the basic problem reported, and document the variations attempted. Minimal code was changed to fix this issue because other changes hypothesized as necessary weren't testable. Drive-by cleanup of FragDepthTest, after which StateChangeTestWebGL2 was patterned. Bug: angleproject:6923 Change-Id: If79805dbf62fae76b7b9147940b5d9d301142baa Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3426828 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Gregg Tavares <gman@chromium.org> Commit-Queue: Kenneth Russell <kbr@chromium.org>
Cody Northrop 7d7cca47 2022-01-17T18:00:25 Vulkan: Update default FBO when fetch in use If the fetch mode of the default framebuffer changes, lazily create and use a new set of framebuffers (one per swapchain image) that are setup for fetch (i.e. have a matching renderpass). Test: FramebufferFetchES31.DefaultFramebufferTest Test: FramebufferFetchES31.DefaultFramebufferMixedProgramsTest Bug: angleproject:6893 Change-Id: Iff2b73d7c34b9b8ca9429c3f24aa700c2746cc81 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3401933 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Shahbaz Youssefi 72529c19 2022-01-31T14:37:42 Vulkan: Fix a few framebuffer fetch bugs A few fixes to framebuffer fetch: - The built-in symbol for coherent and non-coherent are now the same for gl_LastFragData, so extension check can choose one or the other. - The temporary variable used in a transformation is renamed to not be gl_LastFragData. - inout usage is now validated correctly for shader type and version. Bug: angleproject:6951 Bug: angleproject:6905 Bug: angleproject:6907 Change-Id: I9af341a3e8e01ed375a8230618184494813d3ece Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3427577 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 33427a4b 2022-01-31T12:07:43 Vulkan: Fix vkCmdResolveImage extents The source framebuffer's extents were accidentally used instead of the blit area extents. Bug: chromium:1288020 Change-Id: Ib723db50d9687fee0453d027141a94ea26d8a4b8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3427561 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Brandon Schade 38fada35 2022-01-27T18:16:18 Vulkan: Add support for OES_primitive_bounding_box Add OES version of the primitive bound box extension Bug: angleproject:3576 Test: dEQP-GLES31.functional.primitive_bounding_box.* Change-Id: Ie44d952992a68dfffd5c124dda8dd11069f0c1e1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3425086 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Brandon Schade <b.schade@samsung.com>
Brandon Schade 91b383e8 2022-01-27T10:22:17 Translator: Emit warning when identifier has double underscores OpenGL ES Shader Language 3.2 specification states that two consecutive underscores (__) are reserved. It doesn't result in an error if used but could result in unintended behavior. Update the translator accordingly. Bug: angleproject:6577 Tests: ShaderVariableTest.DoubleUnderscores* Change-Id: Ice7e0eca4f770400061f4b8f7f65106cb1926f1a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3421411 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Brandon Schade <b.schade@samsung.com>