Lines Matching refs:LineInfo
941 bool SourcePrinter::cacheSource(const DILineInfo &LineInfo) { in cacheSource() argument
943 if (LineInfo.Source) { in cacheSource()
944 Buffer = MemoryBuffer::getMemBuffer(*LineInfo.Source); in cacheSource()
946 auto BufferOrError = MemoryBuffer::getFile(LineInfo.FileName); in cacheSource()
958 LineCache[LineInfo.FileName].push_back(StringRef(Start, End - Start)); in cacheSource()
963 SourceCache[LineInfo.FileName] = std::move(Buffer); in cacheSource()
971 DILineInfo LineInfo = DILineInfo(); in printSourceLine() local
977 LineInfo = *ExpectecLineInfo; in printSourceLine()
979 if ((LineInfo.FileName == "<invalid>") || OldLineInfo.Line == LineInfo.Line || in printSourceLine()
980 LineInfo.Line == 0) in printSourceLine()
984 OS << Delimiter << LineInfo.FileName << ":" << LineInfo.Line << "\n"; in printSourceLine()
986 if (SourceCache.find(LineInfo.FileName) == SourceCache.end()) in printSourceLine()
987 if (!cacheSource(LineInfo)) in printSourceLine()
989 auto FileBuffer = SourceCache.find(LineInfo.FileName); in printSourceLine()
991 auto LineBuffer = LineCache.find(LineInfo.FileName); in printSourceLine()
993 if (LineInfo.Line > LineBuffer->second.size()) in printSourceLine()
996 OS << Delimiter << LineBuffer->second[LineInfo.Line - 1].ltrim() in printSourceLine()
1001 OldLineInfo = LineInfo; in printSourceLine()