/bionic/libm/upstream-freebsd/lib/msun/src/ |
H A D | s_ilogbf.c | 26 int32_t hx,ix; local 28 GET_FLOAT_WORD(hx,x); 29 hx &= 0x7fffffff; 30 if(hx<0x00800000) { 31 if(hx==0) 34 for (ix = -126,hx<<=8; hx>0; hx<<=1) ix -=1; 37 else if (hx<0x7f800000) return (hx>>2 [all...] |
H A D | s_ilogb.c | 30 int32_t hx,lx,ix; local 32 EXTRACT_WORDS(hx,lx,x); 33 hx &= 0x7fffffff; 34 if(hx<0x00100000) { 35 if((hx|lx)==0) 38 if(hx==0) { 41 for (ix = -1022,hx<<=11; hx>0; hx<<=1) ix -=1; 45 else if (hx< [all...] |
H A D | e_fmodf.c | 33 int32_t n,hx,hy,hz,ix,iy,sx,i; local 35 GET_FLOAT_WORD(hx,x); 37 sx = hx&0x80000000; /* sign of x */ 38 hx ^=sx; /* |x| */ 42 if(hy==0||(hx>=0x7f800000)|| /* y=0,or x not finite */ 45 if(hx<hy) return x; /* |x|<|y| return x */ 46 if(hx==hy) 50 if(hx<0x00800000) { /* subnormal x */ 51 for (ix = -126,i=(hx<<8); i>0; i<<=1) ix -=1; 52 } else ix = (hx>>2 [all...] |
H A D | s_nextafterf.c | 26 int32_t hx,hy,ix,iy; local 28 GET_FLOAT_WORD(hx,x); 30 ix = hx&0x7fffffff; /* |x| */ 42 if(hx>=0) { /* x > 0 */ 43 if(hx>hy) { /* x > y, x -= ulp */ 44 hx -= 1; 46 hx += 1; 49 if(hy>=0||hx>hy){ /* x < y, x -= ulp */ 50 hx -= 1; 52 hx [all...] |
H A D | s_finite.c | 26 int32_t hx; local 27 GET_HIGH_WORD(hx,x); 28 return (int)((u_int32_t)((hx&0x7fffffff)-0x7ff00000)>>31);
|
H A D | s_frexp.c | 37 int32_t hx, ix, lx; local 38 EXTRACT_WORDS(hx,lx,x); 39 ix = 0x7fffffff&hx; 44 GET_HIGH_WORD(hx,x); 45 ix = hx&0x7fffffff; 49 hx = (hx&0x800fffff)|0x3fe00000; 50 SET_HIGH_WORD(x,hx);
|
H A D | s_frexpf.c | 28 int32_t hx,ix; local 29 GET_FLOAT_WORD(hx,x); 30 ix = 0x7fffffff&hx; 35 GET_FLOAT_WORD(hx,x); 36 ix = hx&0x7fffffff; 40 hx = (hx&0x807fffff)|0x3f000000; 41 SET_FLOAT_WORD(x,hx);
|
H A D | s_remquof.c | 32 int32_t n,hx,hy,hz,ix,iy,sx,i; local 35 GET_FLOAT_WORD(hx,x); 37 sxy = (hx ^ hy) & 0x80000000; 38 sx = hx&0x80000000; /* sign of x */ 39 hx ^=sx; /* |x| */ 43 if(hy==0||hx>=0x7f800000||hy>0x7f800000) /* y=0,NaN;or x not finite */ 45 if(hx<hy) { 48 } else if(hx==hy) { 54 if(hx<0x00800000) { /* subnormal x */ 55 for (ix = -126,i=(hx<< [all...] |
H A D | e_acoshf.c | 30 int32_t hx; local 31 GET_FLOAT_WORD(hx,x); 32 if(hx<0x3f800000) { /* x < 1 */ 34 } else if(hx >=0x4d800000) { /* x > 2**28 */ 35 if(hx >=0x7f800000) { /* x is inf of NaN */ 39 } else if (hx==0x3f800000) { 41 } else if (hx > 0x40000000) { /* 2**28 > x > 2 */
|
H A D | s_remquo.c | 34 int32_t n,hx,hy,hz,ix,iy,sx,i; local 37 EXTRACT_WORDS(hx,lx,x); 39 sxy = (hx ^ hy) & 0x80000000; 40 sx = hx&0x80000000; /* sign of x */ 41 hx ^=sx; /* |x| */ 45 if((hy|ly)==0||(hx>=0x7ff00000)|| /* y=0,or x not finite */ 48 if(hx<=hy) { 49 if((hx<hy)||(lx<ly)) { 60 if(hx<0x00100000) { /* subnormal x */ 61 if(hx [all...] |
H A D | s_nextafter.c | 32 int32_t hx,hy,ix,iy; local 35 EXTRACT_WORDS(hx,lx,x); 37 ix = hx&0x7fffffff; /* |x| */ 49 if(hx>=0) { /* x > 0 */ 50 if(hx>hy||((hx==hy)&&(lx>ly))) { /* x > y, x -= ulp */ 51 if(lx==0) hx -= 1; 55 if(lx==0) hx += 1; 58 if(hy>=0||hx>hy||((hx [all...] |
H A D | e_fmod.c | 31 int32_t n,hx,hy,hz,ix,iy,sx,i; local 34 EXTRACT_WORDS(hx,lx,x); 36 sx = hx&0x80000000; /* sign of x */ 37 hx ^=sx; /* |x| */ 41 if((hy|ly)==0||(hx>=0x7ff00000)|| /* y=0,or x not finite */ 44 if(hx<=hy) { 45 if((hx<hy)||(lx<ly)) return x; /* |x|<|y| return x */ 51 if(hx<0x00100000) { /* subnormal x */ 52 if(hx==0) { 55 for (ix = -1022,i=(hx<<1 [all...] |
H A D | e_log10f.c | 37 int32_t i,k,hx; local 39 GET_FLOAT_WORD(hx,x); 42 if (hx < 0x00800000) { /* x < 2**-126 */ 43 if ((hx&0x7fffffff)==0) 45 if (hx<0) return (x-x)/zero; /* log(-#) = NaN */ 47 GET_FLOAT_WORD(hx,x); 49 if (hx >= 0x7f800000) return x+x; 50 if (hx == 0x3f800000) 52 k += (hx>>23)-127; 53 hx [all...] |
H A D | e_log2f.c | 35 int32_t i,k,hx; local 37 GET_FLOAT_WORD(hx,x); 40 if (hx < 0x00800000) { /* x < 2**-126 */ 41 if ((hx&0x7fffffff)==0) 43 if (hx<0) return (x-x)/zero; /* log(-#) = NaN */ 45 GET_FLOAT_WORD(hx,x); 47 if (hx >= 0x7f800000) return x+x; 48 if (hx == 0x3f800000) 50 k += (hx>>23)-127; 51 hx [all...] |
H A D | s_cbrtf.c | 35 int32_t hx; local 39 GET_FLOAT_WORD(hx,x); 40 sign=hx&0x80000000; /* sign= sign(x) */ 41 hx ^=sign; 42 if(hx>=0x7f800000) return(x+x); /* cbrt(NaN,INF) is itself */ 45 if(hx<0x00800000) { /* zero or subnormal? */ 46 if(hx==0) 53 SET_FLOAT_WORD(t,sign|(hx/3+B1));
|
H A D | s_round.c | 39 uint32_t hx; local 41 GET_HIGH_WORD(hx, x); 42 if ((hx & 0x7fffffff) == 0x7ff00000) 45 if (!(hx & 0x80000000)) {
|
H A D | s_roundf.c | 37 uint32_t hx; local 39 GET_FLOAT_WORD(hx, x); 40 if ((hx & 0x7fffffff) == 0x7f800000) 43 if (!(hx & 0x80000000)) {
|
H A D | e_log2.c | 45 int32_t i,k,hx; local 48 EXTRACT_WORDS(hx,lx,x); 51 if (hx < 0x00100000) { /* x < 2**-1022 */ 52 if (((hx&0x7fffffff)|lx)==0) 54 if (hx<0) return (x-x)/zero; /* log(-#) = NaN */ 56 GET_HIGH_WORD(hx,x); 58 if (hx >= 0x7ff00000) return x+x; 59 if (hx == 0x3ff00000 && lx == 0) 61 k += (hx>>20)-1023; 62 hx [all...] |
H A D | s_copysign.c | 28 u_int32_t hx,hy; local 29 GET_HIGH_WORD(hx,x); 31 SET_HIGH_WORD(x,(hx&0x7fffffff)|(hy&0x80000000));
|
H A D | e_acosh.c | 45 int32_t hx; local 47 EXTRACT_WORDS(hx,lx,x); 48 if(hx<0x3ff00000) { /* x < 1 */ 50 } else if(hx >=0x41b00000) { /* x > 2**28 */ 51 if(hx >=0x7ff00000) { /* x is inf of NaN */ 55 } else if(((hx-0x3ff00000)|lx)==0) { 57 } else if (hx > 0x40000000) { /* 2**28 > x > 2 */
|
H A D | s_tanf.c | 40 int32_t n, hx, ix; local 42 GET_FLOAT_WORD(hx,x); 43 ix = hx & 0x7fffffff; 52 return __kernel_tandf(x + (hx>0 ? -t1pio2 : t1pio2), -1); 54 return __kernel_tandf(x + (hx>0 ? -t2pio2 : t2pio2), 1); 58 return __kernel_tandf(x + (hx>0 ? -t3pio2 : t3pio2), -1); 60 return __kernel_tandf(x + (hx>0 ? -t4pio2 : t4pio2), 1);
|
H A D | e_remainder.c | 37 int32_t hx,hp; local 41 EXTRACT_WORDS(hx,lx,x); 43 sx = hx&0x80000000; 45 hx &= 0x7fffffff; 49 if((hx>=0x7ff00000)|| /* x not finite */ 56 if (((hx-hp)|(lx-lp))==0) return zero*x; 71 GET_HIGH_WORD(hx,x); 72 if ((hx&0x7fffffff)==0) hx = 0; 73 SET_HIGH_WORD(x,hx [all...] |
H A D | e_remainderf.c | 28 int32_t hx,hp; local 32 GET_FLOAT_WORD(hx,x); 34 sx = hx&0x80000000; 36 hx &= 0x7fffffff; 40 if((hx>=0x7f800000)|| /* x not finite */ 46 if ((hx-hp)==0) return zero*x; 61 GET_FLOAT_WORD(hx,x); 62 if ((hx&0x7fffffff)==0) hx = 0; 63 SET_FLOAT_WORD(x,hx [all...] |
H A D | e_log10.c | 45 int32_t i,k,hx; local 48 EXTRACT_WORDS(hx,lx,x); 51 if (hx < 0x00100000) { /* x < 2**-1022 */ 52 if (((hx&0x7fffffff)|lx)==0) 54 if (hx<0) return (x-x)/zero; /* log(-#) = NaN */ 56 GET_HIGH_WORD(hx,x); 58 if (hx >= 0x7ff00000) return x+x; 59 if (hx == 0x3ff00000 && lx == 0) 61 k += (hx>>20)-1023; 62 hx [all...] |
H A D | s_nexttoward.c | 37 int32_t hx,ix; local 40 EXTRACT_WORDS(hx,lx,x); 41 ix = hx&0x7fffffff; /* |x| */ 54 if(hx>0.0 ^ x < y) { /* x -= ulp */ 55 if(lx==0) hx -= 1; 59 if(lx==0) hx += 1; 61 ix = hx&0x7ff00000; 66 INSERT_WORDS(x,hx,lx); 70 INSERT_WORDS(x,hx,lx);
|