mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-25 20:23:11 +01:00
80a27c3a17
Summary: Documentation says that user can specify sources for both "show" and "report" commands. "Show" command respects specified sources, but "report" does not. It is useful to have both "show" and "report" generated for specified sources. Also added tests to for both commands with sources specified. Reviewers: vsk, kcc Reviewed By: vsk Differential Revision: https://reviews.llvm.org/D38860 llvm-svn: 315685
62 lines
2.2 KiB
C++
62 lines
2.2 KiB
C++
//===- CoverageReport.h - Code coverage report ---------------------------===//
|
|
//
|
|
// The LLVM Compiler Infrastructure
|
|
//
|
|
// This file is distributed under the University of Illinois Open Source
|
|
// License. See LICENSE.TXT for details.
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
//
|
|
// This class implements rendering of a code coverage report.
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
#ifndef LLVM_COV_COVERAGEREPORT_H
|
|
#define LLVM_COV_COVERAGEREPORT_H
|
|
|
|
#include "CoverageFilters.h"
|
|
#include "CoverageSummaryInfo.h"
|
|
#include "CoverageViewOptions.h"
|
|
|
|
namespace llvm {
|
|
|
|
/// \brief Displays the code coverage report.
|
|
class CoverageReport {
|
|
const CoverageViewOptions &Options;
|
|
const coverage::CoverageMapping &Coverage;
|
|
|
|
void render(const FileCoverageSummary &File, raw_ostream &OS) const;
|
|
void render(const FunctionCoverageSummary &Function, const DemangleCache &DC,
|
|
raw_ostream &OS) const;
|
|
|
|
public:
|
|
CoverageReport(const CoverageViewOptions &Options,
|
|
const coverage::CoverageMapping &Coverage)
|
|
: Options(Options), Coverage(Coverage) {}
|
|
|
|
void renderFunctionReports(ArrayRef<std::string> Files,
|
|
const DemangleCache &DC, 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<std::string> Files,
|
|
const CoverageViewOptions &Options,
|
|
const CoverageFilter &Filters = CoverageFiltersMatchAll());
|
|
|
|
/// 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<std::string> Files) const;
|
|
|
|
/// Render file reports for the files specified in \p Files and the functions
|
|
/// in \p Filters.
|
|
void renderFileReports(raw_ostream &OS, ArrayRef<std::string> Files,
|
|
const CoverageFiltersMatchAll &Filters) const;
|
|
};
|
|
|
|
} // end namespace llvm
|
|
|
|
#endif // LLVM_COV_COVERAGEREPORT_H
|