tu: Fix varyings interpolation reading stale values
tu6_vpc_varying_mode returned how many bits are consumed IF they are non-zero, for SMOOTH mode nothing is written and it was treated like no bits were consumed. When input with smooth interpolation was the last one and straddled the VPC_VARYING_INTERP_MODE regs, the last interp mode were not written. Fixes misrendering in "Psychonauts 2". Cc: mesa-stable Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20533>
This commit is contained in:

committed by
Marge Bot

parent
25a151533c
commit
a45d32b10b
@@ -1084,7 +1084,7 @@ tu6_vpc_varying_mode(const struct ir3_shader_variant *fs,
|
||||
}
|
||||
}
|
||||
|
||||
return shift;
|
||||
return util_bitcount(compmask) * 2;
|
||||
}
|
||||
|
||||
static void
|
||||
|
Reference in New Issue
Block a user