forked from OSchip/llvm-project
[llvm-cov] Demangle names for hidden instantiation views
llvm-svn: 282020
This commit is contained in:
parent
c7cc93ad07
commit
e90797794f
|
@ -1,4 +1,8 @@
|
|||
// RUN: llvm-cov show %S/Inputs/templateInstantiations.covmapping -instr-profile %S/Inputs/templateInstantiations.profdata -Xdemangler sed -Xdemangler 's/_/X/g' -filename-equivalence %S/showTemplateInstantiations.cpp | FileCheck %s
|
||||
RUN: llvm-cov show %S/Inputs/templateInstantiations.covmapping -instr-profile %S/Inputs/templateInstantiations.profdata -Xdemangler sed -Xdemangler 's/_/X/g' -filename-equivalence %S/showTemplateInstantiations.cpp | FileCheck %s
|
||||
|
||||
// CHECK-DAG: XZ4funcIbEiTX
|
||||
// CHECK-DAG: XZ4funcIiEiTX
|
||||
// Check that we demangle names even if the sub-view will be hidden.
|
||||
RUN: llvm-profdata merge %S/Inputs/hideUnexecutedSubviews.proftext -o %t.profdata
|
||||
RUN: llvm-cov show %S/Inputs/templateInstantiations.covmapping -instr-profile %t.profdata -Xdemangler sed -Xdemangler 's/_/X/g' -filename-equivalence %S/showTemplateInstantiations.cpp | FileCheck %s
|
||||
|
||||
CHECK-DAG: XZ4funcIbEiTX
|
||||
CHECK-DAG: XZ4funcIiEiTX
|
||||
|
|
|
@ -236,12 +236,13 @@ CodeCoverageTool::createSourceFileView(StringRef SourceFile,
|
|||
for (const auto *Function : Coverage.getInstantiations(SourceFile)) {
|
||||
std::unique_ptr<SourceCoverageView> SubView{nullptr};
|
||||
|
||||
StringRef Funcname = getSymbolForHumans(Function->Name);
|
||||
|
||||
if (Function->ExecutionCount > 0) {
|
||||
auto SubViewCoverage = Coverage.getCoverageForFunction(*Function);
|
||||
auto SubViewExpansions = SubViewCoverage.getExpansions();
|
||||
SubView = SourceCoverageView::create(
|
||||
getSymbolForHumans(Function->Name), SourceBuffer.get(), ViewOpts,
|
||||
std::move(SubViewCoverage));
|
||||
Funcname, SourceBuffer.get(), ViewOpts, std::move(SubViewCoverage));
|
||||
attachExpansionSubViews(*SubView, SubViewExpansions, Coverage);
|
||||
}
|
||||
|
||||
|
@ -250,7 +251,7 @@ CodeCoverageTool::createSourceFileView(StringRef SourceFile,
|
|||
for (const auto &CR : Function->CountedRegions)
|
||||
if (CR.FileID == FileID)
|
||||
Line = std::max(CR.LineEnd, Line);
|
||||
View->addInstantiation(Function->Name, Line, std::move(SubView));
|
||||
View->addInstantiation(Funcname, Line, std::move(SubView));
|
||||
}
|
||||
return View;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue