Turns out several external projects relied on llvm printing statistics
on exit. Let's go back to this behaviour by default and have an optional
parameter to disable it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@282532
91177308-0d34-0410-b5e6-
96231b3b80d8
static llvm::Statistic VARNAME = {DEBUG_TYPE, #VARNAME, DESC, {0}, false}
/// \brief Enable the collection and printing of statistics.
-void EnableStatistics();
+void EnableStatistics(bool PrintOnExit = true);
/// \brief Check if statistics are enabled.
bool AreStatisticsEnabled();
cl::desc("Display statistics as json data"));
static bool Enabled;
+static bool PrintOnExit;
namespace {
/// StatisticInfo - This class is used in a ManagedStatic so that it is created
// Print information when destroyed, iff command line option is specified.
StatisticInfo::~StatisticInfo() {
- if (::Stats)
+ if (::Stats || PrintOnExit)
llvm::PrintStatistics();
}
-void llvm::EnableStatistics() {
+void llvm::EnableStatistics(bool PrintOnExit) {
Enabled = true;
+ ::PrintOnExit = PrintOnExit;
}
bool llvm::AreStatisticsEnabled() {