From: Iago Toral Quiroga Date: Tue, 12 Apr 2016 11:53:24 +0000 (+0200) Subject: i965/fs: fix copy propagation from load payload X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=789eecdb79d899a070507355ecb4dc137600f700;p=mesa.git i965/fs: fix copy propagation from load payload We were not considering the case where the load payload is writing to a destination with a reg_offset > 0. Reviewed-by: Kenneth Graunke Reviewed-by: Francisco Jerez --- diff --git a/src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp b/src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp index 4b73b07a240..3d61af696ac 100644 --- a/src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp @@ -784,7 +784,7 @@ fs_visitor::opt_copy_propagate_local(void *copy_prop_ctx, bblock_t *block, if (inst->src[i].file == VGRF) { acp_entry *entry = ralloc(copy_prop_ctx, acp_entry); entry->dst = inst->dst; - entry->dst.reg_offset = offset; + entry->dst.reg_offset += offset; entry->src = inst->src[i]; entry->regs_written = regs_written; entry->regs_read = inst->regs_read(i);