From: Benjamin Kramer Date: Mon, 9 May 2016 10:21:56 +0000 (+0000) Subject: [Mips] Fix use after free. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=04c6ebbe7100a1fc405236a12b9e9cbdeafe226f;p=llvm [Mips] Fix use after free. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@268901 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Target/Mips/AsmParser/MipsAsmParser.cpp b/lib/Target/Mips/AsmParser/MipsAsmParser.cpp index 1b61535c75a..aed0004e2a1 100644 --- a/lib/Target/Mips/AsmParser/MipsAsmParser.cpp +++ b/lib/Target/Mips/AsmParser/MipsAsmParser.cpp @@ -4693,8 +4693,7 @@ MipsAsmParser::parseRegisterPair(OperandVector &Operands) { SMLoc E = Parser.getTok().getLoc(); MipsOperand &Op = static_cast(*Operands.back()); - Operands.pop_back(); - Operands.push_back(MipsOperand::CreateRegPair(Op, S, E, *this)); + Operands.back() = MipsOperand::CreateRegPair(Op, S, E, *this); return MatchOperand_Success; }