Lines Matching refs:CurPtr
50 CurPtr = CurBuf.begin(); in TGLexer()
67 return {getLoc(), SMLoc::getFromPointer(CurPtr)}; in getLocRange()
93 CurPtr = ParentIncludeLoc.getPointer(); in processEOF()
97 TokStart = CurPtr; in processEOF()
109 char CurChar = *CurPtr++; in getNextChar()
117 if (CurPtr - 1 == CurBuf.end()) { in getNextChar()
118 --CurPtr; // Arrange for another call to return EOF again. in getNextChar()
131 if ((*CurPtr == '\n' || (*CurPtr == '\r')) && in getNextChar()
132 *CurPtr != CurChar) in getNextChar()
133 ++CurPtr; // Eat the two char newline sequence. in getNextChar()
139 return *(CurPtr + Index); in peekNextChar()
143 TokStart = CurPtr; in LexToken()
192 ++CurPtr; // Eat second dot. in LexToken()
194 ++CurPtr; // Eat third dot. in LexToken()
215 if (*CurPtr == '/') in LexToken()
217 else if (*CurPtr == '*') { in LexToken()
272 const char *StrStart = CurPtr; in LexString()
276 while (*CurPtr != '"') { in LexString()
278 if (*CurPtr == 0 && CurPtr == CurBuf.end()) in LexString()
281 if (*CurPtr == '\n' || *CurPtr == '\r') in LexString()
284 if (*CurPtr != '\\') { in LexString()
285 CurStrVal += *CurPtr++; in LexString()
289 ++CurPtr; in LexString()
291 switch (*CurPtr) { in LexString()
294 CurStrVal += *CurPtr++; in LexString()
298 ++CurPtr; in LexString()
302 ++CurPtr; in LexString()
307 return ReturnError(CurPtr, "escaped newlines not supported in tblgen"); in LexString()
311 if (CurPtr == CurBuf.end()) in LexString()
315 return ReturnError(CurPtr, "invalid escape in string literal"); in LexString()
319 ++CurPtr; in LexString()
324 if (!isalpha(CurPtr[0]) && CurPtr[0] != '_') in LexVarName()
328 const char *VarNameStart = CurPtr++; in LexVarName()
330 while (isalpha(*CurPtr) || isdigit(*CurPtr) || *CurPtr == '_') in LexVarName()
331 ++CurPtr; in LexVarName()
333 CurStrVal.assign(VarNameStart, CurPtr); in LexVarName()
342 while (isalpha(*CurPtr) || isdigit(*CurPtr) || *CurPtr == '_') in LexIdentifier()
343 ++CurPtr; in LexIdentifier()
346 StringRef Str(IdentStart, CurPtr-IdentStart); in LexIdentifier()
406 CurBuffer = SrcMgr.AddIncludeFile(Filename, SMLoc::getFromPointer(CurPtr), in LexInclude()
416 CurPtr = CurBuf.begin(); in LexInclude()
426 ++CurPtr; // skip the second slash. in SkipBCPLComment()
427 auto EOLPos = CurBuf.find_first_of("\r\n", CurPtr - CurBuf.data()); in SkipBCPLComment()
428 CurPtr = (EOLPos == StringRef::npos) ? CurBuf.end() : CurBuf.data() + EOLPos; in SkipBCPLComment()
434 ++CurPtr; // skip the star. in SkipCComment()
445 if (CurPtr[0] != '/') break; in SkipCComment()
447 ++CurPtr; // End the */. in SkipCComment()
453 if (CurPtr[0] != '*') break; in SkipCComment()
454 ++CurPtr; in SkipCComment()
470 if (CurPtr[-1] == '0') { in LexNumber()
471 NumStart = CurPtr + 1; in LexNumber()
472 if (CurPtr[0] == 'x') { in LexNumber()
475 ++CurPtr; in LexNumber()
476 while (isxdigit(CurPtr[0])); in LexNumber()
477 } else if (CurPtr[0] == 'b') { in LexNumber()
480 ++CurPtr; in LexNumber()
481 while (CurPtr[0] == '0' || CurPtr[0] == '1'); in LexNumber()
491 if (!isdigit(CurPtr[0])) { in LexNumber()
492 if (CurPtr[-1] == '-') in LexNumber()
494 else if (CurPtr[-1] == '+') in LexNumber()
500 IsMinus = CurPtr[-1] == '-'; in LexNumber()
502 while (isdigit(CurPtr[0])) in LexNumber()
503 ++CurPtr; in LexNumber()
507 if (CurPtr == NumStart) in LexNumber()
527 if (CurPtr[0] != '{') in LexBracket()
529 ++CurPtr; in LexBracket()
530 const char *CodeStart = CurPtr; in LexBracket()
540 CurStrVal.assign(CodeStart, CurPtr-2); in LexBracket()
550 if (!isalpha(*CurPtr)) in LexExclaim()
551 return ReturnError(CurPtr - 1, "Invalid \"!operator\""); in LexExclaim()
553 const char *Start = CurPtr++; in LexExclaim()
554 while (isalpha(*CurPtr)) in LexExclaim()
555 ++CurPtr; in LexExclaim()
559 StringSwitch<tgtok::TokKind>(StringRef(Start, CurPtr - Start)) in LexExclaim()
644 int NextChar = *CurPtr; in prepIsDirective()
698 TokStart = CurPtr; in prepEatPreprocessorDirective()
703 CurPtr += strlen(PD.Word); in prepEatPreprocessorDirective()
739 return ReturnError(CurPtr, "Only comments are supported after " + in lexPreprocessor()
780 return ReturnError(CurPtr, "Only comments are supported after #else"); in lexPreprocessor()
808 return ReturnError(CurPtr, "Only comments are supported after #endif"); in lexPreprocessor()
830 return ReturnError(CurPtr, in lexPreprocessor()
861 if (*CurPtr == '#') in prepSkipRegion()
862 ++CurPtr; in prepSkipRegion()
899 } while (CurPtr != CurBuf.end()); in prepSkipRegion()
909 while (*CurPtr == ' ' || *CurPtr == '\t') in prepLexMacroName()
910 ++CurPtr; in prepLexMacroName()
912 TokStart = CurPtr; in prepLexMacroName()
914 if (*CurPtr != '_' && !isalpha(*CurPtr)) in prepLexMacroName()
918 while (isalpha(*CurPtr) || isdigit(*CurPtr) || *CurPtr == '_') in prepLexMacroName()
919 ++CurPtr; in prepLexMacroName()
921 return StringRef(TokStart, CurPtr - TokStart); in prepLexMacroName()
925 while (CurPtr != CurBuf.end()) { in prepSkipLineBegin()
926 switch (*CurPtr) { in prepSkipLineBegin()
946 TokStart = CurPtr; in prepSkipLineBegin()
949 ++CurPtr; in prepSkipLineBegin()
965 ++CurPtr; in prepSkipLineBegin()
974 while (CurPtr != CurBuf.end()) { in prepSkipDirectiveEnd()
975 switch (*CurPtr) { in prepSkipDirectiveEnd()
990 ++CurPtr; in prepSkipDirectiveEnd()
1008 TokStart = CurPtr; in prepSkipDirectiveEnd()
1009 ++CurPtr; in prepSkipDirectiveEnd()
1013 TokStart = CurPtr; in prepSkipDirectiveEnd()
1014 PrintError(CurPtr, "Unexpected character"); in prepSkipDirectiveEnd()
1024 TokStart = CurPtr; in prepSkipDirectiveEnd()
1028 ++CurPtr; in prepSkipDirectiveEnd()
1035 while (*CurPtr != '\n' && *CurPtr != '\r' && CurPtr != CurBuf.end()) in prepSkipToLineEnd()
1036 ++CurPtr; in prepSkipToLineEnd()
1057 TokStart = CurPtr; in prepReportPreprocessorStackError()