On Mon, Oct 19, 2015 at 9:09 PM, Matt Turner <matts...@gmail.com> wrote: > We implement textureQueryLevels (which takes no arguments, save the > sampler) using the resinfo message (which takes an argument of LOD). > Without initializing it, we'd generate a MOV from the null register to > load the LOD argument. > --- > src/mesa/drivers/dri/i965/brw_vec4_nir.cpp | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/src/mesa/drivers/dri/i965/brw_vec4_nir.cpp > b/src/mesa/drivers/dri/i965/brw_vec4_nir.cpp > index ea1e3e7..c942c80 100644 > --- a/src/mesa/drivers/dri/i965/brw_vec4_nir.cpp > +++ b/src/mesa/drivers/dri/i965/brw_vec4_nir.cpp > @@ -1579,7 +1579,7 @@ vec4_visitor::nir_emit_texture(nir_tex_instr *instr) > const glsl_type *coord_type = NULL; > src_reg shadow_comparitor; > src_reg offset_value; > - src_reg lod, lod2; > + src_reg lod(0.0f), lod2; > src_reg sample_index; > src_reg mcs;
The fs backend handles this differently -- if (op == ir_query_levels) { /* textureQueryLevels() is implemented in terms of TXS so we need to * pass a valid LOD argument. */ assert(lod.file == BAD_FILE); lod = fs_reg(0u); } That kinda seems worse -- but it does indicate that I should probably initialize lod with 0u instead, though it doesn't seem to matter... mov(8) g10<1>F [0F, 0F, 0F, 0F]VF send(8) g3<1>UW g10<8,8,1>F sampler resinfo SIMD8 Surface = 1 Sampler = 0 mlen 1 rlen 4 Opinions? _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev