Lines Matching defs:s
18 // Translated from Figure 3-40 of The PowerPC Compiler Writer's Guide
38 if (n.s.high == 0) {
39 if (d.s.high == 0) {
44 *rem = n.s.low % d.s.low;
45 return n.s.low / d.s.low;
51 *rem = n.s.low;
54 // n.s.high != 0
55 if (d.s.low == 0) {
56 if (d.s.high == 0) {
61 *rem = n.s.high % d.s.low;
62 return n.s.high / d.s.low;
64 // d.s.high != 0
65 if (n.s.low == 0) {
70 r.s.high = n.s.high % d.s.high;
71 r.s.low = 0;
74 return n.s.high / d.s.high;
79 if ((d.s.high & (d.s.high - 1)) == 0) /* if d is a power of 2 */ {
81 r.s.low = n.s.low;
82 r.s.high = n.s.high & (d.s.high - 1);
85 return n.s.high >> ctzsi(d.s.high);
90 sr = clzsi(d.s.high) - clzsi(n.s.high);
100 q.s.low = 0;
101 q.s.high = n.s.low << (n_uword_bits - sr);
103 r.s.high = n.s.high >> sr;
104 r.s.low = (n.s.high << (n_uword_bits - sr)) | (n.s.low >> sr);
105 } else /* d.s.low != 0 */ {
106 if (d.s.high == 0) {
110 if ((d.s.low & (d.s.low - 1)) == 0) /* if d is a power of 2 */ {
112 *rem = n.s.low & (d.s.low - 1);
113 if (d.s.low == 1)
115 sr = ctzsi(d.s.low);
116 q.s.high = n.s.high >> sr;
117 q.s.low = (n.s.high << (n_uword_bits - sr)) | (n.s.low >> sr);
123 sr = 1 + n_uword_bits + clzsi(d.s.low) - clzsi(n.s.high);
128 q.s.low = 0;
129 q.s.high = n.s.low;
130 r.s.high = 0;
131 r.s.low = n.s.high;
133 q.s.low = 0;
134 q.s.high = n.s.low << (n_uword_bits - sr);
135 r.s.high = n.s.high >> sr;
136 r.s.low = (n.s.high << (n_uword_bits - sr)) | (n.s.low >> sr);
138 q.s.low = n.s.low << (n_udword_bits - sr);
139 q.s.high = (n.s.high << (n_udword_bits - sr)) |
140 (n.s.low >> (sr - n_uword_bits));
141 r.s.high = 0;
142 r.s.low = n.s.high >> (sr - n_uword_bits);
148 sr = clzsi(d.s.high) - clzsi(n.s.high);
158 q.s.low = 0;
160 q.s.high = n.s.low;
161 r.s.high = 0;
162 r.s.low = n.s.high;
164 q.s.high = n.s.low << (n_uword_bits - sr);
165 r.s.high = n.s.high >> sr;
166 r.s.low = (n.s.high << (n_uword_bits - sr)) | (n.s.low >> sr);
178 r.s.high = (r.s.high << 1) | (r.s.low >> (n_uword_bits - 1));
179 r.s.low = (r.s.low << 1) | (q.s.high >> (n_uword_bits - 1));
180 q.s.high = (q.s.high << 1) | (q.s.low >> (n_uword_bits - 1));
181 q.s.low = (q.s.low << 1) | carry;
188 const di_int s = (di_int)(d.all - r.all - 1) >> (n_udword_bits - 1);
189 carry = s & 1;
190 r.all -= d.all & s;