Lines Matching +full:0 +full:xe
77 xm += 0x3 + ((xm >> 3) & 1); in ieee754sp_get_rounding()
78 /* xm += (xm&0x8)?0x4:0x3 */ in ieee754sp_get_rounding()
82 xm += 0x8; in ieee754sp_get_rounding()
86 xm += 0x8; in ieee754sp_get_rounding()
96 * xe is an unbiased exponent
99 union ieee754sp ieee754sp_format(int sn, int xe, unsigned int xm) in ieee754sp_format() argument
103 assert((xm >> (SP_FBITS + 1 + 3)) == 0); /* no excess */ in ieee754sp_format()
106 if (xe < SP_EMIN) { in ieee754sp_format()
108 int es = SP_EMIN - xe; in ieee754sp_format()
119 if (sn == 0) in ieee754sp_format()
120 return ieee754sp_min(0); in ieee754sp_format()
124 if (sn == 0) in ieee754sp_format()
125 return ieee754sp_zero(0); in ieee754sp_format()
131 if (xe == SP_EMIN - 1 && in ieee754sp_format()
140 xe++; in ieee754sp_format()
145 xe += es; in ieee754sp_format()
146 assert((xm & (SP_HIDDEN_BIT << 3)) == 0); in ieee754sp_format()
147 assert(xe == SP_EMIN); in ieee754sp_format()
152 if ((xm & (SP_HIDDEN_BIT << 3)) == 0) { in ieee754sp_format()
164 xe++; in ieee754sp_format()
170 assert((xm >> (SP_FBITS + 1)) == 0); /* no excess */ in ieee754sp_format()
171 assert(xe >= SP_EMIN); in ieee754sp_format()
173 if (xe > SP_EMAX) { in ieee754sp_format()
183 if (sn == 0) in ieee754sp_format()
184 return ieee754sp_inf(0); in ieee754sp_format()
188 if (sn == 0) in ieee754sp_format()
189 return ieee754sp_max(0); in ieee754sp_format()
196 if ((xm & SP_HIDDEN_BIT) == 0) { in ieee754sp_format()
198 assert(xe == SP_EMIN); in ieee754sp_format()
203 assert((xm >> (SP_FBITS + 1)) == 0); /* no excess */ in ieee754sp_format()
206 return buildsp(sn, xe + SP_EBIAS, xm & ~SP_HIDDEN_BIT); in ieee754sp_format()