From: Marek Olšák <marek.ol...@amd.com>

This was undefined yet harmless behavior in LLVM.
Not anymore - it causes a hang now.

Cc: 17.3 <mesa-sta...@lists.freedesktop.org>
---
 src/gallium/drivers/radeonsi/si_shader_tgsi_mem.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/gallium/drivers/radeonsi/si_shader_tgsi_mem.c 
b/src/gallium/drivers/radeonsi/si_shader_tgsi_mem.c
index 35ada5f..80f986a 100644
--- a/src/gallium/drivers/radeonsi/si_shader_tgsi_mem.c
+++ b/src/gallium/drivers/radeonsi/si_shader_tgsi_mem.c
@@ -139,21 +139,21 @@ LLVMValueRef si_load_image_desc(struct si_shader_context 
*ctx,
                                     LLVMConstInt(ctx->i32, 2, 0), "");
                index = LLVMBuildAdd(builder, index,
                                     ctx->i32_1, "");
                list = LLVMBuildPointerCast(builder, list,
                                            si_const_array(ctx->v4i32, 0), "");
        } else {
                assert(desc_type == AC_DESC_IMAGE);
        }
 
        rsrc = ac_build_load_to_sgpr(&ctx->ac, list, index);
-       if (dcc_off)
+       if (desc_type == AC_DESC_IMAGE && dcc_off)
                rsrc = force_dcc_off(ctx, rsrc);
        return rsrc;
 }
 
 /**
  * Load the resource descriptor for \p image.
  */
 static void
 image_fetch_rsrc(
        struct lp_build_tgsi_context *bld_base,
-- 
2.7.4

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to