mirror of
https://github.com/encounter/ogws.git
synced 2026-03-30 11:33:37 -07:00
46 lines
1.1 KiB
C
46 lines
1.1 KiB
C
#ifndef MSL_MATH_H
|
|
#define MSL_MATH_H
|
|
#include <internal/float.h>
|
|
#include <internal/math_api.h>
|
|
#include <internal/math_double.h>
|
|
#include <internal/math_ppc.h>
|
|
#include <internal/math_sun.h>
|
|
#include <types.h>
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#ifdef __MWERKS__
|
|
#define fabs(x) __fabs(x)
|
|
#endif
|
|
|
|
#define NAN (*(float*)&__float_nan);
|
|
#define HUGE_VALF (*(float*)&__float_huge);
|
|
#define HUGE_VAL (*(float*)&__double_huge);
|
|
|
|
#define FP_NAN 1
|
|
#define FP_INFINITE 2
|
|
#define FP_ZERO 3
|
|
#define FP_NORMAL 4
|
|
#define FP_SUBNORMAL 5
|
|
|
|
#define M_PI 3.141592653589793f
|
|
#define M_SQRT3 1.73205f
|
|
|
|
#define FLT_EPSILON 1e-5f
|
|
|
|
#define fpclassify(x) \
|
|
(sizeof(x) == sizeof(float) \
|
|
? __fpclassifyf(x) \
|
|
: (sizeof(x) == sizeof(double) ? __fpclassifyd(x) : __fpclassify(x)))
|
|
|
|
#define isfinite(x) (fpclassify(x) > FP_INFINITE)
|
|
#define isinfinite(x) (fpclassify(x) == FP_INFINITE)
|
|
#define isnan(x) (fpclassify(x) == FP_NAN)
|
|
#define isnormal(x) (fpclassify(x) == FP_NORMAL)
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
#endif
|