glsl: disable varying packing for varying used by interpolateAt*
Currently the NIR backends depend on GLSL IR copy propagation to fix up the interpolateAt* function params after varying packing changes the shader input to a global. It's possible copy propagation might not always do what we need it too, and we also shouldn't depend on optimisations to do this type of thing for us. I'm not sure if the same is true for TGSI, but the following commit should re-enable packing for most cases in a safer way, so we just disable it everywhere. No change in shader-db for i965 (BDW) Acked-by: Elie Tournier <elie.tournier@collabora.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
This commit is contained in:
parent
aa021d50c0
commit
eb8aa93c03
3 changed files with 19 additions and 7 deletions
|
|
@ -235,6 +235,8 @@ verify_parameter_modes(_mesa_glsl_parse_state *state,
|
|||
formal->name);
|
||||
return false;
|
||||
}
|
||||
|
||||
val->variable_referenced()->data.must_be_shader_input = 1;
|
||||
}
|
||||
|
||||
/* Verify that 'out' and 'inout' actual parameters are lvalues. */
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue