[DDK]
[reactos.git] / include / crt / ymath.h
1 /**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the w64 mingw-runtime package.
4 * No warranty is given; refer to the file DISCLAIMER within this package.
5 */
6 #ifndef _YMATH
7 #define _YMATH
8 #include <yvals.h>
9 _C_STD_BEGIN
10 _C_LIB_DECL
11
12 #pragma pack(push,_CRT_PACKING)
13
14 #define _DENORM (-2)
15 #define _FINITE (-1)
16 #define _INFCODE 1
17 #define _NANCODE 2
18
19 #define _FE_DIVBYZERO 0x04
20 #define _FE_INEXACT 0x20
21 #define _FE_INVALID 0x01
22 #define _FE_OVERFLOW 0x08
23 #define _FE_UNDERFLOW 0x10
24
25 typedef union {
26 unsigned short _Word[8];
27 float _Float;
28 double _Double;
29 long double _Long_double;
30 } _Dconst;
31
32 void __cdecl _Feraise(int);
33 _CRTIMP double __cdecl _Cosh(double,double);
34 _CRTIMP short __cdecl _Dtest(double *);
35 _CRTIMP short __cdecl _Exp(double *,double,short);
36 _CRTIMP double __cdecl _Sinh(double,double);
37 extern _CRTIMP _Dconst _Denorm,_Hugeval,_Inf,_Nan,_Snan;
38 _CRTIMP float __cdecl _FCosh(float,float);
39 _CRTIMP short __cdecl _FDtest(float *);
40 _CRTIMP short __cdecl _FExp(float *,float,short);
41 _CRTIMP float __cdecl _FSinh(float,float);
42 extern _CRTIMP _Dconst _FDenorm,_FInf,_FNan,_FSnan;
43 _CRTIMP long double __cdecl _LCosh(long double,long double);
44 _CRTIMP short __cdecl _LDtest(long double *);
45 _CRTIMP short __cdecl _LExp(long double *,long double,short);
46 _CRTIMP long double __cdecl _LSinh(long double,long double);
47 extern _CRTIMP _Dconst _LDenorm,_LInf,_LNan,_LSnan;
48 _END_C_LIB_DECL
49 _C_STD_END
50
51 #pragma pack(pop)
52 #endif