Lines Matching +full:- +full:u
36 ulpdown(d) U *d; in ulpdown()
38 ulpdown(U *d)
41 double u; local
42 ULong *L = d->L;
44 u = ulp(d);
47 u *= 0.5;
48 return u;
58 static FPI fpi = { 53, 1-1023-53+1, 2046-1023-53+1, 1, SI };
62 U *u; local
65 u = (U*)dd;
69 dval(&u[0]) = dval(&u[1]) = 0.;
73 dval(&u[0]) = dval(&u[1]) = 0.;
77 word0(&u[0]) = 0x80100000L;
79 word0(&u[1]) = 0x100000L;
87 word1(&u[0]) = bits[0];
88 word0(&u[0]) = bits[1];
92 word1(&u[0]) = bits[0];
93 word0(&u[0]) = (bits[1] & ~0x100000) | ((exp + 0x3ff + 52) << 20);
97 word0(&u[0]) |= sign;
98 j = STRTOG_Inexact - j;
103 if ((u->L[_0] & 0x7ff00000) < 0x3500000) {
104 word0(&u[1]) = word0(&u[0]) + 0x3500000;
105 word1(&u[1]) = word1(&u[0]);
106 dval(&u[1]) += ulp(&u[1]);
107 word0(&u[1]) -= 0x3500000;
108 if (!(word0(&u[1]) & 0x7ff00000)) {
109 word0(&u[1]) = sign;
110 word1(&u[1]) = 0;
115 dval(&u[1]) = dval(&u[0]) + ulp(&u[0]);
118 dval(&u[1]) = dval(&u[0]);
120 if ((word0(&u[0]) & 0x7ff00000) < 0x3500000) {
121 word0(&u[0]) += 0x3500000;
122 dval(&u[0]) -= ulpdown(u);
123 word0(&u[0]) -= 0x3500000;
124 if (!(word0(&u[0]) & 0x7ff00000)) {
125 word0(&u[0]) = sign;
126 word1(&u[0]) = 0;
131 dval(&u[0]) -= ulpdown(u);
134 dval(&u[1]) = dval(&u[0]);
139 word0(&u[0]) = word0(&u[1]) = sign | 0x7ff00000;
140 word1(&u[0]) = word1(&u[1]) = 0;
143 word0(&u[1]) = 0xffefffffL;
144 word1(&u[1]) = 0xffffffffL;
147 word0(&u[0]) = 0x7fefffffL;
148 word1(&u[0]) = 0xffffffffL;
154 u->L[0] = (u+1)->L[0] = d_QNAN0;
155 u->L[1] = (u+1)->L[1] = d_QNAN1;
159 word0(&u[0]) = word0(&u[1]) = 0x7ff00000 | sign | bits[1];
160 word1(&u[0]) = word1(&u[1]) = bits[0];