//===-- Statistic.cpp - Easy way to expose stats information --------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
//
// This file implements the 'Statistic' class, which is designed to be an easy
// way to expose various success metrics from passes. These statistics are
#include "Support/Statistic.h"
#include "Support/CommandLine.h"
-#include <iostream>
#include <sstream>
+#include <iostream>
#include <algorithm>
+using namespace llvm;
// GetLibSupportInfoOutputFile - Return a file stream to print our output on...
-std::ostream *GetLibSupportInfoOutputFile();
-
-bool DebugFlag; // DebugFlag - Exported boolean set by the -debug option
+namespace llvm { extern std::ostream *GetLibSupportInfoOutputFile(); }
unsigned StatisticBase::NumStats = 0;
static cl::opt<bool>
Enabled("stats", cl::desc("Enable statistics output from program"));
-#ifndef NDEBUG
-// -debug - Command line option to enable the DEBUG statements in the passes.
-// This flag may only be enabled in debug builds.
-static cl::opt<bool, true>
-Debug("debug", cl::desc("Enable debug output"), cl::Hidden,
- cl::location(DebugFlag));
-#endif
-
struct StatRecord {
std::string Value;
const char *Name, *Desc;
- StatRecord(const std::string V, const char *N, const char *D)
+ StatRecord(const std::string &V, const char *N, const char *D)
: Value(V), Name(N), Desc(D) {}
bool operator<(const StatRecord &SR) const {