mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-03-04 21:10:31 +01:00
nir: Make nir_lower_wpos_ytransform() match FragCoord by location.
gl_FragCoord is a shader input with location == VARYING_SLOT_POS. ARB_fragment_programs have an equivalent input at VARYING_SLOT_POS, but it isn't called gl_FragCoord. We do want to transform it. Matching by location guarantees we catch both. Fixes several fp tests on a branch which uses this pass on i965. Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Rob Clark <robdclark@gmail.com>
This commit is contained in:
parent
c9192fcbd2
commit
88ea960aa7
1 changed files with 2 additions and 1 deletions
|
|
@ -286,7 +286,8 @@ lower_wpos_ytransform_block(lower_wpos_ytransform_state *state, nir_block *block
|
|||
nir_deref_var *dvar = intr->variables[0];
|
||||
nir_variable *var = dvar->var;
|
||||
|
||||
if (strcmp(var->name, "gl_FragCoord") == 0) {
|
||||
if (var->data.mode == nir_var_shader_in &&
|
||||
var->data.location == VARYING_SLOT_POS) {
|
||||
/* gl_FragCoord should not have array/struct deref's: */
|
||||
assert(dvar->deref.child == NULL);
|
||||
lower_fragcoord(state, intr);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue