nir_to_tgsi: Add support for load_barycentric_sample.

This is used for var->data.sample inputs, which are already declared to be
TGSI_INTERPOLATE_LOC_SAMPLE, so we can just use the interpolated inputs.

Acked-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12800>
This commit is contained in:
Emma Anholt
2021-07-29 12:48:26 -07:00
committed by Marge Bot
parent 80c007a4dd
commit 15aabcd806

View File

@@ -1671,6 +1671,10 @@ ntt_emit_load_input(struct ntt_compile *c, nir_intrinsic_instr *instr)
switch (bary_instr->intrinsic) {
case nir_intrinsic_load_barycentric_pixel:
case nir_intrinsic_load_barycentric_sample:
/* For these, we know that the barycentric load matches the
* interpolation on the input declaration, so we can use it directly.
*/
ntt_store(c, &instr->dest, input);
break;
@@ -1998,6 +2002,7 @@ ntt_emit_intrinsic(struct ntt_compile *c, nir_intrinsic_instr *instr)
*/
case nir_intrinsic_load_barycentric_pixel:
case nir_intrinsic_load_barycentric_centroid:
case nir_intrinsic_load_barycentric_sample:
case nir_intrinsic_load_barycentric_at_sample:
break;