Mesa (master): i965: Fix disassembly of data port writes on Ivybridge.

Kenneth Graunke kwg at kemper.freedesktop.org
Wed Jan 18 22:44:45 UTC 2012


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

Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Wed Jan 18 00:55:12 2012 -0800

i965: Fix disassembly of data port writes on Ivybridge.

msg_type moved by a bit, so the message type was being disassembled
incorrectly.  In particular, render target writes were showing up as
"OWORD block write".

NOTE: This is a candidate for stable release branches.

Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>

---

 src/mesa/drivers/dri/i965/brw_disasm.c |   13 ++++++++++++-
 1 files changed, 12 insertions(+), 1 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/brw_disasm.c b/src/mesa/drivers/dri/i965/brw_disasm.c
index 02fa14c..a86c8f2 100644
--- a/src/mesa/drivers/dri/i965/brw_disasm.c
+++ b/src/mesa/drivers/dri/i965/brw_disasm.c
@@ -1029,7 +1029,18 @@ int brw_disasm (FILE *file, struct brw_instruction *inst, int gen)
 	    break;
 
 	case BRW_SFID_DATAPORT_WRITE:
-	    if (gen >= 6) {
+	    if (gen >= 7) {
+		format (file, " (");
+
+		err |= control (file, "DP rc message type",
+				dp_rc_msg_type_gen6,
+				inst->bits3.gen7_dp.msg_type, &space);
+
+		format (file, ", %d, %d, %d)",
+			inst->bits3.gen7_dp.binding_table_index,
+			inst->bits3.gen7_dp.msg_control,
+			inst->bits3.gen7_dp.msg_type);
+	    } else if (gen == 6) {
 		format (file, " (");
 
 		err |= control (file, "DP rc message type",




More information about the mesa-commit mailing list