1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

* bignum.c (bigdivrem_restoring): xn argument removed.

(bigdivrem_normal): Follow the above change.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42548 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
akr 2013-08-13 15:54:27 +00:00
parent 02d1a121bd
commit 38be07f833
2 changed files with 8 additions and 3 deletions

View file

@ -1,3 +1,8 @@
Wed Aug 14 00:51:14 2013 Tanaka Akira <akr@fsij.org>
* bignum.c (bigdivrem_restoring): xn argument removed.
(bigdivrem_normal): Follow the above change.
Wed Aug 14 00:18:39 2013 Tanaka Akira <akr@fsij.org>
* bignum.c (big_div_struct): Remove xn and j field. Add zn field.

View file

@ -2696,7 +2696,7 @@ bigdivrem_single(BDIGIT *qds, const BDIGIT *xds, size_t xn, BDIGIT y)
}
static void
bigdivrem_restoring(BDIGIT *zds, size_t zn, size_t xn, BDIGIT *yds, size_t yn)
bigdivrem_restoring(BDIGIT *zds, size_t zn, BDIGIT *yds, size_t yn)
{
struct big_div_struct bds;
size_t ynzero;
@ -2709,7 +2709,7 @@ bigdivrem_restoring(BDIGIT *zds, size_t zn, size_t xn, BDIGIT *yds, size_t yn)
bds.yds = yds + ynzero;
bds.stop = Qfalse;
bds.zn = zn - ynzero;
if (xn > 10000 || yn > 10000) {
if (bds.zn > 10000 || bds.yn > 10000) {
retry:
bds.stop = Qfalse;
rb_thread_call_without_gvl(bigdivrem1, &bds, rb_big_stop, &bds);
@ -2742,7 +2742,7 @@ bigdivrem_normal(BDIGIT *zds, size_t zn, const BDIGIT *xds, size_t xn, BDIGIT *y
}
if (xn+1 < zn) zds[xn+1] = 0;
bigdivrem_restoring(zds, zn, xn, yds, yn);
bigdivrem_restoring(zds, zn, yds, yn);
if (needs_mod && shift) {
bary_small_rshift(zds, zds, yn, shift, 0);