From 895eee505cf9d4145d901accc2767c373e12c05e Mon Sep 17 00:00:00 2001 From: Jason Ekstrand Date: Fri, 14 Nov 2014 09:46:48 -0800 Subject: nir/lower_samplers: Use the nir_instr_rewrite_src function Reviewed-by: Connor Abbott --- src/glsl/nir/nir_lower_samplers.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'src/glsl/nir/nir_lower_samplers.cpp') diff --git a/src/glsl/nir/nir_lower_samplers.cpp b/src/glsl/nir/nir_lower_samplers.cpp index e10456db230..347c84adc9b 100644 --- a/src/glsl/nir/nir_lower_samplers.cpp +++ b/src/glsl/nir/nir_lower_samplers.cpp @@ -124,7 +124,16 @@ lower_sampler(nir_tex_instr *instr, struct gl_shader_program *shader_program, { if (instr->sampler) { instr->sampler_index = get_sampler_index(instr->sampler, shader_program, - prog); + prog); + nir_src empty_src; + memset(&empty_src, 0, sizeof empty_src); + for (nir_deref *deref = &instr->sampler->deref; deref; deref = deref->child) { + if (deref->deref_type == nir_deref_type_array) { + nir_deref_array *arr = nir_deref_as_array(deref); + nir_instr_rewrite_src(&instr->instr, &arr->indirect, empty_src); + } + } + instr->sampler = NULL; } } -- cgit v1.2.3