Lines Matching defs:Cursor
30 class Cursor {
35 Cursor(std::nullopt_t) {}
37 explicit Cursor(StringRef Str) {
50 StringRef upto(Cursor C) const {
85 static Cursor skipWhitespace(Cursor C) {
94 static Cursor skipComment(Cursor C) {
104 static Cursor skipMachineOperandComment(Cursor C) {
128 Cursor C = Cursor(Value.substr(1, Value.size() - 2));
154 static Cursor lexStringConstant(Cursor C, ErrorCallbackType ErrorCallback) {
168 static Cursor lexName(Cursor C, MIToken &Token, MIToken::TokenKind Type,
173 if (Cursor R = lexStringConstant(C, ErrorCallback)) {
293 static Cursor maybeLexIdentifier(Cursor C, MIToken &Token) {
305 static Cursor maybeLexMachineBasicBlock(Cursor C, MIToken &Token,
340 static Cursor maybeLexIndex(Cursor C, MIToken &Token, StringRef Rule,
353 static Cursor maybeLexIndexAndName(Cursor C, MIToken &Token, StringRef Rule,
376 static Cursor maybeLexJumpTableIndex(Cursor C, MIToken &Token) {
380 static Cursor maybeLexStackObject(Cursor C, MIToken &Token) {
384 static Cursor maybeLexFixedStackObject(Cursor C, MIToken &Token) {
388 static Cursor maybeLexConstantPoolItem(Cursor C, MIToken &Token) {
392 static Cursor maybeLexSubRegisterIndex(Cursor C, MIToken &Token,
401 static Cursor maybeLexIRBlock(Cursor C, MIToken &Token,
411 static Cursor maybeLexIRValue(Cursor C, MIToken &Token,
421 static Cursor maybeLexStringConstant(Cursor C, MIToken &Token,
429 static Cursor lexVirtualRegister(Cursor C, MIToken &Token) {
445 static Cursor lexNamedVirtualRegister(Cursor C, MIToken &Token) {
446 Cursor Range = C;
455 static Cursor maybeLexRegister(Cursor C, MIToken &Token,
480 static Cursor maybeLexGlobalValue(Cursor C, MIToken &Token,
497 static Cursor maybeLexExternalSymbol(Cursor C, MIToken &Token,
505 static Cursor maybeLexMCSymbol(Cursor C, MIToken &Token,
531 Cursor R = lexStringConstant(C, ErrorCallback);
556 static Cursor lexFloatingPointLiteral(Cursor Range, Cursor C, MIToken &Token) {
572 static Cursor maybeLexHexadecimalLiteral(Cursor C, MIToken &Token) {
575 Cursor Range = C;
594 static Cursor maybeLexNumericalLiteral(Cursor C, MIToken &Token) {
619 static Cursor maybeLexExclaim(Cursor C, MIToken &Token,
670 static Cursor maybeLexSymbol(Cursor C, MIToken &Token) {
686 static Cursor maybeLexNewline(Cursor C, MIToken &Token) {
695 static Cursor maybeLexEscapedIRValue(Cursor C, MIToken &Token,
720 auto C = skipComment(skipWhitespace(Cursor(Source)));
728 if (Cursor R = maybeLexMachineBasicBlock(C, Token, ErrorCallback))
730 if (Cursor R = maybeLexIdentifier(C, Token))
732 if (Cursor R = maybeLexJumpTableIndex(C, Token))
734 if (Cursor R = maybeLexStackObject(C, Token))
736 if (Cursor R = maybeLexFixedStackObject(C, Token))
738 if (Cursor R = maybeLexConstantPoolItem(C, Token))
740 if (Cursor R = maybeLexSubRegisterIndex(C, Token, ErrorCallback))
742 if (Cursor R = maybeLexIRBlock(C, Token, ErrorCallback))
744 if (Cursor R = maybeLexIRValue(C, Token, ErrorCallback))
746 if (Cursor R = maybeLexRegister(C, Token, ErrorCallback))
748 if (Cursor R = maybeLexGlobalValue(C, Token, ErrorCallback))
750 if (Cursor R = maybeLexExternalSymbol(C, Token, ErrorCallback))
752 if (Cursor R = maybeLexMCSymbol(C, Token, ErrorCallback))
754 if (Cursor R = maybeLexHexadecimalLiteral(C, Token))
756 if (Cursor R = maybeLexNumericalLiteral(C, Token))
758 if (Cursor R = maybeLexExclaim(C, Token, ErrorCallback))
760 if (Cursor R = maybeLexSymbol(C, Token))
762 if (Cursor R = maybeLexNewline(C, Token))
764 if (Cursor R = maybeLexEscapedIRValue(C, Token, ErrorCallback))
766 if (Cursor R = maybeLexStringConstant(C, Token, ErrorCallback))