diff options
author | Iago Toral Quiroga <itoral@igalia.com> | 2016-04-12 13:53:24 +0200 |
---|---|---|
committer | Samuel Iglesias Gonsálvez <siglesias@igalia.com> | 2016-05-16 09:55:32 +0200 |
commit | 789eecdb79d899a070507355ecb4dc137600f700 (patch) | |
tree | 3c5bfca82f686fd9bf9e0903c0eb9c068095daf3 /src/mesa | |
parent | cf375a3333e54a01462f192202d609436e5fbec8 (diff) | |
download | external_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')
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp | 2 |
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); |