45 one= 1.00000000000000000000e+00,
46 pi = 3.14159265358979311600e+00,
47 pio2_hi = 1.57079632679489655800e+00,
48 pio2_lo = 6.12323399573676603587e-17,
49 pS0 = 1.66666666666666657415e-01,
50 pS1 = -3.25565818622400915405e-01,
51 pS2 = 2.01212532134862925881e-01,
52 pS3 = -4.00555345006794114027e-02,
53 pS4 = 7.91534994289814532176e-04,
54 pS5 = 3.47933107596021167570e-05,
55 qS1 = -2.40339491173441421878e+00,
56 qS2 = 2.02094576023350569471e+00,
57 qS3 = -6.88283971605453293030e-01,
58 qS4 = 7.70381505559019352791e-02;
67 double z,
p,q,r,w,s,c,df;
72 if(((ix-0x3ff00000)|
__LO(x))==0) {
74 else return pi+2.0*pio2_lo;
79 if(ix<=0x3c600000)
return pio2_hi+pio2_lo;
81 p = z*(pS0+z*(pS1+z*(pS2+z*(pS3+z*(pS4+z*pS5)))));
82 q =
one+z*(qS1+z*(qS2+z*(qS3+z*qS4)));
84 return pio2_hi - (x - (pio2_lo-x*r));
87 p = z*(pS0+z*(pS1+z*(pS2+z*(pS3+z*(pS4+z*pS5)))));
88 q =
one+z*(qS1+z*(qS2+z*(qS3+z*qS4)));
92 return pi - 2.0*(s+w);
99 p = z*(pS0+z*(pS1+z*(pS2+z*(pS3+z*(pS4+z*pS5)))));
100 q =
one+z*(qS1+z*(qS2+z*(qS3+z*qS4)));