diff options
author | Vedant Kumar <vsk@apple.com> | 2016-06-28 00:15:54 +0000 |
---|---|---|
committer | Vedant Kumar <vsk@apple.com> | 2016-06-28 00:15:54 +0000 |
commit | 635c83c1b4ec789f51d8bcb49bbbec5f127d1a69 (patch) | |
tree | 7a3c47bd793f2801cd0371e71433b5bf043f3a65 /llvm/tools | |
parent | 3264fdd3caa0acf19c91a4eb0d09a282cc788bbd (diff) | |
download | bcm5719-llvm-635c83c1b4ec789f51d8bcb49bbbec5f127d1a69.tar.gz bcm5719-llvm-635c83c1b4ec789f51d8bcb49bbbec5f127d1a69.zip |
[llvm-cov] Add a format option for the 'show' sub-command (mostly NFC)
llvm-svn: 273968
Diffstat (limited to 'llvm/tools')
-rw-r--r-- | llvm/tools/llvm-cov/CodeCoverage.cpp | 8 | ||||
-rw-r--r-- | llvm/tools/llvm-cov/CoverageViewOptions.h | 5 | ||||
-rw-r--r-- | llvm/tools/llvm-cov/SourceCoverageView.cpp | 7 |
3 files changed, 18 insertions, 2 deletions
diff --git a/llvm/tools/llvm-cov/CodeCoverage.cpp b/llvm/tools/llvm-cov/CodeCoverage.cpp index 6ca2141508a..7ba8bfaa9f3 100644 --- a/llvm/tools/llvm-cov/CodeCoverage.cpp +++ b/llvm/tools/llvm-cov/CodeCoverage.cpp @@ -399,6 +399,13 @@ int CodeCoverageTool::show(int argc, const char **argv, cl::desc("Show function instantiations"), cl::cat(ViewCategory)); + cl::opt<CoverageViewOptions::OutputFormat> ShowFormat( + "format", cl::desc("Output format for line-based coverage reports"), + cl::values(clEnumValN(CoverageViewOptions::OutputFormat::Text, "text", + "Text output"), + clEnumValEnd), + cl::init(CoverageViewOptions::OutputFormat::Text)); + auto Err = commandLineParser(argc, argv); if (Err) return Err; @@ -410,6 +417,7 @@ int CodeCoverageTool::show(int argc, const char **argv, ViewOpts.ShowLineStatsOrRegionMarkers = ShowBestLineRegionsCounts; ViewOpts.ShowExpandedRegions = ShowExpansions; ViewOpts.ShowFunctionInstantiations = ShowInstantiations; + ViewOpts.ShowFormat = ShowFormat; auto Coverage = load(); if (!Coverage) diff --git a/llvm/tools/llvm-cov/CoverageViewOptions.h b/llvm/tools/llvm-cov/CoverageViewOptions.h index 1208fad7917..93bc09ca9d8 100644 --- a/llvm/tools/llvm-cov/CoverageViewOptions.h +++ b/llvm/tools/llvm-cov/CoverageViewOptions.h @@ -16,6 +16,10 @@ namespace llvm { /// \brief The options for displaying the code coverage information. struct CoverageViewOptions { + enum class OutputFormat { + Text + }; + bool Debug; bool Colors; bool ShowLineNumbers; @@ -25,6 +29,7 @@ struct CoverageViewOptions { bool ShowExpandedRegions; bool ShowFunctionInstantiations; bool ShowFullFilenames; + OutputFormat ShowFormat; /// \brief Change the output's stream color if the colors are enabled. ColoredRawOstream colored_ostream(raw_ostream &OS, diff --git a/llvm/tools/llvm-cov/SourceCoverageView.cpp b/llvm/tools/llvm-cov/SourceCoverageView.cpp index 0c2a8878f3b..3309189a935 100644 --- a/llvm/tools/llvm-cov/SourceCoverageView.cpp +++ b/llvm/tools/llvm-cov/SourceCoverageView.cpp @@ -50,8 +50,11 @@ std::unique_ptr<SourceCoverageView> SourceCoverageView::create(StringRef SourceName, const MemoryBuffer &File, const CoverageViewOptions &Options, coverage::CoverageData &&CoverageInfo) { - return llvm::make_unique<SourceCoverageViewText>(SourceName, File, Options, - std::move(CoverageInfo)); + switch (Options.ShowFormat) { + case CoverageViewOptions::OutputFormat::Text: + return llvm::make_unique<SourceCoverageViewText>(SourceName, File, Options, + std::move(CoverageInfo)); + } } void SourceCoverageView::print(raw_ostream &OS, bool WholeFile, |