aboutsummaryrefslogtreecommitdiff
path: root/benchmarks/interface.h
diff options
context:
space:
mode:
authorMartin Baƙinka <marun1@email.cz>2021-05-03 12:43:54 +0200
committerGitHub <noreply@github.com>2021-05-03 13:43:54 +0300
commit0c88e55fa8f132e8ac15426911d155f136078302 (patch)
tree03fc1b22c0582bd57ae3a14095d3d9c9f949f0c9 /benchmarks/interface.h
parent4ea8f3ff12da61a5ceba690bf1e39d9385b42880 (diff)
downloadlibfixmath-0c88e55fa8f132e8ac15426911d155f136078302.tar.gz
fixed division, undefined behaviors and some improvements (#33)
* testing using ctest * emove old testing script * added github workflow CI * updated CI * added unit test for macros * F16() and F16C() are both rounding allways, so fix16_from_dbl should as well * added tests for strign operations, but these functions are in my opinion unreliable and tests are failing * removed old unittests * removed old unittests from cmake * problem with division using gcc * improved benchmark * clarification of problem with division * attempt to fix * fixed some undefined behaviors, fixed division
Diffstat (limited to 'benchmarks/interface.h')
-rw-r--r--benchmarks/interface.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/benchmarks/interface.h b/benchmarks/interface.h
index f8c5117..cf6a3f9 100644
--- a/benchmarks/interface.h
+++ b/benchmarks/interface.h
@@ -3,6 +3,15 @@
#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();
@@ -14,3 +23,5 @@ 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);