summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorLionel Landwerlin <[email protected]>2017-02-16 13:06:07 +0000
committerLionel Landwerlin <[email protected]>2017-02-17 10:07:56 +0000
commita0ac118398c924f2ae75e5649fbaacd95abd231f (patch)
treebeab636d1694d11956a8dcb5fc37ac92d10ba8f2 /src
parent62c90492ef2dd27a4d692f767c75afa28928d71b (diff)
i965/fs: fix uninitialized memory access
Found while running shader-db under valgrind. Signed-off-by: Lionel Landwerlin <[email protected]> Reviewed-by: Jordan Justen <[email protected]> Cc: "13.0 17.0" <[email protected]>
Diffstat (limited to 'src')
-rw-r--r--src/mesa/drivers/dri/i965/brw_fs_register_coalesce.cpp5
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);
}