summaryrefslogtreecommitdiff
path: root/source/test/unittests/foo.bench.c
diff options
context:
space:
mode:
Diffstat (limited to 'source/test/unittests/foo.bench.c')
-rw-r--r--source/test/unittests/foo.bench.c16
1 files changed, 14 insertions, 2 deletions
diff --git a/source/test/unittests/foo.bench.c b/source/test/unittests/foo.bench.c
index 531f1d8..a3d5c18 100644
--- a/source/test/unittests/foo.bench.c
+++ b/source/test/unittests/foo.bench.c
@@ -1,11 +1,23 @@
#define KIT_BENCH_FILE foo
#include "../../kit_test/bench.h"
+struct test_foo_ {
+ double f;
+};
+
BENCHMARK("foo") {
BENCHMARK_BEGIN;
{
- volatile int x = 0;
- for (int i = 0; i < 200000; i++) x++;
+ int x = 0;
+ struct test_foo_ f = { 0. };
+
+ for (int i = 0; i < 100000; i++) {
+ x += (1 << 1);
+ x ^= i;
+ f.f += 0.1;
+ }
+ DO_NOT_OPTIMIZE(x);
+ DO_NOT_OPTIMIZE(f);
}
BENCHMARK_END;
}