49 pi_o_4 = 7.8539816339744827900E-01,
50 pi_o_2 = 1.5707963267948965580E+00,
51 pi = 3.1415926535897931160E+00,
52 pi_lo = 1.2246467991473531772E-16;
65 if(((ix|((lx|-lx)>>31))>0x7ff00000)||
66 ((iy|((ly|-ly)>>31))>0x7ff00000))
68 if(((hx-0x3ff00000)|lx)==0)
return atan(y);
69 m = ((hy>>31)&1)|((hx>>30)&2);
76 case 2:
return pi+tiny;
77 case 3:
return -pi-tiny;
81 if((ix|lx)==0)
return (hy<0)? -pi_o_2-tiny: pi_o_2+tiny;
87 case 0:
return pi_o_4+tiny;
88 case 1:
return -pi_o_4-tiny;
89 case 2:
return 3.0*pi_o_4+tiny;
90 case 3:
return -3.0*pi_o_4-tiny;
95 case 1:
return -zero ;
96 case 2:
return pi+tiny ;
97 case 3:
return -pi-tiny ;
102 if(iy==0x7ff00000)
return (hy<0)? -pi_o_2-tiny: pi_o_2+tiny;
106 if(k > 60) z=pi_o_2+0.5*pi_lo;
107 else if(hx<0&&k<-60) z=0.0;
117 case 2:
return pi-(z-pi_lo);
123 #if LDBL_MANT_DIG == 53 125 __weak_alias(atan2l,
atan2);
#define GET_HIGH_WORD(i, d)
double atan2(double y, double x)
#define SET_HIGH_WORD(d, v)
#define EXTRACT_WORDS(ix0, ix1, d)