From 21a85fd7d8c56aae2f6dd3862900f4d8597eac8e Mon Sep 17 00:00:00 2001 From: Alyssa Rosenzweig Date: Thu, 22 Aug 2019 16:36:10 -0700 Subject: [PATCH] pan/decode: Validate and quiet helper invocation flag We can statically determine from the disassembly if helper invocations will be needed, so we can validate the corresponding bit in the cmdstream and thus avoid printing the bit itself in the decode. Signed-off-by: Alyssa Rosenzweig --- src/panfrost/pandecode/decode.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/panfrost/pandecode/decode.c b/src/panfrost/pandecode/decode.c index d68dbf7acb8..d0634c95720 100644 --- a/src/panfrost/pandecode/decode.c +++ b/src/panfrost/pandecode/decode.c @@ -267,7 +267,6 @@ static const struct pandecode_flag_info mfbd_extra_flag_info[] = { #define FLAG_INFO(flag) { MALI_##flag, "MALI_" #flag } static const struct pandecode_flag_info shader_midgard1_flag_info [] = { FLAG_INFO(EARLY_Z), - FLAG_INFO(HELPER_INVOCATIONS), FLAG_INFO(READS_TILEBUFFER), FLAG_INFO(READS_ZS), {} @@ -2103,6 +2102,14 @@ pandecode_vertex_tiler_postfix_pre( if (is_bifrost) { pandecode_prop("bifrost1.unk1 = 0x%" PRIx32, s->bifrost1.unk1); } else { + bool helpers = s->midgard1.flags & MALI_HELPER_INVOCATIONS; + s->midgard1.flags &= ~MALI_HELPER_INVOCATIONS; + + if (helpers != info.helper_invocations) { + pandecode_msg("XXX: expected helpers %u but got %u\n", + info.helper_invocations, helpers); + } + pandecode_log(".midgard1.flags = "); pandecode_log_decoded_flags(shader_midgard1_flag_info, s->midgard1.flags); pandecode_log_cont(",\n"); -- 2.30.2