Module: Mesa Branch: master Commit: 89ccd11eebeee884d581e831b61368ac97057b43 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=89ccd11eebeee884d581e831b61368ac97057b43
Author: Matt Turner <[email protected]> Date: Tue Mar 11 13:07:42 2014 -0700 i965/vec4: Don't dead code eliminate instructions writing the flag. A future patch adds support for removing dead writes to the flag register. This patch simplifies the logic until then. total instructions in shared programs: 811813 -> 811869 (0.01%) instructions in affected programs: 3378 -> 3434 (1.66%) Reviewed-by: Eric Anholt <[email protected]> --- src/mesa/drivers/dri/i965/brw_vec4.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/mesa/drivers/dri/i965/brw_vec4.cpp b/src/mesa/drivers/dri/i965/brw_vec4.cpp index cb87fec..d07e8c5 100644 --- a/src/mesa/drivers/dri/i965/brw_vec4.cpp +++ b/src/mesa/drivers/dri/i965/brw_vec4.cpp @@ -356,7 +356,11 @@ vec4_visitor::dead_code_eliminate() inst->dst = dst_reg(retype(brw_null_reg(), inst->dst.type)); break; default: - inst->remove(); + if (inst->writes_flag()) { + inst->dst = dst_reg(retype(brw_null_reg(), inst->dst.type)); + } else { + inst->remove(); + } break; } progress = true; _______________________________________________ mesa-commit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-commit
