Stephen Adams
1924d64351
[corelib] Fix for BigInt.toDouble() crash
...
Bug: 41819
Change-Id: Ied24b42728e1da0d713fe971386d4ef6a023333e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/147349
Reviewed-by: Bob Nystrom <rnystrom@google.com >
Commit-Queue: Stephen Adams <sra@google.com >
2020-05-09 00:22:16 +00:00
Stephen Adams
4babccd988
Fix non-web integer literals in corelib_2/bigint_test
...
Change-Id: I9cb66de2db293a033073ced7e6b9e3d19a1f3fb4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/108204
Commit-Queue: Stephen Adams <sra@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
2019-07-04 02:49:29 +00:00
Robert Nystrom
1734133f2c
Migrate tests off the ancient multitest marker syntax.
...
Change-Id: Iae025d9c544831e24debf0a670202ced8f252a97
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106201
Commit-Queue: Bob Nystrom <rnystrom@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
2019-06-19 21:15:30 +00:00
Régis Crelier
735669190e
[corelib BigInt] Fix implementation of BigInt.modInverse (fixes issue #37008 ).
...
A negative result was wrongly returned as a positive value.
Since positive values are preferred, the implementation now adds the modulus
enough times to make the result positive.
Change-Id: I87a2ceb359345846740a749ab6b46b1d45e7ba21
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/103664
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com >
2019-05-25 22:05:51 +00:00
Lasse R.H. Nielsen
2e9ff26527
Fix overflow bug in BigInt implementations.
...
Fixes #36105
Bug: http://dartbug.com/36105
Change-Id: I9adf70d11474f844d2a4fbf5fcc3754562b1cf65
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95644
Commit-Queue: Lasse R.H. Nielsen <lrn@google.com >
Reviewed-by: Erik Ernst <eernst@google.com >
2019-03-08 16:11:08 +00:00
Régis Crelier
c2a48ee065
[VM] Fix bigint left shift that could cause heap corruption when intrinsified.
...
The size of the result digit array was not computed correctly.
When 64-bit intrinsics are used, one extra digit pair must be allocated.
Change-Id: Id3ca3a16ef24b598e44bf25221d400b9be71248a
Reviewed-on: https://dart-review.googlesource.com/c/94683
Reviewed-by: Alexander Markov <alexmarkov@google.com >
Reviewed-by: Martin Kustermann <kustermann@google.com >
Commit-Queue: Régis Crelier <regis@google.com >
2019-03-01 18:59:10 +00:00
Daco Harkes
a867487dc1
[gardening] bigint__test make multi test and skip slow subtests on dartkb
...
Change-Id: I0684d4ab5e6c477a0f956c6dc5c290509d53a430
Reviewed-on: https://dart-review.googlesource.com/c/81366
Reviewed-by: Martin Kustermann <kustermann@google.com >
Commit-Queue: Daco Harkes <dacoharkes@google.com >
2018-10-25 10:12:12 +00:00
Régis Crelier
ea96922935
[Tests] Adjust iteration number and optimization threshold for slow bigint test.
...
Change-Id: Ibf3cf39f252e251de9998269c2101389446f1d8c
Reviewed-on: https://dart-review.googlesource.com/59901
Reviewed-by: Régis Crelier <regis@google.com >
Commit-Queue: Régis Crelier <regis@google.com >
2018-06-12 16:25:37 +00:00
Régis Crelier
87a46b8bee
[VM Bigint] Fix _convert() of classic reduction for negative Bigint ( fixes #33405 ).
...
Add regression test in existing bigint test.
Change-Id: I3dd0cc24ef19531dd16c89b4565f687a7b2b46bd
Reviewed-on: https://dart-review.googlesource.com/59820
Reviewed-by: Alexander Markov <alexmarkov@google.com >
Commit-Queue: Régis Crelier <regis@google.com >
2018-06-12 15:12:00 +00:00
Régis Crelier
4d271519a1
[VM Bigint] Fix arm64 intrinsic for _estimateQuotientDigit (loop missing jump back).
...
Add regression test.
Fix arm64 disassembler (was printing "unknow" instructions).
Make decoding stricter in arm64 simulator.
This fix addresses https://github.com/a14n/dart-rational/issues/19
Change-Id: I1b2ccb4bd560b588d0c4860c904cc398fba9014f
Reviewed-on: https://dart-review.googlesource.com/56740
Reviewed-by: Siva Annamalai <asiva@google.com >
Commit-Queue: Régis Crelier <regis@google.com >
2018-05-26 01:19:03 +00:00
Régis Crelier
e62dd0157e
[VM bigint] Fix padding length in Montgomery Reduction ( fixes #32626 ).
...
Add regression test to existing bigint test.
Change-Id: I9e470c4002c25493285ce6bb908375ff913a4e17
Reviewed-on: https://dart-review.googlesource.com/54070
Reviewed-by: Alexander Markov <alexmarkov@google.com >
2018-05-07 21:38:30 +00:00
Régis Crelier
d52a0419f6
[VM bigint] Fix digit array size calculation for _divRem result ( fixes #32739 ).
...
Add regression test to existing bigint test.
Change-Id: I35bc1d4e3c58b078f689b1fc63f97fa0b39f483d
Reviewed-on: https://dart-review.googlesource.com/50801
Reviewed-by: Alexander Markov <alexmarkov@google.com >
2018-04-11 23:27:51 +00:00
Régis Crelier
f2806ab624
[Corelib, VM runtime] Fix handling of zero operand in Bigint operations ( fixes #32465 ).
...
Fix VM, dart2js, and dcc Bigint implementations.
Add shift tests.
Re-enable Bigint intrinsics on VM.
Change-Id: Iec19eac8069cf17783a5346289ea2745ffcc7c26
Reviewed-on: https://dart-review.googlesource.com/46570
Reviewed-by: Florian Loitsch <floitsch@google.com >
Reviewed-by: Alexander Markov <alexmarkov@google.com >
2018-03-21 21:44:10 +00:00
Régis Crelier
4c9a842d61
[corelib] Cleanup isValidInt and toInt() in new BigInt implementation.
...
Change-Id: I1f107d4f6e26ea3644bc6c9f7cff5ee6fac43958
Reviewed-on: https://dart-review.googlesource.com/40512
Reviewed-by: Stephen Adams <sra@google.com >
Commit-Queue: Régis Crelier <regis@google.com >
2018-02-14 03:43:52 +00:00
Florian Loitsch
11eda99413
Allow different kind of errors when the bigint would be too large.
...
Fixes #31661 .
Bug: http://dartbug.com/31661
Change-Id: I3ea4ac51f84e50f63e8fdee1364637b91a6ef610
Reviewed-on: https://dart-review.googlesource.com/29800
Reviewed-by: Florian Loitsch <floitsch@google.com >
2017-12-15 10:38:39 +00:00
Florian Loitsch
1a61b425d1
Reland BigInt class.
...
Moved `parseRadix` into a separate test where it doesn't do 10 iterations.
This reverts commit ab4061471b .
Change-Id: Ie48216c2f4f077dc86f915a54021c39706c432e8
Reviewed-on: https://dart-review.googlesource.com/29593
Reviewed-by: Florian Loitsch <floitsch@google.com >
Commit-Queue: Florian Loitsch <floitsch@google.com >
2017-12-14 15:44:15 +00:00
pq
ab4061471b
Revert "Add BigInt class." [TBR].
...
This reverts commit f189bb57a4 .
Bug:
Change-Id: I7b1cc4ab69adb5142ff7b5abd563d3bf7371ebb9
Reviewed-on: https://dart-review.googlesource.com/29442
Reviewed-by: Phil Quitslund <pquitslund@google.com >
2017-12-13 21:12:02 +00:00
Florian Loitsch
f189bb57a4
Add BigInt class.
...
Change-Id: I6e7fed3913cdb8e69ea15f0c69e060cccd91a356
Reviewed-on: https://dart-review.googlesource.com/9820
Commit-Queue: Florian Loitsch <floitsch@google.com >
Reviewed-by: Régis Crelier <regis@google.com >
2017-12-13 18:23:51 +00:00