Lines Matching full:parser
35 #define DEBUG_TYPE "avr-asm-parser"
43 MCAsmParser &Parser; member in __anon06c44bb20111::AVRAsmParser
95 AVRAsmParser(const MCSubtargetInfo &STI, MCAsmParser &Parser, in AVRAsmParser() argument
97 : MCTargetAsmParser(Options, STI, MII), STI(STI), Parser(Parser) { in AVRAsmParser()
98 MCAsmParserExtension::Initialize(Parser); in AVRAsmParser()
104 MCAsmParser &getParser() const { return Parser; } in getParser()
105 MCAsmLexer &getLexer() const { return Parser.getLexer(); } in getLexer()
350 StringRef Name = Parser.getTok().getString(); in parseRegisterName()
380 if (Parser.getTok().is(AsmToken::Identifier)) { in parseRegister()
382 if (Parser.getLexer().peekTok().is(AsmToken::Colon)) { in parseRegister()
383 AsmToken HighTok = Parser.getTok(); in parseRegister()
384 Parser.Lex(); in parseRegister()
385 AsmToken ColonTok = Parser.getTok(); in parseRegister()
386 Parser.Lex(); // Eat high (odd) register and colon in parseRegister()
388 if (Parser.getTok().is(AsmToken::Identifier)) { in parseRegister()
412 return Error(Parser.getTok().getLoc(), "invalid register on avrtiny"); in tryParseRegisterOperand()
414 AsmToken const &T = Parser.getTok(); in tryParseRegisterOperand()
416 Parser.Lex(); // Eat register token. in tryParseRegisterOperand()
422 SMLoc S = Parser.getTok().getLoc(); in tryParseExpression()
427 if ((Parser.getTok().getKind() == AsmToken::Plus || in tryParseExpression()
428 Parser.getTok().getKind() == AsmToken::Minus) && in tryParseExpression()
429 Parser.getLexer().peekTok().getKind() == AsmToken::Identifier) { in tryParseExpression()
445 SMLoc E = SMLoc::getFromPointer(Parser.getTok().getLoc().getPointer() - 1); in tryParseExpression()
454 SMLoc S = Parser.getTok().getLoc(); in tryParseRelocExpression()
458 AsmToken::TokenKind CurTok = Parser.getLexer().getKind(); in tryParseRelocExpression()
464 if (Parser.getLexer().peekTokens(tokens) == 2) in tryParseRelocExpression()
471 Parser.getLexer().peekTok().getKind() != AsmToken::LParen) { in tryParseRelocExpression()
475 StringRef ModifierName = Parser.getTok().getString(); in tryParseRelocExpression()
479 Parser.Lex(); in tryParseRelocExpression()
480 Parser.Lex(); // Eat modifier name and parenthesis in tryParseRelocExpression()
481 if (Parser.getTok().getString() == GENERATE_STUBS && in tryParseRelocExpression()
482 Parser.getTok().getKind() == AsmToken::Identifier) { in tryParseRelocExpression()
486 Parser.Lex(); // Eat gs modifier name in tryParseRelocExpression()
489 return Error(Parser.getTok().getLoc(), "unknown modifier"); in tryParseRelocExpression()
494 Parser.Lex(); in tryParseRelocExpression()
495 assert(Parser.getTok().getKind() == AsmToken::LParen); in tryParseRelocExpression()
496 Parser.Lex(); // Eat the sign and parenthesis in tryParseRelocExpression()
505 assert(Parser.getTok().getKind() == AsmToken::RParen); in tryParseRelocExpression()
506 Parser.Lex(); // Eat closing parenthesis in tryParseRelocExpression()
510 assert(Parser.getTok().getKind() == AsmToken::RParen); in tryParseRelocExpression()
511 Parser.Lex(); // Eat closing parenthesis in tryParseRelocExpression()
516 SMLoc E = SMLoc::getFromPointer(Parser.getTok().getLoc().getPointer() - 1); in tryParseRelocExpression()
527 return Error(Parser.getTok().getLoc(), "unexpected token in operand"); in parseOperand()
556 Operands.push_back(AVROperand::CreateToken(Parser.getTok().getString(), in parseOperand()
557 Parser.getTok().getLoc())); in parseOperand()
558 Parser.Lex(); // Eat the token. in parseOperand()
581 S = SMLoc::getFromPointer(Parser.getTok().getLoc().getPointer() - 1); in parseMemriOperand()
582 Parser.Lex(); // Eat register token. in parseMemriOperand()
590 E = SMLoc::getFromPointer(Parser.getTok().getLoc().getPointer() - 1); in parseMemriOperand()
600 StartLoc = Parser.getTok().getLoc(); in parseRegister()
602 EndLoc = Parser.getTok().getLoc(); in parseRegister()
609 StartLoc = Parser.getTok().getLoc(); in tryParseRegister()
611 EndLoc = Parser.getTok().getLoc(); in tryParseRegister()
620 Parser.Lex(); in eatComma()
644 Parser.eatToEndOfStatement(); in ParseInstruction()
673 Parser.eatToEndOfStatement(); in ParseInstruction()
677 Parser.Lex(); // Consume the EndOfStatement in ParseInstruction()
693 MCAsmParser &Parser = getParser(); in parseLiteralValues() local
695 static_cast<AVRMCELFStreamer &>(Parser.getStreamer()); in parseLiteralValues()
697 size_t ReadCount = Parser.getLexer().peekTokens(Tokens); in parseLiteralValues()
698 if (ReadCount == 2 && Parser.getTok().getKind() == AsmToken::Identifier && in parseLiteralValues()
707 if (Parser.getTok().getKind() == AsmToken::Identifier && in parseLiteralValues()
708 Parser.getLexer().peekTok().getKind() == AsmToken::LParen) { in parseLiteralValues()
709 StringRef ModifierName = Parser.getTok().getString(); in parseLiteralValues()
713 Parser.Lex(); in parseLiteralValues()
714 Parser.Lex(); // Eat the modifier and parenthesis in parseLiteralValues()
716 return Error(Parser.getTok().getLoc(), "unknown modifier"); in parseLiteralValues()
719 getContext().getOrCreateSymbol(Parser.getTok().getString()); in parseLiteralValues()
729 if (Parser.parseExpression(Value)) in parseLiteralValues()
731 Parser.getStreamer().emitValue(Value, SizeInBytes, L); in parseLiteralValues()