diff options
author | Gabor Greif <ggreif@gmail.com> | 2014-08-08 18:01:19 +0200 |
---|---|---|
committer | Gabor Greif <ggreif@gmail.com> | 2014-08-08 18:01:19 +0200 |
commit | 5f003d228340c3ce8e500f9053f353c58dc1dc94 (patch) | |
tree | a855b0f173ff635b48354e1136ef6cbb2a1214a4 /rts/posix/GetTime.c | |
parent | ff9c5570395bcacf8963149b3a8475f5644ce694 (diff) | |
parent | dff0623d5ab13222c06b3ff6b32793e05b417970 (diff) | |
download | haskell-wip/generics-propeq.tar.gz |
Merge branch 'master' into wip/generics-propeqwip/generics-propeq
Conflicts:
compiler/typecheck/TcGenGenerics.lhs
Diffstat (limited to 'rts/posix/GetTime.c')
-rw-r--r-- | rts/posix/GetTime.c | 51 |
1 files changed, 33 insertions, 18 deletions
diff --git a/rts/posix/GetTime.c b/rts/posix/GetTime.c index 380e22931b..d44fc9a566 100644 --- a/rts/posix/GetTime.c +++ b/rts/posix/GetTime.c @@ -50,7 +50,11 @@ void initializeTimer() Time getProcessCPUTime(void) { -#if !defined(BE_CONSERVATIVE) && defined(HAVE_CLOCK_GETTIME) && defined (_SC_CPUTIME) && defined(CLOCK_PROCESS_CPUTIME_ID) && defined(HAVE_SYSCONF) +#if !defined(BE_CONSERVATIVE) && \ + defined(HAVE_CLOCK_GETTIME) && \ + defined(_SC_CPUTIME) && \ + defined(CLOCK_PROCESS_CPUTIME_ID) && \ + defined(HAVE_SYSCONF) static int checked_sysconf = 0; static int sysconf_result = 0; @@ -129,7 +133,7 @@ Time getProcessCPUTime(void) #if !defined(THREADED_RTS) && USE_PAPI long long usec; if ((usec = PAPI_get_virt_usec()) < 0) { - barf("PAPI_get_virt_usec: %lld", usec); + barf("PAPI_get_virt_usec: %lld", usec); } return USToTime(usec); #else @@ -152,22 +156,22 @@ void getProcessTimes(Time *user, Time *elapsed) if (ClockFreq == 0) { #if defined(HAVE_SYSCONF) - long ticks; - ticks = sysconf(_SC_CLK_TCK); - if ( ticks == -1 ) { - sysErrorBelch("sysconf"); - stg_exit(EXIT_FAILURE); - } - ClockFreq = ticks; -#elif defined(CLK_TCK) /* defined by POSIX */ - ClockFreq = CLK_TCK; + long ticks; + ticks = sysconf(_SC_CLK_TCK); + if ( ticks == -1 ) { + sysErrorBelch("sysconf"); + stg_exit(EXIT_FAILURE); + } + ClockFreq = ticks; +#elif defined(CLK_TCK) /* defined by POSIX */ + ClockFreq = CLK_TCK; #elif defined(HZ) - ClockFreq = HZ; + ClockFreq = HZ; #elif defined(CLOCKS_PER_SEC) - ClockFreq = CLOCKS_PER_SEC; + ClockFreq = CLOCKS_PER_SEC; #else - errorBelch("can't get clock resolution"); - stg_exit(EXIT_FAILURE); + errorBelch("can't get clock resolution"); + stg_exit(EXIT_FAILURE); #endif } @@ -184,15 +188,19 @@ Time getThreadCPUTime(void) #if USE_PAPI long long usec; if ((usec = PAPI_get_virt_usec()) < 0) { - barf("PAPI_get_virt_usec: %lld", usec); + barf("PAPI_get_virt_usec: %lld", usec); } return USToTime(usec); -#elif !defined(BE_CONSERVATIVE) && defined(HAVE_CLOCK_GETTIME) && defined (_SC_THREAD_CPUTIME) && defined(CLOCK_THREAD_CPUTIME_ID) && defined(HAVE_SYSCONF) +#elif !defined(BE_CONSERVATIVE) && \ + defined(HAVE_CLOCK_GETTIME) && \ + defined(_SC_CPUTIME) && \ + defined(CLOCK_PROCESS_CPUTIME_ID) && \ + defined(HAVE_SYSCONF) { static int checked_sysconf = 0; static int sysconf_result = 0; - + if (!checked_sysconf) { sysconf_result = sysconf(_SC_THREAD_CPUTIME); checked_sysconf = 1; @@ -240,3 +248,10 @@ getPageFaults(void) #endif } +// Local Variables: +// mode: C +// fill-column: 80 +// indent-tabs-mode: nil +// c-basic-offset: 4 +// buffer-file-coding-system: utf-8-unix +// End: |