diff options
author | Francisco Jerez <currojerez@riseup.net> | 2016-09-01 21:22:03 -0700 |
---|---|---|
committer | Francisco Jerez <currojerez@riseup.net> | 2016-09-14 14:50:57 -0700 |
commit | 1c67e272475f576c8ab4b2be367f4c3c664cb23c (patch) | |
tree | 56c778e1cf3dc85e80c14ec45c0832c6cf0c221d | |
parent | 2d7d4a791083ff63f37ac1e40bfe8b448e7f8045 (diff) |
i965/fs: Simplify copy propagation LOAD_PAYLOAD ACP setup.
By keeping track of 'offset' in byte units.
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp | 5 |
1 files changed, 2 insertions, 3 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 bd534bf65b..0da5f13014 100644 --- a/src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp @@ -818,8 +818,7 @@ fs_visitor::opt_copy_propagate_local(void *copy_prop_ctx, bblock_t *block, type_sz(inst->src[i].type); if (inst->src[i].file == VGRF) { acp_entry *entry = ralloc(copy_prop_ctx, acp_entry); - entry->dst = inst->dst; - entry->dst.offset += offset * REG_SIZE; + entry->dst = byte_offset(inst->dst, offset); entry->src = inst->src[i]; entry->size_written = size_written; entry->size_read = inst->size_read(i); @@ -830,7 +829,7 @@ fs_visitor::opt_copy_propagate_local(void *copy_prop_ctx, bblock_t *block, ralloc_free(entry); } } - offset += DIV_ROUND_UP(size_written, REG_SIZE); + offset += size_written; } } } |