diff options
author | 2016-01-29 11:47:40 +0100 | |
---|---|---|
committer | 2016-01-29 11:47:40 +0100 | |
commit | 042050ef67a0d320469a6f8ca74bd8684ec4c409 (patch) | |
tree | 842576848565813c5f33e21fc06ad058f43a8963 /3rdparty/benchmark/test/fixture_test.cc | |
parent | 1319453a84718ec50aafdb030eca3bac201995e3 (diff) |
Added Google Benchmark library (nw)
Included sample benchmark for eminline for native and noasm
Made GoogleTest compile only if tests are compiled
Diffstat (limited to '3rdparty/benchmark/test/fixture_test.cc')
-rw-r--r-- | 3rdparty/benchmark/test/fixture_test.cc | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/3rdparty/benchmark/test/fixture_test.cc b/3rdparty/benchmark/test/fixture_test.cc new file mode 100644 index 00000000000..8aea6ef0601 --- /dev/null +++ b/3rdparty/benchmark/test/fixture_test.cc @@ -0,0 +1,42 @@ + +#include "benchmark/benchmark.h" + +#include <cassert> + +class MyFixture : public ::benchmark::Fixture +{ +public: + void SetUp() { + data = new int(42); + } + + void TearDown() { + assert(data != nullptr); + delete data; + data = nullptr; + } + + ~MyFixture() { + assert(data == nullptr); + } + + int* data; +}; + + +BENCHMARK_F(MyFixture, Foo)(benchmark::State& st) { + assert(data != nullptr); + assert(*data == 42); + while (st.KeepRunning()) { + } +} + +BENCHMARK_DEFINE_F(MyFixture, Bar)(benchmark::State& st) { + while (st.KeepRunning()) { + } + st.SetItemsProcessed(st.range_x()); +} +BENCHMARK_REGISTER_F(MyFixture, Bar)->Arg(42); + + +BENCHMARK_MAIN() |