diff options
23 files changed, 63 insertions, 63 deletions
diff --git a/libcxx/include/__mutex_base b/libcxx/include/__mutex_base index 554ec3f16bd..d3b2a1be62c 100644 --- a/libcxx/include/__mutex_base +++ b/libcxx/include/__mutex_base @@ -382,11 +382,11 @@ condition_variable::wait_for(unique_lock<mutex>& __lk, const chrono::duration<_Rep, _Period>& __d) { using namespace chrono; - system_clock::time_point __s_now = system_clock::now(); - monotonic_clock::time_point __c_now = monotonic_clock::now(); + system_clock::time_point __s_now = system_clock::now(); + steady_clock::time_point __c_now = steady_clock::now(); __do_timed_wait(__lk, __s_now + __ceil<nanoseconds>(__d)); - return monotonic_clock::now() - __c_now < __d ? cv_status::no_timeout : - cv_status::timeout; + return steady_clock::now() - __c_now < __d ? cv_status::no_timeout : + cv_status::timeout; } template <class _Rep, class _Period, class _Predicate> @@ -396,7 +396,7 @@ condition_variable::wait_for(unique_lock<mutex>& __lk, const chrono::duration<_Rep, _Period>& __d, _Predicate __pred) { - return wait_until(__lk, chrono::monotonic_clock::now() + __d, + return wait_until(__lk, chrono::steady_clock::now() + __d, _STD::move(__pred)); } diff --git a/libcxx/include/chrono b/libcxx/include/chrono index d41b88f1e61..97b0c816d33 100644 --- a/libcxx/include/chrono +++ b/libcxx/include/chrono @@ -223,26 +223,26 @@ public: typedef duration::rep rep; typedef duration::period period; typedef chrono::time_point<system_clock> time_point; - static const bool is_monotonic = false; + static const bool is_steady = false; static time_point now(); static time_t to_time_t (const time_point& __t); static time_point from_time_t(time_t __t); }; -class monotonic_clock +class steady_clock { public: typedef nanoseconds duration; typedef duration::rep rep; typedef duration::period period; - typedef chrono::time_point<monotonic_clock, duration> time_point; - static const bool is_monotonic = true; + typedef chrono::time_point<steady_clock, duration> time_point; + static const bool is_steady = true; static time_point now(); }; -typedef monotonic_clock high_resolution_clock; +typedef steady_clock high_resolution_clock; } // chrono @@ -843,26 +843,26 @@ public: typedef duration::rep rep; typedef duration::period period; typedef chrono::time_point<system_clock> time_point; - static const bool is_monotonic = false; + static const bool is_steady = false; static time_point now(); static time_t to_time_t (const time_point& __t); static time_point from_time_t(time_t __t); }; -class _LIBCPP_VISIBLE monotonic_clock +class _LIBCPP_VISIBLE steady_clock { public: typedef nanoseconds duration; typedef duration::rep rep; typedef duration::period period; - typedef chrono::time_point<monotonic_clock, duration> time_point; - static const bool is_monotonic = true; + typedef chrono::time_point<steady_clock, duration> time_point; + static const bool is_steady = true; static time_point now(); }; -typedef monotonic_clock high_resolution_clock; +typedef steady_clock high_resolution_clock; } // chrono diff --git a/libcxx/include/condition_variable b/libcxx/include/condition_variable index 682fb458286..124d3880bd1 100644 --- a/libcxx/include/condition_variable +++ b/libcxx/include/condition_variable @@ -232,7 +232,7 @@ cv_status condition_variable_any::wait_for(_Lock& __lock, const chrono::duration<_Rep, _Period>& __d) { - return wait_until(__lock, chrono::monotonic_clock::now() + __d); + return wait_until(__lock, chrono::steady_clock::now() + __d); } template <class _Lock, class _Rep, class _Period, class _Predicate> @@ -242,7 +242,7 @@ condition_variable_any::wait_for(_Lock& __lock, const chrono::duration<_Rep, _Period>& __d, _Predicate __pred) { - return wait_until(__lock, chrono::monotonic_clock::now() + __d, + return wait_until(__lock, chrono::steady_clock::now() + __d, _STD::move(__pred)); } diff --git a/libcxx/include/future b/libcxx/include/future index 55b0ead8f10..be975f48841 100644 --- a/libcxx/include/future +++ b/libcxx/include/future @@ -603,7 +603,7 @@ inline _LIBCPP_INLINE_VISIBILITY future_status __assoc_sub_state::wait_for(const chrono::duration<_Rep, _Period>& __rel_time) const { - return wait_until(chrono::monotonic_clock::now() + __rel_time); + return wait_until(chrono::steady_clock::now() + __rel_time); } template <class _R> diff --git a/libcxx/include/mutex b/libcxx/include/mutex index 45ce66969d0..c87d0fdaecb 100644 --- a/libcxx/include/mutex +++ b/libcxx/include/mutex @@ -221,7 +221,7 @@ public: template <class _Rep, class _Period> _LIBCPP_INLINE_VISIBILITY bool try_lock_for(const chrono::duration<_Rep, _Period>& __d) - {return try_lock_until(chrono::monotonic_clock::now() + __d);} + {return try_lock_until(chrono::steady_clock::now() + __d);} template <class _Clock, class _Duration> bool try_lock_until(const chrono::time_point<_Clock, _Duration>& __t); void unlock(); @@ -264,7 +264,7 @@ public: template <class _Rep, class _Period> _LIBCPP_INLINE_VISIBILITY bool try_lock_for(const chrono::duration<_Rep, _Period>& __d) - {return try_lock_until(chrono::monotonic_clock::now() + __d);} + {return try_lock_until(chrono::steady_clock::now() + __d);} template <class _Clock, class _Duration> bool try_lock_until(const chrono::time_point<_Clock, _Duration>& __t); void unlock(); diff --git a/libcxx/include/thread b/libcxx/include/thread index fe671b25632..abb56f4cb6c 100644 --- a/libcxx/include/thread +++ b/libcxx/include/thread @@ -406,10 +406,10 @@ sleep_until(const chrono::time_point<_Clock, _Duration>& __t) template <class _Duration> inline _LIBCPP_INLINE_VISIBILITY void -sleep_until(const chrono::time_point<chrono::monotonic_clock, _Duration>& __t) +sleep_until(const chrono::time_point<chrono::steady_clock, _Duration>& __t) { using namespace chrono; - sleep_for(__t - monotonic_clock::now()); + sleep_for(__t - steady_clock::now()); } inline _LIBCPP_INLINE_VISIBILITY diff --git a/libcxx/src/chrono.cpp b/libcxx/src/chrono.cpp index fe3c3f60320..c3714208b5c 100644 --- a/libcxx/src/chrono.cpp +++ b/libcxx/src/chrono.cpp @@ -44,7 +44,7 @@ system_clock::from_time_t(time_t t) return system_clock::time_point(seconds(t)); } -// monotonic_clock +// steady_clock #if __APPLE__ // mach_absolute_time() * MachInfo.numer / MachInfo.denom is the number of @@ -58,15 +58,15 @@ system_clock::from_time_t(time_t t) #pragma GCC visibility push(hidden) static -monotonic_clock::rep -monotonic_simplified() +steady_clock::rep +steady_simplified() { return mach_absolute_time(); } static double -compute_monotonic_factor() +compute_steady_factor() { mach_timebase_info_data_t MachInfo; mach_timebase_info(&MachInfo); @@ -74,32 +74,32 @@ compute_monotonic_factor() } static -monotonic_clock::rep -monotonic_full() +steady_clock::rep +steady_full() { - static const double factor = compute_monotonic_factor(); - return static_cast<monotonic_clock::rep>(mach_absolute_time() * factor); + static const double factor = compute_steady_factor(); + return static_cast<steady_clock::rep>(mach_absolute_time() * factor); } -typedef monotonic_clock::rep (*FP)(); +typedef steady_clock::rep (*FP)(); static FP -init_monotonic_clock() +init_steady_clock() { mach_timebase_info_data_t MachInfo; mach_timebase_info(&MachInfo); if (MachInfo.numer == MachInfo.denom) - return &monotonic_simplified; - return &monotonic_full; + return &steady_simplified; + return &steady_full; } #pragma GCC visibility pop -monotonic_clock::time_point -monotonic_clock::now() +steady_clock::time_point +steady_clock::now() { - static FP fp = init_monotonic_clock(); + static FP fp = init_steady_clock(); return time_point(duration(fp())); } @@ -109,12 +109,12 @@ monotonic_clock::now() // _POSIX_MONOTONIC_CLOCK and fall back to something else if those // don't exist. -// Warning: If this is not truly monotonic, then it is non-conforming. It is +// Warning: If this is not truly steady, then it is non-conforming. It is // better for it to not exist and have the rest of libc++ use system_clock // instead. -monotonic_clock::time_point -monotonic_clock::now() +steady_clock::time_point +steady_clock::now() { struct timespec tp; if (0 != clock_gettime(CLOCK_MONOTONIC, &tp)) diff --git a/libcxx/test/thread/thread.condition/thread.condition.condvar/wait_until.pass.cpp b/libcxx/test/thread/thread.condition/thread.condition.condvar/wait_until.pass.cpp index 12524c2e19e..2fa6345efb0 100644 --- a/libcxx/test/thread/thread.condition/thread.condition.condvar/wait_until.pass.cpp +++ b/libcxx/test/thread/thread.condition/thread.condition.condvar/wait_until.pass.cpp @@ -28,13 +28,13 @@ struct Clock typedef duration::rep rep; typedef duration::period period; typedef std::chrono::time_point<Clock> time_point; - static const bool is_monotonic = true; + static const bool is_steady = true; static time_point now() { using namespace std::chrono; return time_point(duration_cast<duration>( - monotonic_clock::now().time_since_epoch() + steady_clock::now().time_since_epoch() )); } }; diff --git a/libcxx/test/thread/thread.condition/thread.condition.condvar/wait_until_pred.pass.cpp b/libcxx/test/thread/thread.condition/thread.condition.condvar/wait_until_pred.pass.cpp index 070087c3786..c9efb8d9cd6 100644 --- a/libcxx/test/thread/thread.condition/thread.condition.condvar/wait_until_pred.pass.cpp +++ b/libcxx/test/thread/thread.condition/thread.condition.condvar/wait_until_pred.pass.cpp @@ -29,13 +29,13 @@ struct Clock typedef duration::rep rep; typedef duration::period period; typedef std::chrono::time_point<Clock> time_point; - static const bool is_monotonic = true; + static const bool is_steady = true; static time_point now() { using namespace std::chrono; return time_point(duration_cast<duration>( - monotonic_clock::now().time_since_epoch() + steady_clock::now().time_since_epoch() )); } }; diff --git a/libcxx/test/thread/thread.condition/thread.condition.condvarany/wait_until.pass.cpp b/libcxx/test/thread/thread.condition/thread.condition.condvarany/wait_until.pass.cpp index 051447966de..7b21660c162 100644 --- a/libcxx/test/thread/thread.condition/thread.condition.condvarany/wait_until.pass.cpp +++ b/libcxx/test/thread/thread.condition/thread.condition.condvarany/wait_until.pass.cpp @@ -27,13 +27,13 @@ struct Clock typedef duration::rep rep; typedef duration::period period; typedef std::chrono::time_point<Clock> time_point; - static const bool is_monotonic = true; + static const bool is_steady = true; static time_point now() { using namespace std::chrono; return time_point(duration_cast<duration>( - monotonic_clock::now().time_since_epoch() + steady_clock::now().time_since_epoch() )); } }; diff --git a/libcxx/test/thread/thread.condition/thread.condition.condvarany/wait_until_pred.pass.cpp b/libcxx/test/thread/thread.condition/thread.condition.condvarany/wait_until_pred.pass.cpp index 8b025a2ef0c..7c3493198d2 100644 --- a/libcxx/test/thread/thread.condition/thread.condition.condvarany/wait_until_pred.pass.cpp +++ b/libcxx/test/thread/thread.condition/thread.condition.condvarany/wait_until_pred.pass.cpp @@ -29,13 +29,13 @@ struct Clock typedef duration::rep rep; typedef duration::period period; typedef std::chrono::time_point<Clock> time_point; - static const bool is_monotonic = true; + static const bool is_steady = true; static time_point now() { using namespace std::chrono; return time_point(duration_cast<duration>( - monotonic_clock::now().time_since_epoch() + steady_clock::now().time_since_epoch() )); } }; diff --git a/libcxx/test/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_duration.pass.cpp b/libcxx/test/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_duration.pass.cpp index 7bf37470689..137c913e2c6 100644 --- a/libcxx/test/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_duration.pass.cpp +++ b/libcxx/test/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_duration.pass.cpp @@ -21,7 +21,7 @@ std::timed_mutex m; -typedef std::chrono::monotonic_clock Clock; +typedef std::chrono::steady_clock Clock; typedef Clock::time_point time_point; typedef Clock::duration duration; typedef std::chrono::milliseconds ms; diff --git a/libcxx/test/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_time_point.pass.cpp b/libcxx/test/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_time_point.pass.cpp index 0bdfc565ed5..21ee88d79db 100644 --- a/libcxx/test/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_time_point.pass.cpp +++ b/libcxx/test/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_time_point.pass.cpp @@ -21,7 +21,7 @@ std::timed_mutex m; -typedef std::chrono::monotonic_clock Clock; +typedef std::chrono::steady_clock Clock; typedef Clock::time_point time_point; typedef Clock::duration duration; typedef std::chrono::milliseconds ms; diff --git a/libcxx/test/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock_until.pass.cpp b/libcxx/test/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock_until.pass.cpp index b8c25d688ff..2b435e06f51 100644 --- a/libcxx/test/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock_until.pass.cpp +++ b/libcxx/test/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock_until.pass.cpp @@ -36,7 +36,7 @@ mutex m; int main() { - typedef std::chrono::monotonic_clock Clock; + typedef std::chrono::steady_clock Clock; std::unique_lock<mutex> lk(m, std::defer_lock); assert(lk.try_lock_until(Clock::now()) == true); assert(try_lock_until_called == true); diff --git a/libcxx/test/thread/thread.mutex/thread.timedmutex.requirements/thread.timedmutex.class/try_lock_for.pass.cpp b/libcxx/test/thread/thread.mutex/thread.timedmutex.requirements/thread.timedmutex.class/try_lock_for.pass.cpp index 3cd0775c969..1253659e211 100644 --- a/libcxx/test/thread/thread.mutex/thread.timedmutex.requirements/thread.timedmutex.class/try_lock_for.pass.cpp +++ b/libcxx/test/thread/thread.mutex/thread.timedmutex.requirements/thread.timedmutex.class/try_lock_for.pass.cpp @@ -21,7 +21,7 @@ std::timed_mutex m; -typedef std::chrono::monotonic_clock Clock; +typedef std::chrono::steady_clock Clock; typedef Clock::time_point time_point; typedef Clock::duration duration; typedef std::chrono::milliseconds ms; diff --git a/libcxx/test/thread/thread.mutex/thread.timedmutex.requirements/thread.timedmutex.class/try_lock_until.pass.cpp b/libcxx/test/thread/thread.mutex/thread.timedmutex.requirements/thread.timedmutex.class/try_lock_until.pass.cpp index 147fae16d73..ac70d4a98e6 100644 --- a/libcxx/test/thread/thread.mutex/thread.timedmutex.requirements/thread.timedmutex.class/try_lock_until.pass.cpp +++ b/libcxx/test/thread/thread.mutex/thread.timedmutex.requirements/thread.timedmutex.class/try_lock_until.pass.cpp @@ -21,7 +21,7 @@ std::timed_mutex m; -typedef std::chrono::monotonic_clock Clock; +typedef std::chrono::steady_clock Clock; typedef Clock::time_point time_point; typedef Clock::duration duration; typedef std::chrono::milliseconds ms; diff --git a/libcxx/test/thread/thread.mutex/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock_for.pass.cpp b/libcxx/test/thread/thread.mutex/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock_for.pass.cpp index 7214a244ad1..972fc637f04 100644 --- a/libcxx/test/thread/thread.mutex/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock_for.pass.cpp +++ b/libcxx/test/thread/thread.mutex/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock_for.pass.cpp @@ -21,7 +21,7 @@ std::recursive_timed_mutex m; -typedef std::chrono::monotonic_clock Clock; +typedef std::chrono::steady_clock Clock; typedef Clock::time_point time_point; typedef Clock::duration duration; typedef std::chrono::milliseconds ms; diff --git a/libcxx/test/thread/thread.mutex/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock_until.pass.cpp b/libcxx/test/thread/thread.mutex/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock_until.pass.cpp index aa66c7772f0..bfda9edced3 100644 --- a/libcxx/test/thread/thread.mutex/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock_until.pass.cpp +++ b/libcxx/test/thread/thread.mutex/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock_until.pass.cpp @@ -21,7 +21,7 @@ std::recursive_timed_mutex m; -typedef std::chrono::monotonic_clock Clock; +typedef std::chrono::steady_clock Clock; typedef Clock::time_point time_point; typedef Clock::duration duration; typedef std::chrono::milliseconds ms; diff --git a/libcxx/test/utilities/time/clock.h b/libcxx/test/utilities/time/clock.h index 8490188aca7..ec99f26dd3f 100644 --- a/libcxx/test/utilities/time/clock.h +++ b/libcxx/test/utilities/time/clock.h @@ -9,7 +9,7 @@ class Clock typedef duration::rep rep; typedef duration::period period; typedef std::chrono::time_point<Clock, duration> time_point; - static const bool is_monotonic = false; + static const bool is_steady = false; static time_point now(); }; diff --git a/libcxx/test/utilities/time/time.clock/time.clock.hires/consistency.pass.cpp b/libcxx/test/utilities/time/time.clock/time.clock.hires/consistency.pass.cpp index cd7067dddc6..e761c96e4ce 100644 --- a/libcxx/test/utilities/time/time.clock/time.clock.hires/consistency.pass.cpp +++ b/libcxx/test/utilities/time/time.clock/time.clock.hires/consistency.pass.cpp @@ -21,5 +21,5 @@ int main() static_assert((std::is_same<C::rep, C::duration::rep>::value), ""); static_assert((std::is_same<C::period, C::duration::period>::value), ""); static_assert((std::is_same<C::duration, C::time_point::duration>::value), ""); - static_assert(C::is_monotonic || !C::is_monotonic, ""); + static_assert(C::is_steady || !C::is_steady, ""); } diff --git a/libcxx/test/utilities/time/time.clock/time.clock.monotonic/consistency.pass.cpp b/libcxx/test/utilities/time/time.clock/time.clock.monotonic/consistency.pass.cpp index 66d81cd5dda..a325fa24529 100644 --- a/libcxx/test/utilities/time/time.clock/time.clock.monotonic/consistency.pass.cpp +++ b/libcxx/test/utilities/time/time.clock/time.clock.monotonic/consistency.pass.cpp @@ -9,7 +9,7 @@ // <chrono> -// monotonic_clock +// steady_clock // check clock invariants @@ -17,9 +17,9 @@ int main() { - typedef std::chrono::monotonic_clock C; + typedef std::chrono::steady_clock C; static_assert((std::is_same<C::rep, C::duration::rep>::value), ""); static_assert((std::is_same<C::period, C::duration::period>::value), ""); static_assert((std::is_same<C::duration, C::time_point::duration>::value), ""); - static_assert(C::is_monotonic, ""); + static_assert(C::is_steady, ""); } diff --git a/libcxx/test/utilities/time/time.clock/time.clock.monotonic/now.pass.cpp b/libcxx/test/utilities/time/time.clock/time.clock.monotonic/now.pass.cpp index 6d3b2d06f8e..0c6ebe6f3bb 100644 --- a/libcxx/test/utilities/time/time.clock/time.clock.monotonic/now.pass.cpp +++ b/libcxx/test/utilities/time/time.clock/time.clock.monotonic/now.pass.cpp @@ -9,7 +9,7 @@ // <chrono> -// monotonic_clock +// steady_clock // static time_point now(); @@ -18,7 +18,7 @@ int main() { - typedef std::chrono::monotonic_clock C; + typedef std::chrono::steady_clock C; C::time_point t1 = C::now(); C::time_point t2 = C::now(); assert(t2 >= t1); diff --git a/libcxx/test/utilities/time/time.clock/time.clock.system/consistency.pass.cpp b/libcxx/test/utilities/time/time.clock/time.clock.system/consistency.pass.cpp index f804fc28c62..5029b55b169 100644 --- a/libcxx/test/utilities/time/time.clock/time.clock.system/consistency.pass.cpp +++ b/libcxx/test/utilities/time/time.clock/time.clock.system/consistency.pass.cpp @@ -22,5 +22,5 @@ int main() static_assert((std::is_same<C::period, C::duration::period>::value), ""); static_assert((std::is_same<C::duration, C::time_point::duration>::value), ""); static_assert((std::is_same<C::time_point::clock, C>::value), ""); - static_assert((C::is_monotonic || !C::is_monotonic), ""); + static_assert((C::is_steady || !C::is_steady), ""); } |

