From: Kenneth Graunke Date: Wed, 18 Jan 2012 08:55:12 +0000 (-0800) Subject: i965: Fix disassembly of data port writes on Ivybridge. X-Git-Tag: android-x86-4.4-r1~7546 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=dcdfd1905c8012fe0a90e553f2a894c12cf144cf;p=android-x86%2Fexternal-mesa.git 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 --- diff --git a/src/mesa/drivers/dri/i965/brw_disasm.c b/src/mesa/drivers/dri/i965/brw_disasm.c index 02fa14cb598..a86c8f28edb 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",