diff options
author | Nirav Dave <niravd@google.com> | 2016-06-16 21:19:23 +0000 |
---|---|---|
committer | Nirav Dave <niravd@google.com> | 2016-06-16 21:19:23 +0000 |
commit | 280ecf6ff0858e31ff0073dd3e43b7403d9ccd8e (patch) | |
tree | 437092926a4858c251406db57cb565f223c9337f /llvm/lib/Target | |
parent | 01e062f5c667296ba7e6558572b9de516bf141f1 (diff) | |
download | bcm5719-llvm-280ecf6ff0858e31ff0073dd3e43b7403d9ccd8e.tar.gz bcm5719-llvm-280ecf6ff0858e31ff0073dd3e43b7403d9ccd8e.zip |
Revert "Refactor and cleanup Assembly Parsing / Lexing"
Reverting for unexpected crashes on various platforms.
This reverts commit r272953.
llvm-svn: 272957
Diffstat (limited to 'llvm/lib/Target')
4 files changed, 17 insertions, 16 deletions
diff --git a/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp b/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp index b3b0dffb6c9..281c3fab61c 100644 --- a/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp +++ b/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp @@ -10072,7 +10072,7 @@ bool ARMAsmParser::parseDirectiveObjectArch(SMLoc L) { StringRef Arch = Parser.getTok().getString(); SMLoc ArchLoc = Parser.getTok().getLoc(); - Lex(); + getLexer().Lex(); unsigned ID = ARM::parseArch(Arch); @@ -10195,7 +10195,7 @@ bool ARMAsmParser::parseDirectiveArchExtension(SMLoc L) { StringRef Name = Parser.getTok().getString(); SMLoc ExtLoc = Parser.getTok().getLoc(); - Lex(); + getLexer().Lex(); bool EnableFeature = true; if (Name.startswith_lower("no")) { diff --git a/llvm/lib/Target/Hexagon/AsmParser/HexagonAsmParser.cpp b/llvm/lib/Target/Hexagon/AsmParser/HexagonAsmParser.cpp index 985215ac385..67efa206a40 100644 --- a/llvm/lib/Target/Hexagon/AsmParser/HexagonAsmParser.cpp +++ b/llvm/lib/Target/Hexagon/AsmParser/HexagonAsmParser.cpp @@ -729,10 +729,11 @@ bool HexagonAsmParser::finishBundle(SMLoc IDLoc, MCStreamer &Out) { bool HexagonAsmParser::matchBundleOptions() { MCAsmParser &Parser = getParser(); + MCAsmLexer &Lexer = getLexer(); while (true) { if (!Parser.getTok().is(AsmToken::Colon)) return false; - Lex(); + Lexer.Lex(); StringRef Option = Parser.getTok().getString(); if (Option.compare_lower("endloop0") == 0) HexagonMCInstrInfo::setInnerLoop(MCB); @@ -744,7 +745,7 @@ bool HexagonAsmParser::matchBundleOptions() { HexagonMCInstrInfo::setMemStoreReorderEnabled(MCB); else return true; - Lex(); + Lexer.Lex(); } } @@ -1104,7 +1105,7 @@ bool HexagonAsmParser::splitIdentifier(OperandVector &Operands) { AsmToken const &Token = getParser().getTok(); StringRef String = Token.getString(); SMLoc Loc = Token.getLoc(); - Lex(); + getLexer().Lex(); do { std::pair<StringRef, StringRef> HeadTail = String.split('.'); if (!HeadTail.first.empty()) @@ -1296,7 +1297,7 @@ bool HexagonAsmParser::parseExpression(MCExpr const *& Expr) { static char const * Comma = ","; do { Tokens.emplace_back (Lexer.getTok()); - Lex(); + Lexer.Lex(); switch (Tokens.back().getKind()) { case AsmToken::TokenKind::Hash: @@ -1345,7 +1346,7 @@ bool HexagonAsmParser::parseInstruction(OperandVector &Operands) { AsmToken const &Token = Parser.getTok(); switch (Token.getKind()) { case AsmToken::EndOfStatement: { - Lex(); + Lexer.Lex(); return false; } case AsmToken::LCurly: { @@ -1353,19 +1354,19 @@ bool HexagonAsmParser::parseInstruction(OperandVector &Operands) { return true; Operands.push_back( HexagonOperand::CreateToken(Token.getString(), Token.getLoc())); - Lex(); + Lexer.Lex(); return false; } case AsmToken::RCurly: { if (Operands.empty()) { Operands.push_back( HexagonOperand::CreateToken(Token.getString(), Token.getLoc())); - Lex(); + Lexer.Lex(); } return false; } case AsmToken::Comma: { - Lex(); + Lexer.Lex(); continue; } case AsmToken::EqualEqual: @@ -1378,7 +1379,7 @@ bool HexagonAsmParser::parseInstruction(OperandVector &Operands) { Token.getString().substr(0, 1), Token.getLoc())); Operands.push_back(HexagonOperand::CreateToken( Token.getString().substr(1, 1), Token.getLoc())); - Lex(); + Lexer.Lex(); continue; } case AsmToken::Hash: { @@ -1388,12 +1389,12 @@ bool HexagonAsmParser::parseInstruction(OperandVector &Operands) { if (!ImplicitExpression) Operands.push_back( HexagonOperand::CreateToken(Token.getString(), Token.getLoc())); - Lex(); + Lexer.Lex(); bool MustExtend = false; bool HiOnly = false; bool LoOnly = false; if (Lexer.is(AsmToken::Hash)) { - Lex(); + Lexer.Lex(); MustExtend = true; } else if (ImplicitExpression) MustNotExtend = true; @@ -1411,7 +1412,7 @@ bool HexagonAsmParser::parseInstruction(OperandVector &Operands) { HiOnly = false; LoOnly = false; } else { - Lex(); + Lexer.Lex(); } } } diff --git a/llvm/lib/Target/Lanai/AsmParser/LanaiAsmParser.cpp b/llvm/lib/Target/Lanai/AsmParser/LanaiAsmParser.cpp index 799f587ff3f..8742cc9b85a 100644 --- a/llvm/lib/Target/Lanai/AsmParser/LanaiAsmParser.cpp +++ b/llvm/lib/Target/Lanai/AsmParser/LanaiAsmParser.cpp @@ -1122,7 +1122,7 @@ bool LanaiAsmParser::ParseInstruction(ParseInstructionInfo &Info, // Parse until end of statement, consuming commas between operands while (Lexer.isNot(AsmToken::EndOfStatement) && Lexer.is(AsmToken::Comma)) { // Consume comma token - Lex(); + Lexer.Lex(); // Parse next operand if (parseOperand(&Operands, Mnemonic) != MatchOperand_Success) diff --git a/llvm/lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp b/llvm/lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp index 4181775fc6d..da48422b46e 100644 --- a/llvm/lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp +++ b/llvm/lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp @@ -1710,7 +1710,7 @@ bool PPCAsmParser::ParseInstruction(ParseInstructionInfo &Info, StringRef Name, while (getLexer().isNot(AsmToken::EndOfStatement) && getLexer().is(AsmToken::Comma)) { // Consume the comma token - Lex(); + getLexer().Lex(); // Parse the next operand if (ParseOperand(Operands)) |