summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatt Turner <mattst88@gmail.com>2014-04-09 14:04:10 -0700
committerMatt Turner <mattst88@gmail.com>2014-04-11 15:27:46 -0700
commit509b2a652305836947bc59bc07616f71cc202c5a (patch)
treef1d16f8256b66deabeaf6c3218e13e52de2c0a50
parent7e034a8d778a918854c4b4d5cbe205f1f31e7ece (diff)
i965/fs: Reset reg_from when we can't coalesce.
Not setting this would prevented coalescing after a failed attempt if the sources for both MOVs were the same. total instructions in shared programs: 1654531 -> 1650224 (-0.26%) instructions in affected programs: 423167 -> 418860 (-1.02%) GAINED: 2 LOST: 0 Reviewed-by: Eric Anholt <eric@anholt.net>
-rw-r--r--src/mesa/drivers/dri/i965/brw_fs_register_coalesce.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_fs_register_coalesce.cpp b/src/mesa/drivers/dri/i965/brw_fs_register_coalesce.cpp
index 6e30d16816d..4e3b611197a 100644
--- a/src/mesa/drivers/dri/i965/brw_fs_register_coalesce.cpp
+++ b/src/mesa/drivers/dri/i965/brw_fs_register_coalesce.cpp
@@ -162,6 +162,7 @@ fs_visitor::register_coalesce()
if (!can_coalesce_vars(live_intervals, &instructions, inst,
var_to[i], var_from[i])) {
can_coalesce = false;
+ reg_from = -1;
break;
}
}