summaryrefslogtreecommitdiff
path: root/js/src/vm
Commit message (Collapse)AuthorAge
* Issue #1952 - m-c 1365387: Optimize FinishBoundFunctionInit by delaying ↵Martok2022-07-01
| | | | atomizing the function name
* Issue #1742 - Part 5: Remove unnecessary GCPtr::unbarrieredGetJeremy Andrews2022-05-27
| | | | Ref: BZ 1323441
* Issue #1742 - Part 4: Don't trigger read barriers when comparing wrapped ↵Jeremy Andrews2022-05-27
| | | | | | | | | pointers types This is actually an undocumented dependency of Bug 1325406 for Linux and SunOS. Ref: BZ 1308236
* Issue #1742 - Remove the ambiguous portions of gc that dealt with taggedMoonchild2022-05-25
| | | | | | | pointers for shapes. Nobody likes "isNullLike(obj)" when trying to garbage collect. It either is or is not. Master Yoda would be pleased with this change.
* Issue #1742 - Part 3: use JS::PropertyResult instead of Shape*Moonchild2022-05-24
| | | | | This is the meat of the issue and switches using raw shape pointers out for PropertyResult objects where feasible.
* Issue #1742 - Part 1: Refactor rooting base class templatesMoonchild2022-05-24
| | | | Based on Bug 1325406
* Issue #1894 - Part 1: Implement coalesce JS opcodeFranklinDM2022-05-21
| | | | Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1566141
* Merge branch 'master' into 1829Brian Smith2022-04-28
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * master: No issue - Update README and SECURITY Issue #1885 - Follow-up: Update error message if invalid rootMargin specified. Issue #1879 - Follow-up: Update config/external/nss/target to security/target. Issue #1885 - Allow unitless rootMargin entries for IntersectionObserver. Issue #1879 - Revert changes to cryptox.h Revert "Issue #1879 - spot-fix typo in cryptox.h" Issue #1879 - spot-fix typo in cryptox.h Issue #21 - Change MappedAttrParser to store its nsIPrincipal instead of nsSVGElement Issue #21 - Remove use counters telemetry Issue #1881 - Interpret empty or whitespace root margin string as zero length Issue #1877 - Resolve NIGHTLY_BUILD conditionals. Issue #1880 - Boot Comic Sans out of the font configuration.
| * Issue #1877 - Resolve NIGHTLY_BUILD conditionals.Moonchild2022-04-22
| |
* | Issue #1829 - Revert "Issue #1751 -- Remove XP_DARWIN"Brian Smith2022-04-26
|/ | | | This reverts commit 3d671e4275c73a1484c72713304c6e04ec4ffc7c.
* [js] Add dynamic check for valid serialized lengthSteve Fink2022-04-08
|
* WIP: Base implementationMoonchild2021-07-13
|
* Issue #1751 -- Remove XP_DARWINMoonchild2021-05-02
|
* Issue #1756 - Expose NumberFormat.formatToParts() to content.Moonchild2021-03-31
|
* Issue #1756 - Initial wrapped implementation in C++Moonchild2021-03-31
|
* Issue #1739 - Implement numeric separators.Moonchild2021-02-13
| | | | Resolves #1739
* Issue #1738 - Follow-up: Update comment (no code changes)Moonchild2021-02-12
|
* Issue #1738 - Part 2: Implement well-formed JSON stringifyMoonchild2021-02-11
| | | | | This implements the ES2019 spec for JSON stringification, including lower-casing, properly escaping lone surrogates, etc.
* Issue #1738 - Part 1: Improve performance of JSON stringifyMoonchild2021-02-11
| | | | | | - Use some pointer voodoo and instead of stringbuffer append() - Use a lookup table instead of char comparisons for chr < 256 - Stop using a Hashtable/MovableCellHasher for JSON CycleDetector
* Issue #1726 - Implement String.replaceAll()meatloaf2021-02-04
| | | | | This also implements IsRegExp, as this demands it. Ported from https://bugzilla.mozilla.org/show_bug.cgi?id=1540021
* [js] Remove unused promise selfhosting functions.Moonchild2021-01-30
| | | | | These are leftovers from when promises were fully self-hosted and could cause confusion if left in place.
* Issue #1701 - Implement Intl.PluralRules APIMoonchild2020-12-22
|
* Revert "Issue #1691 - Part 1: Provide a way of associating a private value ↵Moonchild2020-11-28
| | | | | | with a script" This reverts commit 15914ec5780e7867ab508a48a83311c56950f8a9.
* Issue #1691 - Part 1: Provide a way of associating a private value with a scriptMoonchild2020-11-27
| | | | | | or module. This is a prerequisite for dynamic import
* Issue #1676 - Part 8: Fix up include for selfhosted.out.hMatt A. Tobin2020-11-03
|
* Issue #1656 - Part 7: Nuke vim config lines in JSMoonchild2020-09-24
|
* Issue #1656 - Part 1: Nuke most vim config lines in the tree.Moonchild2020-09-23
| | | | | | Since these are just interpreted comments, there's 0 impact on actual code. This removes all lines that match /* vim: set(.*)tw=80: */ with S&R -- there are a few others scattered around which will be removed manually in a second part.
* Merge branch 'master' into es-modules-workMoonchild2020-08-13
|\
| * [js] Get the class pointer from the ObjectGroup in NativeObject::slotSpanMoonchild2020-07-10
| | | | | | | | | | | | This changes NativeObject::slotSpan() to get the class from the object group rather than getting it from the base shape to avoid a race between Shape::ensureOwnBaseShape and background sweeping.
* | Issue #618 - Simplify module resolve hook to be a function pointerMoonchild2020-08-06
| | | | | | | | | | This is an ahead-of time port to try and address #1624. This is based on BZ 1461751 and Jon Coppeard's work in it.
* | Issue #618 - Use a single slot for the module's environment object.Moonchild2020-07-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | According to the spec this isn't created until the module is instantiated, but we create it when we compile the module. We stored this previously in InitialEnvironmentSlot and copied it to EnvironmentSlot when it was supposed to be created, but we can just store it in the latter slot straight away and check the module's status and return null if it shouldn't exist yet. This reduces the number of slots needed on a moduleObject to 17. Re: BZ 1420412 Part 1 We can't implement the second part to further reduce our number of slots, because it relies on SetProxyReservedSlot which in turn relies on rearchitecturing JS proxies to make reserved slots dynamic. That's a rabbit hole we really don't want to fall into. So, we'll end up being a bit slower because it can't be in-line allocated with having more than 16 slots, but so be it. I sincerely doubt it will make any practical difference.
* | Issue #618 - Align error handling for module scripts with the spec (again)Moonchild2020-07-08
|/ | | | | | | | This updates module implementation to match spec regarding handling of instantiation errors, after it was changed yet again, this time to not remember instantiation errors, but instead immediately rethrow applicable ones. Ref: BZ 1420420
* Issue #618 - Report source position information (line/column)Moonchild2020-07-04
| | | | | | Report source position information for module export resolution failures. Ref: BZ 1362098
* Issue #618 - Align module instantiation/errors with the updated spec.Moonchild2020-07-03
| | | | | Store and re-throw module instantiation and evaluation errors. Ref: BZ 1374239, 1394492
* Issue #1570 - Implement globalThiswolfbeast2020-05-30
| | | | This resolves #1570
* [js] Remove pointless MakeMRegExpHoistable optimization.wolfbeast2020-03-18
| | | | It's a lot of code with no measurable effect.
* Revert #1091 Remove unboxed object code phase 1 + extras.wolfbeast2020-02-23
| | | | | | This should be the last code backout for this. merging this branch should get us back to the way we were (+ additional code changes for later changes) as fasr as the unused unboxed code is concerned.
* Revert #1137 - Remove unboxed arrayswolfbeast2020-02-23
| | | | | - accounting for removal of watch()/unwatch() - updated for intermediate code changes.
* Revert #1142 - Remove unboxed objectswolfbeast2020-02-22
| | | | - accounting for removal of watch()/unwatch()
* Revert 1320408 part 15: Make addDataProperty staticwolfbeast2020-02-22
|
* Issue #1322 - Part 1: Remove the DOM Promise guts.wolfbeast2019-12-19
| | | | This removes all the parts guarded by SPIDERMONKEY_PROMISE
* Bug 1390082 - Implement AsyncGeneratorQueue with simpler array operations.Gaming4JC2019-12-17
| | | | | | Tag #1287 Note: Without ReadableStream implementation
* Bug 1379525 - Part 1: Await on the value before yielding or returning inside ↵Gaming4JC2019-12-17
| | | | | | async generator. Tag #1287
* Bug 1331092 - Part 7: Implement Async Generator yield*.Gaming4JC2019-12-17
| | | | Tag #1287
* Bug 1331092 - Part 2: Implement Async Generator except yield*.Gaming4JC2019-12-17
| | | | Tag #1287
* Bug 1317389: Change property attributes for generator and async functions to ↵Gaming4JC2019-12-17
| | | | | | match ES2015/2017. Tag #1287
* Bug 1316098 - Optimize out result object allocation for await/return in ↵Gaming4JC2019-12-17
| | | | | | async function. Tag #1287
* Bug 1343481 - Part 4: Add Add GeneratorObject.{isAfterYield,isAfterAwait}.Gaming4JC2019-12-17
| | | | Tag #1287
* Bug 1343481 - Part 3: Add JSOP_AWAIT and rename {yieldIndex,yieldOffset} to ↵Gaming4JC2019-12-17
| | | | | | {yieldAndAwaitIndex,yieldAndAwaitOffset}. Tag #1287
* Bug 1343481 - Part 2: Stop using StarGegerator for async function.Gaming4JC2019-12-17
| | | | Tag #1287