- 09 Nov, 2021 1 commit
-
-
Al Muthanna Athamina authored
We want to skip the readability/check rule on the bigint directory while keeping the rest of the linting. Bug: v8:12024 Change-Id: I56f84554af9aa44d4436249916269b5441d4fbaa Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3264221Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Almothana Athamneh <almuthanna@chromium.org> Cr-Commit-Position: refs/heads/main@{#77796}
-
- 27 Jul, 2021 1 commit
-
-
Jakob Kummerow authored
It was previously only passed to compilation units in src/bigint/, but inconsistencies arise when it's not passed to other compilation units that #include src/bigint/bigint.h. Fixed: chromium:1233397 Change-Id: Idb310d8c13bad12766699086574aa2c3869eb56c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3056452Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#75941}
-
- 15 Jul, 2021 1 commit
-
-
Jakob Kummerow authored
Dividing by first computing a multiplicative inverse is faster than Burnikel-Ziegler division for very large inputs. Bug: v8:11515 Change-Id: Ice45690c3fa4eef7102d418cdd3d82a942a076c5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3015573 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#75743}
-
- 09 Jul, 2021 3 commits
-
-
Jakob Kummerow authored
The Schönhage-Strassen method for *very* large inputs. This is a reland of 347ba357, with added zero-initialization to pacify MSan (spurious report). Originally: > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3000742 > Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Maya Lekova <mslekova@chromium.org> > Cr-Commit-Position: refs/heads/master@{#75659} Bug: v8:11515 Change-Id: Ieac6e174bde6eb09af0a9a9a49969feabca79e81 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3018081Reviewed-by:
Maya Lekova <mslekova@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#75663}
-
Leszek Swirski authored
This reverts commit 347ba357. Reason for revert: MSAN https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Linux%20-%20arm64%20-%20sim%20-%20MSAN/39275/overview Original change's description: > [bigint] FFT-based multiplication > > The Schönhage-Strassen method for *very* large inputs. > > Bug: v8:11515 > Change-Id: Ie8613f54928c9d3f6ff24e3102bc809de9f4496e > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3000742 > Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Maya Lekova <mslekova@chromium.org> > Cr-Commit-Position: refs/heads/master@{#75659} Bug: v8:11515 Change-Id: Ib0601e91bbd8ac5732b57730e3507eb0fa7e3947 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3015574 Auto-Submit: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#75660}
-
Jakob Kummerow authored
The Schönhage-Strassen method for *very* large inputs. Bug: v8:11515 Change-Id: Ie8613f54928c9d3f6ff24e3102bc809de9f4496e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3000742 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#75659}
-
- 07 Jul, 2021 1 commit
-
-
Jakob Kummerow authored
A generalization of Karatsuba's idea for even larger inputs. Bug: v8:11515 Change-Id: I50eac2d313bf4217bf2f55ca2e64b5f120f40206 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2999870 Auto-Submit: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Reviewed-by:
Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#75598}
-
- 02 Jul, 2021 1 commit
-
-
Jakob Kummerow authored
Bug: v8:11515 Change-Id: I598e57de1c7d6219096dd2306fa206faf7247bb5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2999869 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#75526}
-
- 25 Jun, 2021 1 commit
-
-
Jakob Kummerow authored
This just moves the existing algorithm, and translates it from Handle<BigInt> to Digits as underlying data format. Bug: v8:11515 Change-Id: Ieefee4e953e14f4c574aebab94d825ddb7c31f8c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2975304 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#75391}
-
- 22 Jun, 2021 1 commit
-
-
Jakob Kummerow authored
The Burnikel-Ziegler division algorithm is used for divisors with 57 or more internal digits. It has better asymptotic complexity than "schoolbook" division because it can make use of fast multiplication under the hood. Bug: v8:11515 Change-Id: Ib5d573a0afa560d42972c4ae06aff810a8b9cadb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2960221 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#75310}
-
- 15 Jun, 2021 1 commit
-
-
Jakob Kummerow authored
No changes to the algorithm; minor speedup due to the move from Handle<BigInt> to Digits. Bug: v8:11515 Change-Id: Id85fe4f0c276d3ad826fee79205719092d0e0715 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2947412 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#75158}
-
- 07 Jun, 2021 1 commit
-
-
Jakob Kummerow authored
This is a reland of 81dd3f42, which was a reland of 59eff3bf Original change's description: > [bigint] Karatsuba multiplication > > The Karatsuba algorithm is used for BigInts with 34 or more internal > digits, and thanks to better asymptotic complexity provides greater > speedups the bigger the inputs. > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2782283 > Reviewed-by: Michael Achenbach <machenbach@chromium.org> > Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> > Cr-Commit-Position: refs/heads/master@{#74916} Bug: v8:11515 Change-Id: I08f7d59dfa39fb3b532684685afd9fa750e0e84e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2933666Reviewed-by:
Clemens Backes <clemensb@chromium.org> Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#74969}
-
- 02 Jun, 2021 4 commits
-
-
Clemens Backes authored
This reverts commit 81dd3f42. Reason for revert: Does not compile on MSVC: https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Win64%20-%20msvc/18017/overview Original change's description: > Reland "[bigint] Karatsuba multiplication" > > This is a reland of 59eff3bf > > Original change's description: > > [bigint] Karatsuba multiplication > > > > The Karatsuba algorithm is used for BigInts with 34 or more internal > > digits, and thanks to better asymptotic complexity provides greater > > speedups the bigger the inputs. > > > > Bug: v8:11515 > > Change-Id: I5ab0e318173ea4a02ced3f156d3c17e0259c5036 > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2782283 > > Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> > > Reviewed-by: Michael Achenbach <machenbach@chromium.org> > > Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#74916} > > Bug: v8:11515 > Change-Id: I5ece2ff29ef11ea304980c053887d9746cfc80bc > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2933497 > Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> > Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> > Cr-Commit-Position: refs/heads/master@{#74922} Bug: v8:11515 Change-Id: Ie4a80256174fc8d9f714c01f012ac2dc6247a220 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2933665 Auto-Submit: Clemens Backes <clemensb@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#74926}
-
Jakob Kummerow authored
This is a reland of 59eff3bf Original change's description: > [bigint] Karatsuba multiplication > > The Karatsuba algorithm is used for BigInts with 34 or more internal > digits, and thanks to better asymptotic complexity provides greater > speedups the bigger the inputs. > > Bug: v8:11515 > Change-Id: I5ab0e318173ea4a02ced3f156d3c17e0259c5036 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2782283 > Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Michael Achenbach <machenbach@chromium.org> > Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> > Cr-Commit-Position: refs/heads/master@{#74916} Bug: v8:11515 Change-Id: I5ece2ff29ef11ea304980c053887d9746cfc80bc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2933497Reviewed-by:
Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#74922}
-
Maya Lekova authored
This reverts commit 59eff3bf. Reason for revert: Breaks UBSan - https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Linux64%20UBSan/16697/overview Original change's description: > [bigint] Karatsuba multiplication > > The Karatsuba algorithm is used for BigInts with 34 or more internal > digits, and thanks to better asymptotic complexity provides greater > speedups the bigger the inputs. > > Bug: v8:11515 > Change-Id: I5ab0e318173ea4a02ced3f156d3c17e0259c5036 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2782283 > Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Michael Achenbach <machenbach@chromium.org> > Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> > Cr-Commit-Position: refs/heads/master@{#74916} Bug: v8:11515 Change-Id: Ifd3d651a26441ba36a23724c6eb1a9915f6e41a8 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2933496 Auto-Submit: Maya Lekova <mslekova@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#74918}
-
Jakob Kummerow authored
The Karatsuba algorithm is used for BigInts with 34 or more internal digits, and thanks to better asymptotic complexity provides greater speedups the bigger the inputs. Bug: v8:11515 Change-Id: I5ab0e318173ea4a02ced3f156d3c17e0259c5036 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2782283 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Reviewed-by:
Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/master@{#74916}
-
- 19 Apr, 2021 1 commit
-
-
Jakob Kummerow authored
Also replace the schoolbook algorithm with an optimized version that runs about twice as fast. This also adds infrastructure to support interrupt checks from BigInt library code. Bug: v8:11515 Change-Id: I5f812913697384afca98937e1fb7361b4ec22d62 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2773043 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Reviewed-by:
Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/master@{#74045}
-