Repository navigation
JSBigInt: sub-quadratic multiply/divide/toString/fromString, interruption, and a 1 << 30 bit limit - #507
Merged
Claude / Claude Code Review
completed
Aug 24, 2026 in 30m 43s
Code review found 2 potential issues
Found 2 candidates, confirmed 2. See review comments for details.
Details
| Severity | Count |
|---|---|
| 🔴 Important | 0 |
| 🟡 Nit | 2 |
| 🟣 Pre-existing | 0 |
| Severity | File:Line | Issue |
|---|---|---|
| 🟡 Nit | JSTests/stress/big-int-out-of-memory-tests.js:8-9 |
Tests now allocating ~128MB BigInts lack $memoryLimited skip |
| 🟡 Nit | JSTests/stress/bigint-terminate-exponentiate.js:8-10 |
Unused x/y setup in bigint-terminate-{exponentiate,parse,tostring}.js |
Annotations
Check warning on line 9 in JSTests/stress/big-int-out-of-memory-tests.js
claude / Claude Code Review
Tests now allocating ~128MB BigInts lack $memoryLimited skip
With `maxLengthBits` at `1 << 30`, this test now holds a ~128 MB BigInt live but has no `//@ skip if $memoryLimited` (or `//@ memoryHog!`) directive, so it may OOM spuriously on memory-limited CI configs. Same omission in `bigint-exponential-oom.js` (`2n ** 1073741823n`) and the maxLength-boundary block of `bigint-inc-dec-in-place.js`. Since this PR already adds `//@ memoryHog!` / `//@ skip if $memoryLimited` to the codegen-OOM and `bigint-terminate-*` tests for the same reason, adding the direc
Check warning on line 10 in JSTests/stress/bigint-terminate-exponentiate.js
claude / Claude Code Review
Unused x/y setup in bigint-terminate-{exponentiate,parse,tostring}.js
Copy-paste residue: `x` and `y` are built here but the operation under test (`3n ** 600000000n`) uses neither — same in `bigint-terminate-parse.js:8-9` (both unused) and `bigint-terminate-tostring.js:9` (`y` unused). Each unused value is a ~64 MB allocation eating into the 300 ms watchdog budget; worth trimming.
Loading