Mesa (main): panvk: Call nir_opt_trivial_continues

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Mon May 9 13:57:13 UTC 2022


Module: Mesa
Branch: main
Commit: 7339ad2ed3b974f074053e49331551f71709150d
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=7339ad2ed3b974f074053e49331551f71709150d

Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date:   Mon Apr 25 16:54:11 2022 -0400

panvk: Call nir_opt_trivial_continues

Fixes
dEQP-VK.glsl.indexing.tmp_array.vec2_static_loop_write_static_loop_read_vertex
which otherwise fails due to nir_opt_sink being "clever" around unused
loop exit blocks.

Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
Reviewed-by: Boris Brezillon <boris.brezillon at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16155>

---

 src/panfrost/ci/deqp-panfrost-g52-vk.toml | 2 +-
 src/panfrost/vulkan/panvk_vX_shader.c     | 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/panfrost/ci/deqp-panfrost-g52-vk.toml b/src/panfrost/ci/deqp-panfrost-g52-vk.toml
index 80acaa133ea..b84161c9e76 100644
--- a/src/panfrost/ci/deqp-panfrost-g52-vk.toml
+++ b/src/panfrost/ci/deqp-panfrost-g52-vk.toml
@@ -18,7 +18,7 @@ include = [
     "dEQP-VK.glsl.builtin.precision.frexp.*",
     "dEQP-VK.glsl.builtin.precision.ldexp.*",
     "dEQP-VK.glsl.builtin_var.*",
-    "dEQP-VK.glsl.indexing.varying_array.*",
+    "dEQP-VK.glsl.indexing.*",
     "dEQP-VK.glsl.opaque_type_indexing.sampler.*",
     "dEQP-VK.glsl.conversions.*",
     "dEQP-VK.glsl.derivate.*.constant.*",
diff --git a/src/panfrost/vulkan/panvk_vX_shader.c b/src/panfrost/vulkan/panvk_vX_shader.c
index be3a7d541a7..7b3c40bde4a 100644
--- a/src/panfrost/vulkan/panvk_vX_shader.c
+++ b/src/panfrost/vulkan/panvk_vX_shader.c
@@ -584,6 +584,7 @@ panvk_per_arch(shader_create)(struct panvk_device *dev,
 
    NIR_PASS_V(nir, nir_opt_copy_prop_vars);
    NIR_PASS_V(nir, nir_opt_combine_stores, nir_var_all);
+   NIR_PASS_V(nir, nir_opt_trivial_continues);
 
    if (stage == MESA_SHADER_FRAGMENT)
       panvk_lower_blend(pdev, nir, &inputs, blend_state, static_blend_constants);



More information about the mesa-commit mailing list