Mesa (main): radv: use nir_ssa_undef() for unused image components in meta shaders

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Mon Oct 11 10:29:57 UTC 2021


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

Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date:   Thu Aug 26 11:32:10 2021 +0200

radv: use nir_ssa_undef() for unused image components in meta shaders

Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12561>

---

 src/amd/vulkan/radv_meta_bufimage.c     | 2 +-
 src/amd/vulkan/radv_meta_fmask_expand.c | 2 +-
 src/amd/vulkan/radv_meta_resolve_cs.c   | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/amd/vulkan/radv_meta_bufimage.c b/src/amd/vulkan/radv_meta_bufimage.c
index e42da97f259..18e558ec13c 100644
--- a/src/amd/vulkan/radv_meta_bufimage.c
+++ b/src/amd/vulkan/radv_meta_bufimage.c
@@ -933,7 +933,7 @@ build_nir_cleari_compute_shader(struct radv_device *dev, bool is_3d, int samples
    comps[0] = nir_channel(&b, global_id, 0);
    comps[1] = nir_channel(&b, global_id, 1);
    comps[2] = layer;
-   comps[3] = nir_imm_int(&b, 0);
+   comps[3] = nir_ssa_undef(&b, 1, 32);
    global_id = nir_vec(&b, comps, 4);
 
    for (uint32_t i = 0; i < samples; i++) {
diff --git a/src/amd/vulkan/radv_meta_fmask_expand.c b/src/amd/vulkan/radv_meta_fmask_expand.c
index b4c1276b60e..73900244b4a 100644
--- a/src/amd/vulkan/radv_meta_fmask_expand.c
+++ b/src/amd/vulkan/radv_meta_fmask_expand.c
@@ -76,7 +76,7 @@ build_fmask_expand_compute_shader(struct radv_device *device, int samples)
 
    nir_ssa_def *img_coord =
       nir_vec4(&b, nir_channel(&b, tex_coord, 0), nir_channel(&b, tex_coord, 1),
-               nir_channel(&b, tex_coord, 2), nir_imm_int(&b, 0));
+               nir_channel(&b, tex_coord, 2), nir_ssa_undef(&b, 1, 32));
 
    for (uint32_t i = 0; i < samples; i++) {
       nir_ssa_def *outval = &tex_instr[i]->dest.ssa;
diff --git a/src/amd/vulkan/radv_meta_resolve_cs.c b/src/amd/vulkan/radv_meta_resolve_cs.c
index 190d6204b3c..72cbf016842 100644
--- a/src/amd/vulkan/radv_meta_resolve_cs.c
+++ b/src/amd/vulkan/radv_meta_resolve_cs.c
@@ -220,7 +220,7 @@ build_depth_stencil_resolve_compute_shader(struct radv_device *dev, int samples,
    }
 
    nir_ssa_def *coord = nir_vec4(&b, nir_channel(&b, img_coord, 0), nir_channel(&b, img_coord, 1),
-                                 nir_channel(&b, img_coord, 2), nir_imm_int(&b, 0));
+                                 nir_channel(&b, img_coord, 2), nir_ssa_undef(&b, 1, 32));
    nir_image_deref_store(&b, &nir_build_deref_var(&b, output_img)->dest.ssa, coord,
                          nir_ssa_undef(&b, 1, 32), outval, nir_imm_int(&b, 0),
                          .image_dim = GLSL_SAMPLER_DIM_2D, .image_array = true);



More information about the mesa-commit mailing list