diff options
author | Benjamin Kramer <benny.kra@googlemail.com> | 2012-01-01 17:55:36 +0000 |
---|---|---|
committer | Benjamin Kramer <benny.kra@googlemail.com> | 2012-01-01 17:55:36 +0000 |
commit | 47aecca51a5032470aab114d9f200b36ecb240d2 (patch) | |
tree | 24e82ba90d3914c39960879dc9117577c28c8cc2 /llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c | |
parent | 9442cd01f65ab5dadb851f19ecec4bd3093bf7f1 (diff) | |
download | bcm5719-llvm-47aecca51a5032470aab114d9f200b36ecb240d2.tar.gz bcm5719-llvm-47aecca51a5032470aab114d9f200b36ecb240d2.zip |
X86Disassembler: Fix undefined behavior found by GCC 4.6
llvm-svn: 147404
Diffstat (limited to 'llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c')
-rw-r--r-- | llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c b/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c index c915df0049f..2ab2f74af94 100644 --- a/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c +++ b/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c @@ -1502,9 +1502,11 @@ static int readOperands(struct InternalInstruction* insn) { return -1; case ENCODING_IB: if (sawRegImm) { - // saw a register immediate so don't read again and instead split the previous immediate - // FIXME: This is a hack - insn->immediates[insn->numImmediatesConsumed++] = insn->immediates[insn->numImmediatesConsumed - 1] & 0xf; + // Saw a register immediate so don't read again and instead split the + // previous immediate. FIXME: This is a hack + insn->immediates[insn->numImmediatesConsumed] = + insn->immediates[insn->numImmediatesConsumed - 1] & 0xf; + ++insn->numImmediatesConsumed; break; } if (readImmediate(insn, 1)) |