aboutsummaryrefslogtreecommitdiff
path: root/Client/ThirdParty/libfixmath/benchmarks/interface.h
blob: cf6a3f983334742d9ac477090f36a0b82641abc8 (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
// This file defines the hardware or simulator interface that will be used to
// measure timings and report results.

#include <stdint.h>

/* Tools for profiling */

typedef struct {
    uint32_t min;
    uint32_t max;
    uint32_t sum;
    uint32_t count;
} cyclecount_t;

// Initialize
void interface_init();

// Reset timer/counter/something
void start_timing();

// Return the number of clock cycles passed since start_timing();
uint16_t end_timing();

// Print a value to console, along with a descriptive label
void print_value(const char *label, int32_t value);

void print(const char *label, cyclecount_t *count);