summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-cov/SourceCoverageViewText.cpp
diff options
context:
space:
mode:
authorVedant Kumar <vsk@apple.com>2016-06-26 02:45:13 +0000
committerVedant Kumar <vsk@apple.com>2016-06-26 02:45:13 +0000
commit861a19c294e257e9be59c814298016e2d3b7a842 (patch)
tree6239e6ffdaa93f1d1df648d79f41c8f38c8b3dde /llvm/tools/llvm-cov/SourceCoverageViewText.cpp
parent9a2e979b3d9fdcf119cff567d87d1bea6ba5f46f (diff)
downloadbcm5719-llvm-861a19c294e257e9be59c814298016e2d3b7a842.tar.gz
bcm5719-llvm-861a19c294e257e9be59c814298016e2d3b7a842.zip
[llvm-cov] Simplify the way expansion views are rendered (NFC)
If a sub-view has already been rendered, it's helpful to re-render the expansion site before rendering the next expansion view. Make this fact explicit in the rendering interface, instead of hiding it behind an awkward Optional<LineRef> parameter. llvm-svn: 273789
Diffstat (limited to 'llvm/tools/llvm-cov/SourceCoverageViewText.cpp')
-rw-r--r--llvm/tools/llvm-cov/SourceCoverageViewText.cpp27
1 files changed, 10 insertions, 17 deletions
diff --git a/llvm/tools/llvm-cov/SourceCoverageViewText.cpp b/llvm/tools/llvm-cov/SourceCoverageViewText.cpp
index e02f4b1ae42..0757a4ebd95 100644
--- a/llvm/tools/llvm-cov/SourceCoverageViewText.cpp
+++ b/llvm/tools/llvm-cov/SourceCoverageViewText.cpp
@@ -12,6 +12,7 @@
//===----------------------------------------------------------------------===//
#include "SourceCoverageViewText.h"
+#include "llvm/ADT/Optional.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/ADT/StringExtras.h"
@@ -156,37 +157,29 @@ void SourceCoverageViewText::renderRegionMarkers(
<< formatCount(S->Count) << (S->IsRegionEntry ? "\n" : " (pop)\n");
}
-unsigned SourceCoverageViewText::renderExpansionView(
- raw_ostream &OS, ExpansionView &ESV, Optional<LineRef> FirstLine,
+void SourceCoverageViewText::renderExpansionSite(
+ raw_ostream &OS, ExpansionView &ESV, LineRef L,
const coverage::CoverageSegment *WrappedSegment,
CoverageSegmentArray Segments, unsigned ExpansionCol, unsigned ViewDepth) {
- unsigned NextExpansionCol = ExpansionCol;
-
- if (FirstLine.hasValue()) {
- // Re-render the current line and highlight the expansion range for
- // this subview.
- NextExpansionCol = ESV.getStartCol();
- renderLinePrefix(OS, ViewDepth);
- OS.indent(getCombinedColumnWidth(getOptions()) + (ViewDepth == 0 ? 0 : 1));
- renderLine(OS, *FirstLine, WrappedSegment, Segments, ExpansionCol,
- ViewDepth);
- renderViewDivider(OS, ViewDepth + 1);
- }
+ renderLinePrefix(OS, ViewDepth);
+ OS.indent(getCombinedColumnWidth(getOptions()) + (ViewDepth == 0 ? 0 : 1));
+ renderLine(OS, L, WrappedSegment, Segments, ExpansionCol, ViewDepth);
+}
+void SourceCoverageViewText::renderExpansionView(raw_ostream &OS,
+ ExpansionView &ESV,
+ unsigned ViewDepth) {
// Render the child subview.
if (getOptions().Debug)
errs() << "Expansion at line " << ESV.getLine() << ", " << ESV.getStartCol()
<< " -> " << ESV.getEndCol() << '\n';
ESV.View->print(OS, /*WholeFile=*/false, /*ShowSourceName=*/false,
ViewDepth + 1);
-
- return NextExpansionCol;
}
void SourceCoverageViewText::renderInstantiationView(raw_ostream &OS,
InstantiationView &ISV,
unsigned ViewDepth) {
- renderViewDivider(OS, ViewDepth);
renderLinePrefix(OS, ViewDepth);
OS << ' ';
ISV.View->print(OS, /*WholeFile=*/false, /*ShowSourceName=*/true, ViewDepth);
OpenPOWER on IntegriCloud