Append to the ActiveTimers std::vector before looking at the timer instead
authorDan Gohman <gohman@apple.com>
Tue, 24 Jun 2008 22:07:07 +0000 (22:07 +0000)
committerDan Gohman <gohman@apple.com>
Tue, 24 Jun 2008 22:07:07 +0000 (22:07 +0000)
of after, so that any reallocation it does doesn't get counted for the pass
being timed.  This probably doesn't account for a timing discrepancy I was
looking into, but I'm fixing it anyway.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52693 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Support/Timer.cpp

index 9cbb3c705c5471b5f187f4099ef362051511d256..c8678d3ae2c7aed524c55fa93c6ede193f4f80ec 100644 (file)
@@ -132,13 +132,13 @@ static ManagedStatic<std::vector<Timer*> > ActiveTimers;
 
 void Timer::startTimer() {
   Started = true;
+  ActiveTimers->push_back(this);
   TimeRecord TR = getTimeRecord(true);
   Elapsed    -= TR.Elapsed;
   UserTime   -= TR.UserTime;
   SystemTime -= TR.SystemTime;
   MemUsed    -= TR.MemUsed;
   PeakMemBase = TR.MemUsed;
-  ActiveTimers->push_back(this);
 }
 
 void Timer::stopTimer() {