Mesa (master): v3d: add a helper to track variables that need point coordinates
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Fri Jun 7 06:31:14 UTC 2019
Module: Mesa
Branch: master
Commit: 5e26e55e724f4eff28840cfb6922963069231902
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=5e26e55e724f4eff28840cfb6922963069231902
Author: Iago Toral Quiroga <itoral at igalia.com>
Date: Thu Jun 6 09:41:33 2019 +0200
v3d: add a helper to track variables that need point coordinates
Reviewed-by: Eric Anholt <eric at anholt.net>
---
src/broadcom/compiler/nir_to_vir.c | 15 ++++++++++-----
1 file changed, 10 insertions(+), 5 deletions(-)
diff --git a/src/broadcom/compiler/nir_to_vir.c b/src/broadcom/compiler/nir_to_vir.c
index 55e41e16b36..1e98e69efbc 100644
--- a/src/broadcom/compiler/nir_to_vir.c
+++ b/src/broadcom/compiler/nir_to_vir.c
@@ -1453,6 +1453,15 @@ ntq_setup_vpm_inputs(struct v3d_compile *c)
}
}
+static bool
+var_needs_point_coord(struct v3d_compile *c, nir_variable *var)
+{
+ return (var->data.location == VARYING_SLOT_PNTC ||
+ (var->data.location >= VARYING_SLOT_VAR0 &&
+ (c->fs_key->point_sprite_mask &
+ (1 << (var->data.location - VARYING_SLOT_VAR0)))));
+}
+
static void
ntq_setup_fs_inputs(struct v3d_compile *c)
{
@@ -1486,11 +1495,7 @@ ntq_setup_fs_inputs(struct v3d_compile *c)
if (var->data.location == VARYING_SLOT_POS) {
emit_fragcoord_input(c, loc);
- } else if (var->data.location == VARYING_SLOT_PNTC ||
- (var->data.location >= VARYING_SLOT_VAR0 &&
- (c->fs_key->point_sprite_mask &
- (1 << (var->data.location -
- VARYING_SLOT_VAR0))))) {
+ } else if (var_needs_point_coord(c, var)) {
c->inputs[loc * 4 + 0] = c->point_x;
c->inputs[loc * 4 + 1] = c->point_y;
} else {
More information about the mesa-commit
mailing list