summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuel Pitoiset <samuel.pitoiset@gmail.com>2020-08-19 13:42:57 +0200
committerSamuel Pitoiset <samuel.pitoiset@gmail.com>2020-08-21 10:34:22 +0200
commitf811ddf5d1fac8a857aadc51278546d5b46d5a2b (patch)
tree85d4e9ce8f23d30f43b0ef466a82009b8be4396f
parent89b56f19412e4794ec2ecfc1578fbfdb9e183bea (diff)
downloadmesa-f811ddf5d1fac8a857aadc51278546d5b46d5a2b.tar.gz
radv: ignore BB labels when splitting the disassembly string
Ignore everything that is not an instruction. This should fix the annotated UMR disassembly. Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6387>
-rw-r--r--src/amd/vulkan/radv_debug.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/amd/vulkan/radv_debug.c b/src/amd/vulkan/radv_debug.c
index e86b0079df7..47d70b96499 100644
--- a/src/amd/vulkan/radv_debug.c
+++ b/src/amd/vulkan/radv_debug.c
@@ -273,6 +273,12 @@ static void si_add_split_disasm(const char *disasm,
struct radv_shader_inst *inst = &instructions[*num];
unsigned len = next - disasm;
+ if (!memchr(disasm, ';', len)) {
+ /* Ignore everything that is not an instruction. */
+ disasm = next + 1;
+ continue;
+ }
+
assert(len < ARRAY_SIZE(inst->text));
memcpy(inst->text, disasm, len);
inst->text[len] = 0;