aboutsummaryrefslogtreecommitdiffstats
path: root/bignum.c
Commit message (Expand)AuthorAgeFilesLines
* * configure.in: Check __builtin_popcountl, __builtin_bswap32 andakr2013-07-141-4/+4
* * bignum.c (bary_subb): Support xn < yn.akr2013-07-141-38/+35
* * bignum.c (DIGSPERLONG): Unused macro removed.akr2013-07-131-6/+0
* * bignum.c (rb_big_aref): Less scan when the number is negative.akr2013-07-131-14/+12
* * bignum.c (big_shift): Avoid signed integer overflow.akr2013-07-131-1/+1
* * bignum.c (bary_mul_precheck): Use bary_small_lshift orakr2013-07-131-8/+17
* * bignum.c (big_shift3): New function.akr2013-07-131-93/+122
* * bignum.c (bary_small_lshift): Use size_t instead of long.akr2013-07-131-3/+3
* * bignum.c (bary_small_lshift): Functions moved to removeakr2013-07-131-32/+29
* * bignum.c (biglsh_bang): Removed.akr2013-07-131-63/+4
* * bignum.c: Don't use toom3 after once karatsuba is choosen.akr2013-07-111-21/+74
* * bignum.c: Add a static assertion for RBIGNUM_EMBED_LEN_MAX.akr2013-07-101-0/+1
* * bignum.c (bary_2comp): Don't use bary_plus_one.akr2013-07-101-15/+22
* bignum.c: sizeof_bdigit_dblnobu2013-07-101-0/+2
* * bignum.c (SIZEOF_BDIGIT_DBL): Add a ifdef guard for test.akr2013-07-101-6/+8
* bignum.c: select by preprocessor conditionsnobu2013-07-101-30/+24
* * bignum.c (bary_mul): x*1 is x.akr2013-07-091-0/+11
* * bignum.c (bary_mul_single): Invoke MEMZERO here.akr2013-07-091-4/+2
* * bignum.c (bary_mul1): No need to invoke MEMZERO at last.akr2013-07-091-1/+0
* * bignum.c (biglsh_bang): Don't shift a BDIGIT with BITSPERDIG bits.akr2013-07-081-20/+27
* * bignum.c (bigrsh_bang): Fix bignum digits overrun.akr2013-07-081-2/+2
* * bignum.c (biglsh_bang): Fix bignum digits under-run.akr2013-07-081-2/+2
* * bignum.c (bary_mul): Arguments for work memory added.akr2013-07-081-23/+27
* * bignum.c (rb_big_sq_fast): New function for testing.akr2013-07-081-3/+22
* * bignum.c (bary_mul_balance): Initialize a local variable to suppressakr2013-07-081-1/+1
* * bignum.c (bary_mul_balance): Reduce work memory.akr2013-07-081-10/+28
* * bignum.c (bary_mul): Add a RB_GC_GUARD.akr2013-07-071-0/+1
* * bignum.c (bary_mul_karatsuba): Unreachable code removed. Removeakr2013-07-071-14/+6
* * internal.h (rb_big_mul_normal): Declared.akr2013-07-071-0/+37
* Useless comment removed.akr2013-07-071-5/+0
* * bignum.c: Reorder functions to decrease forward reference.akr2013-07-071-1202/+1199
* * bignum.c: (bigsub_core): Use bary_sub.akr2013-07-071-245/+368
* * bignum.c (bary_sq_fast): Extracted from bigsqr_fast andakr2013-07-071-11/+23
* * bignum.c (BARY_MUL1): Renamed from BARY_MUL.akr2013-07-041-9/+9
* * bignum.c (bary_mul_balance): Extracted from bigmul1_balance andakr2013-07-041-20/+38
* bignum.c: constifynobu2013-07-041-10/+10
* * bignum.c (maxpow_in_bdigit_dbl): Use tables if available.akr2013-07-041-10/+219
* * bignum.c (rb_cstr_to_inum): Avoid temporary buffer allocation exceptakr2013-07-041-56/+75
* * internal.h (ruby_digit36_to_number_table): Declared.akr2013-07-031-6/+1
* * bignum.c (maxpow_in_bdigit): Renamed from calc_hbase and returnakr2013-07-031-19/+19
* * bignum.c (roomof): Cast to long.akr2013-07-021-2/+2
* * bignum.c (rb_cstr_to_inum): fix 64 bit to 32 bit shorten warningcharliesome2013-07-021-4/+4
* * bignum.c (rb_cstr_to_inum): Merge two temporary buffers.akr2013-07-021-7/+5
* * bignum.c (rb_cstr_to_inum): Use BDIGIT_DBL to collect adjacent digits.akr2013-07-021-15/+36
* * bignum.c (bary_mul2): New function.akr2013-07-011-20/+111
* * bignum.c (rb_cstr_to_inum): Skip leading zeros.akr2013-07-011-0/+3
* * bignum.c (nlz16): New function.akr2013-06-301-23/+86
* * bignum.c (rb_cstr_to_inum): Use rb_integer_unpack if base is a powerakr2013-06-301-51/+64
* * bignum.c (big_rshift): Use abs2twocomp and twocomp2abs_bang.akr2013-06-291-17/+12
* * bignum.c (RBIGNUM_SET_NEGATIVE_SIGN): New macro.akr2013-06-291-9/+20