---
 src/amd/common/ac_nir_to_llvm.c   |  6 ++++--
 src/amd/vulkan/radv_shader_info.c | 11 +++++++----
 2 files changed, 11 insertions(+), 6 deletions(-)

diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c
index 8df00fc3c8c..37e66f081de 100644
--- a/src/amd/common/ac_nir_to_llvm.c
+++ b/src/amd/common/ac_nir_to_llvm.c
@@ -1046,7 +1046,8 @@ static LLVMValueRef lower_gather4_integer(struct 
ac_llvm_context *ctx,
                                          struct ac_image_args *args,
                                          const nir_tex_instr *instr)
 {
-       enum glsl_base_type stype = 
glsl_get_sampler_result_type(instr->texture->var->type);
+       nir_variable *tex = nir_tex_texture_var(instr);
+       enum glsl_base_type stype = glsl_get_sampler_result_type(tex->type);
        LLVMValueRef coord = args->addr;
        LLVMValueRef half_texel[2];
        LLVMValueRef compare_cube_wa = NULL;
@@ -1219,7 +1220,8 @@ static LLVMValueRef build_tex_intrinsic(struct 
ac_nir_context *ctx,
        }
 
        if (instr->op == nir_texop_tg4 && ctx->ac.chip_class <= VI) {
-               enum glsl_base_type stype = 
glsl_get_sampler_result_type(instr->texture->var->type);
+               enum glsl_base_type stype = glsl_get_sampler_result_type(
+                       nir_tex_texture_var(instr)->type);
                if (stype == GLSL_TYPE_UINT || stype == GLSL_TYPE_INT) {
                        return lower_gather4_integer(&ctx->ac, args, instr);
                }
diff --git a/src/amd/vulkan/radv_shader_info.c 
b/src/amd/vulkan/radv_shader_info.c
index dea89fa0a9f..2a7215b0b98 100644
--- a/src/amd/vulkan/radv_shader_info.c
+++ b/src/amd/vulkan/radv_shader_info.c
@@ -174,10 +174,13 @@ static void
 gather_tex_info(const nir_shader *nir, const nir_tex_instr *instr,
                struct radv_shader_info *info)
 {
-       if (instr->sampler)
-               mark_sampler_desc(instr->sampler->var, info);
-       if (instr->texture)
-               mark_sampler_desc(instr->texture->var, info);
+       nir_variable *samp = nir_tex_sampler_var(instr);
+       if (samp)
+               mark_sampler_desc(samp, info);
+
+       nir_variable *tex = nir_tex_texture_var(instr);
+       if (tex)
+               mark_sampler_desc(tex, info);
 }
 
 static void
-- 
2.14.3

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

Reply via email to