[Mesa-dev] [PATCH 04/10] i965/vs: Handle destinations in the MRF file.

Eric Anholt eric at anholt.net
Thu Sep 8 23:32:21 PDT 2011


We've been referencing MRFs through the HW_REG file so far, but that
makes it harder to handle compute-to-MRF and similar optimizations.
---
 src/mesa/drivers/dri/i965/brw_vec4_emit.cpp |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/brw_vec4_emit.cpp b/src/mesa/drivers/dri/i965/brw_vec4_emit.cpp
index 7031d2a..15f2458 100644
--- a/src/mesa/drivers/dri/i965/brw_vec4_emit.cpp
+++ b/src/mesa/drivers/dri/i965/brw_vec4_emit.cpp
@@ -165,6 +165,12 @@ vec4_instruction::get_dst(void)
       brw_reg.dw1.bits.writemask = dst.writemask;
       break;
 
+   case MRF:
+      brw_reg = brw_message_reg(dst.reg + dst.reg_offset);
+      brw_reg = retype(brw_reg, dst.type);
+      brw_reg.dw1.bits.writemask = dst.writemask;
+      break;
+
    case HW_REG:
       brw_reg = dst.fixed_hw_reg;
       break;
-- 
1.7.5.4



More information about the mesa-dev mailing list