Mesa (master): i965: Add a function to disassemble an instruction from the 4 dwords.

Kenneth Graunke kwg at kemper.freedesktop.org
Wed Feb 18 00:13:46 UTC 2015


Module: Mesa
Branch: master
Commit: 27b6ef7ecaa60ce192ec74eef2245c25ed4e703b
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=27b6ef7ecaa60ce192ec74eef2245c25ed4e703b

Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Fri Feb  6 00:36:26 2015 -0800

i965: Add a function to disassemble an instruction from the 4 dwords.

I used this a while back when debugging GPU hangs, and it seems like it
could be useful, so I figured I'd add it so people can use it in the
debugger.

Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>

---

 src/mesa/drivers/dri/i965/brw_disasm.c |   12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/src/mesa/drivers/dri/i965/brw_disasm.c b/src/mesa/drivers/dri/i965/brw_disasm.c
index 7405d9b..863a6b3 100644
--- a/src/mesa/drivers/dri/i965/brw_disasm.c
+++ b/src/mesa/drivers/dri/i965/brw_disasm.c
@@ -1197,6 +1197,18 @@ qtr_ctrl(FILE *file, struct brw_context *brw, brw_inst *inst)
    return 0;
 }
 
+#ifdef DEBUG
+static __attribute__((__unused__)) int
+brw_disassemble_imm(struct brw_context *brw,
+                    uint32_t dw3, uint32_t dw2, uint32_t dw1, uint32_t dw0)
+{
+   brw_inst inst;
+   inst.data[0] = (((uint64_t) dw1) << 32) | ((uint64_t) dw0);
+   inst.data[1] = (((uint64_t) dw3) << 32) | ((uint64_t) dw2);
+   return brw_disassemble_inst(stderr, brw, &inst, false);
+}
+#endif
+
 int
 brw_disassemble_inst(FILE *file, struct brw_context *brw, brw_inst *inst,
                      bool is_compacted)




More information about the mesa-commit mailing list