|
11 | 11 |
|
12 | 12 | #ifdef __FLT_RADIX__
|
13 | 13 | #define FLT_RADIX __FLT_RADIX__
|
14 |
| -#else |
| 14 | +#else |
15 | 15 | #define FLT_RADIX 2
|
16 | 16 | #endif // FLT_RADIX
|
17 | 17 |
|
18 |
| -#ifdef FLT_EVAL_METHOD |
19 |
| -#define FLT_EVAL_METHOD __FLT_EVAL_METHOD__ |
20 |
| -#endif // FLT_EVAL_METHOD |
| 18 | +// #ifdef FLT_EVAL_METHOD |
| 19 | +// #define FLT_EVAL_METHOD __FLT_EVAL_METHOD__ |
| 20 | +// #endif // FLT_EVAL_METHOD |
| 21 | +// #define FLT_EVAL_METHOD 0 |
| 22 | +//clarifiy |
21 | 23 |
|
22 | 24 | #ifdef DECIMAL_DIG
|
23 | 25 | #define DECIMAL_DIG __DECIMAL_DIG__
|
24 |
| -#else |
| 26 | +#else |
25 | 27 | #define DECIMAL_DIG 10
|
26 | 28 | #endif // DECIMAL_DIG
|
| 29 | +//clarify |
27 | 30 |
|
28 |
| -#ifdef FLT_DECIMAL_DIG |
| 31 | +#ifdef FLT_DECIMAL_DIG |
29 | 32 | #define FLT_DECIMAL_DIG __FLT_DECIMAL_DIG__
|
30 |
| -#else |
31 |
| -#define FLT_DECIMAL_DIG 6 |
| 33 | +#else |
| 34 | +#define FLT_DECIMAL_DIG 9 |
32 | 35 | #endif // FLT_DECIMAL_DIG
|
33 | 36 |
|
34 | 37 | #ifdef DBL_DECIMAL_DIG
|
35 | 38 | #define DBL_DECIMAL_DIG __DBL_DECIMAL_DIG__
|
36 |
| -#else |
37 |
| -#define DBL_DECIMAL_DIG 10 |
| 39 | +#else |
| 40 | +#define DBL_DECIMAL_DIG 17 |
38 | 41 | #endif // DBL_DECIMAL_DIG
|
39 | 42 |
|
40 | 43 | #ifdef LDBL_DECIMAL_DIG
|
41 | 44 | #define LDBL_DECIMAL_DIG __LDBL_DECIMAL_DIG__
|
42 |
| -#else |
| 45 | +#else |
43 | 46 | #define LDBL_DECIMAL_DIG 10
|
44 | 47 | #endif // LDBL_DECIMAL_DIG
|
| 48 | +//clarify |
45 | 49 |
|
46 | 50 | #ifdef FLT_DIG
|
47 | 51 | #define FLT_DIG __FLT_DIG__
|
48 |
| -#else |
| 52 | +#else |
49 | 53 | #define FLT_DIG 6
|
50 | 54 | #endif // FLT_DIG
|
51 | 55 |
|
52 | 56 | #ifdef DBL_DIG
|
53 | 57 | #define DBL_DIG __DBL_DIG__
|
54 |
| -#else |
55 |
| -#define DBL_DIG 10 |
| 58 | +#else |
| 59 | +#define DBL_DIG 15 |
56 | 60 | #endif // DBL_DIG
|
57 | 61 |
|
58 | 62 | #ifdef LDBL_DIG
|
59 | 63 | #define LDBL_DIG __LDBL_DIG__
|
60 |
| -#else |
| 64 | +#else |
61 | 65 | #define LDBL_DIG 10
|
62 | 66 | #endif // LDBL_DIG
|
| 67 | +//clarify |
63 | 68 |
|
64 | 69 | #ifdef FLT_MANT_DIG
|
65 | 70 | #define FLT_MANT_DIG __FLT_MANT_DIG__
|
66 |
| -#else |
| 71 | +#else |
67 | 72 | #define FLT_MANT_DIG 24
|
68 | 73 | #endif // FLT_MANT_DIG
|
69 | 74 |
|
70 | 75 | #ifdef DBL_MANT_DIG
|
71 | 76 | #define DBL_MANT_DIG __DBL_MANT_DIG__
|
72 |
| -#else |
| 77 | +#else |
73 | 78 | #define DBL_MANT_DIG 53
|
74 | 79 | #endif // DBL_MANT_DIG
|
75 | 80 |
|
76 | 81 | #ifdef LDBL_MANT_DIG
|
77 | 82 | #define LDBL_MANT_DIG __LDBL_MANT_DIG__
|
78 |
| -#else |
| 83 | +#else |
79 | 84 | #define LDBL_MANT_DIG 113
|
80 | 85 | #endif // LDBL_MANT_DIG
|
| 86 | +//clarify |
81 | 87 |
|
82 | 88 | #ifdef FLT_MIN
|
83 | 89 | #define FLT_MIN __FLT_MIN__
|
84 |
| -#else |
85 |
| -#define FLT_MIN 1E-37 |
| 90 | +#else |
| 91 | +#define FLT_MIN 1.17549435082228750796873653722224568e-38F |
86 | 92 | #endif // FLT_MIN
|
87 | 93 |
|
88 | 94 | #ifdef DBL_MIN
|
89 | 95 | #define DBL_MIN __DBL_MIN__
|
90 |
| -#else |
91 |
| -#define DBL_MIN 1E-37 |
| 96 | +#else |
| 97 | +#define DBL_MIN 2.22507385850720138309023271733240406e-308L |
92 | 98 | #endif // DBL_MIN
|
93 | 99 |
|
94 | 100 | #ifdef LDBL_MIN
|
95 | 101 | #define LDBL_MIN __LDBL_MIN__
|
96 |
| -#else |
97 |
| -#define LDBL_MIN 1E-37 |
| 102 | +#else |
| 103 | +#define LDBL_MIN 1E-37 |
98 | 104 | #endif // LDBL_MIN
|
| 105 | +//clarify |
99 | 106 |
|
100 | 107 | #ifdef FLT_MAX
|
101 | 108 | #define FLT_MAX __FLT_MAX__
|
102 |
| -#else |
103 |
| -#define FLT_MAX 1E+37 |
| 109 | +#else |
| 110 | +#define FLT_MAX 3.40282346638528859811704183484516925e+38F |
104 | 111 | #endif // FLT_MAX
|
105 | 112 |
|
106 | 113 | #ifdef DBL_MAX
|
107 | 114 | #define DBL_MAX __DBL_MAX__
|
108 |
| -#else |
109 |
| -#define DBL_MAX 1E+37 |
| 115 | +#else |
| 116 | +#define DBL_MAX 1.79769313486231570814527423731704357e+308L |
110 | 117 | #endif // DBL_MAX
|
111 | 118 |
|
112 | 119 | #ifdef LDBL_MAX
|
113 | 120 | #define LDBL_MAX __LDBL_MAX__
|
114 |
| -#else |
| 121 | +#else |
115 | 122 | #define LDBL_MAX 1E+37
|
116 | 123 | #endif // LDBL_MAX
|
| 124 | +//clarify |
| 125 | + |
| 126 | +#ifdef FLT_TRUE_MIN |
| 127 | +#define FLT_TRUE_MIN __FLT_DNORM_MIN |
| 128 | +#else |
| 129 | +#define FLT_TRUE_MIN 1.40129846432481707092372958328991613e-45F |
| 130 | +#endif // FLT_TRUE_MIN |
117 | 131 |
|
118 |
| -// #ifdef FLT_TRUE_MIN |
119 |
| -// #define FLT_TRUE_MIN __FLT_DNORM_MIN //acc to Clang's define [remove after review] |
120 |
| -// #else |
121 |
| -// #define FLT_TRUE_MIN 1E-37 |
122 |
| -// #endif // FLT_TRUE_MIN |
123 |
| -// |
124 |
| -// #ifdef DBL_TRUE_MIN |
125 |
| -// #define DBL_TRUE_MIN __DBL_DENORM_MIN__ //acc to Clang's define [remove after review] |
126 |
| -// #else |
127 |
| -// #define DBL_TRUE_MIN 1E-37 |
128 |
| -// #endif // DBL_TRUE_MIN |
129 |
| -// |
130 |
| -// #ifdef LDBL_TRUE_MIN |
131 |
| -// #define LDBL_TRUE_MIN __LDBL_DENORM_MIN__ //acc to Clang's define [remove after review] |
132 |
| -// #else |
133 |
| -// #define LDBL_TRUE_MIN 1E-37 |
134 |
| -// #endif // LDBL_TRUE_MIN |
| 132 | +#ifdef DBL_TRUE_MIN |
| 133 | +#define DBL_TRUE_MIN __DBL_DENORM_MIN__ |
| 134 | +#else |
| 135 | +#define DBL_TRUE_MIN 4.94065645841246544176568792868221372e-324L |
| 136 | +#endif // DBL_TRUE_MIN |
| 137 | + |
| 138 | +#ifdef LDBL_TRUE_MIN |
| 139 | +#define LDBL_TRUE_MIN __LDBL_DENORM_MIN__ |
| 140 | +#else |
| 141 | +#define LDBL_TRUE_MIN 1E-37 |
| 142 | +#endif // LDBL_TRUE_MIN |
| 143 | +//clarify |
135 | 144 |
|
136 | 145 | #ifdef FLT_EPSILON
|
137 | 146 | #define FLT_EPSILON __FLT_EPSILON__
|
138 |
| -#else |
139 |
| -#define FLT_EPSILON 1E-5 |
| 147 | +#else |
| 148 | +#define FLT_EPSILON 1.1920928955078125e-7F |
140 | 149 | #endif // FLT_EPSILON
|
141 | 150 |
|
142 | 151 | #ifdef DBL_EPSILON
|
143 | 152 | #define DBL_EPSILON __DBL_EPSILON__
|
144 |
| -#else |
145 |
| -#define DBL_EPSILON 1E-9 |
| 153 | +#else |
| 154 | +#define DBL_EPSILON 2.22044604925031308084726333618164062e-16L |
146 | 155 | #endif // DBL_EPSILON
|
147 | 156 |
|
148 | 157 | #ifdef LDBL_EPSILON
|
149 | 158 | #define LDBL_EPSILON __LDBL_EPSILON__
|
150 |
| -#else |
| 159 | +#else |
151 | 160 | #define LDBL_EPSILON 1E-9
|
152 | 161 | #endif // LDBL_EPSILON
|
| 162 | +//clarify |
153 | 163 |
|
154 | 164 | #ifdef FLT_MIN_EXP
|
155 | 165 | #define FLT_MIN_EXP __FLT_MIN_EXP__
|
| 166 | +#else |
| 167 | +#define FLT_MIN_EXP (-125) |
156 | 168 | #endif // FLT_MIN_EXP
|
157 | 169 |
|
158 | 170 | #ifdef DBL_MIN_EXP
|
159 | 171 | #define DBL_MIN_EXP __DBL_MIN_EXP__
|
| 172 | +#else |
| 173 | +#define DBL_MIN_EXP (-1021) |
160 | 174 | #endif // DBL_MIN_EXP
|
161 | 175 |
|
162 | 176 | #ifdef LDBL_MIN_EXP
|
163 | 177 | #define LDBL_MIN_EXP __LDBL_MIN_EXP__
|
164 | 178 | #endif // LDBL_MIN_EXP
|
| 179 | +//clarify |
165 | 180 |
|
166 | 181 | #ifdef FLT_MIN_10_EXP
|
167 | 182 | #define FLT_MIN_10_EXP __FLT_MIN_10_EXP__
|
168 |
| -#else |
169 |
| -#define FLT_MIN_10_EXP -37 |
| 183 | +#else |
| 184 | +#define FLT_MIN_10_EXP (-37) |
170 | 185 | #endif // FLT_MIN_10_EXP
|
171 | 186 |
|
172 | 187 | #ifdef DBL_MIN_10_EXP
|
173 | 188 | #define DBL_MIN_10_EXP __DBL_MIN_10_EXP__
|
174 |
| -#else |
175 |
| -#define DBL_MIN_10_EXP -37 |
| 189 | +#else |
| 190 | +#define DBL_MIN_10_EXP (-307) |
176 | 191 | #endif // DBL_MIN_10_EXP
|
177 | 192 |
|
178 | 193 | #ifdef LDBL_MIN_10_EXP
|
179 | 194 | #define LDBL_MIN_10_EXP __LDBL_MIN_10_EXP__
|
180 |
| -#else |
| 195 | +#else |
181 | 196 | #define LDBL_MIN_10_EXP -37
|
182 | 197 | #endif // LDBL_MIN_10_EXP
|
| 198 | +//clarify |
183 | 199 |
|
184 | 200 | #ifdef FLT_MAX_EXP
|
185 | 201 | #define FLT_MAX_EXP __FLT_MAX_EXP__
|
| 202 | +#else |
| 203 | +#define FLT_MAX_EXP 128 |
186 | 204 | #endif // FLT_MAX_EXP
|
187 | 205 |
|
188 | 206 | #ifdef DBL_MAX_EXP
|
189 | 207 | #define DBL_MAX_EXP __DBL_MAX_EXP__
|
| 208 | +#else |
| 209 | +#define DBL_MAX_EXP 1024 |
190 | 210 | #endif // DBL_MAX_EXP
|
191 | 211 |
|
192 | 212 | #ifdef LDBL_MAX_EXP
|
193 | 213 | #define LDBL_MAX_EXP __LDBL_MAX_EXP__
|
194 | 214 | #endif // LDBL_MAX_EXP
|
| 215 | +//clarify |
195 | 216 |
|
196 | 217 | #ifdef FLT_MAX_10_EXP
|
197 | 218 | #define FLT_MAX_10_EXP __FLT_MAX_10_EXP__
|
198 |
| -#else |
199 |
| -#define FLT_MAX_10_EXP +37 |
| 219 | +#else |
| 220 | +#define FLT_MAX_10_EXP 38 |
200 | 221 | #endif // FLT_MAX_10_EXP
|
201 | 222 |
|
202 | 223 | #ifdef DBL_MAX_10_EXP
|
203 | 224 | #define DBL_MAX_10_EXP __DBL_MAX_10_EXP__
|
204 |
| -#else |
205 |
| -#define DBL_MAX_10_EXP +37 |
| 225 | +#else |
| 226 | +#define DBL_MAX_10_EXP 308 |
206 | 227 | #endif // DBL_MAX_10_EXP
|
207 | 228 |
|
208 | 229 | #ifdef LDBL_MAX_10_EXP
|
209 | 230 | #define LDBL_MAX_10_EXP __LDBL_MAX_10_EXP__
|
210 |
| -#else |
| 231 | +#else |
211 | 232 | #define LDBL_MAX_10_EXP +37
|
212 | 233 | #endif // LDBL_MAX_10_EXP
|
213 | 234 |
|
| 235 | +#if defined(LIBC_TARGET_ARCH_IS_RISCV64) || defined(LIBC_TARGET_ARCH_IS_ANY_RISCV) |
| 236 | + |
| 237 | +#endif |
| 238 | + |
| 239 | +#if defined(LIBC_TARGET_ARCH_IS_X86_32) |
| 240 | + |
| 241 | +#endif |
| 242 | + |
| 243 | +#if defined(LIBC_TARGET_ARCH_IS_X86_64) |
| 244 | + |
| 245 | +#endif |
| 246 | + |
214 | 247 | // TODO: Add FLT16 and FLT128 constants.
|
215 | 248 |
|
216 | 249 | #endif // LLVM_LIBC_MACROS_FLOAT_MACROS_H
|
0 commit comments