16#include "llvm/Support/raw_ostream.h"
20 llvm::errs() <<
"\n*** LifetimeSafety Missing Origin per QualType: "
21 "(QualType : count) :\n\n";
22 unsigned TotalMissingOrigins = 0;
23 for (
const auto &[ExprType, MissingOriginCount] :
26 llvm::errs() << QT.
getAsString() <<
" : " << MissingOriginCount <<
'\n';
27 TotalMissingOrigins += MissingOriginCount;
29 llvm::errs() <<
"\n\n*** LifetimeSafety Missing Origin per StmtClassName: "
30 "(StmtClassName : count) :\n\n";
31 for (
const auto &[ExprStmtClassName, MissingOriginCount] :
33 llvm::errs() << ExprStmtClassName <<
" : " << MissingOriginCount <<
'\n';
35 llvm::errs() <<
"\nTotal missing origins: " << TotalMissingOrigins <<
"\n";
36 llvm::errs() <<
"\n****************************************\n";
C Language Family Type Representation.
A (possibly-)qualified type.
static std::string getAsString(SplitQualType split, const PrintingPolicy &Policy)
void printStats(const LifetimeSafetyStats &Stats)
Utility function to print missing origin stats.
A structure to hold the statistics related to LifetimeAnalysis.
llvm::StringMap< unsigned > ExprStmtClassToMissingOriginCount
A map from StmtClassName to their missing origin counts.
llvm::DenseMap< const clang::Type *, unsigned > ExprTypeToMissingOriginCount
A map from QualType to their missing origin counts.