summaryrefslogtreecommitdiff
path: root/bignum.c
Commit message (Expand)AuthorAgeFilesLines
* bignum.c, math.c: RB_BIGNUM_TYPE_Pnobu2013-09-071-22/+24
* bignum.c, math.c: type predicatesnobu2013-09-071-133/+91
* bignum.c: split rb_big_fdiv and big_fdivnobu2013-09-071-23/+25
* * bignum.c (GMP_DIV_DIGITS): New macro.akr2013-09-041-3/+98
* * bignum.c (bary_divmod_normal): Reduce temporary array allocations.akr2013-09-041-15/+14
* * bignum.c (rb_big_divrem_normal): Add GC guards.akr2013-09-041-0/+3
* * bignum.c (rb_big_divrem_normal): New function.akr2013-09-041-0/+32
* * bignum.c (bigdivrem_normal): Removed.akr2013-09-041-76/+81
* * bignum.c (bigdivrem): Useless declaration removed.akr2013-09-041-3/+0
* * bignum.c (bigdivrem_normal): Add assertions.akr2013-09-041-0/+3
* * bignum.c (GMP_STR2BIG_DIGITS): New macro.akr2013-09-031-0/+92
* * bignum.c (rb_str2big_poweroftwo): New function.akr2013-09-031-0/+111
* * bignum.c (str2big_scan_digits): Extracted from rb_cstr_to_inum.akr2013-09-031-32/+51
* * bignum.c (bytes_2comp): Define it only for little endianakr2013-09-021-0/+2
* * bignum.c (ISDIGIT): Unused macro removed.akr2013-09-021-3/+0
* * bignum.c (str2big_poweroftwo): Extracted from rb_cstr_to_inum.akr2013-09-021-117/+178
* * bignum.c (Init_Bignum): Define Bignum::GMP_VERSION when GMP is used.akr2013-09-011-0/+4
* * bignum.c (big2str_generic): Reduce arguments.akr2013-09-011-30/+36
* * bignum.c (GMP_BIG2STR_DIGITS): New constant.akr2013-09-011-0/+55
* * bignum.c (bary_mul_gmp): Use mpz_init and mpz_clear instead ofakr2013-09-011-2/+6
* * bignum.c (big2str_base_poweroftwo): Renamed fromakr2013-09-011-28/+54
* * bignum.c (big2str_2bdigits): Renamed from big2str_orig.akr2013-09-011-4/+4
* * bignum.c: Remove BITSPERDIG >= INT_MAX test. The static assertion,akr2013-09-011-4/+1
* * bignum.c (maxpow_in_bdigit): Removed.akr2013-09-011-37/+0
* * numeric.c (rb_fix_bit_length): Moved from bignum.c.akr2013-09-011-41/+0
* [DOC]akr2013-09-011-0/+4
* * internal.h (bit_length): Moved from bignum.c.akr2013-09-011-126/+0
* * bignum.c (bit_length): Renamed from bitsize.akr2013-08-311-11/+11
* * bignum.c (rb_big_bit_length): New method.akr2013-08-311-0/+110
* * bignum.c: Use GMP to accelerate big Bignum multiplication.akr2013-08-311-2/+60
* * bignum.c (BARY_SHORT_MUL): Renamed from BARY_MUL1.akr2013-08-241-7/+7
* * bignum.c (rb_big2str1): Make an expression more explicit.akr2013-08-181-1/+1
* * bignum.c (rb_big2str1): Use power_level instead of bitsize(xn).akr2013-08-171-1/+1
* * bignum.c (BIGDIVREM_EXTRA_WORDS): Redefine to 1.akr2013-08-171-21/+7
* * bignum.c (bigdivrem_single1): Renamed from bigdivrem_single. Addakr2013-08-161-7/+13
* * bignum.c (bary_small_rshift): Specify the higher BDIGIT instead ofakr2013-08-161-5/+3
* * bignum.c (bary_mul_toom3): Reduce a branch.akr2013-08-151-8/+6
* * bignum.c (bigdivrem_single): Use shift when y is a power of two.akr2013-08-151-9/+18
* * bignum.c (bigdivrem_restoring): Use bigdivrem_single if non-topmostakr2013-08-151-0/+10
* * bignum.c (rb_big2str1): Truncate topmost zeros of x.akr2013-08-151-14/+20
* * bignum.c (bary_divmod): Simplify an expression.akr2013-08-151-1/+1
* * bignum.c (bigdivrem_normal): Remove a local variable.akr2013-08-151-3/+1
* * bignum.c (big2str_karatsuba): Use bigdivrem_restoring directly toakr2013-08-151-18/+52
* * bignum.c (bigdivrem_restoring): xn argument removed.akr2013-08-131-3/+3
* * bignum.c (big_div_struct): Remove xn and j field. Add zn field. akr2013-08-131-13/+12
* * bignum.c (big_div_struct): ynzero field removed.akr2013-08-131-13/+13
* * bignum.c (bigdivrem_restoring): Extracted from bigdivrem_normal.akr2013-08-131-14/+23
* * bignum.c (bitsize): Fix a conditional expression.akr2013-08-101-1/+1
* * bignum.c (big_div_struct): Use size_t.akr2013-08-091-11/+11
* bignum.c: suppress warningnobu2013-08-091-1/+1