Brian Smith
eef37b2cd5
Issue #2387 - Collection of fixes related to a crash while canceling a dynamic import. Add AddRef/Release hooks for embedding's script or module private value and set this script source object where appropriate. https://bugzilla.mozilla.org/show_bug.cgi?id=1519140 Partial, no Value passing changes. Clear the list of dynamic import requests after cancelling them in ScriptLoader::ParsingComplete as we do for other requests. https://bugzilla.mozilla.org/show_bug.cgi?id=1291535 ScriptLoader::OnStreamComplete never returns a failure. https://bugzilla.mozilla.org/show_bug.cgi?id=1627275 Also cancel the correct kind of parser for Modules.
2023-11-30 09:51:50 +08:00
Basilisk-Dev
ae5bfc9ff2
No Issue - StructuredClone serialize and deserialize should treat back reference consistently
...
Backport of https://bugzilla.mozilla.org/show_bug.cgi?id=1538622
2023-11-10 15:31:51 +08:00
Basilisk-Dev
727a24d78e
No issue - Structured clone algorithm doesn't serialize Array Length contrary to HTML spec, resulting in truncation of trailing sparse arrays like [1,2,3,,]
...
Backport of https://bugzilla.mozilla.org/show_bug.cgi?id=1476955
2023-11-10 15:31:33 +08:00
Brian Smith
cd66a17327
Issue #2354 - Restore ARM32 buildability on Linux. Fix ION breakages due to BigInt changes. Fix breakages from libjpeg, libyuv and libvpx upgrades. Restore ARM(32/64) NEON FPU support in libyuv.
2023-11-04 11:36:56 +08:00
Moonchild
e65b46ba0f
Issue #2350 - Part 2: Allow "maximumFractionDigits" option in Intl.NumberFormat to be less than the default minimum fraction digits.
...
This implements the changes from the "has consensus" PR in TC39
The second pair of `DefaultNumberOption()` calls was inlined, because
only the fallback case is relevant anyway.
Steps 12.d and 12.e from the spec PR were combined into a single
`if`-block. That way it also matches step 12.f more closely.
Also changed the single `if` steps into an `if-else if` chain, because
the steps are mutually exclusive.
2023-10-21 11:04:15 +08:00
Moonchild
be81bae5b7
Issue #2350 - Part 1: Apply "minimumIntegerDigits" to number-formatters with fraction-digits.
...
Implements the changes to `SetNumberFormatDigitOptions` and
`FormatNumberToString`, except for the support of the new
"compact-rounding" mode.
This also includes a few minor fixes for edge cases (like -0 vs. 0)
2023-10-21 11:03:56 +08:00
Moonchild
735bb78c28
Issue #2350 - Part 0: Add a helper function DefaultNumberOption
...
This is the abstract operation that converts an option value to a number
value, checking whether it is in the allowed range, and filling in a
fallback value if necessary.
2023-10-21 11:03:34 +08:00
Brian Smith
46024cd872
Issue #1442 Follow-up: Stop pretending proxies have a JSNative call/construct hook. https://bugzilla.mozilla.org/show_bug.cgi?id=1471924 Part 1 Also remove an erroneous debug assert and guard against future issues. This fixes crashes on vk.com but still does not behave correctly.
2023-10-18 09:48:01 +08:00
Brian Smith
41409ab613
Issue #1442 & #1691 Follow-up - Part 22 - Changes that came with Dynamic Module Import. At the time we did not have ReadableStreams in our tree so these changes were left out. https://bugzilla.mozilla.org/show_bug.cgi?id=1499140 Implement support for dynamic module import in the interpreter.
2023-10-04 10:03:49 +08:00
Brian Smith
0701dccaca
Issue #1442 - Part 5: Implement WebIDL bindings for Streams. https://bugzilla.mozilla.org/show_bug.cgi?id=1128959
2023-10-04 09:54:00 +08:00
Brian Smith
9b9075eef6
Issue #1442 - Part 4: Add JSAPI functions for working with ReadableStream. https://bugzilla.mozilla.org/show_bug.cgi?id=1272697
2023-10-04 09:53:45 +08:00
Brian Smith
54e84f0f1d
Issue #1442 - Part 3: Implement ReadableStream and associated classes in the JS engine. https://bugzilla.mozilla.org/show_bug.cgi?id=1272697
2023-10-04 09:53:29 +08:00
Brian Smith
62467428a3
Issue #1442 - Part 2: Add a run-time preference for toggling the streams API. https://bugzilla.mozilla.org/show_bug.cgi?id=1272697
2023-10-04 09:53:12 +08:00
Brian Smith
90ca1f569a
Issue #1442 - Part 1: Change ArrayBufferCopyData self-hosting intrinsic to take a start offset for the destination. This will be needed to manage stream chunks. https://bugzilla.mozilla.org/show_bug.cgi?id=1272697
2023-10-04 09:52:57 +08:00
Brian Smith
6d1b63e21b
No Issue - IonMonkey: Don't test for a 3-byte opcode in a 2-byte opcode predicate. https://bugzilla.mozilla.org/show_bug.cgi?id=1390214 Silence increasingly loud warnings from clang, also could cause errant behavior.
2023-09-29 09:42:05 +08:00
André Bargull
51e4b86e6d
[js] Handle dead wrappers
2023-09-28 11:50:55 +08:00
Brian Smith
61b73a894a
Issue #2313 - Implement WebAssembly sign extension opcodes. https://bugzilla.mozilla.org/show_bug.cgi?id=1389461
2023-09-26 16:06:17 +08:00
Moonchild
3798308cff
Issue #2307 - Follow-up: remove some missed SIMD scalar types.
2023-09-26 16:03:23 +08:00
Moonchild
45c19ce1c5
Issue #2307 - Part 3b: Fix build bustage.
2023-09-22 09:57:05 +08:00
Moonchild
50a4412750
Issue #2307 - Part 3: Remove SIMD.js support
...
This gets rid of the SIMD-specific scalar types in JS.
This considerably deviates from Mozilla's work because of our divergent
path.
2023-09-22 09:56:35 +08:00
Moonchild
b086ec848b
Issue #2307 - Part 2b: Remove superfluous dev comment
2023-09-22 09:52:53 +08:00
Moonchild
20f39d9450
Issue #2307 - Part 2: Move SIMD code generation to masm methods
2023-09-22 09:52:31 +08:00
Moonchild
ba51ff6a74
Issue #2307 - Part 1: Extend masm with the pmovmskb SSE2 instruction.
2023-09-22 09:52:02 +08:00
Brian Smith
8f44226445
Issue #2308 & #1240 Follow-up - Fill in missing JSOP_INC/DEC cases for Doubles in Ion.
2023-09-20 09:31:08 +08:00
Brian Smith
209d714434
Issue #2308 & #1240 Follow-up - Replace JSOP_POS in ++/-- with JSOP_TONUMERIC. https://bugzilla.mozilla.org/show_bug.cgi?id=1519135
2023-09-20 09:30:06 +08:00
Brian Smith
2b637c564f
Issue #2308 & #1240 Follow-up - Fill in missing JSOP_INC/DEC cases for Ion on Intel32/64.
2023-09-20 09:29:46 +08:00
Brian Smith
e12e377e51
Issue #2308 & #1240 Follow-up - Add BigInt support to JSOP_INC and JSOP_DEC. https://bugzilla.mozilla.org/show_bug.cgi?id=1526309
2023-09-20 09:29:18 +08:00
Brian Smith
5c8a6c5bb8
Issue #2308 & #1240 Follow-up - Introduce new increment and decrement operations. https://bugzilla.mozilla.org/show_bug.cgi?id=1508521
2023-09-20 09:29:01 +08:00
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
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
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
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
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
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
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
4a3f1b7570
Issue #1240 - Part 7 - Handle BigInt values in XPCVariant code. https://bugzilla.mozilla.org/show_bug.cgi?id=1603055
2023-07-25 09:14:25 +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