diff src/os/bsd/vm/os_bsd.cpp @ 13025:3b32d287da89 hs25-b57

Merge
author amurillo
date Fri, 01 Nov 2013 08:26:54 -0700
parents e006d2e25bc7 e4f478e7781b
children 096c224171c4 c250880a6673 2b8e28fdf503 5656140324ed
line wrap: on
line diff
--- a/src/os/bsd/vm/os_bsd.cpp	Thu Oct 31 12:36:10 2013 -0700
+++ b/src/os/bsd/vm/os_bsd.cpp	Fri Nov 01 08:26:54 2013 -0700
@@ -945,17 +945,15 @@
 // Used by VMSelfDestructTimer and the MemProfiler.
 double os::elapsedTime() {
 
-  return (double)(os::elapsed_counter()) * 0.000001;
+  return ((double)os::elapsed_counter()) / os::elapsed_frequency();
 }
 
 jlong os::elapsed_counter() {
-  timeval time;
-  int status = gettimeofday(&time, NULL);
-  return jlong(time.tv_sec) * 1000 * 1000 + jlong(time.tv_usec) - initial_time_count;
+  return javaTimeNanos() - initial_time_count;
 }
 
 jlong os::elapsed_frequency() {
-  return (1000 * 1000);
+  return NANOSECS_PER_SEC; // nanosecond resolution
 }
 
 bool os::supports_vtime() { return true; }
@@ -3582,7 +3580,7 @@
   Bsd::_main_thread = pthread_self();
 
   Bsd::clock_init();
-  initial_time_count = os::elapsed_counter();
+  initial_time_count = javaTimeNanos();
 
 #ifdef __APPLE__
   // XXXDARWIN