20 one = 1.0000000000e+00,
22 pio2_hi = 1.5707962513e+00,
23 pio2_lo = 7.5497894159e-08,
24 pio4_hi = 7.8539818525e-01,
26 pS0 = 1.6666667163e-01,
27 pS1 = -3.2556581497e-01,
28 pS2 = 2.0121252537e-01,
29 pS3 = -4.0055535734e-02,
30 pS4 = 7.9153501429e-04,
31 pS5 = 3.4793309169e-05,
32 qS1 = -2.4033949375e+00,
33 qS2 = 2.0209457874e+00,
34 qS3 = -6.8828397989e-01,
35 qS4 = 7.7038154006e-02;
46 return x*pio2_hi+x*pio2_lo;
47 }
else if(ix> 0x3f800000) {
49 }
else if (ix<0x3f000000) {
51 if(huge+x>
one)
return x;
54 p = t*(pS0+t*(pS1+t*(pS2+t*(pS3+t*(pS4+t*pS5)))));
55 q =
one+t*(qS1+t*(qS2+t*(qS3+t*qS4)));
62 p = t*(pS0+t*(pS1+t*(pS2+t*(pS3+t*(pS4+t*pS5)))));
63 q =
one+t*(qS1+t*(qS2+t*(qS3+t*qS4)));
67 t = pio2_hi-((float)2.0*(s+s*w)-pio2_lo);
75 p = (float)2.0*s*r-(pio2_lo-(
float)2.0*
c);
76 q = pio4_hi-(float)2.0*w;
79 if(hx>0)
return t;
else return -t;
#define SET_FLOAT_WORD(d, i)
#define GET_FLOAT_WORD(i, d)