src/tests/deqp_support


Log

Author Commit Date CI Message
Stephen White 52e560ea 2022-06-07T11:55:56 Remove suppressions for now-passing ES 3.1 tests. Bug: angleproject:1442, angleproject:1951 Change-Id: I61f9c39711f77d48a401ad98ef4ead4c0f17fe2a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3693821 Commit-Queue: Jamie Madill <jmadill@chromium.org> Commit-Queue: Stephen White <senorblanco@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 4dde8590 2022-06-06T23:13:53 Remove suppression for passing tests Bug: angleproject:2976 Change-Id: I5e899c4d4fcc68b52b7b131dae6011a6129ab16b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3690748 Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi ce3c0fe9 2022-06-06T12:09:45 Vulkan: Make depth-correction uniform controlled This change makes sure SPIR-V transformations are not required for depth correction, having the number of potential pipelines. Bug: angleproject:5881 Change-Id: If3f66b34bdd1127ae588cbc822ea7cf01fa8621f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3691801 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com>
Antonio Caggiano f6c14933 2022-01-19T17:19:48 dEQP: Support Wayland Improve ANGLE native display factory by supporting creation of a Wayland native display. Bug: angleproject:7065 Change-Id: I0882d8666b1d07ced0804b99d1998ca45f4ad73b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3525753 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Yuxin Hu 78ea8521 2022-05-19T19:04:31 Suppress Flaky Tests Suppress the flaky deqp gles3 d3d tests on NVIDIA Bug: angleproject:7345 Change-Id: I2e49af4f57ecd56c5415aa93b7a636adc939f418 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3656317 Auto-Submit: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Yuxin Hu 93c0c90d 2022-05-17T11:00:59 Suppress the failing egl test to unblock roller Suppress this failing tsan test to unblock the VK-GL-CTS roller Bug: angleproject:7327 Change-Id: I077a7e5b1474d08b6c9bcf08187b634da911e75d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3648309 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Auto-Submit: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Roman Lavrov 87058cb8 2022-05-13T18:14:46 Re-skip flaky test un-skipped by crrev.com/c/3641181 Bug: angleproject:1442, angleproject:7313 Change-Id: Iead8af6f5eec85cafcf373085ed663bb6f5f54e0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3645501 Auto-Submit: Roman Lavrov <romanl@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Roman Lavrov <romanl@google.com>
Stephen White 9b15e1c2 2022-05-11T11:47:52 D3D11: clean up ES31 test expectations. Remove expectations for now-passing tests. Make some expectations more precise. Bug: angleproject:1442, angleproject:1729 Change-Id: I9843b7ef438599d121d3dd028273ae50fcf89e2c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3641181 Commit-Queue: Stephen White <senorblanco@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 31321cb7 2022-05-09T16:17:25 Vulkan: Remove suppressions and workarounds for old AMD/Windows The old AMD/Windows bots are decomissioned. This change removes suppressions and workarounds that were added for that bot. Bug: angleproject:2463 Bug: angleproject:2809 Bug: angleproject:2847 Bug: angleproject:3243 Bug: angleproject:4720 Bug: angleproject:6123 Bug: angleproject:6652 Bug: angleproject:7144 Bug: angleproject:7227 Bug: chromium:1224996 Change-Id: I333ed6d76dfa2916b713ccb49127deceb5b1b551 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3634728 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 5113ae8e 2022-04-29T22:42:59 Vulkan: Explicitly enable per-sample shading if `sample` used The Vulkan spec is not explicit about the `Sample` decoration implicitly enabling per-sample shading. While this is being corrected in the spec, the ARM Vulkan driver does not have this implicit behavior. A workaround is added such that the usage of the `sample` qualifier is reported, and used to explicitly enable per-sample shading through the API. Bug: angleproject:6876 Change-Id: Idb8345aacdcfa45cb37fefcd30aa5405168d21e3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3615738 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Roman Lavrov 41adabc4 2022-04-29T15:04:27 Use app data dir instead of /sdcard for writing qpa file Appears to drastically reduce runtime variability. Example: Max shard runtime (28m 15s) + overhead (10s): 28m 24s (shard #8) Min shard runtime (3m 5s) + overhead (20s): 3m 24s (shard #6) --> Max shard runtime (4m 6s) + overhead (11s): 4m 17s (shard #0) Min shard runtime (3m 7s) + overhead (10s): 3m 17s (shard #6) --deqp-log-flush is enabled by default (only disabled for multi-process execution http://anglebug.com/5157) and together with --deqp-log-shader-sources which is also enabled by default results in a huge number of line-by-line flushes degradng filesystem performance. Example strace capture in a degraded state: [pid 21208] 10:55:51.194033 write(77, "</ShaderSource>\n <InfoLog>", 28) = 28 <0.181028> [pid 21208] 10:55:51.375879 write(77, "</InfoLog>\n</FragmentShader>\n</S"..., 78) = 78 <0.179196> [pid 21208] 10:55:51.555790 write(77, "\" Description=\"Vertex shader com"..., 41) = 41 <0.177602> ~180ms *per line written* !!! (28, 78, 41 characters...) Under normal conditions these are way down in the microsecond range: [pid 11412] 10:55:56.689894 write(72, "</ShaderSource>\n <InfoLog>", 28) = 28 <0.000020> [pid 11412] 10:55:56.689957 write(72, "</InfoLog>\n</FragmentShader>\n</S"..., 78) = 78 <0.000026> I think that the reason for this is some peculiarity of the /sdcard filesystem which uses fuse: % df -h /sdcard/chromium_tests_root/ /dev/fuse 50G 3.7G 46G 8% /mnt/user/0/emulated As opposed to block/dm-N of the (non-app accessible) temp directory: % df -h /data/local/tmp/ /dev/block/dm-9 50G 3.7G 46G 8% /data_mirror/cur_profiles And the app data directory appears to be using the same filesystem: % df -h /data/data/com.android.angle.test/ /dev/block/dm-9 50G 3.7G 46G 8% /data_mirror/cur_profiles As far as I can tell the degradation of performance does not happen on this filesystem despite the huge amount of small writes. Disabling deqp log flushes when running on bots probably makes sense too but I'd like to first confirm the impact of this CL separately. Bug: chromium:1217662 Bug: angleproject:7242 Change-Id: I507e4c330fd4e1f4ce05f9768506f905e142f835 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3615081 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Roman Lavrov <romanl@google.com>
Shahbaz Youssefi 3b65b803 2022-04-27T11:04:22 Vulkan: Work around Qualcomm imprecision with dithering On qualcomm, sometimes the output is ceil()ed instead of round()ed. With ditering emulation affecting values, some dEQP tests fail due to the excessive change in value when dithering bumps the value slightly over to the next quantum. In this change, a workaround is added to round() the value before outputting it. Bug: angleproject:6953 Change-Id: Iae7df5ca20055b4db3185c6153f3c0bf4ba07f68 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3611064 Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Guoxing Wu 13784ebe 2022-04-21T10:38:23 Vulkan: use "undefined" for layerProvokingVertex Use "undefined" for layerProvokingVertex because different platforms has different behavior on this. APP would have to set gl_Layer identically. Bug: angleproject:7185 Change-Id: Ia5c31f617c2441c1a6ac8d682c9ce98f464045e0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3592274 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Stephen White 5097d10c 2022-04-20T17:15:51 D3D: unsuppress some now-passing tests. Change-Id: I59efec02edddd876e962512c2690563b6efd18d2 Bug: angleproject:1951, angleproject:1442 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3598015 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Yuly Novikov 956fb16e 2022-04-14T20:54:26 Remove Win NVIDIA dEQP suppressions Switching from Quadro P400 to GTX 1660 Bug: angleproject:2222 Change-Id: I7f12878a0ccf31fe5ca319251ab3f4bc60d66b61 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3587372 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>
Shahbaz Youssefi c5271e8e 2022-04-04T23:28:35 Vulkan: Emulate GL_KHR_blend_equation_advanced Based on a change by Brandon Schade <b.schade@samsung.com> In the translator, when advanced blend is enabled, an input attachment is added. Based on the listed advanced blend equations, emulation code is added that performs those equations' functions. The blend equation itself is passed through a driver uniform. Note that the advanced blend extension only allows a single output to use advanced blend, and that should be at location 0. In the Vulkan backend, when advanced blend is used, the driver uniform to select the equation is updated and normal blending is disabled. Bug: angleproject:3586 Change-Id: Icc42e8be238d34fca149087eb9cfe616a7643a6b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3575738 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Yuxin Hu 6768aff7 2022-04-07T23:25:08 Fix Geometry Shader Conformance Test Failure on Pixel6 Add code in shader linker stage to check the number of AtomicCounterBuffers against these values: GL_MAX_VERTEX_ATOMIC_COUNTER_BUFFERS GL_MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS_EXT GL_MAX_COMBINED_ATOMIC_COUNTER_BUFFERS GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS Bug: angleproject:6918 Change-Id: If1c1d0dc2452f5aafc72d81f4f5523608810bba9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3576629 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Ian Elliott <ianelliott@google.com> Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Yuly Novikov 291be0b7 2022-04-12T14:31:35 Suppress multisample_interpolation dEQP failures on Pixel 6 Vulkan 16 tests started failing after upgrading phones to Android 13 DP2 Bug: angleproject:6876 Change-Id: I9b965bf6a835cda7fad82c27110cdf38b88c6cb9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3584386 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>
Shahbaz Youssefi aed5951e 2022-03-29T16:29:58 Reland "Vulkan: Fix texture-after-framebuffer sync issues" This is a reland of commit 535cd538f3585b44855647339f04bae1c1acf63a Original change's description: > Vulkan: Fix texture-after-framebuffer sync issues > > In TextureVk::syncState, for various reasons, the underlying image may > need to be respecified. For example because base/max level changed, > usage/create flags have changed, the format needs modification to become > renderable, generate mipmap is adding levels, etc. > > Currently, ANGLE syncs FramebufferVk before TextureVk for the sake of > the deferred clear optimization. This means that if the texture needs > to recreate its underlying image, it needs to do so earlier than its own > syncState, and do so in FramebufferVk::syncState through the > TextureVk::getAttachmentRenderTarget function. > > Over time, TextureVk::getAttachmentRenderTarget was modified to do parts > of what TextureVk::syncState did for this matter as bugs were > discovered, and more continue to be discovered. The bug that prompted > this change is missing image recreation when usage/create flags change. > > In this change, the relevant code in TextureVk::syncState is refactored > in a helper that's called by TextureVk::getAttachmentRenderTarget. This > way, the two functions should always be in agreement, avoiding > TextureVk::syncState recreating the image after > FramebufferVk::syncState, leading to use-after-free bugs. > > Bug: angleproject:4418 > Bug: angleproject:6909 > Bug: chromium:1266094 > Bug: chromium:1296866 > Change-Id: I856a34ca5cf573578c771f5adbeb9208420a3f62 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3557817 > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Reviewed-by: Charlie Lao <cclao@google.com> > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Bug: angleproject:4418 Bug: angleproject:6909 Bug: chromium:1266094 Bug: chromium:1296866 Change-Id: I0110eab88eb9d8f77e204b84a6e90308e2384fd7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3572715 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 797e627e 2022-04-08T22:49:51 Autogenerate list of features as enum The WithX() and WithNoX() helpers are removed and replaced with enable() and disable() member functions that take the name of the feature (as a Feature::X enum constant). This has two benefits: - Adding tests that override a feature no longer requires additional helper functions to be written. - There's no mistaking the feature name. This change doesn't yet fix the main issue in anglebug.com/6435, but does fix the following helpers using an old feature name (so they were ineffective): - WithMetalForcedBufferGPUStorage - WithNoVulkanViewportFlip A follow up would remove the old way of overriding features in tests and replaces them with the new way. Bug: angleproject:6435 Change-Id: Ida02b26ec72bc40d7a8938c76a93815bb903ca05 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3580982 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Yuxin Hu a11bf0ed 2022-03-31T17:28:18 Fix Max Atomic Counter Conformance Test Failure on Pixel6 ARM does not support the VkPhysicalDeviceFeature vertexPipelineStoresAndAtomics. According to vulkan specs: we should disable the usage of atomic buffers in vertex, tessellation, and geomotry shader stages. Set maxShaderAtomicCounters to zero for all these shader stages if vertexPipelineStoresAndAtomics is not supported. Create two angle_end2end_test to check atomic buffer usage in tessellation control shader and tessellation evaluation shader. Bug: angleproject:6918 Change-Id: I566562f99672d50cfb3d75def81a18a613b26ca0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3563501 Reviewed-by: Ian Elliott <ianelliott@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Jamie Madill b33767ec 2022-04-04T15:26:29 Revert "Vulkan: Fix texture-after-framebuffer sync issues" This reverts commit 535cd538f3585b44855647339f04bae1c1acf63a. Reason for revert: May fix Win/Intel blockman_go flakiness. Bug: angleproject:7167 Original change's description: > Vulkan: Fix texture-after-framebuffer sync issues > > In TextureVk::syncState, for various reasons, the underlying image may > need to be respecified. For example because base/max level changed, > usage/create flags have changed, the format needs modification to become > renderable, generate mipmap is adding levels, etc. > > Currently, ANGLE syncs FramebufferVk before TextureVk for the sake of > the deferred clear optimization. This means that if the texture needs > to recreate its underlying image, it needs to do so earlier than its own > syncState, and do so in FramebufferVk::syncState through the > TextureVk::getAttachmentRenderTarget function. > > Over time, TextureVk::getAttachmentRenderTarget was modified to do parts > of what TextureVk::syncState did for this matter as bugs were > discovered, and more continue to be discovered. The bug that prompted > this change is missing image recreation when usage/create flags change. > > In this change, the relevant code in TextureVk::syncState is refactored > in a helper that's called by TextureVk::getAttachmentRenderTarget. This > way, the two functions should always be in agreement, avoiding > TextureVk::syncState recreating the image after > FramebufferVk::syncState, leading to use-after-free bugs. > > Bug: angleproject:4418 > Bug: angleproject:6909 > Bug: chromium:1266094 > Bug: chromium:1296866 > Change-Id: I856a34ca5cf573578c771f5adbeb9208420a3f62 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3557817 > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Reviewed-by: Charlie Lao <cclao@google.com> > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Bug: angleproject:4418 Bug: angleproject:6909 Bug: chromium:1266094 Bug: chromium:1296866 Change-Id: I26b6f644442e2875aba954d6417543b1d5121376 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3569801 Auto-Submit: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 535cd538 2022-03-29T16:29:58 Vulkan: Fix texture-after-framebuffer sync issues In TextureVk::syncState, for various reasons, the underlying image may need to be respecified. For example because base/max level changed, usage/create flags have changed, the format needs modification to become renderable, generate mipmap is adding levels, etc. Currently, ANGLE syncs FramebufferVk before TextureVk for the sake of the deferred clear optimization. This means that if the texture needs to recreate its underlying image, it needs to do so earlier than its own syncState, and do so in FramebufferVk::syncState through the TextureVk::getAttachmentRenderTarget function. Over time, TextureVk::getAttachmentRenderTarget was modified to do parts of what TextureVk::syncState did for this matter as bugs were discovered, and more continue to be discovered. The bug that prompted this change is missing image recreation when usage/create flags change. In this change, the relevant code in TextureVk::syncState is refactored in a helper that's called by TextureVk::getAttachmentRenderTarget. This way, the two functions should always be in agreement, avoiding TextureVk::syncState recreating the image after FramebufferVk::syncState, leading to use-after-free bugs. Bug: angleproject:4418 Bug: angleproject:6909 Bug: chromium:1266094 Bug: chromium:1296866 Change-Id: I856a34ca5cf573578c771f5adbeb9208420a3f62 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3557817 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Ian Elliott 638557ac 2022-03-28T10:20:30 Add back another Pixel-6-specific FAIL expectation Passes on pre-release Android T drivers, but fails on the Android S drivers. Bug: b/224537784 Change-Id: Idc631d13b1666f0f0b4bf1c5bbfa9e9343af4d75 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3554360 Auto-Submit: Ian Elliott <ianelliott@google.com> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Ian Elliott b2c6e08e 2022-03-24T11:38:04 Reland Remove unnecessary suppressions for Pixel6 dEQP This is a reland of 0455f356eda37e98cbfaff6b4be3241a0743bdcd Original change's description: > Remove unnecessary suppressions for Pixel6 dEQP tests > > Bug: b/224537784 > Change-Id: If7befe0279a06cddb79c67fdd34a62b4cb51c6e0 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3551658 > Reviewed-by: Yuxin Hu <yuxinhu@google.com> > Commit-Queue: Ian Elliott <ianelliott@google.com> The previous CL was based on the pre-release Android T Pixel 6 drivers. The Chromium bots are running released Android S Pixel 6 drivers. This CL updates the expectations with the observed status, and still removes some expectations that are now unnecessary. Bug: b/224537784 Change-Id: I4f4041e015824fd1d8211d6d7d0adedbccaa3ddb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3552544 Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Ian Elliott <ianelliott@google.com>
Ian Elliott 1d71f55f 2022-03-24T19:27:21 Remove unnecessary SKIPs for Pixel4* dEQP tests Bug: b/224537784 Change-Id: I81c6f18d72ea893341ad2aa8ca819893e7d53d26 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3551659 Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Ian Elliott <ianelliott@google.com>
Ian Elliott 45543295 2022-03-25T04:36:49 Revert "Remove unnecessary suppressions for Pixel6 dEQP tests" This reverts commit 0455f356eda37e98cbfaff6b4be3241a0743bdcd. Reason for revert: Multiple tests that pass on my Pixel 6 fail on the bot Pixel 6's Original change's description: > Remove unnecessary suppressions for Pixel6 dEQP tests > > Bug: b/224537784 > Change-Id: If7befe0279a06cddb79c67fdd34a62b4cb51c6e0 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3551658 > Reviewed-by: Yuxin Hu <yuxinhu@google.com> > Commit-Queue: Ian Elliott <ianelliott@google.com> Bug: b/224537784 Change-Id: Id3430a7632651b9b7b5e980f41678aebbdfc426c No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3552124 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Reviewed-by: Ian Elliott <ianelliott@google.com> Commit-Queue: Ian Elliott <ianelliott@google.com> Auto-Submit: Ian Elliott <ianelliott@google.com>
Ian Elliott 0455f356 2022-03-24T11:38:04 Remove unnecessary suppressions for Pixel6 dEQP tests Bug: b/224537784 Change-Id: If7befe0279a06cddb79c67fdd34a62b4cb51c6e0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3551658 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Ian Elliott <ianelliott@google.com>
Ian Elliott 6bd11e28 2022-03-22T12:38:13 Add back Pixel 6-specific dEQP FAIL suppression Bug: b/224537784 Change-Id: Iddbd1cbd1aef6349dc1a4298febe74907bd126a8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3543727 Reviewed-by: Ian Elliott <ianelliott@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Ian Elliott e7f29440 2022-03-16T14:31:39 Remove dEQP FAIL expectations for passing tests Based on bot runs, a number of previously FAIL'ing dEQP tests are now passing. Need to separately test Pixel 6 and SKIP expectations. Bug: b/203826952 Change-Id: I8a2bdb44b9050d1b93e85082c5dd1e15420e6f3e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3531073 Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Ian Elliott <ianelliott@google.com>
Constantine Shablya e74d0e81 2022-02-11T18:05:12 Vulkan: Implement EGL_KHR_partial_update This change provides a trivial implementation of partial update that does nothing, making apps that want this extension happy. A possible efficient Vulkan implementation would use the damage set to narrow down render area, but it appears to only be useful for only some TBDR hardware. Bug: angleproject:6960 Reviewed-by: Antonio Caggiano <antonio.caggiano@collabora.com> Change-Id: Ic553ac9590c336093f1bf25a6521574622599bf6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3427640 Reviewed-by: Ian Elliott <ianelliott@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Auto-Submit: Constantine Shablya <constantine.shablya@collabora.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 98bb4f32 2022-02-23T16:51:32 Vulkan: Implement advanced blend through extension This change exposes GL_KHR_blend_equation_advanced if VK_EXT_blend_operation_advanced is supported. No emulation is yet implemented. Bug: angleproject:3586 Change-Id: Ie7a442c22e028e3aa45ccef52db320e205664d49 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3487951 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@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>
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>
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>
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>
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>
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>
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>
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 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>
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>
Shahbaz Youssefi 665ddccd 2021-12-09T23:06:39 Vulkan: Emulate dithering Dithering in OpenGL is vaguely defined, to the extent that no dithering is also a valid dithering algorithm. Dithering is enabled by default, but emulating it has a non-negligible cost. Similarly to some other GLES drivers, ANGLE enables dithering only on low-bit formats where visual banding is particularly common; namely RGBA4444, RGBA5551 and RGB565. Dithering is emulated in the fragment shader and is controlled by a spec constant. Every 2 bits of the spec constant correspond to one attachment, with the value indicating: - 00: No dithering - 01: Dither for RGBA4444 - 10: Dither for RGBA5551 - 11: Dither for RGB565 The translator appends code to the shader that, based on the format specified by the specialization constant, adds dithering to each color attachment output. A 2x2 Bayer matrix is used for dithering, indexed by gl_FragCoord.xy % 2. Bug: angleproject:6755 Change-Id: Ib45da5938e299b6626bff921119d63e7357dd353 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3374261 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Brandon Schade aadc6434 2022-01-24T18:28:19 Vulkan: Fix to correctly redefine gl_PerVertex in GS Angle translator structures were inconsistent of data lookup of gl_PerVertex data when it is user defined. Bug: angleproject:5579 Test: KHR-GLES32.core.geometry_shader.api.getProgramiv3 Test: GLSLTest_ES31.PerVertex* Change-Id: Ied9ea25ce86ade29261f4f75ce0b48af15061760 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2962352 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Brandon Schade <b.schade@samsung.com>
Jamie Madill cb96c236 2022-01-26T18:53:55 Revert "Vulkan: Enable framebuffer fetch on SwiftShader." This reverts commit 5107231939b5e04d3d5e4376176db42c3ae60193. Reason for revert: Fails new code paths in Chrome+Skia. Bug: angleproject:6947 Original change's description: > Vulkan: Enable framebuffer fetch on SwiftShader. > > This also fixes a bug with non-coherent fetch in the symbol table. > > Bug: angleproject:6947 > Bug: angleproject:6948 > Change-Id: I190b2e0cddf1bc1b53a79079d3e2f79ccbb40d15 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3412998 > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > Reviewed-by: Cody Northrop <cnorthrop@google.com> > Commit-Queue: Jamie Madill <jmadill@chromium.org> Bug: angleproject:6947 Bug: angleproject:6948 Change-Id: I8bd6c55598552b733547e45c854f6d55768d2b65 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3417503 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 51072319 2022-01-25T10:41:25 Vulkan: Enable framebuffer fetch on SwiftShader. This also fixes a bug with non-coherent fetch in the symbol table. Bug: angleproject:6947 Bug: angleproject:6948 Change-Id: I190b2e0cddf1bc1b53a79079d3e2f79ccbb40d15 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3412998 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Yuly Novikov aaac31b4 2022-01-25T18:27:11 Unskip dEQP.GLES3/functional_shaders_operator_unary_operator_minus_* Fixed in crrev.com/c/3407737 Bug: angleproject:6916, angleproject:6645 Change-Id: I9b7ee44aed7d77e581b48f871e0f0dd1195dabf0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3413009 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Yuly Novikov 78d482e5 2022-01-13T14:49:26 Add standalone ANGLE Pixel 6 experimental bots The bot only runs dEQP tests with Vulkan backend, not GLES. Also skipping non-Vulkan tests in angle_end2end_tests. Also no perf/trace tests, as these time out uploading to device. Adding suppressions for the failing tests at the same time. Bug: chromium:1280418, angleproject:6819 Bug: angleproject:6898, angleproject:6899, angleproject:6900 Bug: angleproject:6905, angleproject:6907, angleproject:6908 Bug: angleproject:6909, angleproject:6910, angleproject:6916 Bug: angleproject:6917, angleproject:6918, angleproject:6919 Bug: angleproject:6931 Change-Id: I3598e6ff7f458ad7ab2defb86e02a17fbf2d20ca Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3387108 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Brandon Schade a5e22715 2021-09-30T17:03:34 Vulkan: Fixed TC shader and gl_PerVertex block interaction TransformSpirV() does not account for the fact that the tessellation control shader's output gl_PerVertex block is a named array. This results in the input and output blocks being sometimes flipped. Added code to track the IdRef of both input and output array gl_PerVertex blocks and swap them if necessary. Bug: angleproject:5557 Tests: KHR-GLES32.core.tessellation_shader.tessellation_control_to_tessellation_evaluation.data_pass_through Change-Id: Ie3823701b4eaa53daa8ca34faab657f54d8aee38 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3208513 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Brandon Schade <b.schade@samsung.com>
Brandon Schade 2caa9d4f 2021-10-04T09:43:57 Vulkan: Add missing glGetProgramPipelineiv parameters handling The glGetProgramPipelineiv function call was missing the case handling for tessellation control and evaluation shaders. Bug: angleproject:5557 Tests: KHR-GLES32.core.tessellation_shader.tessellation_control_to_tessellation_evaluation.gl_MaxPatchVertices_Position_PointSize Change-Id: Id888d1a9ae94228a33cfabcc7f65d1f63d596425 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3208511 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Brandon Schade <b.schade@samsung.com>
Yuly Novikov dcac02ac 2022-01-19T21:30:21 Revert "Enable robustnessEXT for SwiftShader." This reverts commit b803b60df1806f189c1b29ca77da47896241e0f1. Reason for revert: blocks roll into Chrome - anglebug.com/6922 Original change's description: > Enable robustnessEXT for SwiftShader. > > Bug: chromium:1287631 > Bug: angleproject:6906 > Change-Id: I3c8c32561a1ac7860c83b8d3ba22aafd0bf81fd4 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3390489 > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Reviewed-by: Geoff Lang <geofflang@chromium.org> > Commit-Queue: Roman Lavrov <romanl@google.com> Bug: chromium:1287631 Bug: angleproject:6906, angleproject:6922 Change-Id: Ic8ff7dd996455009037cbff9e10b6fbbc420b37e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3402820 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Roman Lavrov b803b60d 2022-01-14T23:29:14 Enable robustnessEXT for SwiftShader. Bug: chromium:1287631 Bug: angleproject:6906 Change-Id: I3c8c32561a1ac7860c83b8d3ba22aafd0bf81fd4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3390489 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Roman Lavrov <romanl@google.com>
Mohan Maiya d4c8209b 2022-01-10T13:30:06 Fix validation of copyImageSubData related to texture completeness Fixed an edge case in validation code where we were not properly ignoring format rules for texture completeness as required for copyImageSubData by the ES 3.2 specification Bug: angleproject:5363 Tests: KHR-GLES32.core.copy_image.r32*_texture Change-Id: Ibf8a6f4708e2135f0eb6f4ba58d4ce413f11ce5b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3379224 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: mohan maiya <m.maiya@samsung.com>
Mohan Maiya 96fd9b72 2022-01-10T13:17:43 Fix validation of glCompressedTexImage3D GLES 3.2 spec allows for glCompressedTexImage3D to accept TEXTURE_CUBE_MAP_ARRAY as a target as well. Account for this during validation. Bug: angleproject:5393 Tests: KHR-GLES32.core.texture_cube_map_array.etc2_texture Change-Id: Ieb75e63021bea2ea6f8fcc68bd6b666d0bd7f5dc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3379225 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: mohan maiya <m.maiya@samsung.com>
Mohan Maiya 37cde9e9 2022-01-10T10:59:28 Update GLES31 expectations file The commit f9dbd4efb3b8c1550 fixed a validation bug related to framebuffer and texture buffers but missed updating the expectations file. Remove skip for related test. Bug: angleproject:5579 Tests: dEQP-GLES31.functional.debug.negative_coverage.get_error.buffer.framebuffer_texture Change-Id: Id8807479e63d886b85512a88eaaeac93488e0545 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3377763 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: mohan maiya <m.maiya@samsung.com>
Jamie Madill 217dc204 2022-01-07T13:43:07 Broaden TSAN EGL multithread suppression. Other non-random tests can be flaky as well. Because we can't retry crashing tests with the flaky expectation, mark these tests as skipped for now. For more info and possible workarounds see http://crbug.com/1275223 Bug: angleproject:6678 Change-Id: I48d9287e538d0f1141d6871d2948c3f2902ea1c4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3373166 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 4472b3b0 2022-01-07T11:47:32 Fix TSAN suppressions. Bug: angleproject:6746 Change-Id: I015b45d3a258a368c031b040102efce4d2c7cd38 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3373164 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill c2a29614 2022-01-04T14:24:57 Test Expectations: Use file order as override priority. Now expectations that happen first in the file will override those later expressions. This fixes the weird conflict that could occur when we use wildcards inside the expression. e.g.: a) 6746 : *BadConfig = SKIP b) 5076 : TestSuite.Test/* = TIMEOUT Previously b) would override a) for TestSuite.Test/BadConfig and we would give the expectation as TIMEOUT because the string length of the expectation was longer. This will allow us to use short skip expressions for e.g. TSAN. Bug: angleproject:6746 Change-Id: I2dc651c3593c02b6f8723d67c0fc311701ee15f8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3365659 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Kyle Piddington cfc4db34 2021-11-04T16:54:15 Metal: Provoking vertex support for Metal DrawArrays Add in provoking vertex rewrite support for drawArrays command, enabling 6 dEQP tests. GLES3/functional_rasterization_flatshading_line_loop GLES3/functional_rasterization_flatshading_line_strip GLES3/functional_rasterization_flatshading_lines GLES3/functional_rasterization_flatshading_triangle_fan GLES3/functional_rasterization_flatshading_triangle_strip GLES3/functional_rasterization_flatshading_triangles This patch adds a new shader to the Provoking Vertex helper that generates draw commands for all simple data types. Fix bug in provoking vertex helper that caused reused index buffers to suffer from allocation issues. Also fix Provoking vertex for triangle fan generation Bug: angleproject:5325 Change-Id: I7a1211dfcd99329868269ea0666eef1915d487b5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3261635 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Kyle Piddington <kpiddington@apple.com>
Jamie Madill 14f55a7f 2021-11-02T10:16:58 infra: Enable TSAN and UBSAN tests. These tests are not yet enabled on the CQ. Bug: angleproject:5795 Change-Id: I3fc58ab800ebbc0840da8221b03b4ab145d28028 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3258003 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Jamie Madill 2797227b 2021-11-26T08:48:30 dEQP: Add flaky result handling. A flaky expectation will allow the test harness to retry a failing test one extra time. If the second run passes the flaky test will be considered a passing result. Bug: angleproject:5795 Change-Id: I09fc4ed34ee09548ab14f46dfce35f900be5550f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3303712 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi d781ef09 2021-11-22T11:12:10 Roll VK-GL-CTS from 234f8a066b4d to bfede065f419 (18 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/234f8a066b4d..bfede065f419 2021-11-20 quic_mnetsch@quicinc.com Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/master 2021-11-19 ari.suonpaa@siru.fi Add tests for buffer size requirements 2021-11-19 jari.komppa@siru.fi Extend interpolateAt* tests 2021-11-19 jari.komppa@siru.fi Add power of two checks for physical device limits 2021-11-19 jari.komppa@siru.fi Modify dual source blend tests to use discard 2021-11-19 juha.heiskanen@siru.fi Add fragment operations occlusion query tests 2021-11-19 mohd.faisal@arm.com Fix wrong conversion from shared pointer to int. 2021-11-19 arkadiusz.sarwa@amd.com Enable anisotropic tests for mipmap images 2021-11-19 jason.ekstrand@intel.com Remove invalid semaphore import/export tests 2021-11-18 quic_mnetsch@quicinc.com Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master 2021-11-15 quic_mnetsch@quicinc.com Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/master 2021-11-13 quic_mnetsch@quicinc.com Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master 2021-11-13 michal.jakubek@mobica.com Various methods passing of PhysicalStorageBuffer tests 2021-11-13 venni.ihanakangas@siru.fi Improve coverage of MSAA copies 2021-11-13 michal.jakubek@mobica.com Fix Buffer Memory Requirements tests compilation errors 2021-11-13 r.potter@samsung.com Mirror existing ANGLE waiver for Samsung devices 2021-11-13 ruoyu@amd.com Support FP16 CPU Rendering 2021-11-09 alex.lan@arm.com Add yuv420 format to EGL AHB tests 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 geofflang@google.com,angle-bots+autoroll-info@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:6724 Change-Id: Ied03caaa16832597f9a694398577a4b24e11ce90 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3296262 Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Tim Van Patten e28083ad 2021-11-09T18:00:17 Enable RenderDoc capture for debug builds Enable RenderDoc capture in builds where Vulkan Validation Layers are enabled. This essentially enables the '--renderdoc' flag for debug builds when running end2end/deqp tests to make it easier to debug tests. This CL also add the '--no-renderdoc' flag to force disabling RenderDoc capture. Bug: angleproject:6072 Change-Id: Iae7aae30aae9bdc58a7546118d156aef2047c210 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3270600 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Tim Van Patten <timvp@google.com>
Jamie Madill 9a36c3b6 2021-11-15T13:46:06 infra: Update NVIDIA to 1660 testing. Bug: angleproject:6694 Change-Id: I2580b53e45e633af98be757d9bb081461c06de95 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3283163 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Brian Sheedy <bsheedy@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Shahbaz Youssefi fdad9531 2021-11-10T22:09:00 Forward extra --deqp-* flags to deqp This allows angle_deqp_* executables to be passed extra --deqp-* flags that are unknown to ANGLE. Bug: angleproject:6682 Change-Id: I9930cb8dd76b1c7bc7da9b731659277392fcd3ce Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3274175 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 9c486b67 2021-11-11T09:55:47 Unoverride upstreamed dEQP fix Bug: angleproject:5500 Change-Id: I486ebf72840e8b6ff9ca36ac7ad491fea9dd4cf8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3275834 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Jamie Madill 2a9e6e48 2021-11-01T15:56:54 infra: Add tests to ASAN configs. These add basic ANGLE tests with SwiftShader + ASAN. Bug: angleproject:5795 Change-Id: I92a51a44214ff0f442d4a1b2a0bc6ac2b8d3f4eb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3254431 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Shahbaz Youssefi 2a71c9cd 2021-11-11T09:28:15 Remove stray deqp override file Override was effectively reverted in: https://chromium-review.googlesource.com/c/angle/angle/+/2375965 Bug: angleproject:4143 Change-Id: Idd38bdfa542eec44bc873791910c070b1e0d98c6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3275833 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Jamie Madill 2d4bee83 2021-11-04T10:16:16 EGL: Add early exit when hitting invalid attribute. According to the EGL spec, we stop checking attributes when we encounter an invalid enum. That means it's valid for an application to pass in a list of attributes without EGL_NONE as long as one of them is invalid. To handle this, we add lazy attribute validation to the AttributeMap class, that gets triggered in the validation calls. We only implement the early exit validation for the config attributes to fix an EGL test that would access out of bounds memory. Bug: angleproject:6660 Change-Id: I264d0f98b4ddd9e74187846e9e668270a6fbaee1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3262478 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Gregg Tavares 604610b4 2021-11-01T12:03:31 Metal: Use Depth32F for DEPTH_COMPONENT16 depth16unorm is broken on Metal. This is a workaround. Bug: angleproject:6597 Change-Id: I1748f9fab587b22980d13e8a141fa880eb6f9db0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3255666 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Gregg Tavares <gman@chromium.org>
Gregg Tavares 20ddb802 2021-10-28T11:01:12 Fix Blitting in Metal backend. The Metal backend was clipping in integer space. If the src and dst are not the same size, say src is 3 wide and dst is 4 wide, and src starts at -1, then src will be clipped by one making the src 2 wide. It got 1/3 smaller so the dst get 1/3 smaller making it 2.666 pixels wide. The dst then needs to be expanded to pixels so 3 wide. But, that means the src also needs to be expanded 0.3333 * 3(originalSrcWidth) / 4(originalDstWidth) so its new left edge is -0.245 which is not an integer. Bug: angleproject:6598 Change-Id: I2faa966b18b457f474a3e7f6844ef64bfa66dbe8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3251683 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Kyle Piddington <kpiddington@apple.com> Commit-Queue: Gregg Tavares <gman@chromium.org>
Brandon Schade 5da062ba 2021-10-06T11:15:00 Translator: Fixed textureGatherOffsets validation The parser only considered the case where the input to the textureGatherOffsets() function is an aggregate constructor node, but not if it is a pre-initialized constant variable. Added code to handle the constant variable case. Tests:KHR-GLES32.core.gpu_shader5.texture_gather_offsets_color KHR-GLES32.core.gpu_shader5.texture_gather_offsets_depth Bug: angleproject:5362 Change-Id: Ib1dd3450071341082ea6f0f2a243c3bb3ef6b95a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3217852 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Brandon Schade <b.schade@samsung.com>
Kyle Piddington db83279a 2021-10-27T10:45:23 Metal: Use 'fast' normalize to match DEQP expectations Normalize' has a fast math option that more conformantly deals with INF in normalize functions. Use metal::fast::normalize instead of metal::normalize This also matches SPIRV-Cross behavior for normalization Bug: angleproject:6629 Change-Id: I61392ecd6f61b612d21f2832e07a135e26b53ad6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3248145 Commit-Queue: Kyle Piddington <kpiddington@apple.com> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Gregg Tavares <gman@chromium.org>
Kyle Piddington c1b42740 2021-10-25T17:45:19 Metal: Use ES3 validation for GL_R/RG8_EXT formats Fix 6 fboCompleteness tests by setting the Metal conformance version to ES3, rather than ES2. This causes ANGLE to select the backwards compatible ES3 validation rather than the ES2 validation. The FBO completeness test may have a bug related to extensions in it, as limiting the Vulkan backend to ES2 conformance causes it to fail in the same manner of Metal. Bug: angleproject:6618 Change-Id: I64d87ea7b9e1957baab05b6380fe09e8271393a9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3244023 Commit-Queue: Kyle Piddington <kpiddington@apple.com> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Kyle Piddington a02eb809 2021-10-19T20:09:43 Metal: Allow zero-sized scissors Fixes the following ES2 tests: dEQP-GLES2.functional.fragment_ops.scissor.outside_render_* A zero sized scissor is a valid scissor rectangle. Instead of ignoring this call, allow it. Bug: angleproject:6592 Change-Id: Ifc5c145b43deae4a031025b63691eb2b54c598fb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3233935 Commit-Queue: Kyle Piddington <kpiddington@apple.com> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Gregg Tavares <gman@chromium.org>
Kyle Piddington 43fd49e6 2021-10-19T14:42:57 Metal: Add Shadow Sampler Grad workaround for AMD This change allows the direct translator to use emulated gradient shadow compare functions for AMD devices, and devices that don't support shadow compare sampler. Bug: angleproject:5107 Change-Id: I8cc8dcb6e6982531c2a858782869283e6dc97052 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3232818 Commit-Queue: Kyle Piddington <kpiddington@apple.com> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Jamie Madill 5ad7ae4a 2021-10-20T11:15:43 Remove Nexus 5X expectations from dEQP tests. Bug: angleproject:2322 Bug: angleproject:3308 Bug: angleproject:3309 Bug: angleproject:3434 Bug: angleproject:3715 Bug: angleproject:3716 Bug: angleproject:5169 Bug: angleproject:5184 Bug: angleproject:5665 Bug: angleproject:6527 Change-Id: If64efe229e12bb2a0bd4fe7f942899000a7aad76 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3233902 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Gregg Tavares bf42f009 2021-10-19T11:25:20 Update bug number for point clipping AMD metal Bug: angleproject:6589 Change-Id: Ibc33b9870ab566c2b36caa2b6ccdeb256078d3cf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3232286 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Gregg Tavares 83bb2705 2021-10-19T15:20:41 Update bug numbers in dEQP test expectations Bug: angleproject:6080 Change-Id: Ic0fa2c41b9a132cdebfd81dfd6137cf6623632c0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3232820 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Tim Van Patten eb1d2474 2021-10-04T20:23:26 Vulkan: Add R8G8B8_UNORM to vk_format_map.json The map of R8G8B8_UNORM -> VK_FORMAT_R8G8B8_UNORM is missing from vk_format_map.json. This leads to attempting to get format bits for angle::FormatID::NONE / VK_FORMAT_UNDEFINED. This CL adds R8G8B8_UNORM to vk_format_map.json, so devices that support it, like ARM, can use it. This allows those devices to import AHBs created with R8G8B8_UNORM. This CL also adds some additional ASSERT() and UNREACHABLE() calls to catch missing formats sooner. This allows the EGL tests to pass on ARM devices, but the tests are still skipped due to Qualcomm not having the necessary support for optimal tiling. Bug: angleproject:6277 Test: dEQP-EGL.functional.image* Change-Id: I41b7ead97a10ae80be4b6048d36d0d85ad71784f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3204152 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Gregg Tavares eb9b3f8e 2021-10-14T17:10:23 Update bug for intel metal mip test expectations Bug: angleproject:6571 Change-Id: I3a7c46ad479b4fc5d15e261269a12742c841a955 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3224101 Commit-Queue: Kenneth Russell <kbr@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Gregg Tavares 6cd1a0a5 2021-10-14T17:32:42 Metal: Update test expectations for AMD filtering issue Also adjust suppressions for incorrect lodMinClamp application on Intel GPUs. Bug: angleproject:6466 Bug: angleproject:6534 Bug: angleproject:6571 Change-Id: I574e0e92111c8d0a6021fe90f7a2076103435975 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3224662 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Brandon Jones <bajones@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Kenneth Russell <kbr@chromium.org>
Shahbaz Youssefi f3d5dac3 2021-08-23T17:25:15 Vulkan: SPIR-V Gen: Drop dependency to glslang The SPIR-V gen path is now made default. Compilation through glslang is still supported for debugging, and is enabled on the GLSL* end2end tests for smoke testing. On release builds, glslang is not supported. To test with glslang, add the following gn arg (only necessary if dcheck is disabled): angle_enable_spirv_gen_through_glslang = true Then enable the generateSPIRVThroughGlslang feature. This can be done by setting an environment variable: ANGLE_FEATURE_OVERRIDES_ENABLED=generateSPIRVThroughGlslang ./angle_deqp_gles2_tests Binary size saving: - 1.3MB on Linux (SPIR-V gen itself: 240KB) - 730KB on Android (SPIR-V gen itself: 140KB) Perf tests: - LinkProgramBenchmark.Run/vulkan_compile_single_thread * Through glslang: truncated mean: 1287033.36 * Direct SPIR-V Gen: truncated mean: 244495.91 (~80% reduction) - LinkProgramBenchmark.Run/vulkan_compile_multi_thread * Through glslang: truncated mean: 4565894.83 * Direct SPIR-V Gen: truncated mean: 1158164.10 (~75% reduction) Bug: angleproject:4889 Bug: angleproject:6210 Change-Id: I486342702977c8114e90073b97183aba115a8b2d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3115140 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Jamie Madill f13731ae 2021-10-06T10:04:24 Enable dEQP EGL + GLES 2/3 tests on Pixel 4. This is in preparation for removing these tests from the N5X. Bug: angleproject:6527 Change-Id: Ib44f876db47845935efd68a1727964834a675cbb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3208746 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Jamie Madill 44bef8ae 2021-10-08T15:01:37 Remove traces of Feature Level 9_3 support from tests. Bug: angleproject:1284 Bug: angleproject:3042 Change-Id: Ic2f77d315e98c3b15c5fc8b0359168bce00867d4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3213294 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi e2d91217 2021-10-08T15:55:58 Vulkan: Lift helper_invocation suppressions Bug: angleproject:4110 Change-Id: Ibfeeb835804b2d8349bd8e3911e4caa83e9cc6b3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3213299 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi af691fa7 2021-10-08T16:09:48 Vulkan: Lift shader_image_load_store swiftshader suppression Bug: angleproject:4414 Change-Id: I9965ccaeefd526fb01a490ee1b282dd4012aaa14 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3213303 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 86a67b31 2021-10-08T16:05:51 Vulkan: Lift shader_image_load_store suppression Bug: angleproject:4315 Change-Id: I649402f4c5032727cbd1a4a528ebf11716e9de9d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3213300 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 5794073a 2021-10-08T15:20:02 Vulkan: Lift copy_tex_image_conversion test suppressions Issue was fixed in anglebug.com/5502 Bug: angleproject:3817 Change-Id: I1bdebac1e9cca71992818e0cb95ccc023149973f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3213295 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Jamie Madill 4029a734 2021-10-07T13:34:49 Enable previously slow Android Depth/Stencil tests. Bug: angleproject:2549 Change-Id: I25c6cf2547a7eec544840cc641535048626b2fbe Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3212612 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Kyle Piddington af5ea7f9 2021-10-07T12:47:41 PrimitiveRestart tests fail due to incorrect draw commands. Primitive restart draw commands were being encoded incorrectly. Single element ranges were being disregarded, and a maximum draw size was not being enforced when the index buffer was aliased / reused. Bug: angleproject:6535 Change-Id: I5affad4df46c4ab2b3702caa89b483ae685618a7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3212629 Commit-Queue: Kyle Piddington <kpiddington@apple.com> Reviewed-by: Gregg Tavares <gman@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Jonah Ryan-Davis 212f4592 2021-09-22T12:02:47 Enable direct-to-metal backend by default We are switching over to Apple's direct-to-metal backend instead of generating SPIRV in the metal backend. This CL enables the direct-to-metal generation by default, but the SPIRV backend is still accessible by overriding the feature directMetalGeneration. This CL comes with a change in test expectations to catch new failures and clean up newly passing tests. Bug: angleproject:6080 Change-Id: I4b10ad93c641b88857079a08fb45d3dc575d71f1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3175664 Reviewed-by: Gregg Tavares <gman@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Tim Van Patten 7e490550 2021-10-06T11:16:08 Cleanup Android/Vulkan deqp_egl_test_expectations.txt There are several bugs marked as "fixed", but still have tests marked as fail/skip in deqp_egl_test_expectations.txt. This CL cleans those up. Note that "cleanup" in this case means restricting the fail/skip to just NEXUS5X, since many are still failing on that device. This CL doesn't look to make the list exactly correct, since that testing on that device is in the process of being deprecated anyway. Bug: angleproject:2546 Bug: angleproject:2635 Bug: angleproject:2715 Bug: angleproject:3081 Bug: angleproject:3270 Bug: angleproject:6533 Change-Id: I6cb9444727671997b38770f8d7ba5b3c6a1b019a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3208512 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jonah Ryan-Davis 207906c1 2021-10-05T15:09:38 Clean up Metal test expectations. Before switching to the direct metal backend, we should clean up some passing test expectations so we can track the new test results post-switch. TBR: ynovikov@chromium.org Bug: angleproject:6467 Bug: angleproject:6466 Bug: angleproject:6485 Change-Id: I33e0bd48b41906eb11cc4de09bf86f3ebd44a24f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3206691 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Gregg Tavares <gman@chromium.org> Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Jamie Madill 84f601eb 2021-10-06T13:23:21 Lift Intel specific test expectations. Bug: angleproject:2349 Change-Id: Ib0b6356424452740150b0913e61507839961cf85 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3209087 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 18aa5d22 2021-10-05T08:40:48 dEQP 3.1: Lift NVIDIA/Win/GL expectation. Should be fixed on the bots now. Bug: angleproject:1665 Change-Id: I70431434ac57dae3330c486d42b964b94a237491 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3205796 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 9a455825 2021-10-05T07:51:31 dEQP: Enable Android mipmap tests on GLES. These should be running correctly on the Pixel 4. Bug: angleproject:1529 Change-Id: Ieb55b63d8934d8dd2c516c0f1ce71e84584d4471 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3205791 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill f85ec039 2021-10-05T07:42:41 Lift failing Android expectations. These failures were related to the N5X. Bug: angleproject:1488 Change-Id: I57b8fdeb914a8e33793b0cd011255205baf7858f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3205790 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill a49394ae 2021-10-04T16:30:58 Lift failing Android test expectations. These were in the fbo.completeness.renderable.texture group. Bug: angleproject:1487 Change-Id: I96f7e4428ebe4e018bdaee7f4ba5fd3bba131405 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3203210 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 32d6e806 2021-09-24T23:50:54 Vulkan: Fix rotation of interpolateAtOffset interpolateAtOffset's offset was multiplied by flipXY*rotationMatrix, which is a vector. This was unable to actually apply rotation to the offset. The multiplier is changed to a matrix. Can be tested by running interpolate_at_offset*default_framebuffer tests in deqp gles3.1 together with pre-rotation: ./angle_deqp_gles31_tests --deqp-case=dEQP.GLES31/functional_shaders_multisample_interpolation_interpolate_at_offset_no_qualifiers_default_framebuffer --emulated-pre-rotation=90 Bug: angleproject:5843 Change-Id: I9727371375e999f07463b69153df3fd8b28c2a71 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3183108 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Ian Elliott <ianelliott@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>