Lines Matching refs:Lex

398   switch (Lex.getCode()) {
433 if (Lex.getCode() != tgtok::Id) {
438 Record *Result = Records.getClass(Lex.getCurStrVal());
440 TokError("Couldn't find class '" + Lex.getCurStrVal() + "'");
442 Lex.Lex();
452 if (Lex.getCode() != tgtok::Id) {
457 MultiClass *Result = MultiClasses[Lex.getCurStrVal()].get();
459 TokError("Couldn't find multiclass '" + Lex.getCurStrVal() + "'");
461 Lex.Lex();
474 Result.RefRange.Start = Lex.getLoc();
485 if (Lex.getCode() != tgtok::less) {
486 Result.RefRange.End = Lex.getLoc();
489 Lex.Lex(); // Eat the '<'
491 if (Lex.getCode() == tgtok::greater) {
503 if (Lex.getCode() != tgtok::greater) {
508 Lex.Lex();
509 Result.RefRange.End = Lex.getLoc();
524 Result.RefRange.Start = Lex.getLoc();
530 if (Lex.getCode() != tgtok::less) {
531 Result.RefRange.End = Lex.getLoc();
534 Lex.Lex(); // Eat the '<'
536 if (Lex.getCode() == tgtok::greater) {
548 if (Lex.getCode() != tgtok::greater) {
553 Lex.Lex();
554 Result.RefRange.End = Lex.getLoc();
564 if (Lex.getCode() != tgtok::IntVal) {
568 int64_t Start = Lex.getCurIntVal();
574 switch (Lex.Lex()) { // eat first character.
579 if (Lex.Lex() != tgtok::IntVal) {
583 End = Lex.getCurIntVal();
586 End = -Lex.getCurIntVal();
591 Lex.Lex();
614 while (Lex.getCode() == tgtok::comma) {
615 Lex.Lex(); // Eat the comma.
628 if (Lex.getCode() != tgtok::less)
631 SMLoc StartLoc = Lex.getLoc();
632 Lex.Lex(); // eat the '<'
638 if (Lex.getCode() != tgtok::greater) {
642 Lex.Lex(); // eat the '>'.
650 if (Lex.getCode() != tgtok::l_brace)
653 SMLoc StartLoc = Lex.getLoc();
654 Lex.Lex(); // eat the '{'
660 if (Lex.getCode() != tgtok::r_brace) {
664 Lex.Lex(); // eat the '}'.
681 switch (Lex.getCode()) {
683 case tgtok::String: Lex.Lex(); return StringRecTy::get();
684 case tgtok::Code: Lex.Lex(); return StringRecTy::get();
685 case tgtok::Bit: Lex.Lex(); return BitRecTy::get();
686 case tgtok::Int: Lex.Lex(); return IntRecTy::get();
687 case tgtok::Dag: Lex.Lex(); return DagRecTy::get();
692 if (Lex.Lex() != tgtok::less) { // Eat 'bits'
696 if (Lex.Lex() != tgtok::IntVal) { // Eat '<'
700 uint64_t Val = Lex.getCurIntVal();
701 if (Lex.Lex() != tgtok::greater) { // Eat count.
705 Lex.Lex(); // Eat '>'
709 if (Lex.Lex() != tgtok::less) { // Eat 'bits'
713 Lex.Lex(); // Eat '<'
717 if (Lex.getCode() != tgtok::greater) {
721 Lex.Lex(); // Eat '>'
788 switch (Lex.getCode()) {
799 switch (Lex.getCode()) {
802 Lex.Lex(); // eat the operation
814 Lex.Lex(); // eat the operation
818 Lex.Lex(); // eat the operation
822 Lex.Lex(); // eat the operation
827 if (Lex.getCode() != tgtok::l_paren) {
831 Lex.Lex(); // eat the '('
894 if (Lex.getCode() != tgtok::r_paren) {
898 Lex.Lex(); // eat the ')'
911 tgtok::TokKind OpTok = Lex.getCode();
912 SMLoc OpLoc = Lex.getLoc();
913 Lex.Lex(); // eat the operation
937 if (Lex.getCode() != tgtok::l_paren) {
941 Lex.Lex(); // eat the '('
948 while (Lex.getCode() == tgtok::comma) {
949 Lex.Lex(); // eat the ','
955 if (Lex.getCode() != tgtok::r_paren) {
959 Lex.Lex(); // eat the ')'
999 tgtok::TokKind LexCode = Lex.getCode();
1000 Lex.Lex(); // eat the operation
1013 if (Lex.getCode() != tgtok::l_paren) {
1017 Lex.Lex(); // eat the '('
1022 if (Lex.getCode() != tgtok::comma) {
1026 Lex.Lex(); // eat the ','
1032 if (Lex.getCode() != tgtok::comma) {
1036 Lex.Lex(); // eat the ','
1042 if (Lex.getCode() != tgtok::r_paren) {
1046 Lex.Lex(); // eat the ')'
1122 if (Lex.getCode() != tgtok::less) {
1126 Lex.Lex(); // eat the <
1135 if (Lex.getCode() != tgtok::greater) {
1139 Lex.Lex(); // eat the >
1167 switch (Lex.getCode()) {
1172 Lex.Lex(); // Skip '#'.
1174 case tgtok::IntVal: R = IntInit::get(Lex.getCurIntVal()); Lex.Lex(); break;
1176 auto BinaryVal = Lex.getCurBinaryIntVal();
1181 Lex.Lex();
1185 std::string Val = Lex.getCurStrVal();
1186 Lex.Lex();
1189 while (Lex.getCode() == tgtok::StrVal) {
1190 Val += Lex.getCurStrVal();
1191 Lex.Lex();
1198 R = StringInit::get(Lex.getCurStrVal());
1199 Lex.Lex();
1203 Lex.Lex();
1206 SMLoc NameLoc = Lex.getLoc();
1207 std::string Name = Lex.getCurStrVal();
1208 if (Lex.Lex() != tgtok::less) // consume the Id.
1212 if (Lex.Lex() == tgtok::greater) {
1229 if (Lex.getCode() != tgtok::greater) {
1233 Lex.Lex(); // eat the '>'
1234 SMLoc EndLoc = Lex.getLoc();
1286 SMLoc BraceLoc = Lex.getLoc();
1287 Lex.Lex(); // eat the '{'
1290 if (Lex.getCode() != tgtok::r_brace) {
1294 if (Lex.getCode() != tgtok::r_brace) {
1298 Lex.Lex(); // eat the '}'
1337 Lex.Lex(); // eat the '['
1356 if (Lex.getCode() != tgtok::r_square) {
1361 if (Lex.getCode() != tgtok::r_square) {
1365 Lex.Lex(); // eat the ']'
1368 if (Lex.getCode() == tgtok::less) {
1370 Lex.Lex(); // eat the '<'
1378 if (Lex.getCode() != tgtok::greater) {
1382 Lex.Lex(); // eat the '>'
1437 Lex.Lex(); // eat the '('
1438 if (Lex.getCode() != tgtok::Id && Lex.getCode() != tgtok::XCast) {
1448 if (Lex.getCode() == tgtok::colon) {
1449 if (Lex.Lex() != tgtok::VarName) { // eat the ':'
1453 OperatorName = Lex.getCurStrVal();
1454 Lex.Lex(); // eat the VarName.
1458 if (Lex.getCode() != tgtok::r_paren) {
1463 if (Lex.getCode() != tgtok::r_paren) {
1467 Lex.Lex(); // eat the ')'
1508 switch (Lex.getCode()) {
1515 SMLoc CurlyLoc = Lex.getLoc();
1516 Lex.Lex(); // eat the '{'
1529 if (Lex.getCode() != tgtok::r_brace) {
1533 Lex.Lex();
1537 SMLoc SquareLoc = Lex.getLoc();
1538 Lex.Lex(); // eat the '['
1549 if (Lex.getCode() != tgtok::r_square) {
1553 Lex.Lex();
1557 if (Lex.Lex() != tgtok::Id) { // eat the .
1561 if (!Result->getFieldType(Lex.getCurStrVal())) {
1562 TokError("Cannot access field '" + Lex.getCurStrVal() + "' of value '" +
1566 Result = FieldInit::get(Result, Lex.getCurStrVal());
1567 Lex.Lex(); // eat field name
1571 SMLoc PasteLoc = Lex.getLoc();
1588 Lex.Lex(); // Eat the '#'.
1589 switch (Lex.getCode()) {
1635 if (Lex.getCode() == tgtok::VarName) {
1637 Result.push_back(std::make_pair(UnsetInit::get(), Lex.getCurStrVal()));
1638 Lex.Lex();
1647 if (Lex.getCode() == tgtok::colon) {
1648 if (Lex.Lex() != tgtok::VarName) { // eat the ':'
1652 VarName = Lex.getCurStrVal();
1653 Lex.Lex(); // eat the VarName.
1658 if (Lex.getCode() != tgtok::comma) break;
1659 Lex.Lex(); // eat the ','
1695 while (Lex.getCode() == tgtok::comma) {
1696 Lex.Lex(); // Eat the comma
1730 bool HasField = Lex.getCode() == tgtok::Field;
1731 if (HasField) Lex.Lex();
1736 if (Lex.getCode() != tgtok::Id) {
1741 SMLoc IdLoc = Lex.getLoc();
1742 Init *DeclName = StringInit::get(Lex.getCurStrVal());
1743 Lex.Lex();
1761 if (Lex.getCode() == tgtok::equal) {
1762 Lex.Lex();
1763 SMLoc ValLoc = Lex.getLoc();
1785 if (Lex.getCode() != tgtok::Id) {
1790 Init *DeclName = StringInit::get(Lex.getCurStrVal());
1791 Lex.Lex();
1794 if (Lex.getCode() != tgtok::equal) {
1798 Lex.Lex(); // Eat the '='
1803 switch (Lex.getCode()) {
1829 Lex.Lex(); // eat the '{'
1831 if (Lex.getCode() != tgtok::r_brace) {
1835 Lex.Lex();
1863 assert(Lex.getCode() == tgtok::less && "Not a template arg list!");
1864 Lex.Lex(); // eat the '<'
1875 while (Lex.getCode() == tgtok::comma) {
1876 Lex.Lex(); // eat the ','
1885 if (Lex.getCode() != tgtok::greater)
1887 Lex.Lex(); // eat the '>'.
1897 if (Lex.getCode() != tgtok::Let) {
1901 if (Lex.getCode() != tgtok::semi)
1903 Lex.Lex();
1908 if (Lex.Lex() != tgtok::Id)
1911 SMLoc IdLoc = Lex.getLoc();
1912 std::string FieldName = Lex.getCurStrVal();
1913 Lex.Lex(); // eat the field name.
1920 if (Lex.getCode() != tgtok::equal)
1922 Lex.Lex(); // eat the '='.
1933 if (Lex.getCode() != tgtok::semi)
1935 Lex.Lex();
1949 if (Lex.getCode() == tgtok::semi) {
1950 Lex.Lex();
1954 if (Lex.getCode() != tgtok::l_brace)
1957 Lex.Lex();
1959 while (Lex.getCode() != tgtok::r_brace)
1964 Lex.Lex();
1990 if (Lex.getCode() == tgtok::colon) {
1991 Lex.Lex();
2003 if (Lex.getCode() != tgtok::comma) break;
2004 Lex.Lex(); // eat ','.
2021 SMLoc DefLoc = Lex.getLoc();
2022 assert(Lex.getCode() == tgtok::Def && "Unknown tok");
2023 Lex.Lex(); // Eat the 'def' token.
2102 assert(Lex.getCode() == tgtok::Foreach && "Unknown tok");
2103 Lex.Lex(); // Eat the 'for' token.
2112 if (Lex.getCode() != tgtok::In)
2114 Lex.Lex(); // Eat the in
2119 if (Lex.getCode() != tgtok::l_brace) {
2125 SMLoc BraceLoc = Lex.getLoc();
2127 Lex.Lex(); // eat the '{'.
2133 if (Lex.getCode() != tgtok::r_brace) {
2137 Lex.Lex(); // Eat the }
2151 assert(Lex.getCode() == tgtok::Class && "Unexpected token!");
2152 Lex.Lex();
2154 if (Lex.getCode() != tgtok::Id)
2157 Record *CurRec = Records.getClass(Lex.getCurStrVal());
2168 llvm::make_unique<Record>(Lex.getCurStrVal(), Lex.getLoc(), Records);
2172 Lex.Lex(); // eat the name.
2175 if (Lex.getCode() == tgtok::less)
2193 if (Lex.getCode() != tgtok::Id) {
2197 std::string Name = Lex.getCurStrVal();
2198 SMLoc NameLoc = Lex.getLoc();
2199 Lex.Lex(); // Eat the identifier.
2207 if (Lex.getCode() != tgtok::equal) {
2211 Lex.Lex(); // eat the '='.
2219 if (Lex.getCode() != tgtok::comma)
2221 Lex.Lex(); // eat the comma.
2232 assert(Lex.getCode() == tgtok::Let && "Unexpected token");
2233 Lex.Lex();
2240 if (Lex.getCode() != tgtok::In)
2242 Lex.Lex();
2245 if (Lex.getCode() != tgtok::l_brace) {
2250 SMLoc BraceLoc = Lex.getLoc();
2252 Lex.Lex(); // eat the '{'.
2258 if (Lex.getCode() != tgtok::r_brace) {
2262 Lex.Lex();
2281 assert(Lex.getCode() == tgtok::MultiClass && "Unexpected token");
2282 Lex.Lex(); // Eat the multiclass token.
2284 if (Lex.getCode() != tgtok::Id)
2286 std::string Name = Lex.getCurStrVal();
2290 llvm::make_unique<MultiClass>(Name, Lex.getLoc(),Records)));
2296 Lex.Lex(); // Eat the identifier.
2299 if (Lex.getCode() == tgtok::less)
2306 if (Lex.getCode() == tgtok::colon) {
2309 Lex.Lex();
2322 if (Lex.getCode() != tgtok::comma) break;
2323 Lex.Lex(); // eat ','.
2328 if (Lex.getCode() != tgtok::l_brace) {
2331 if (Lex.getCode() != tgtok::semi)
2333 Lex.Lex(); // eat the ';'.
2335 if (Lex.Lex() == tgtok::r_brace) // eat the '{'.
2338 while (Lex.getCode() != tgtok::r_brace) {
2339 switch (Lex.getCode()) {
2351 Lex.Lex(); // eat the '}'.
2526 assert(Lex.getCode() == tgtok::Defm && "Unexpected token!");
2527 SMLoc DefmLoc = Lex.getLoc();
2530 if (Lex.Lex() == tgtok::Id) { // eat the defm.
2534 SMLoc DefmPrefixEndLoc = Lex.getLoc();
2535 if (Lex.getCode() != tgtok::colon)
2545 Lex.Lex();
2547 SMLoc SubClassLoc = Lex.getLoc();
2593 if (Lex.getCode() != tgtok::comma) break;
2594 Lex.Lex(); // eat ','.
2596 if (Lex.getCode() != tgtok::Id)
2599 SubClassLoc = Lex.getLoc();
2603 InheritFromClass = (Records.getClass(Lex.getCurStrVal()) != nullptr);
2632 if (Lex.getCode() != tgtok::comma) break;
2633 Lex.Lex(); // eat ','.
2645 if (Lex.getCode() != tgtok::semi)
2647 Lex.Lex();
2660 switch (Lex.getCode()) {
2675 while (isObjectStart(Lex.getCode())) {
2683 Lex.Lex(); // Prime the lexer.
2687 if (Lex.getCode() == tgtok::Eof)