Commit graph

17 commits

Author SHA1 Message Date
Alex Shinn
eebe3f0448 Always normalize bignum results in sexp_mul. 2013-10-13 07:02:22 +09:00
Alex Shinn
d983a5571f Patch from Lorenzo for better handling of non-normalized bignums. 2013-10-13 06:55:48 +09:00
Alex Shinn
179aea56a0 Fix potential memory overwrite in sexp_bignum_fxmul.
Patch from Lorenzo.
2013-10-02 10:53:01 +09:00
Alex Shinn
7d2b60e1aa Fixing some bignum length comparisons. 2013-09-24 15:46:23 +09:00
Alex Shinn
52001c7d5e Adding a sanity check in sexp_bignum_sqrt. 2013-04-14 05:01:08 +00:00
ashinn
b16a214fee sexp_bignum_sqrt is only needed if SEXP_USE_MATH is enabled. 2013-03-23 21:16:21 +01:00
Alex Shinn
7dfad8a293 Don't gc release until after normalizing ratios.
Fixes issue #171.
2013-01-23 22:07:33 +09:00
Alex Shinn
2f56d37f0c Conservatively reducing an initial estimate. 2013-01-05 23:54:27 +09:00
Alex Shinn
c559ae11be Fixing fixnum results with remainders in bignum sqrt. 2013-01-05 23:38:20 +09:00
Alex Shinn
b42379539d Fixing termination condition in certain bignum sqrts, handling negative inputs. 2013-01-03 23:49:31 +09:00
Alex Shinn
1012f7e129 A followup patch for bignum addition carrying from Lorenzo. 2013-01-03 23:02:59 +09:00
Alex Shinn
c0b257db25 Fixing overflow checking in certain cases in bignum addition.
(patch from Lorenzo)
2012-12-31 10:51:42 +09:00
Alex Shinn
7ae254fc28 More accurate square roots for bignums - compute via iteration rather
than approximation via flonums for very large bignums.
2012-12-22 18:06:22 +09:00
Alex Shinn
d9f7c07f8e It's not sufficient to call sexp_negate on a copy of complex numbers,
since the negation can mutate the components.  We need to make a deep copy.
2012-12-12 10:55:02 +09:00
Alex Shinn
122d8b8a00 Properly handling +nan.0 and infinite comparisons. 2012-11-10 20:53:16 +09:00
Alex Shinn
ab42ea2cfb Coerce flonums to bignums instead of vice versa in comparisons.
Need to do the same for flonums <=> ratios but the conversion is
a hack right now.
2012-11-07 21:40:53 +09:00
Alex Shinn
93ba0926a7 Build fixes for plan9. Moving individual object files out of opt/ since plan9 mkfiles have issues with these. 2012-08-16 16:04:02 +09:00
Renamed from opt/bignum.c (Browse further)