aboutsummaryrefslogtreecommitdiff
path: root/bench/include/BH/Bench.h
diff options
context:
space:
mode:
Diffstat (limited to 'bench/include/BH/Bench.h')
-rw-r--r--bench/include/BH/Bench.h25
1 files changed, 25 insertions, 0 deletions
diff --git a/bench/include/BH/Bench.h b/bench/include/BH/Bench.h
new file mode 100644
index 0000000..61a7778
--- /dev/null
+++ b/bench/include/BH/Bench.h
@@ -0,0 +1,25 @@
+#ifndef BH_BENCH_H
+#define BH_BENCH_H
+
+typedef struct BH_Bench BH_Bench;
+typedef void (*BH_BenchCallback)(BH_Bench *);
+
+
+#define BH_BENCH_TEST(name) \
+ static void bench##name(BH_Bench *state)
+
+
+#define BH_BENCH_ADD(name) \
+ BH_BenchAdd(#name, bench##name)
+
+
+void BH_BenchAdd(const char *name,
+ BH_BenchCallback cb);
+
+
+int BH_BenchIter(BH_Bench *state);
+
+
+int BH_BenchRun(void);
+
+#endif /* BH_BENCH_H */