[Mesa-dev] [PATCH 3/4] panfrost: Don't DIY point size/coord fields
Alyssa Rosenzweig
alyssa.rosenzweig at collabora.com
Wed Jul 24 00:05:59 UTC 2019
Again, it's in shader_info for us!
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig at collabora.com>
---
src/gallium/drivers/panfrost/pan_assemble.c | 8 ++------
src/panfrost/midgard/midgard_compile.h | 3 ---
2 files changed, 2 insertions(+), 9 deletions(-)
diff --git a/src/gallium/drivers/panfrost/pan_assemble.c b/src/gallium/drivers/panfrost/pan_assemble.c
index 75158089c88..8ccf9125a43 100644
--- a/src/gallium/drivers/panfrost/pan_assemble.c
+++ b/src/gallium/drivers/panfrost/pan_assemble.c
@@ -92,8 +92,8 @@ panfrost_shader_compile(struct panfrost_context *ctx, struct mali_shader_meta *m
meta->midgard1.work_count = program.work_register_count;
state->can_discard = s->info.fs.uses_discard;
- state->writes_point_size = program.writes_point_size;
- state->reads_point_coord = false;
+ state->writes_point_size = s->info.outputs_written & VARYING_SLOT_PSIZ;
+ state->reads_point_coord = s->info.inputs_read & VARYING_SLOT_PNTC;
state->helper_invocations = s->info.fs.needs_helper_invocations;
/* Separate as primary uniform count is truncated */
@@ -125,14 +125,10 @@ panfrost_shader_compile(struct panfrost_context *ctx, struct mali_shader_meta *m
v.index = 2;
v.format = MALI_R16F;
v.swizzle = default_vec1_swizzle;
-
- state->writes_point_size = true;
} else if (location == VARYING_SLOT_PNTC) {
v.index = 3;
v.format = MALI_RG16F;
v.swizzle = default_vec2_swizzle;
-
- state->reads_point_coord = true;
} else {
v.index = 0;
}
diff --git a/src/panfrost/midgard/midgard_compile.h b/src/panfrost/midgard/midgard_compile.h
index f76715e7a53..3b16cbd2bb5 100644
--- a/src/panfrost/midgard/midgard_compile.h
+++ b/src/panfrost/midgard/midgard_compile.h
@@ -88,9 +88,6 @@ typedef struct {
unsigned varyings[32];
- /* Boolean properties of the program */
- bool writes_point_size;
-
int first_tag;
struct util_dynarray compiled;
--
2.20.1
More information about the mesa-dev
mailing list