git-subtree-dir: lib/runtime git-subtree-mainline: 566a2341f5b726d86f5d42a72beb9c70b83f31b6 git-subtree-split: db5cddbec10c4b7c086eda716d48d4711632901f
35 lines
766 B
C
35 lines
766 B
C
#pragma once
|
|
|
|
typedef union
|
|
{
|
|
float value;
|
|
uint32_t word;
|
|
} ieee_float_shape_type;
|
|
|
|
/* Get a 32 bit int from a float. */
|
|
|
|
#define GET_FLOAT_WORD(i,d) \
|
|
do { \
|
|
ieee_float_shape_type gf_u; \
|
|
gf_u.value = (d); \
|
|
(i) = gf_u.word; \
|
|
} while (/*CONSTCOND*/0)
|
|
|
|
/* Set a float from a 32 bit int. */
|
|
|
|
#define SET_FLOAT_WORD(d,i) \
|
|
do { \
|
|
ieee_float_shape_type sf_u; \
|
|
sf_u.word = (i); \
|
|
(d) = sf_u.value; \
|
|
} while (/*CONSTCOND*/0)
|
|
|
|
float __ieee754_sqrtf(float x);
|
|
float __ieee754_powf(float x, float y);
|
|
float __ieee754_hypotf(float x, float y);
|
|
float __ieee754_fmodf(float x, float y);
|
|
|
|
float scalbnf(float x, int n);
|
|
float copysignf(float x, float y);
|
|
float fabsf(float x);
|