diff options
Diffstat (limited to 'src/mesa')
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_fs_register_coalesce.cpp | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_fs_register_coalesce.cpp b/src/mesa/drivers/dri/i965/brw_fs_register_coalesce.cpp index f56f05b7e9b..952276faed8 100644 --- a/src/mesa/drivers/dri/i965/brw_fs_register_coalesce.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs_register_coalesce.cpp @@ -207,9 +207,8 @@ fs_visitor::register_coalesce() channels_remaining = -1; continue; } - dst_reg_offset[offset] = inst->dst.offset / REG_SIZE; - if (inst->size_written > REG_SIZE) - dst_reg_offset[offset + 1] = inst->dst.offset / REG_SIZE + 1; + for (unsigned i = 0; i < MAX2(inst->size_written / REG_SIZE, 1); i++) + dst_reg_offset[offset + i] = inst->dst.offset / REG_SIZE + i; mov[offset] = inst; channels_remaining -= regs_written(inst); } |