[Mesa-dev] [PATCH 09/10] i965/fs: Determine partial writes with instruction widths

Jason Ekstrand jason at jlekstrand.net
Thu Sep 4 22:19:13 PDT 2014


Signed-off-by: Jason Ekstrand <jason.ekstrand at intel.com>
---
 src/mesa/drivers/dri/i965/brw_fs_reg_allocate.cpp | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/brw_fs_reg_allocate.cpp b/src/mesa/drivers/dri/i965/brw_fs_reg_allocate.cpp
index 64cb056..7da8cf5 100644
--- a/src/mesa/drivers/dri/i965/brw_fs_reg_allocate.cpp
+++ b/src/mesa/drivers/dri/i965/brw_fs_reg_allocate.cpp
@@ -706,8 +706,8 @@ fs_visitor::spill_reg(int spill_reg)
           * inst->regs_written(), then we need to unspill the destination
           * since we write back out all of the regs_written().
 	  */
-	 if (inst->predicate || inst->force_uncompressed ||
-             inst->force_sechalf || inst->dst.subreg_offset) {
+	 if (inst->predicate || inst->width < dispatch_width ||
+             inst->dst.subreg_offset) {
             emit_unspill(block, inst, spill_src, subset_spill_offset,
                          inst->regs_written);
 	 }
-- 
2.1.0



More information about the mesa-dev mailing list