Subversion Repositories Kolibri OS

Rev

Rev 8793 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
8687 turbocat 1
#ifndef _FLOAT_H_
2
#define _FLOAT_H_
3
 
4
#define FLT_RADIX 2
5
 
6
/* IEEE float */
9766 turbocat 7
#define FLT_MANT_DIG   24
8
#define FLT_DIG        6
9
#define FLT_ROUNDS     1
10
#define FLT_EPSILON    1.19209290e-07F
11
#define FLT_MIN_EXP    (-125)
12
#define FLT_MIN        1.17549435e-38F
8687 turbocat 13
#define FLT_MIN_10_EXP (-37)
9766 turbocat 14
#define FLT_MAX_EXP    128
15
#define FLT_MAX        3.40282347e+38F
8687 turbocat 16
#define FLT_MAX_10_EXP 38
17
 
18
/* IEEE double */
9766 turbocat 19
#define DBL_MANT_DIG   53
20
#define DBL_DIG        15
21
#define DBL_EPSILON    2.2204460492503131e-16
22
#define DBL_MIN_EXP    (-1021)
23
#define DBL_MIN        2.2250738585072014e-308
8687 turbocat 24
#define DBL_MIN_10_EXP (-307)
9766 turbocat 25
#define DBL_MAX_EXP    1024
26
#define DBL_MAX        1.7976931348623157e+308
8687 turbocat 27
#define DBL_MAX_10_EXP 308
28
 
29
/* horrible intel long double */
30
#if defined __i386__ || defined __x86_64__
31
 
9766 turbocat 32
#define LDBL_MANT_DIG   64
33
#define LDBL_DIG        18
34
#define LDBL_EPSILON    1.08420217248550443401e-19L
35
#define LDBL_MIN_EXP    (-16381)
36
#define LDBL_MIN        3.36210314311209350626e-4932L
8687 turbocat 37
#define LDBL_MIN_10_EXP (-4931)
9766 turbocat 38
#define LDBL_MAX_EXP    16384
39
#define LDBL_MAX        1.18973149535723176502e+4932L
8687 turbocat 40
#define LDBL_MAX_10_EXP 4932
41
 
42
#else
43
 
44
/* same as IEEE double */
9766 turbocat 45
#define LDBL_MANT_DIG   53
46
#define LDBL_DIG        15
47
#define LDBL_EPSILON    2.2204460492503131e-16
48
#define LDBL_MIN_EXP    (-1021)
49
#define LDBL_MIN        2.2250738585072014e-308
8687 turbocat 50
#define LDBL_MIN_10_EXP (-307)
9766 turbocat 51
#define LDBL_MAX_EXP    1024
52
#define LDBL_MAX        1.7976931348623157e+308
8687 turbocat 53
#define LDBL_MAX_10_EXP 308
54
 
55
#endif
56
 
57
#ifndef NAN
9766 turbocat 58
#define NAN (__nan__)
8687 turbocat 59
#endif
60
 
61
#ifndef INFINITY
9766 turbocat 62
#define INFINITY (__inf__)
8687 turbocat 63
#endif
64
 
65
#endif /* _FLOAT_H_ */