Lines Matching refs:mant

42 	unsigned int mant, frac;  in eexp2()  local
73 mant = exp2s[(pwr >> 20) & 7]; in eexp2()
78 asm("mulhwu %0,%1,%2" : "=r" (frac) : "r" (frac), "r" (mant)); in eexp2()
79 mant += frac; in eexp2()
82 return mant + (exp << 23); in eexp2()
86 mant += 1 << (exp - 1); in eexp2()
87 return mant >> exp; in eexp2()
96 int exp, mant, lz, frac; in elog2() local
99 mant = s & 0x7fffff; in elog2()
101 if (mant != 0) in elog2()
105 if ((exp | mant) == 0) /* +0 or -0 */ in elog2()
110 asm("cntlzw %0,%1" : "=r" (lz) : "r" (mant)); in elog2()
111 mant <<= lz - 8; in elog2()
114 mant |= 0x800000; in elog2()
118 if (mant >= 0xb504f3) { /* 2^0.5 * 2^23 */ in elog2()
120 asm("mulhwu %0,%1,%2" : "=r" (mant) in elog2()
121 : "r" (mant), "r" (0xb504f334)); /* 2^-0.5 * 2^32 */ in elog2()
123 if (mant >= 0x9837f0) { /* 2^0.25 * 2^23 */ in elog2()
125 asm("mulhwu %0,%1,%2" : "=r" (mant) in elog2()
126 : "r" (mant), "r" (0xd744fccb)); /* 2^-0.25 * 2^32 */ in elog2()
128 if (mant >= 0x8b95c2) { /* 2^0.125 * 2^23 */ in elog2()
130 asm("mulhwu %0,%1,%2" : "=r" (mant) in elog2()
131 : "r" (mant), "r" (0xeac0c6e8)); /* 2^-0.125 * 2^32 */ in elog2()
133 if (mant > 0x800000) { /* 1.0 * 2^23 */ in elog2()
137 : "r" ((mant - 0x800000) << 1), "r" (0xb0c7cd3a)); in elog2()
159 int exp, mant; in ctsxs() local
162 mant = x & 0x7fffff; in ctsxs()
163 if (exp == 255 && mant != 0) in ctsxs()
174 mant |= 0x800000; in ctsxs()
175 mant = (mant << 7) >> (30 - exp); in ctsxs()
176 return (x & 0x80000000)? -mant: mant; in ctsxs()
182 unsigned int mant; in ctuxs() local
185 mant = x & 0x7fffff; in ctuxs()
186 if (exp == 255 && mant != 0) in ctuxs()
201 mant |= 0x800000; in ctuxs()
202 mant = (mant << 8) >> (31 - exp); in ctuxs()
203 return mant; in ctuxs()