Lines Matching refs:hx
37 __int32_t n,hx,hy,hz,ix,iy,sx,i; local
39 GET_FLOAT_WORD(hx,x);
41 sx = hx&0x80000000; /* sign of x */
42 hx ^=sx; /* |x| */
47 !FLT_UWORD_IS_FINITE(hx)||
50 if(hx<hy) return x; /* |x|<|y| return x */
51 if(hx==hy)
57 if(FLT_UWORD_IS_SUBNORMAL(hx)) { /* subnormal x */
58 for (ix = -126,i=(hx<<8); i>0; i<<=1) ix -=1;
59 } else ix = (hx>>23)-127;
68 hx = 0x00800000|(0x007fffff&hx);
71 hx = hx<<n;
83 hz=hx-hy;
84 if(hz<0){hx = hx+hx;}
88 hx = hz+hz;
91 hz=hx-hy;
92 if(hz>=0) {hx=hz;}
95 if(hx==0) /* return sign(x)*0 */
97 while(hx<0x00800000) { /* normalize x */
98 hx = hx+hx;
102 hx = ((hx-0x00800000)|((iy+127)<<23));
103 SET_FLOAT_WORD(x,hx|sx);
108 hx >>= n;
109 SET_FLOAT_WORD(x,hx|sx);