Add a cc1 "dump-coverage-mapping" for testing coverage mapping.
Differential Revision: http://reviews.llvm.org/D4799 llvm-svn: 215258
This commit is contained in:
@@ -3198,10 +3198,20 @@ void CodeGenModule::ClearUnusedCoverageMapping(const Decl *D) {
|
||||
}
|
||||
|
||||
void CodeGenModule::EmitDeferredUnusedCoverageMappings() {
|
||||
std::vector<const Decl *> DeferredDecls;
|
||||
for (const auto I : DeferredEmptyCoverageMappingDecls) {
|
||||
if (!I.second)
|
||||
continue;
|
||||
const auto *D = I.first;
|
||||
DeferredDecls.push_back(I.first);
|
||||
}
|
||||
// Sort the declarations by their location to make sure that the tests get a
|
||||
// predictable order for the coverage mapping for the unused declarations.
|
||||
if (CodeGenOpts.DumpCoverageMapping)
|
||||
std::sort(DeferredDecls.begin(), DeferredDecls.end(),
|
||||
[] (const Decl *LHS, const Decl *RHS) {
|
||||
return LHS->getLocStart() < RHS->getLocStart();
|
||||
});
|
||||
for (const auto *D : DeferredDecls) {
|
||||
switch (D->getKind()) {
|
||||
case Decl::CXXConversion:
|
||||
case Decl::CXXMethod:
|
||||
|
||||
Reference in New Issue
Block a user