The case statements should set these variables instead: boolean uses_persp_opcode_interp_centroid; boolean uses_persp_opcode_interp_offset; boolean uses_persp_opcode_interp_sample; boolean uses_linear_opcode_interp_centroid; boolean uses_linear_opcode_interp_offset; boolean uses_linear_opcode_interp_sample;
Marek On Mon, Jan 15, 2018 at 4:46 AM, Timothy Arceri <[email protected]> wrote: > --- > src/gallium/drivers/radeonsi/si_shader_nir.c | 26 ++++++++++++++++++++++++++ > 1 file changed, 26 insertions(+) > > diff --git a/src/gallium/drivers/radeonsi/si_shader_nir.c > b/src/gallium/drivers/radeonsi/si_shader_nir.c > index 20b3beccc4..fcc857f838 100644 > --- a/src/gallium/drivers/radeonsi/si_shader_nir.c > +++ b/src/gallium/drivers/radeonsi/si_shader_nir.c > @@ -124,6 +124,32 @@ static void scan_instruction(struct tgsi_shader_info > *info, > case nir_intrinsic_ssbo_atomic_comp_swap: > info->writes_memory = true; > break; > + case nir_intrinsic_interp_var_at_centroid: > + case nir_intrinsic_interp_var_at_sample: > + case nir_intrinsic_interp_var_at_offset: { > + enum glsl_interp_mode interp = > + intr->variables[0]->var->data.interpolation; > + switch (interp) { > + case INTERP_MODE_SMOOTH: > + case INTERP_MODE_NONE: > + if (intr->intrinsic == > nir_intrinsic_interp_var_at_centroid) > + info->uses_persp_centroid = true; > + else > + info->uses_persp_center = true; > + break; > + case INTERP_MODE_NOPERSPECTIVE: > + if (intr->intrinsic == > nir_intrinsic_interp_var_at_centroid) > + info->uses_linear_centroid = true; > + else > + info->uses_linear_center = true; > + break; > + case INTERP_MODE_FLAT: > + break; > + default: > + unreachable("Unsupported interpoation type"); > + } > + break; > + } > default: > break; > } > -- > 2.14.3 > > _______________________________________________ > mesa-dev mailing list > [email protected] > https://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-dev
