From 1bd62bd0becbb692c7088f331c876ca3aeff4c65 Mon Sep 17 00:00:00 2001 From: Eric Fiselier Date: Fri, 22 Jul 2016 15:42:26 -0600 Subject: [PATCH] Revert "Workaround missing std::this_thread::sleep_for function in tests." GCC 4.6 doesn't provide std::chrono::steady_clock and GCC 4.7 doesn't provide std::this_thread::sleep_for. I would prefer to support GCC 4.7 but I'm reverting this since the bots are GCC 4.6. This reverts commit c5f454957d457e8b6ae5a1a1eaf8eb6739c17f67. --- test/benchmark_test.cc | 8 +++----- test/options_test.cc | 8 +++----- 2 files changed, 6 insertions(+), 10 deletions(-) diff --git a/test/benchmark_test.cc b/test/benchmark_test.cc index ee1a8b0c..66f59564 100644 --- a/test/benchmark_test.cc +++ b/test/benchmark_test.cc @@ -186,11 +186,9 @@ static void BM_ManualTiming(benchmark::State& state) { while (state.KeepRunning()) { auto start = std::chrono::high_resolution_clock::now(); - // Simulate some useful workload by sleeping. - // Note: std::this_thread::sleep_for doesn't work with GCC 4.7 on some - // platforms. - const auto sleep_end = std::chrono::steady_clock::now() + sleep_duration; - while (std::chrono::steady_clock::now() < sleep_end) {} + // Simulate some useful workload with a sleep + std::this_thread::sleep_for(std::chrono::duration_cast< + std::chrono::nanoseconds>(sleep_duration)); auto end = std::chrono::high_resolution_clock::now(); auto elapsed = diff --git a/test/options_test.cc b/test/options_test.cc index e8d67914..78cedaea 100644 --- a/test/options_test.cc +++ b/test/options_test.cc @@ -11,11 +11,9 @@ void BM_basic(benchmark::State& state) { void BM_basic_slow(benchmark::State& state) { std::chrono::milliseconds sleep_duration(state.range_x()); while (state.KeepRunning()) { - // Simulate some useful workload by sleeping. - // Note: std::this_thread::sleep_for doesn't work with GCC 4.7 on some - // platforms. - const auto sleep_end = std::chrono::steady_clock::now() + sleep_duration; - while (std::chrono::steady_clock::now() < sleep_end) {} + std::this_thread::sleep_for( + std::chrono::duration_cast(sleep_duration) + ); } }