From 237aac39b1994b0fa1e8cd3490ad415b144a8b5f Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Mon, 9 Jun 2014 02:59:22 -0700 Subject: [PATCH] i965: Invalidate live intervals when inserting Gen4 SEND workarounds. We need to invalidate the live intervals when inserting new instructions. Signed-off-by: Kenneth Graunke Reviewed-by: Matt Turner Cc: mesa-stable@lists.freedesktop.org --- src/mesa/drivers/dri/i965/brw_fs.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp index b485e65adcf..be461ac20c1 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs.cpp @@ -2482,6 +2482,8 @@ fs_visitor::insert_gen4_send_dependency_workarounds() if (brw->gen != 4 || brw->is_g4x) return; + bool progress = false; + /* Note that we're done with register allocation, so GRF fs_regs always * have a .reg_offset of 0. */ @@ -2492,8 +2494,12 @@ fs_visitor::insert_gen4_send_dependency_workarounds() if (inst->mlen != 0 && inst->dst.file == GRF) { insert_gen4_pre_send_dependency_workarounds(inst); insert_gen4_post_send_dependency_workarounds(inst); + progress = true; } } + + if (progress) + invalidate_live_intervals(); } /** -- 2.30.2