Commit graph

1,211 commits

Author SHA1 Message Date
Brian Smith
e9202b0b0f Issue #2308 - Fix JSON BigInt regressions. https://bugzilla.mozilla.org/show_bug.cgi?id=1522433 2023-09-20 09:28:44 +08:00
Brian Smith
7392901a9b Issue #2026 Follow-up: Fill in missing BigInt64 cases in js::IsTypedArrayConstructor(). Hopefully fixes RSA errors on ProtonMail. 2023-09-20 09:28:07 +08:00
roytam1
c32aeee874 partly import changes from tenfourfox:
- update ESR base to 115; update EV roots, pins, TLDs, TZs; security pullup (55284dd80)
2023-09-01 10:07:24 +08:00
roytam1
92d9218cf1 Merge remote-tracking branch 'origin/tracking' into custom 2023-08-31 22:43:48 +08:00
Martok
6ff7b5269e Issue #2298 - Support '#x in obj' ergonomic brand check syntax 2023-08-31 22:39:41 +08:00
Martok
b0d9f0e2ed Issue #2298 - Carry private-ness of names through ParseNodeHandler 2023-08-31 22:38:30 +08:00
roytam1
4e8d205102 Merge remote-tracking branch 'origin/tracking' into custom 2023-08-17 09:19:05 +08:00
Brian Smith
9f80f52d0a Issue #2255 - Disable untested code path in Stopwatch.(h|cpp). https://bugzilla.mozilla.org/show_bug.cgi?id=1325299 Multiprocessor support in Windows returned bogus times causing debug asserts. This may or may not be related to the issue but found it trying to debug it. 2023-08-17 09:13:23 +08:00
roytam1
08a62b0b06 Merge remote-tracking branch 'origin/tracking' into custom 2023-08-10 22:14:40 +08:00
Martok
dc5702a0f2 Issue #2172 - add null zone sanity checks 2023-08-10 22:14:10 +08:00
Martok
8893997378 Issue #2172 - ensure pointers in RegExpShared are updated after GC compacting 2023-08-10 22:13:56 +08:00
Martok
cd1920af58 Issue #2172 - add missing RegExpShared TraceKind declaration 2023-08-10 22:13:21 +08:00
roytam1
1956d3d66b Merge remote-tracking branch 'origin/tracking' into custom 2023-08-08 10:09:40 +08:00
Brian Smith
0e1816aa4c No Issue - Fix building with --enable-js-lto Needed to include jscntxt.h due to de-unified building. 2023-08-08 09:43:24 +08:00
roytam1
65de5a7185 Merge remote-tracking branch 'origin/tracking' into custom 2023-07-29 23:43:29 +08:00
Brian Smith
5c3cedb141 Issue #1240 - Follow-up: Add missing JSVAL_TYPE_BIGINT cases in JitFrames.cpp. As pointed out by roytam1 during testing with Discord. 2023-07-29 23:43:04 +08:00
Brian Smith
df03810723 Issue #1240 - Follow-up: Fix incorrect values in Number() constructor. https://bugzilla.mozilla.org/show_bug.cgi?id=1466893 Our code base was using the return value to create the Number object. However with the BigInt changes, it is no longer stored in rval, use args[0]. 2023-07-29 23:42:50 +08:00
Brian Smith
b7e487bdf1 Issue #2026 - Part 4 - Fill in missing dense elements case and fix a comment. https://bugzilla.mozilla.org/show_bug.cgi?id=1456569 Skipped this during the initial implementation, not sure when or if this code path is used, but I figure it should be there just in case. Also fix debug builgs by removing an no longer valid MOZ_ASSERT. 2023-07-29 23:42:33 +08:00
Brian Smith
3ce9cf4deb Issue #2026 - Part 2b - Format BigInts representable as int64_t without first converting them to strings. https://bugzilla.mozilla.org/show_bug.cgi?id=1543677 2023-07-29 23:38:56 +08:00
Brian Smith
d972016c23 Issue #2026 - Part 2a - Support BigInt in NumberFormat and toLocaleString. https://bugzilla.mozilla.org/show_bug.cgi?id=1543677 2023-07-29 23:38:30 +08:00
Brian Smith
b64643e410 Issue #2026 - Part 1 - Implement BigInt64 and BigUint64Array. https://bugzilla.mozilla.org/show_bug.cgi?id=1456569 2023-07-29 23:38:09 +08:00
roytam1
bdc6b90572 js/BitInt: add BigInt support in JitFrames, fix crash in discord when posting. 2023-07-28 09:29:08 +08:00
roytam1
1977864a3a Merge remote-tracking branch 'origin/tracking' into custom 2023-07-25 09:16:25 +08:00
Brian Smith
15115c97fd Issue #1240 - Part 11 - Fix several issue reported on review. Skip over block delimiters when parsing BigInt literals. Update BigInt hashing to account for the possibility of moving GC. https://bugzilla.mozilla.org/show_bug.cgi?id=1531018 Make HashableValue comparison of BigInts infallible. https://bugzilla.mozilla.org/show_bug.cgi?id=1530406 Fix BigInt constructor API CallArgs usage. https://bugzilla.mozilla.org/show_bug.cgi?id=1526279 2023-07-25 09:15:38 +08:00
Brian Smith
2d5ee3c457 Issue #1240 - Part 10 - Implement minimal Ion support for BigInt. https://bugzilla.mozilla.org/show_bug.cgi?id=1507484 Implement IC support for BigInt. https://bugzilla.mozilla.org/show_bug.cgi?id=1522431 2023-07-25 09:15:18 +08:00
Brian Smith
4aa193b16b Issue #1240 - Part 9 - Fix incorrectly parsing decimal BigInt 0n. The decimal parser strips leading 0s, so prevent tokenbuf being empty. 2023-07-25 09:14:59 +08:00
Brian Smith
7a30b0fa2d Issue #1240 - Part 8 - Fix incorrect asserts with debug enabled. Fix BigInt errors in remainder operations https://bugzilla.mozilla.org/show_bug.cgi?id=1524136 Also fix 2 debug asserts in fallthroughs due to missing BigInt cases. 2023-07-25 09:14:42 +08:00
Brian Smith
1355043d40 Issue #1240 - Part 5g - Implement BigInt comparison operators. Implement BigInt support for equality operators. https://bugzilla.mozilla.org/show_bug.cgi?id=1486173 Part 3. Implement BigInt support for relational comparison operators. https://bugzilla.mozilla.org/show_bug.cgi?id=1492669 2023-07-25 09:14:06 +08:00
Brian Smith
bbbab3898f Issue #1240 - Part 6c - Implement asIntN and asUintN methods for BigInt values. https://bugzilla.mozilla.org/show_bug.cgi?id=1501104 2023-07-25 09:13:51 +08:00
Brian Smith
e004b99054 Issue #1240 - Part 6b - Use ToIndex when constructing TypedArray with length argument. https://bugzilla.mozilla.org/show_bug.cgi?id=1317383 Part 2. 2023-07-25 09:13:36 +08:00
Brian Smith
e8f0ea219f Issue #1240 - Part 6a - Implement BigInt.prototype.toLocaleString. https://bugzilla.mozilla.org/show_bug.cgi?id=1366287 Part 5. 2023-07-25 09:13:18 +08:00
Brian Smith
e3ec738471 Issue #1240 - Part 5f - Add DataView methods for BigInt access. https://bugzilla.mozilla.org/show_bug.cgi?id=1528582 2023-07-25 09:12:59 +08:00
Brian Smith
03734326e8 Issue #1240 - Part 5e - BigInt bitwise operators. https://bugzilla.mozilla.org/show_bug.cgi?id=1490387 2023-07-25 09:12:38 +08:00
Brian Smith
20b52c9e2e Issue #1240 - Part 5d - Use the radix when parsing BigInts. Fixes Hex, Octal and Binary BigInt literal parsing. Previously it was only parsing in decimal. 2023-07-25 09:12:20 +08:00
Brian Smith
d44e3c9941 Issue #1240 - Part 5c -Implement ToInt32OrBigInt operation. https://bugzilla.mozilla.org/show_bug.cgi?id=1490387 2023-07-25 09:12:02 +08:00
Brian Smith
44b5d8dec3 Issue #1240 - Part 5b - BigInt support for basic arithmetic operations. https://bugzilla.mozilla.org/show_bug.cgi?id=1471134 Parts 3-5. 2023-07-25 09:11:46 +08:00
Brian Smith
25ee810247 Issue #1240 - Part 5a - BigInt to Number conversion. https://bugzilla.mozilla.org/show_bug.cgi?id=1466893 2023-07-25 09:10:14 +08:00
Brian Smith
dc23241afb Issue #1240 - Part 4 - Implement parser support for BigInt literals. https://bugzilla.mozilla.org/show_bug.cgi?id=1505849 Partially based on https://bugzilla.mozilla.org/show_bug.cgi?id=1456568 Un-result-ified the BigInt XDR code, so we can enable it. https://bugzilla.mozilla.org/show_bug.cgi?id=1419094 Uninitialised memory read with BigInt right-shift https://bugzilla.mozilla.org/show_bug.cgi?id=1679003 2023-07-25 09:09:57 +08:00
Brian Smith
07b6c03dc7 Issue #1240 - Part 3c - Fast-forward to the V8 version of BigIntType. Disabling some sections temporarily since the dependencies are not there yet. Based on the following: https://bugzilla.mozilla.org/show_bug.cgi?id=1502797 https://bugzilla.mozilla.org/show_bug.cgi?id=1471134 https://bugzilla.mozilla.org/show_bug.cgi?id=1441098 Part 3 & 4 Add structured clone support for BigInt and Enable BigInt wrapping from DOM bindings. https://bugzilla.mozilla.org/show_bug.cgi?id=1522738 2023-07-25 09:09:18 +08:00
Brian Smith
d42d5ce138 Issue #1240 - Part 3b - Implement WrappingOperations.h for wraparound math operations & conversions. https://bugzilla.mozilla.org/show_bug.cgi?id=1441657 Implement mozilla::WrappingMultiply. Prerequisite for our V8 fast forward. 2023-07-25 09:08:56 +08:00
Brian Smith
ddd49121a6 Issue #1240 - Part 3a - Adjust mozilla::FloatingPoint<T>'s definition. So only the barest details are specified for floating-point encodings, with every other number, bit mask, &c. mathematically derived. Also add a bunch of documentation comments. https://bugzilla.mozilla.org/show_bug.cgi?id=1508725 Prerequisite for our V8 fast forward. 2023-07-25 09:08:39 +08:00
Brian Smith
13ac0d6483 Issue #1240 - Part 2 - Define the BigIntObject class for BigInt wrapper objects. Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1366287 Part 3. In our Part 3 we will fast forward to the V8 implementation skipping GMP. 2023-07-25 09:08:22 +08:00
Brian Smith
f041afc61d Issue #1240 - Part 1 - Define a new BigInt primitive type. Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1366287 Part 1.0. However leaving out the --enable-bigint changes. 2023-07-25 09:08:03 +08:00
roytam1
56216e737f Merge remote-tracking branch 'origin/tracking' into custom 2023-07-14 10:22:44 +08:00
Martok
76052fcda8 Issue #2271 - Use declared names of self-hosted functions for cloning
Ensure that cloning a self-hosted function always has access to the declared
name from the source and that it doesn't get lost on successive clones.
This is done by storing the declared name in an extended slot on rename, and
cloning it with the function.

Based-on: m-c 1546232
2023-07-14 10:20:43 +08:00
Martok
3eb7729d04 Issue #2271 - Separate cloning of native and interpreted functions
Separate code paths make it easier to follow and specialize than a single
one-size-fits-all function.

Based-on: m-c 1405766, 1411954
2023-07-14 10:20:28 +08:00
roytam1
522a2a6c64 Merge remote-tracking branch 'origin/tracking' into custom 2023-07-03 15:13:12 +08:00
Moonchild
81a3a92b04 [multiple] Update Intl tests. 2023-07-03 15:12:46 +08:00
Moonchild
f9c39acaa6 Issue #1656 - Follow-up: Re-nuke the vim lines introduced in #2265 2023-07-03 15:12:01 +08:00
Martok
4400677afe Issue #2046 - Implement Intl.DateTimeFormat's date-/timeStyle and hourCycle options
- remove mozExtensions flag and expose to client code

Based-on: m-c 1557718
2023-07-03 15:11:41 +08:00