summaryrefslogtreecommitdiff
path: root/src/bench.h
blob: 744dea3d6f6708079aa314d7dc65f62d6d9de192 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#ifndef CMARK_BENCH_H
#define CMARK_BENCH_H

#include <stdio.h>
#include <time.h>

#ifdef TIMER
float _cmark_start_time;
float _cmark_end_time;
float _cmark_save_time;

#define start_timer()                                                          \
  _cmark_save_time = _cmark_start_time;                                        \
  _cmark_start_time = (float)clock() / CLOCKS_PER_SEC

#define end_timer(M)                                                           \
  _cmark_end_time = (float)clock() / CLOCKS_PER_SEC;                           \
  fprintf(stderr, "[TIME] (%s:%d) %4.f ns " M "\n", __FILE__, __LINE__,        \
          (_cmark_end_time - _cmark_start_time) * 1000000);                    \
  _cmark_start_time = _cmark_save_time;

#else
#define start_timer()
#define end_timer(M)
#endif

#endif