From 386b7d3366f1359a265da207a9cafa3edf553b64 Mon Sep 17 00:00:00 2001 From: Joshua Bakita Date: Mon, 7 Oct 2019 19:13:39 -0400 Subject: Reorganize and commit all the modified TACLeBench code and run scripts --- baseline/source/fmref/wcclibm.h | 54 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 baseline/source/fmref/wcclibm.h (limited to 'baseline/source/fmref/wcclibm.h') diff --git a/baseline/source/fmref/wcclibm.h b/baseline/source/fmref/wcclibm.h new file mode 100644 index 0000000..c00738b --- /dev/null +++ b/baseline/source/fmref/wcclibm.h @@ -0,0 +1,54 @@ +#ifndef _WCCLIBM +#define _WCCLIBM + +#define size_x unsigned long +#define int32_t int +#define uint32_t unsigned int +#define u_int16_t unsigned short +#define u_int32_t unsigned int + +// Often used variables/consts +#ifdef __STDC__ +static const float +#else +static float +#endif +fmref_one = 1.0f, +fmref_half = 5.0000000000e-01f, /* 0x3f000000 */ +fmref_zero = 0.0f, +fmref_huge = 1.0e30, +fmref_two8 = 2.5600000000e+02f, /* 0x43800000 */ +fmref_twon8 = 3.9062500000e-03f; /* 0x3b800000 */ + +// The following defines map the math functions to specialized calls +#define acos fmref___ieee754_acosf +#define atan fmref___atanf +#define cos fmref___cosf +#define fabs fmref___fabsf +#define fabsf fmref___fabsf +#define isinf fmref___isinff +#define pow fmref___ieee754_powf +#define sqrt fmref___ieee754_sqrtf +#define log10 fmref___ieee754_log10f +#define log fmref___ieee754_logf +#define sin fmref___sinf + +float fmref___atanf(float x); +float fmref___copysignf(float x, float y); +float fmref___cosf(float x); +float fmref___fabsf(float x); +float fmref___floorf(float x); +float fmref___ieee754_acosf(float x); +float fmref___ieee754_powf(float x, float y); +int32_t fmref___ieee754_rem_pio2f(float x, float *y); +float fmref___ieee754_sqrtf(float x); +int fmref___isinff (float x); +float fmref___kernel_cosf(float x, float y); +float fmref___kernel_sinf(float x, float y, int iy); +int fmref___kernel_rem_pio2f(float *x, float *y, int e0, int nx, int prec, const int32_t *ipio2); +float fmref___scalbnf (float x, int n); +float fmref___ieee754_logf(float x); +float fmref___ieee754_log10f(float x); +float fmref___sinf(float x); + +#endif // _WCCLIBM -- cgit v1.2.2