summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp
diff options
context:
space:
mode:
authorIago Toral Quiroga <itoral@igalia.com>2016-04-12 13:53:24 +0200
committerSamuel Iglesias Gonsálvez <siglesias@igalia.com>2016-05-16 09:55:32 +0200
commit789eecdb79d899a070507355ecb4dc137600f700 (patch)
tree3c5bfca82f686fd9bf9e0903c0eb9c068095daf3 /src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp
parentcf375a3333e54a01462f192202d609436e5fbec8 (diff)
downloadexternal_mesa3d-789eecdb79d899a070507355ecb4dc137600f700.zip
external_mesa3d-789eecdb79d899a070507355ecb4dc137600f700.tar.gz
external_mesa3d-789eecdb79d899a070507355ecb4dc137600f700.tar.bz2
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 <kenneth@whitecape.org> Reviewed-by: Francisco Jerez <currojerez@riseup.net>
Diffstat (limited to 'src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp')
-rw-r--r--src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp2
1 files changed, 1 insertions, 1 deletions
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 4b73b07..3d61af6 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);