From 28b628ab7b92243a6e40fcdf87f4e2c5b44150e7 Mon Sep 17 00:00:00 2001 From: "Brad Payne (Vir Linden)" Date: Wed, 29 Dec 2010 10:03:33 -0500 Subject: allow run-time query of which timer function is being used --- indra/llcommon/llfasttimer_class.cpp | 26 +++++++++----------------- 1 file changed, 9 insertions(+), 17 deletions(-) mode change 100644 => 100755 indra/llcommon/llfasttimer_class.cpp (limited to 'indra/llcommon/llfasttimer_class.cpp') diff --git a/indra/llcommon/llfasttimer_class.cpp b/indra/llcommon/llfasttimer_class.cpp old mode 100644 new mode 100755 index 0828635881..bd594b06cf --- a/indra/llcommon/llfasttimer_class.cpp +++ b/indra/llcommon/llfasttimer_class.cpp @@ -860,6 +860,9 @@ U64 LLFastTimer::getCPUClockCount64() } return ret_val; } + +std::string LLFastTimer::sClockType = "rdtsc"; + #else //LL_COMMON_API U64 get_clock_count(); // in lltimer.cpp // These use QueryPerformanceCounter, which is arguably fine and also works on amd architectures. @@ -872,6 +875,8 @@ U64 LLFastTimer::getCPUClockCount64() { return get_clock_count(); } + +std::string LLFastTimer::sClockType = "QueryPerformanceCounter"; #endif #endif @@ -904,6 +909,9 @@ U32 LLFastTimer::getCPUClockCount32() { return (U32)(LLFastTimer::getCPUClockCount64() >> 8); } + +std::string LLFastTimer::sClockType = "clock_gettime"; + #endif // (LL_LINUX || LL_SOLARIS) && !(defined(__i386__) || defined(__amd64__)) @@ -923,23 +931,7 @@ U64 LLFastTimer::getCPUClockCount64() __asm__ volatile (".byte 0x0f, 0x31": "=A"(x)); return x; } -#endif - - -#if ( LL_DARWIN && !(defined(__i386__) || defined(__amd64__))) -// -// Mac PPC (deprecated) implementation of CPU clock -// -// Just use gettimeofday implementation for now -U32 LLFastTimer::getCPUClockCount32() -{ - return (U32)(get_clock_count()>>8); -} - -U64 LLFastTimer::getCPUClockCount64() -{ - return get_clock_count(); -} +std::string LLFastTimer::sClockType = "rdtsc"; #endif -- cgit v1.2.3