• Home
  • Raw
  • Download

Lines Matching refs:b

198 #define Sign_Extend(a,b) if (b < 0) a |= 0xffff0000;  argument
200 #define Sign_Extend(a,b) /*no-op*/
227 #define Storeinc(a,b,c) \ argument
229 (u_short)b, ((u_short *)(void *)a)[0] = (u_short)c, a++)
231 #define Storeinc(a,b,c) \ argument
233 (u_short)b, ((u_short *)(void *)a)[1] = (u_short)c, a++)
328 #define rounded_product(a,b) a = rnd_prod(a, b) argument
329 #define rounded_quotient(a,b) a = rnd_quot(a, b) argument
336 #define rounded_product(a,b) a *= b argument
337 #define rounded_quotient(a,b) a /= b argument
471 (b, m, a) Bigint *b; int m, a; in multadd() argument
473 (Bigint *b, int m, int a) /* multiply by m and add a */
483 if (b == BIGINT_INVALID)
484 return b;
486 wds = b->wds;
487 x = b->x;
504 if (wds >= b->maxwds) {
505 b1 = Balloc(b->k+1);
507 Bfree(b);
510 Bcopy_valid(b1, b);
511 Bfree(b);
512 b = b1;
514 b->x[wds++] = a;
515 b->wds = wds;
517 return b;
528 Bigint *b; local
535 b = Balloc(k);
536 if (b == BIGINT_INVALID)
537 return b;
538 b->x[0] = y9;
539 b->wds = 1;
541 b = Balloc(k+1);
542 if (b == BIGINT_INVALID)
543 return b;
545 b->x[0] = y9 & 0xffff;
546 b->wds = (b->x[1] = y9 >> 16) ? 2 : 1;
552 do b = multadd(b, 10, *s++ - '0');
559 b = multadd(b, 10, *s++ - '0');
560 return b;
653 Bigint *b; local
655 b = Balloc(1);
656 if (b != BIGINT_INVALID) {
657 b->x[0] = i;
658 b->wds = 1;
660 return b;
666 (a, b) Bigint *a, *b; in mult() argument
668 (Bigint *a, Bigint *b)
679 if (a == BIGINT_INVALID || b == BIGINT_INVALID)
682 if (a->wds < b->wds) {
684 a = b;
685 b = c;
689 wb = b->wds;
700 xb = b->x;
762 (b, k) Bigint *b; int k; in pow5mult() argument
764 (Bigint *b, int k)
771 if (b == BIGINT_INVALID)
772 return b;
775 b = multadd(b, p05[i-1], 0);
778 return b;
784 Bfree(b);
793 b1 = mult(b, p5);
794 Bfree(b);
795 b = b1;
802 Bfree(b);
812 return b;
818 (b, k) Bigint *b; int k; in lshift() argument
820 (Bigint *b, int k)
827 if (b == BIGINT_INVALID)
828 return b;
835 k1 = b->k;
836 n1 = n + b->wds + 1;
837 for(i = b->maxwds; n1 > i; i <<= 1)
841 Bfree(b);
847 x = b->x;
848 xe = x + b->wds;
878 Bfree(b);
885 (a, b) Bigint *a, *b; in cmp() argument
887 (Bigint *a, Bigint *b)
893 if (a == BIGINT_INVALID || b == BIGINT_INVALID)
901 j = b->wds;
905 if (j > 1 && !b->x[j-1])
912 xb0 = b->x;
926 (a, b) Bigint *a, *b; in diff() argument
928 (Bigint *a, Bigint *b)
939 if (a == BIGINT_INVALID || b == BIGINT_INVALID)
942 i = cmp(a,b);
953 a = b;
954 b = c;
966 wb = b->wds;
967 xb = b->x;
1133 Bigint *b; local
1151 b = Balloc(1);
1153 b = Balloc(2);
1155 if (b == BIGINT_INVALID)
1156 return b;
1157 x = b->x;
1178 i = b->wds = (x[1] = z) ? 2 : 1;
1187 i = b->wds = 1;
1233 b->wds = i + 1;
1256 return b;
1264 (a, b) Bigint *a, *b; in ratio() argument
1266 (Bigint *a, Bigint *b)
1272 if (a == BIGINT_INVALID || b == BIGINT_INVALID)
1276 value(db) = b2d(b, &kb);
1278 k = ka - kb + 32*(a->wds - b->wds);
1280 k = ka - kb + 16*(a->wds - b->wds);
1912 (b, S) Bigint *b, *S; in quorem() argument
1914 (Bigint *b, Bigint *S)
1926 if (b == BIGINT_INVALID || S == BIGINT_INVALID)
1931 /*debug*/ if (b->wds > n)
1934 if (b->wds < n)
1938 bx = b->x;
1972 bx = b->x;
1975 b->wds = n;
1978 if (cmp(b, S) >= 0) {
1982 bx = b->x;
2007 bx = b->x;
2012 b->wds = n;
2122 Bigint *b, *b1, *delta, *mhi, *S; local
2183 b = d2b(value(d), &be, &bbits);
2312 Bfree(b);
2504 b1 = mult(mhi, b);
2505 Bfree(b);
2506 b = b1;
2509 b = pow5mult(b, j);
2512 b = pow5mult(b, b5);
2567 b = lshift(b, b2);
2571 if (cmp(b,S) < 0) {
2573 b = multadd(b, 10, 0); /* we botched the k estimate */
2580 if (ilim < 0 || cmp(b,S = multadd(S,5,0)) <= 0) {
2607 dig = quorem(b,S) + '0';
2611 j = cmp(b, mlo);
2613 jj1 = delta->sign ? 1 : cmp(b, delta);
2631 b = lshift(b, 1);
2632 jj1 = cmp(b, S);
2652 b = multadd(b, 10, 0);
2663 *s++ = dig = quorem(b,S) + '0';
2666 b = multadd(b, 10, 0);
2671 b = lshift(b, 1);
2672 j = cmp(b, S);
2695 Bfree(b);