Lines Matching defs:word
141 /* Digits in a word, primarily useful for the most significant word. */
143 mpd_word_digits(mpd_uint_t word)
145 if (word < mpd_pow10[9]) {
146 if (word < mpd_pow10[4]) {
147 if (word < mpd_pow10[2]) {
148 return (word < mpd_pow10[1]) ? 1 : 2;
150 return (word < mpd_pow10[3]) ? 3 : 4;
152 if (word < mpd_pow10[6]) {
153 return (word < mpd_pow10[5]) ? 5 : 6;
155 if (word < mpd_pow10[8]) {
156 return (word < mpd_pow10[7]) ? 7 : 8;
160 if (word < mpd_pow10[14]) {
161 if (word < mpd_pow10[11]) {
162 return (word < mpd_pow10[10]) ? 10 : 11;
164 if (word < mpd_pow10[13]) {
165 return (word < mpd_pow10[12]) ? 12 : 13;
169 if (word < mpd_pow10[18]) {
170 if (word < mpd_pow10[16]) {
171 return (word < mpd_pow10[15]) ? 15 : 16;
173 return (word < mpd_pow10[17]) ? 17 : 18;
176 return (word < mpd_pow10[19]) ? 19 : 20;
180 mpd_word_digits(mpd_uint_t word)
182 if (word < mpd_pow10[4]) {
183 if (word < mpd_pow10[2]) {
184 return (word < mpd_pow10[1]) ? 1 : 2;
186 return (word < mpd_pow10[3]) ? 3 : 4;
188 if (word < mpd_pow10[6]) {
189 return (word < mpd_pow10[5]) ? 5 : 6;
191 if (word < mpd_pow10[8]) {
192 return (word < mpd_pow10[7]) ? 7 : 8;
195 return (word < mpd_pow10[9]) ? 9 : 10;
221 /* Most significant word */
229 /* Most significant digit of a word */
231 mpd_msd(mpd_uint_t word)
235 n = mpd_word_digits(word);
236 return word / mpd_pow10[n-1];
239 /* Least significant digit of a word */
241 mpd_lsd(mpd_uint_t word)
243 return word % 10;
369 /* Odd word */
371 mpd_isoddword(mpd_uint_t word)
373 return word & 1;
894 r = (r == 0) ? MPD_RDIGITS : r; /* digits in the most significant word */
930 mpd_uint_t word;
935 word = dec->data[i];
937 while (word % 10 == 0) {
938 word /= 10;
974 mpd_word_ispow10(mpd_uint_t word)
978 n = mpd_word_digits(word);
979 if (word == mpd_pow10[n-1]) {
999 /* All digits of a word are nines */
1001 mpd_word_isallnine(mpd_uint_t word)
1005 n = mpd_word_digits(word);
1006 if (word == mpd_pow10[n]-1) {
2533 mpd_uint_t rnd = 0, rest = 0, word;
2535 word = data[len-1];
2538 _mpd_divmod_pow10(&rnd, &rest, word, mpd_word_digits(word)-1);
2718 /* most significant word of small */
2909 /* most significant word of small */
3228 /* most significant word of small */
4388 MPD_NEW_CONST(word,0,0,1,1,1,1);
4462 word.data[0] = j;
4463 mpd_setdigits(&word);
4464 mpd_qdiv(&tmp, result, &word, &workctx, &workctx.status);
7433 mpd_uint_t dummy, word;
7438 _mpd_get_msdigits(&dummy, &word, v, MPD_RDIGITS);
7439 n = mpd_word_digits(word);
7440 word *= mpd_pow10[MPD_RDIGITS-n];
7443 (void)_mpd_shortdiv(z->data, p10data, 2, word);
8362 * The least significant word of the result is (*rdata)[0].
8441 * The least significant word of the result is (*rdata)[0].
8535 * The least significant word of the source is srcdata[0].
8589 * The least significant word of the source is srcdata[0].