From: Eric Anholt Date: Tue, 5 Jun 2012 20:13:33 +0000 (-0700) Subject: i965/fs: Invalidate live intervals in passes that remove an instruction. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=2343fe9a5d1786413453e6e8e5c7700143d68a26;p=mesa.git i965/fs: Invalidate live intervals in passes that remove an instruction. Since live intervals are based on ip, removing an instruction trashes the intervals unless we were to go do some surgery. These happen to usually remove a use of a grf, so it's time to recalculate, anyway. Reviewed-by: Kenneth Graunke NOTE: This is a candidate for the 8.0 release branch. --- diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp index 7c1096b775e..175e36e4257 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs.cpp @@ -1844,6 +1844,9 @@ fs_visitor::compute_to_mrf() } } + if (progress) + live_intervals_valid = false; + return progress; } @@ -1920,6 +1923,9 @@ fs_visitor::remove_duplicate_mrf_writes() } } + if (progress) + live_intervals_valid = false; + return progress; }