divisor 938 src/bignum.c static ScmBignum *bignum_gdiv(ScmBignum *dividend, ScmBignum *divisor, divisor 942 src/bignum.c int d = div_normalization_factor(divisor->values[divisor->size-1]); divisor 963 src/bignum.c ALLOC_TEMP_BIGNUM(v, divisor->size); divisor 966 src/bignum.c n = divisor->size*2 - 1; divisor 969 src/bignum.c n = divisor->size*2; divisor 973 src/bignum.c bignum_lshift(v, divisor, d); divisor 1038 src/bignum.c static u_long bignum_sdiv(ScmBignum *dividend, u_long divisor) divisor 1045 src/bignum.c q1 = pu[n] / divisor + q0; divisor 1046 src/bignum.c r1 = ((pu[n] % divisor) << HALF_BITS) + HI(pu[n-1]); divisor 1047 src/bignum.c q0 = ((r1 / divisor) << HALF_BITS); divisor 1048 src/bignum.c r0 = r1 % divisor; divisor 1052 src/bignum.c q1 = pu[0] / divisor + q0; divisor 1053 src/bignum.c r1 = pu[0] % divisor; divisor 1059 src/bignum.c ScmObj Scm_BignumDivSI(ScmBignum *dividend, long divisor, long *remainder) divisor 1061 src/bignum.c u_long dd = (divisor < 0)? -divisor : divisor; divisor 1063 src/bignum.c int d_sign = (divisor < 0)? -1 : 1; divisor 1083 src/bignum.c ScmObj Scm_BignumDivRem(ScmBignum *dividend, ScmBignum *divisor) divisor 1088 src/bignum.c if (Scm_BignumAbsCmp(dividend, divisor) < 0) { divisor 1092 src/bignum.c q = make_bignum(dividend->size - divisor->size + 1); divisor 1093 src/bignum.c r = bignum_gdiv(dividend, divisor, q); divisor 1094 src/bignum.c q->sign = dividend->sign * divisor->sign;