Lines Matching defs:pu
37 * Convert a hexadecimal record in *pd to unpacked form in *pu.
45 __hex_to_unpacked(decimal_record *pd, unpacked *pu)
49 pu->sign = pd->sign;
50 pu->fpclass = pd->fpclass;
55 * digit while the radix point in *pu lies to the right of the
58 pu->exponent = pd->exponent + (pd->ndigits << 2) - 1;
62 pu->significand[i] = 0;
68 pu->significand[i >> 3] |= HEXVAL(pd->ds[i]) <<
73 if (pu->significand[0] == 0) {
74 pu->fpclass = fp_zero;
79 while (pu->significand[0] < 0x80000000u) {
80 pu->significand[0] = (pu->significand[0] << 1) |
81 (pu->significand[1] >> 31);
82 pu->significand[1] = (pu->significand[1] << 1) |
83 (pu->significand[2] >> 31);
84 pu->significand[2] = (pu->significand[2] << 1) |
85 (pu->significand[3] >> 31);
86 pu->significand[3] <<= 1;
87 pu->exponent--;
92 pu->significand[4] = 1;