summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers
diff options
context:
space:
mode:
authorTimothy Arceri <[email protected]>2019-01-09 14:53:52 +1100
committerTimothy Arceri <[email protected]>2019-01-17 10:35:36 +1100
commite106e0f2dd6d80554c70cbba32e8e196bf1186ec (patch)
tree59cdca2a000704c75b6c9f942774bbdb647fcbd1 /src/gallium/drivers
parent292887ac0d55104e6c87c4d4a2d51e9f4731ccd2 (diff)
radeonsi/nir: get correct type for images inside structs
Reviewed-by: Marek Olšák <[email protected]>
Diffstat (limited to 'src/gallium/drivers')
-rw-r--r--src/gallium/drivers/radeonsi/si_shader_nir.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gallium/drivers/radeonsi/si_shader_nir.c b/src/gallium/drivers/radeonsi/si_shader_nir.c
index a1bc4cbd1aa..c89a1e6f91b 100644
--- a/src/gallium/drivers/radeonsi/si_shader_nir.c
+++ b/src/gallium/drivers/radeonsi/si_shader_nir.c
@@ -163,11 +163,12 @@ static void scan_instruction(struct tgsi_shader_info *info,
break;
}
case nir_intrinsic_image_deref_store: {
+ const nir_deref_instr *image_deref = nir_instr_as_deref(intr->src[0].ssa->parent_instr);
nir_variable *var = intrinsic_get_var(intr);
if (var->data.bindless) {
info->uses_bindless_images = true;
- if (glsl_get_sampler_dim(var->type) == GLSL_SAMPLER_DIM_BUF)
+ if (glsl_get_sampler_dim(image_deref->type) == GLSL_SAMPLER_DIM_BUF)
info->uses_bindless_buffer_store = true;
else
info->uses_bindless_image_store = true;