freedreno/rddecompiler: Emit explicit scope for CP_COND_REG_EXEC

Due to the larger amount of conditional execution in newer traces
the flat view makes it hard to parse what might be conditionally
executed and what might now. This makes it easier to view by adding
a scope for conditionally executed commands which is indented to the
next level.

Signed-off-by: Mark Collins <mark@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26465>
This commit is contained in:
Mark Collins
2023-12-01 11:58:40 +00:00
committed by Marge Bot
parent 10e0518a85
commit cfc2a85b89
+15
View File
@@ -456,6 +456,21 @@ decompile_commands(uint32_t *dwords, uint32_t sizedwords, int level)
}
}
printlvl(level, "}\n");
} else if (val == CP_COND_REG_EXEC) {
const char *packet_name = pktname(val);
const char *dom_name = packet_name;
uint32_t cond_count = dwords[count - 1];
decompile_domain(val, dwords + 1, count - 1, dom_name, packet_name, level);
printlvl(level, "{\n");
printlvl(level + 1, "/* BEGIN COND (%d DWORDS) */\n", cond_count);
decompile_commands(dwords + count, cond_count, level + 1);
count += cond_count;
printlvl(level + 1, "/* END COND */\n");
printlvl(level, "}\n");
} else {
const char *packet_name = pktname(val);
const char *dom_name = packet_name;