Lines Matching refs:mantissa

32 	deUint32	mantissa;
42 mantissa = x.u & 0x007fffffu;
53 mantissa = mantissa | 0x00800000u;
55 /* Round mantissa to nearest (10+e) */
59 deUint32 b = (mantissa >> t) & 1u;
61 mantissa = (mantissa + a + b) >> t;
64 return (deFloat16) (sign | mantissa);
68 if (mantissa == 0u)
76 mantissa >>= 13u;
77 return (deFloat16) (sign | 0x7c00u | mantissa | (mantissa == 0u));
83 mantissa = mantissa + 0x00000fffu + ((mantissa >> 13u) & 1u);
85 if (mantissa & 0x00800000u)
87 /* Overflow in mantissa. */
88 mantissa = 0u;
98 return (deFloat16) (sign | ((deUint32)expotent << 10u) | (mantissa >> 13u));
106 deUint64 mantissa;
116 mantissa = x.u & 0x00fffffffffffffu;
127 mantissa = mantissa | 0x0010000000000000u;
129 /* Round mantissa to nearest (10+e) */
133 deUint64 b = (mantissa >> t) & 1u;
135 mantissa = (mantissa + a + b) >> t;
138 return (deFloat16) (sign | mantissa);
142 if (mantissa == 0u)
150 mantissa >>= 42u;
151 return (deFloat16) (sign | 0x7c00u | mantissa | (mantissa == 0u));
157 mantissa = mantissa + 0x000001ffffffffffu + ((mantissa >> 42u) & 1u);
159 if (mantissa & 0x010000000000000u)
161 /* Overflow in mantissa. */
162 mantissa = 0u;
171 return (deFloat16) (sign | ((deUint32)expotent << 10u) | (mantissa >> 42u));
221 deUint32 mantissa;
230 mantissa = x.u & 0x007fffffu;
241 if (mantissa == 0u)
249 mantissa >>= 13u; /* 16-bit floats has 10-bit for mantissa, 13-bit less than 32-bit floats. */
250 /* Make sure we don't turn NaN into zero by | (mantissa == 0). */
251 return (deFloat16) (sign | 0x7c00u | mantissa | (mantissa == 0u));
257 * we can only shift the mantissa further right.
259 * Note that the most significant bit in the mantissa of a denormalized float is already -1 as for exponent.
260 * So, we just need to right shift the mantissa -exp16 bits.
261 * * If exp16 is 0, mantissa shifting requirement is similar to the above.
267 /* 16-bit floats have only 10 bits for mantissa. Minimal 16-bit denormalized float is (2^-10) * (2^-14). */
274 /* Add the implicit leading 1 in mormalized float to mantissa. */
275 mantissa |= 0x00800000u;
276 /* We have a (23 + 1)-bit mantissa, but 16-bit floats only expect 10-bit mantissa.
282 mantissa >>= (14 - exp16);
286 /* mantissa in the above may exceed 10-bits, in which case overflow happens.
289 mantissa = roundToNearestEven(mantissa, 14 - exp16);
291 return (deFloat16) (sign | mantissa);
298 return (deFloat16) (sign | ((deUint32)exp16 << 10u) | (mantissa >> 13u));
302 mantissa = roundToNearestEven(mantissa, 13);
304 exp16 = (exp16 << 10u) + (mantissa & (1 << 10));
305 mantissa &= (1u << 10) - 1;
306 return (deFloat16) (sign | ((deUint32) exp16) | mantissa);
378 deUint64 mantissa;
387 mantissa = x.u & 0x00fffffffffffffu;
398 if (mantissa == 0u)
406 mantissa >>= 42u; /* 16-bit floats has 10-bit for mantissa, 42-bit less than 64-bit floats. */
407 /* Make sure we don't turn NaN into zero by | (mantissa == 0). */
408 return (deFloat16) (sign | 0x7c00u | mantissa | (mantissa == 0u));
414 * we can only shift the mantissa further right.
416 * Note that the most significant bit in the mantissa of a denormalized float is already -1 as for exponent.
417 * So, we just need to right shift the mantissa -exp16 bits.
418 * * If exp16 is 0, mantissa shifting requirement is similar to the above.
424 /* 16-bit floats have only 10 bits for mantissa. Minimal 16-bit denormalized float is (2^-10) * (2^-14). */
431 /* Add the implicit leading 1 in mormalized float to mantissa. */
432 mantissa |= 0x0010000000000000u;
433 /* We have a (23 + 1)-bit mantissa, but 16-bit floats only expect 10-bit mantissa.
439 mantissa >>= (43 - exp16);
443 /* mantissa in the above may exceed 10-bits, in which case overflow happens.
446 mantissa = roundToNearestEven64(mantissa, 43 - exp16);
448 return (deFloat16) (sign | mantissa);
455 return (deFloat16) (sign | ((deUint32)exp16 << 10u) | (mantissa >> 42u));
459 mantissa = roundToNearestEven64(mantissa, 42);
461 exp16 = (exp16 << 10u) + (deFloat16)(mantissa & (1 << 10));
462 mantissa &= (1u << 10) - 1;
463 return (deFloat16) (sign | ((deUint32) exp16) | mantissa);
493 deUint32 mantissa;
504 mantissa = (deUint32)val16 & 0x000003ffu;
508 if (mantissa == 0u)
518 while (!(mantissa & 0x00000400u))
520 mantissa <<= 1u;
525 mantissa &= ~0x00000400u;
530 if (mantissa == 0u)
539 x.u = (sign << 31u) | 0x7f800000u | (mantissa << 13u);
545 mantissa = mantissa << 13u;
547 x.u = (sign << 31u) | (expotent << 23u) | mantissa;
555 deUint64 mantissa;
566 mantissa = (deUint32)val16 & 0x000003ffu;
570 if (mantissa == 0u)
580 while (!(mantissa & 0x00000400u))
582 mantissa <<= 1u;
587 mantissa &= ~0x00000400u;
592 if (mantissa == 0u)
601 x.u = (sign << 63u) | 0x7ff0000000000000u | (mantissa << 42u);
607 mantissa = mantissa << 42u;
609 x.u = (sign << 63u) | (expotent << 52u) | mantissa;