fix PR1039 by making timing info be destroyed by llvm_shutdown, not by

static dtors.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32411 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2006-12-10 07:40:46 +00:00
parent 4413672aa5
commit 87f28e87d7
2 changed files with 5 additions and 4 deletions

View File

@ -99,8 +99,8 @@ void TimingInfo::createTheTimeInfo() {
// Constructed the first time this is called, iff -time-passes is enabled.
// This guarantees that the object will be constructed before static globals,
// thus it will be destroyed before them.
static TimingInfo TTI;
TheTimeInfo = &TTI;
static ManagedStatic<TimingInfo> TTI;
TheTimeInfo = &*TTI;
}
void PMDebug::PrintArgumentInformation(const Pass *P) {

View File

@ -90,9 +90,10 @@ class TimingInfo {
std::map<Pass*, Timer> TimingData;
TimerGroup TG;
// Private ctor, must use 'create' member
TimingInfo() : TG("... Pass execution timing report ...") {}
public:
// Use 'create' member to get this.
TimingInfo() : TG("... Pass execution timing report ...") {}
// TimingDtor - Print out information about timing information
~TimingInfo() {
// Delete all of the timers...