aboutsummaryrefslogtreecommitdiff
path: root/llvm/tools
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/tools')
-rw-r--r--llvm/tools/llvm-cov/CodeCoverage.cpp22
-rw-r--r--llvm/tools/llvm-cov/CoverageExporterJson.cpp6
-rw-r--r--llvm/tools/llvm-cov/CoverageReport.cpp12
-rw-r--r--llvm/tools/llvm-cov/CoverageReport.h6
-rw-r--r--llvm/tools/llvm-cov/SourceCoverageView.h2
-rw-r--r--llvm/tools/llvm-cov/SourceCoverageViewHTML.cpp2
-rw-r--r--llvm/tools/llvm-cov/SourceCoverageViewHTML.h2
-rw-r--r--llvm/tools/llvm-cov/SourceCoverageViewText.cpp4
-rw-r--r--llvm/tools/llvm-cov/SourceCoverageViewText.h2
9 files changed, 29 insertions, 29 deletions
diff --git a/llvm/tools/llvm-cov/CodeCoverage.cpp b/llvm/tools/llvm-cov/CodeCoverage.cpp
index 237d877..51ac6ef 100644
--- a/llvm/tools/llvm-cov/CodeCoverage.cpp
+++ b/llvm/tools/llvm-cov/CodeCoverage.cpp
@@ -64,7 +64,8 @@ private:
/// \brief Print the warning message to the error output stream.
void warning(const Twine &Message, StringRef Whence = "");
- /// \brief Copy \p Path into the list of input source files.
+ /// \brief Convert \p Path into an absolute path and append it to the list
+ /// of collected paths.
void addCollectedPath(const std::string &Path);
/// \brief If \p Path is a regular file, collect the path. If it's a
@@ -116,7 +117,7 @@ private:
std::string PGOFilename;
/// A list of input source files.
- std::vector<StringRef> SourceFiles;
+ std::vector<std::string> SourceFiles;
/// Whether or not we're in -filename-equivalence mode.
bool CompareFilenamesOnly;
@@ -131,9 +132,6 @@ private:
/// A cache for demangled symbol names.
StringMap<std::string> DemangledNames;
- /// File paths (absolute, or otherwise) to input source files.
- std::vector<std::string> CollectedPaths;
-
/// Errors and warnings which have not been printed.
std::mutex ErrsLock;
@@ -168,7 +166,7 @@ void CodeCoverageTool::warning(const Twine &Message, StringRef Whence) {
void CodeCoverageTool::addCollectedPath(const std::string &Path) {
if (CompareFilenamesOnly) {
- CollectedPaths.push_back(Path);
+ SourceFiles.emplace_back(Path);
} else {
SmallString<128> EffectivePath(Path);
if (std::error_code EC = sys::fs::make_absolute(EffectivePath)) {
@@ -176,10 +174,8 @@ void CodeCoverageTool::addCollectedPath(const std::string &Path) {
return;
}
sys::path::remove_dots(EffectivePath, /*remove_dot_dots=*/true);
- CollectedPaths.push_back(EffectivePath.str());
+ SourceFiles.emplace_back(EffectivePath.str());
}
-
- SourceFiles.emplace_back(CollectedPaths.back());
}
void CodeCoverageTool::collectPaths(const std::string &Path) {
@@ -597,7 +593,7 @@ int CodeCoverageTool::run(Command Cmd, int argc, const char **argv) {
collectPaths(File);
if (DebugDumpCollectedPaths) {
- for (StringRef SF : SourceFiles)
+ for (const std::string &SF : SourceFiles)
outs() << SF << '\n';
::exit(0);
}
@@ -751,11 +747,11 @@ int CodeCoverageTool::show(int argc, const char **argv,
ThreadCount = std::thread::hardware_concurrency();
ThreadPool Pool(ThreadCount);
- for (StringRef SourceFile : SourceFiles) {
- Pool.async([this, SourceFile, &Coverage, &Printer, ShowFilenames] {
+ for (const std::string &SourceFile : SourceFiles) {
+ Pool.async([this, &SourceFile, &Coverage, &Printer, ShowFilenames] {
auto View = createSourceFileView(SourceFile, *Coverage);
if (!View) {
- warning("The file '" + SourceFile.str() + "' isn't covered.");
+ warning("The file '" + SourceFile + "' isn't covered.");
return;
}
diff --git a/llvm/tools/llvm-cov/CoverageExporterJson.cpp b/llvm/tools/llvm-cov/CoverageExporterJson.cpp
index e8dee14..06dc176 100644
--- a/llvm/tools/llvm-cov/CoverageExporterJson.cpp
+++ b/llvm/tools/llvm-cov/CoverageExporterJson.cpp
@@ -175,7 +175,9 @@ class CoverageExporterJson {
emitDictKey("files");
FileCoverageSummary Totals = FileCoverageSummary("Totals");
- std::vector<StringRef> SourceFiles = Coverage.getUniqueSourceFiles();
+ std::vector<std::string> SourceFiles;
+ for (StringRef SF : Coverage.getUniqueSourceFiles())
+ SourceFiles.emplace_back(SF);
auto FileReports =
CoverageReport::prepareFileReports(Coverage, Totals, SourceFiles);
renderFiles(SourceFiles, FileReports);
@@ -235,7 +237,7 @@ class CoverageExporterJson {
}
/// \brief Render an array of all the source files, also pass back a Summary.
- void renderFiles(ArrayRef<StringRef> SourceFiles,
+ void renderFiles(ArrayRef<std::string> SourceFiles,
ArrayRef<FileCoverageSummary> FileReports) {
// Start List of Files.
emitArrayStart();
diff --git a/llvm/tools/llvm-cov/CoverageReport.cpp b/llvm/tools/llvm-cov/CoverageReport.cpp
index 0d34722..24d7c66 100644
--- a/llvm/tools/llvm-cov/CoverageReport.cpp
+++ b/llvm/tools/llvm-cov/CoverageReport.cpp
@@ -120,7 +120,7 @@ raw_ostream::Colors determineCoveragePercentageColor(const T &Info) {
/// \brief Determine the length of the longest common prefix of the strings in
/// \p Strings.
-unsigned getLongestCommonPrefixLen(ArrayRef<StringRef> Strings) {
+unsigned getLongestCommonPrefixLen(ArrayRef<std::string> Strings) {
unsigned LCP = Strings[0].size();
for (unsigned I = 1, E = Strings.size(); LCP > 0 && I < E; ++I) {
auto Mismatch =
@@ -215,7 +215,7 @@ void CoverageReport::render(const FunctionCoverageSummary &Function,
OS << "\n";
}
-void CoverageReport::renderFunctionReports(ArrayRef<StringRef> Files,
+void CoverageReport::renderFunctionReports(ArrayRef<std::string> Files,
raw_ostream &OS) {
bool isFirst = true;
for (StringRef Filename : Files) {
@@ -261,7 +261,7 @@ void CoverageReport::renderFunctionReports(ArrayRef<StringRef> Files,
std::vector<FileCoverageSummary>
CoverageReport::prepareFileReports(const coverage::CoverageMapping &Coverage,
FileCoverageSummary &Totals,
- ArrayRef<StringRef> Files) {
+ ArrayRef<std::string> Files) {
std::vector<FileCoverageSummary> FileReports;
unsigned LCP = 0;
if (Files.size() > 1)
@@ -298,12 +298,14 @@ CoverageReport::prepareFileReports(const coverage::CoverageMapping &Coverage,
}
void CoverageReport::renderFileReports(raw_ostream &OS) const {
- std::vector<StringRef> UniqueSourceFiles = Coverage.getUniqueSourceFiles();
+ std::vector<std::string> UniqueSourceFiles;
+ for (StringRef SF : Coverage.getUniqueSourceFiles())
+ UniqueSourceFiles.emplace_back(SF.str());
renderFileReports(OS, UniqueSourceFiles);
}
void CoverageReport::renderFileReports(raw_ostream &OS,
- ArrayRef<StringRef> Files) const {
+ ArrayRef<std::string> Files) const {
FileCoverageSummary Totals("TOTAL");
auto FileReports = prepareFileReports(Coverage, Totals, Files);
diff --git a/llvm/tools/llvm-cov/CoverageReport.h b/llvm/tools/llvm-cov/CoverageReport.h
index 37bb842..7a41649 100644
--- a/llvm/tools/llvm-cov/CoverageReport.h
+++ b/llvm/tools/llvm-cov/CoverageReport.h
@@ -32,18 +32,18 @@ public:
const coverage::CoverageMapping &Coverage)
: Options(Options), Coverage(Coverage) {}
- void renderFunctionReports(ArrayRef<StringRef> Files, raw_ostream &OS);
+ void renderFunctionReports(ArrayRef<std::string> Files, raw_ostream &OS);
/// Prepare file reports for the files specified in \p Files.
static std::vector<FileCoverageSummary>
prepareFileReports(const coverage::CoverageMapping &Coverage,
- FileCoverageSummary &Totals, ArrayRef<StringRef> Files);
+ FileCoverageSummary &Totals, ArrayRef<std::string> Files);
/// Render file reports for every unique file in the coverage mapping.
void renderFileReports(raw_ostream &OS) const;
/// Render file reports for the files specified in \p Files.
- void renderFileReports(raw_ostream &OS, ArrayRef<StringRef> Files) const;
+ void renderFileReports(raw_ostream &OS, ArrayRef<std::string> Files) const;
};
} // end namespace llvm
diff --git a/llvm/tools/llvm-cov/SourceCoverageView.h b/llvm/tools/llvm-cov/SourceCoverageView.h
index 129c590..2069fe5 100644
--- a/llvm/tools/llvm-cov/SourceCoverageView.h
+++ b/llvm/tools/llvm-cov/SourceCoverageView.h
@@ -142,7 +142,7 @@ public:
virtual void closeViewFile(OwnedStream OS) = 0;
/// \brief Create an index which lists reports for the given source files.
- virtual Error createIndexFile(ArrayRef<StringRef> SourceFiles,
+ virtual Error createIndexFile(ArrayRef<std::string> SourceFiles,
const coverage::CoverageMapping &Coverage) = 0;
/// @}
diff --git a/llvm/tools/llvm-cov/SourceCoverageViewHTML.cpp b/llvm/tools/llvm-cov/SourceCoverageViewHTML.cpp
index 1cb283c..2707260 100644
--- a/llvm/tools/llvm-cov/SourceCoverageViewHTML.cpp
+++ b/llvm/tools/llvm-cov/SourceCoverageViewHTML.cpp
@@ -347,7 +347,7 @@ void CoveragePrinterHTML::emitFileSummary(raw_ostream &OS, StringRef SF,
}
Error CoveragePrinterHTML::createIndexFile(
- ArrayRef<StringRef> SourceFiles,
+ ArrayRef<std::string> SourceFiles,
const coverage::CoverageMapping &Coverage) {
// Emit the default stylesheet.
auto CSSOrErr = createOutputStream("style", "css", /*InToplevel=*/true);
diff --git a/llvm/tools/llvm-cov/SourceCoverageViewHTML.h b/llvm/tools/llvm-cov/SourceCoverageViewHTML.h
index ad4b2b8..94b08a5 100644
--- a/llvm/tools/llvm-cov/SourceCoverageViewHTML.h
+++ b/llvm/tools/llvm-cov/SourceCoverageViewHTML.h
@@ -28,7 +28,7 @@ public:
void closeViewFile(OwnedStream OS) override;
- Error createIndexFile(ArrayRef<StringRef> SourceFiles,
+ Error createIndexFile(ArrayRef<std::string> SourceFiles,
const coverage::CoverageMapping &Coverage) override;
CoveragePrinterHTML(const CoverageViewOptions &Opts)
diff --git a/llvm/tools/llvm-cov/SourceCoverageViewText.cpp b/llvm/tools/llvm-cov/SourceCoverageViewText.cpp
index f5201d9..6889129 100644
--- a/llvm/tools/llvm-cov/SourceCoverageViewText.cpp
+++ b/llvm/tools/llvm-cov/SourceCoverageViewText.cpp
@@ -29,7 +29,7 @@ void CoveragePrinterText::closeViewFile(OwnedStream OS) {
}
Error CoveragePrinterText::createIndexFile(
- ArrayRef<StringRef> SourceFiles,
+ ArrayRef<std::string> SourceFiles,
const coverage::CoverageMapping &Coverage) {
auto OSOrErr = createOutputStream("index", "txt", /*InToplevel=*/true);
if (Error E = OSOrErr.takeError())
@@ -38,7 +38,7 @@ Error CoveragePrinterText::createIndexFile(
raw_ostream &OSRef = *OS.get();
CoverageReport Report(Opts, Coverage);
- Report.renderFileReports(OSRef);
+ Report.renderFileReports(OSRef, SourceFiles);
Opts.colored_ostream(OSRef, raw_ostream::CYAN) << "\n"
<< Opts.getLLVMVersionString();
diff --git a/llvm/tools/llvm-cov/SourceCoverageViewText.h b/llvm/tools/llvm-cov/SourceCoverageViewText.h
index 3968aa7..c3f20de 100644
--- a/llvm/tools/llvm-cov/SourceCoverageViewText.h
+++ b/llvm/tools/llvm-cov/SourceCoverageViewText.h
@@ -26,7 +26,7 @@ public:
void closeViewFile(OwnedStream OS) override;
- Error createIndexFile(ArrayRef<StringRef> SourceFiles,
+ Error createIndexFile(ArrayRef<std::string> SourceFiles,
const coverage::CoverageMapping &Coverage) override;
CoveragePrinterText(const CoverageViewOptions &Opts)