Module: Mesa Branch: master Commit: 0834607a891f7c2529d1f2cdeca28b6e98899f8b URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=0834607a891f7c2529d1f2cdeca28b6e98899f8b
Author: Eric Anholt <[email protected]> Date: Fri Mar 25 11:19:53 2011 -0700 i965/fs: Enable constant propagation in 16-wide. All that needed fixing was skipping the newly-possible uncompressed/sechalf partial GRF constant writes. Reviewed-by: Kenneth Graunke <[email protected]> --- src/mesa/drivers/dri/i965/brw_fs.cpp | 8 +++----- 1 files changed, 3 insertions(+), 5 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp index b0fe0c7..7d1be5c 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs.cpp @@ -3107,10 +3107,6 @@ fs_visitor::propagate_constants() { bool progress = false; - /* Need to update the MRF tracking for compressed instructions. */ - if (c->dispatch_width == 16) - return false; - calculate_live_intervals(); foreach_iter(exec_list_iterator, iter, this->instructions) { @@ -3119,7 +3115,9 @@ fs_visitor::propagate_constants() if (inst->opcode != BRW_OPCODE_MOV || inst->predicated || inst->dst.file != GRF || inst->src[0].file != IMM || - inst->dst.type != inst->src[0].type) + inst->dst.type != inst->src[0].type || + (c->dispatch_width == 16 && + (inst->force_uncompressed || inst->force_sechalf))) continue; /* Don't bother with cases where we should have had the _______________________________________________ mesa-commit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-commit
