Lines Matching +full:32 +full:- +full:bits
42 static FPI fpi0 = { 106, 1-1023, 2046-1023-106+1, 1, 1 };
44 static FPI fpi0 = { 106, 1-1023-53+1, 2046-1023-106+1, 1, 0 };
46 ULong bits[4]; local
60 rv = strtodg(s, sp, fpi, &exp, bits);
65 u->d[0] = u->d[1] = 0.;
69 u->L[_1] = (bits[1] >> 21 | bits[2] << 11) & 0xffffffffL;
70 u->L[_0] = (bits[2] >> 21) | ((bits[3] << 11) & 0xfffff)
73 if (bits[1] &= 0x1fffff) {
74 i = hi0bits(bits[1]) - 11;
76 i = exp - 1;
80 exp -= i;
82 bits[1] = bits[1] << i | bits[0] >> (32-i);
83 bits[0] = bits[0] << i & 0xffffffffL;
86 else if (bits[0]) {
87 i = hi0bits(bits[0]) + 21;
89 i = exp - 1;
93 exp -= i;
94 if (i < 32) {
95 bits[1] = bits[0] >> (32 - i);
96 bits[0] = bits[0] << i & 0xffffffffL;
99 bits[1] = bits[0] << (i - 32);
100 bits[0] = 0;
104 u->L[2] = u->L[3] = 0;
107 u->L[2+_1] = bits[0];
108 u->L[2+_0] = (bits[1] & 0xfffff) | (exp << 20);
112 if (bits[3])
114 if (bits[2])
116 if (bits[1] & 0xffe00000)
119 u->L[2] = u->L[3] = 0;
120 u->L[_1] = bits[0];
121 u->L[_0] = bits[1];
125 i = hi0bits(bits[3]) - 11; /* i >= 12 */
126 j = 32 - i;
127 u->L[_0] = ((bits[3] << i | bits[2] >> j) & 0xfffff)
128 | ((65 - i) << 20);
129 u->L[_1] = (bits[2] << i | bits[1] >> j) & 0xffffffffL;
130 u->L[2+_0] = bits[1] & ((1L << j) - 1);
131 u->L[2+_1] = bits[0];
135 i = hi0bits(bits[2]) - 11;
137 j = -i;
138 i += 32;
139 u->L[_0] = (bits[2] >> j & 0xfffff) | (33 + j) << 20;
140 u->L[_1] = ((bits[2] << i) | (bits[1] >> j)) & 0xffffffffL;
141 u->L[2+_0] = bits[1] & ((1L << j) - 1);
142 u->L[2+_1] = bits[0];
146 u->L[_0] = (bits[2] & 0xfffff) | (33 << 20);
147 u->L[_1] = bits[1];
148 u->L[2+_0] = 0;
149 u->L[2+_1] = bits[0];
152 j = 32 - i;
153 u->L[_0] = (((bits[2] << i) | (bits[1] >> j)) & 0xfffff)
155 u->L[_1] = (bits[1] << i | bits[0] >> j) & 0xffffffffL;
156 u->L[2+_0] = 0;
157 u->L[2+_1] = bits[0] & ((1L << j) - 1);
161 j = 11 - hi0bits(bits[1]);
162 i = 32 - j;
163 u->L[_0] = (bits[1] >> j & 0xfffff) | ((j + 1) << 20);
164 u->L[_1] = (bits[1] << i | bits[0] >> j) & 0xffffffffL;
165 u->L[2+_0] = 0;
166 u->L[2+_1] = bits[0] & ((1L << j) - 1);
170 u->L[_0] = u->L[2+_0] = 0x7ff00000;
171 u->L[_1] = u->L[2+_1] = 0;
175 u->L[0] = u->L[2] = d_QNAN0;
176 u->L[1] = u->L[3] = d_QNAN1;
179 u->L[ _0] |= 0x80000000L;
180 u->L[2+_0] |= 0x80000000L;