diff options
| author | Daniel Dunbar <daniel@zuster.org> | 2010-03-20 22:36:38 +0000 |
|---|---|---|
| committer | Daniel Dunbar <daniel@zuster.org> | 2010-03-20 22:36:38 +0000 |
| commit | fbd12cc36c46bc54db911f045406260811602adc (patch) | |
| tree | 3a6c24c9f59a349130deb215a3c68ee54feae4bd /llvm/lib | |
| parent | d9d5b315abcfb85b39c8c34970864888fcdb1098 (diff) | |
| download | bcm5719-llvm-fbd12cc36c46bc54db911f045406260811602adc.tar.gz bcm5719-llvm-fbd12cc36c46bc54db911f045406260811602adc.zip | |
MC/X86: Fix an MCOperand link, when we parsing shrld $1,%eax and friends; I believe this fixes the last memory leaks under test/MC.
llvm-svn: 99102
Diffstat (limited to 'llvm/lib')
| -rw-r--r-- | llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp b/llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp index bfadd4e9fc4..47873d14a91 100644 --- a/llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp +++ b/llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp @@ -569,8 +569,10 @@ ParseInstruction(const StringRef &Name, SMLoc NameLoc, Operands.size() == 3 && static_cast<X86Operand*>(Operands[1])->isImm() && isa<MCConstantExpr>(static_cast<X86Operand*>(Operands[1])->getImm()) && - cast<MCConstantExpr>(static_cast<X86Operand*>(Operands[1])->getImm())->getValue() == 1) + cast<MCConstantExpr>(static_cast<X86Operand*>(Operands[1])->getImm())->getValue() == 1) { + delete Operands[1]; Operands.erase(Operands.begin() + 1); + } return false; } |

