mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-05-18 06:38:41 +00:00
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:
parent
4413672aa5
commit
87f28e87d7
@ -99,8 +99,8 @@ void TimingInfo::createTheTimeInfo() {
|
|||||||
// Constructed the first time this is called, iff -time-passes is enabled.
|
// Constructed the first time this is called, iff -time-passes is enabled.
|
||||||
// This guarantees that the object will be constructed before static globals,
|
// This guarantees that the object will be constructed before static globals,
|
||||||
// thus it will be destroyed before them.
|
// thus it will be destroyed before them.
|
||||||
static TimingInfo TTI;
|
static ManagedStatic<TimingInfo> TTI;
|
||||||
TheTimeInfo = &TTI;
|
TheTimeInfo = &*TTI;
|
||||||
}
|
}
|
||||||
|
|
||||||
void PMDebug::PrintArgumentInformation(const Pass *P) {
|
void PMDebug::PrintArgumentInformation(const Pass *P) {
|
||||||
|
@ -90,9 +90,10 @@ class TimingInfo {
|
|||||||
std::map<Pass*, Timer> TimingData;
|
std::map<Pass*, Timer> TimingData;
|
||||||
TimerGroup TG;
|
TimerGroup TG;
|
||||||
|
|
||||||
// Private ctor, must use 'create' member
|
|
||||||
TimingInfo() : TG("... Pass execution timing report ...") {}
|
|
||||||
public:
|
public:
|
||||||
|
// Use 'create' member to get this.
|
||||||
|
TimingInfo() : TG("... Pass execution timing report ...") {}
|
||||||
|
|
||||||
// TimingDtor - Print out information about timing information
|
// TimingDtor - Print out information about timing information
|
||||||
~TimingInfo() {
|
~TimingInfo() {
|
||||||
// Delete all of the timers...
|
// Delete all of the timers...
|
||||||
|
Loading…
x
Reference in New Issue
Block a user