aboutsummaryrefslogtreecommitdiff
path: root/test/benchmark_test.cc
diff options
context:
space:
mode:
authorEric Fiselier <eric@efcs.ca>2015-03-27 16:36:40 -0400
committerEric Fiselier <eric@efcs.ca>2015-03-27 16:36:40 -0400
commit9ed1082c33829a73e1ba5b143232ea14c5f06f3c (patch)
tree3427510d0cf2882eea54913f21553e51fd28daa4 /test/benchmark_test.cc
parent4f9ce87e8c016ce1e1086681b2f25fd9431c2bf7 (diff)
parente428b9eec3291f564073cd4bc98e8c312cbfcafd (diff)
downloadgoogle-benchmark-9ed1082c33829a73e1ba5b143232ea14c5f06f3c.tar.gz
Merge branch 'master' into new-benchmark-interface
Diffstat (limited to 'test/benchmark_test.cc')
-rw-r--r--test/benchmark_test.cc14
1 files changed, 5 insertions, 9 deletions
diff --git a/test/benchmark_test.cc b/test/benchmark_test.cc
index 751df85..a23f82f 100644
--- a/test/benchmark_test.cc
+++ b/test/benchmark_test.cc
@@ -72,9 +72,8 @@ BENCHMARK_RANGE(BM_CalculatePiRange, 1, 1024 * 1024);
static void BM_CalculatePi(benchmark::State& state) {
static const int depth = 1024;
- double pi BENCHMARK_UNUSED = 0.0;
while (state.KeepRunning()) {
- pi = CalculatePi(depth);
+ benchmark::DoNotOptimize(CalculatePi(depth));
}
}
BENCHMARK(BM_CalculatePi)->Threads(8);
@@ -117,11 +116,8 @@ BENCHMARK_TEMPLATE(BM_Sequential, std::vector<int>, int)->Arg(512);
static void BM_StringCompare(benchmark::State& state) {
std::string s1(state.range_x(), '-');
std::string s2(state.range_x(), '-');
- int r = 0;
while (state.KeepRunning())
- r |= s1.compare(s2);
- // Prevent compiler optimizations
- assert(r != std::numeric_limits<int>::max());
+ benchmark::DoNotOptimize(s1.compare(s2));
}
BENCHMARK(BM_StringCompare)->Range(1, 1<<20);
@@ -147,10 +143,10 @@ BENCHMARK(BM_SetupTeardown)->ThreadPerCpu();
static void BM_LongTest(benchmark::State& state) {
double tracker = 0.0;
- while (state.KeepRunning())
+ while (state.KeepRunning()) {
for (int i = 0; i < state.range_x(); ++i)
- tracker += i;
- assert(tracker > 1.0);
+ benchmark::DoNotOptimize(tracker += i);
+ }
}
BENCHMARK(BM_LongTest)->Range(1<<16,1<<28);