summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/panfrost/pandecode/decode.c
diff options
context:
space:
mode:
authorAlyssa Rosenzweig <[email protected]>2019-04-05 01:17:21 +0000
committerAlyssa Rosenzweig <[email protected]>2019-04-07 15:58:19 +0000
commit7cccc89f80c594e3f59977fb4c7c6569e52569c7 (patch)
tree7433c16b606d255f39313112e6e740a904268470 /src/gallium/drivers/panfrost/pandecode/decode.c
parent1aabb79bdcec36b1f7704a1a30e41558b4cde584 (diff)
panfrost/decode: Add flags for tilebuffer readback
These flags are set when reading back the tilebuffer from a fragment shader via various mechanisms (including ARM_shader_framebuffer_fetch and EXT_pixel_local_storage). Signed-off-by: Alyssa Rosenzweig <[email protected]>
Diffstat (limited to 'src/gallium/drivers/panfrost/pandecode/decode.c')
-rw-r--r--src/gallium/drivers/panfrost/pandecode/decode.c17
1 files changed, 14 insertions, 3 deletions
diff --git a/src/gallium/drivers/panfrost/pandecode/decode.c b/src/gallium/drivers/panfrost/pandecode/decode.c
index 20f789dc9f8..bb6f4b19711 100644
--- a/src/gallium/drivers/panfrost/pandecode/decode.c
+++ b/src/gallium/drivers/panfrost/pandecode/decode.c
@@ -218,6 +218,15 @@ static const struct pandecode_flag_info mfbd_extra_flag_info[] = {
};
#undef FLAG_INFO
+#define FLAG_INFO(flag) { MALI_##flag, "MALI_" #flag }
+static const struct pandecode_flag_info shader_unknown1_flag_info [] = {
+ FLAG_INFO(NO_ALPHA_TO_COVERAGE),
+ FLAG_INFO(READS_TILEBUFFER),
+ FLAG_INFO(READS_ZS),
+ {}
+};
+#undef FLAG_INFO
+
extern char *replace_fragment;
extern char *replace_vertex;
@@ -1163,9 +1172,11 @@ pandecode_replay_vertex_tiler_postfix_pre(const struct mali_vertex_tiler_postfix
pandecode_prop("uniform_count = %" PRId16, s->midgard1.uniform_count);
pandecode_prop("work_count = %" PRId16, s->midgard1.work_count);
- pandecode_prop("unknown1 = %s0x%" PRIx32,
- s->midgard1.unknown1 & MALI_NO_ALPHA_TO_COVERAGE ? "MALI_NO_ALPHA_TO_COVERAGE | " : "",
- s->midgard1.unknown1 & ~MALI_NO_ALPHA_TO_COVERAGE);
+
+ pandecode_log(".unknown1 = ");
+ pandecode_log_decoded_flags(shader_unknown1_flag_info, s->midgard1.unknown1);
+ pandecode_log_cont(",\n");
+
pandecode_prop("unknown2 = 0x%" PRIx32, s->midgard1.unknown2);
pandecode_indent--;