Lines Matching +full:0 +full:xe
77 xm += 0x3 + ((xm >> 3) & 1); in ieee754dp_get_rounding()
78 /* xm += (xm&0x8)?0x4:0x3 */ in ieee754dp_get_rounding()
82 xm += 0x8; in ieee754dp_get_rounding()
86 xm += 0x8; in ieee754dp_get_rounding()
96 * xe is an unbiased exponent
99 union ieee754dp ieee754dp_format(int sn, int xe, u64 xm) in ieee754dp_format() argument
103 assert((xm >> (DP_FBITS + 1 + 3)) == 0); /* no excess */ in ieee754dp_format()
106 if (xe < DP_EMIN) { in ieee754dp_format()
108 int es = DP_EMIN - xe; in ieee754dp_format()
119 if (sn == 0) in ieee754dp_format()
120 return ieee754dp_min(0); in ieee754dp_format()
124 if (sn == 0) in ieee754dp_format()
125 return ieee754dp_zero(0); in ieee754dp_format()
131 if (xe == DP_EMIN - 1 && in ieee754dp_format()
140 xe++; in ieee754dp_format()
146 xe += es; in ieee754dp_format()
147 assert((xm & (DP_HIDDEN_BIT << 3)) == 0); in ieee754dp_format()
148 assert(xe == DP_EMIN); in ieee754dp_format()
153 if ((xm & (DP_HIDDEN_BIT << 3)) == 0) { in ieee754dp_format()
165 xe++; in ieee754dp_format()
171 assert((xm >> (DP_FBITS + 1)) == 0); /* no excess */ in ieee754dp_format()
172 assert(xe >= DP_EMIN); in ieee754dp_format()
174 if (xe > DP_EMAX) { in ieee754dp_format()
184 if (sn == 0) in ieee754dp_format()
185 return ieee754dp_inf(0); in ieee754dp_format()
189 if (sn == 0) in ieee754dp_format()
190 return ieee754dp_max(0); in ieee754dp_format()
197 if ((xm & DP_HIDDEN_BIT) == 0) { in ieee754dp_format()
199 assert(xe == DP_EMIN); in ieee754dp_format()
204 assert((xm >> (DP_FBITS + 1)) == 0); /* no excess */ in ieee754dp_format()
207 return builddp(sn, xe + DP_EBIAS, xm & ~DP_HIDDEN_BIT); in ieee754dp_format()