[lldb] Fix -Waggressive-loop-optimizations warning

We shouldn't access past the end of an array, even if we think that the
layout of the struct containing the array is always what we expect. The
compiler is free to optimize away the stores as undefined behavior, and
in fact, GCC 6.2.1 claims it will do exactly this.

llvm-svn: 286093
This commit is contained in:
Vedant Kumar 2016-11-07 02:39:37 +00:00
parent b110e04851
commit 6ba1db9f78
1 changed files with 5 additions and 1 deletions

View File

@ -667,8 +667,12 @@ public:
// x0-x29 + fp + lr + sp + pc (== 33 64-bit registers) plus cpsr (1
// 32-bit register)
if (count >= (33 * 2) + 1) {
for (uint32_t i = 0; i < 33; ++i)
for (uint32_t i = 0; i < 29; ++i)
gpr.x[i] = data.GetU64(&offset);
gpr.fp = data.GetU64(&offset);
gpr.lr = data.GetU64(&offset);
gpr.sp = data.GetU64(&offset);
gpr.pc = data.GetU64(&offset);
gpr.cpsr = data.GetU32(&offset);
SetError(GPRRegSet, Read, 0);
}