aboutsummaryrefslogtreecommitdiff
path: root/libjava/posix.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/posix.cc')
-rw-r--r--libjava/posix.cc10
1 files changed, 9 insertions, 1 deletions
diff --git a/libjava/posix.cc b/libjava/posix.cc
index 15fc9c5..e23eac2 100644
--- a/libjava/posix.cc
+++ b/libjava/posix.cc
@@ -71,7 +71,15 @@ _Jv_platform_nanotime ()
{
#ifdef HAVE_CLOCK_GETTIME
struct timespec now;
- if (clock_gettime (CLOCK_REALTIME, &now) == 0)
+ int id;
+#ifdef CLOCK_MONOTONIC
+ id = CLOCK_MONOTONIC;
+#elif defined (CLOCK_HIGHRES)
+ id = CLOCK_HIGHRES;
+#else
+ id = CLOCK_REALTIME;
+#endif
+ if (clock_gettime (id, &now) == 0)
{
jlong result = (jlong) now.tv_sec;
result = result * 1000 * 1000 + now.tv_nsec;