diff --git a/indra/llcommon/llfasttimer.h b/indra/llcommon/llfasttimer.h index c6aa5f2195de4390ceb13d1a0d9aa9cc8b4cda45..c2f23f6ff66a7d85584923479a02483f456bcc2d 100644 --- a/indra/llcommon/llfasttimer.h +++ b/indra/llcommon/llfasttimer.h @@ -114,8 +114,9 @@ class LLFastTimer // recursive call to gather total time from children static void accumulateTimings(); - // called once per frame by LLFastTimer - static void processFrame(); + // updates cumulative times and hierarchy, + // can be called multiple times in a frame, at any point + static void processTimes(); static void buildHierarchy(); static void resetFrame(); @@ -178,8 +179,9 @@ class LLFastTimer { #if FAST_TIMER_ON NamedTimer::FrameState* frame_state = mFrameState; - frame_state->mLastStartTime = get_cpu_clock_count(); - mStartSelfTime = frame_state->mLastStartTime; + U64 cur_time = get_cpu_clock_count(); + frame_state->mLastStartTime = cur_time; + mStartSelfTime = cur_time; frame_state->mActiveCount++; frame_state->mCalls++;