1 struct ieee754_double
{
4 extern const float __exp_deltatable
[178];
5 float __ieee754_expf (float x
)
7 static const float himark
= 88.72283935546875;
8 static const float lomark
= -103.972084045410;
9 if (__builtin_isless(x
, himark
) && __builtin_isgreater(x
, lomark
))
12 double x22
, t
, result
, dx
;
14 struct ieee754_double ex2_u
;
16 tval
= (int) (t
* 512.0);
18 delta
= - __exp_deltatable
[tval
];
20 delta
= __exp_deltatable
[-tval
];
21 x22
= (0.5000000496709180453 * dx
+ 1.0000001192102037084) * dx
+ delta
;
22 result
= x22
* ex2_u
.d
+ ex2_u
.d
;
23 return (float) result
;