summaryrefslogtreecommitdiff
path: root/js/src/jit
Commit message (Collapse)AuthorAge
* Issue #1240 - Follow-up: Add missing JSVAL_TYPE_BIGINT cases in JitFrames.cpp.Brian Smith2023-07-28
| | | | As pointed out by roytam1 during testing with Discord.
* Issue #2026 - Part 4 - Fill in missing dense elements case and fix a comment.Brian Smith2023-07-28
| | | | | | | 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.
* Issue #2026 - Part 1 - Implement BigInt64 and BigUint64Array.Brian Smith2023-07-24
| | | | https://bugzilla.mozilla.org/show_bug.cgi?id=1456569
* Issue #1240 - Part 10 - Implement minimal Ion support for BigInt.Brian Smith2023-07-21
| | | | | | https://bugzilla.mozilla.org/show_bug.cgi?id=1507484 Implement IC support for BigInt. https://bugzilla.mozilla.org/show_bug.cgi?id=1522431
* Issue #1240 - Part 8 - Fix incorrect asserts with debug enabled.Brian Smith2023-07-21
| | | | | | 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.
* Issue #1240 - Part 5e - BigInt bitwise operators.Brian Smith2023-07-19
| | | | https://bugzilla.mozilla.org/show_bug.cgi?id=1490387
* Issue #1240 - Part 5b - BigInt support for basic arithmetic operations.Brian Smith2023-07-19
| | | | https://bugzilla.mozilla.org/show_bug.cgi?id=1471134 Parts 3-5.
* Issue #1240 - Part 4 - Implement parser support for BigInt literals.Brian Smith2023-07-18
| | | | | | | | | 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
* Issue #2259 - Update Intl.* Object-ness to ECMA-402, 4th editionMartok2023-06-29
| | | | | | | | | | - turn each Intl object into a NativeObject subclass - create them as PlainObject - ensure correct type is passed in self-hosted code - implement legacy constructor semantics for DateTime&NumberFormat - store internals on object slot instead of JS WeakMap Based-on: m-c 1328386, 1332604
* Issue #2257 - Remove rematerialized frames after bailouts and exceptions.Moonchild2023-06-01
| | | | | This ensures that rematerialized frames used by the devtools debugger are properly removed so that no stale data is used during bailouts.
* Issue #2241 - Part 1: Move {js::,JS_}{{Strictly,Loosely}Equal,SameValue} ↵Job Bautista2023-05-12
| | | | | | | | | into their own header and implementation files Backported from Mozilla bug 1516742. The .from* methods are going to depend on SameValueZero, which needs to be visible to /dom. This patch provides the foundation for that.
* Issue #2097 - Handle Logical Assignment in Ion CFGMartok2023-05-01
|
* Issue #2142 - Change InitPropertyOperation to accept a PropertyName directy ↵Martok2023-04-30
| | | | | | and use DefineDataProperty Based-on: m-c 1413907, 1547129
* Issue #1894 - Follow-up: Fix return value ordering in IonMonkey nullish ↵Martok2023-04-30
| | | | coalescing
* Issue #1691 - Part 5: Don't pre-create module metadata object when compiling.Brian Smith2023-04-27
| | | | | | https://bugzilla.mozilla.org/show_bug.cgi?id=1489477 (cherry picked from commit d83bad49f6b03894548fbf85fc18ad7e8cc19a93)
* Issue #1691 - Part 4: Finish implementing call import.Brian Smith2023-04-27
| | | | | | https://bugzilla.mozilla.org/show_bug.cgi?id=1499140 (cherry picked from commit 7bf7d64887944b127a72090dd62eb57f67c5089d)
* Issue #1691 - Part 3: Finish implementing import meta.Brian Smith2023-04-27
| | | | | | https://bugzilla.mozilla.org/show_bug.cgi?id=1427610 (cherry picked from commit a8625238ac846fb7eb103646ddb8634a5860f067)
* Issue #2166 - Follow-up: Fix style nits.Moonchild2023-03-18
|
* Issue #2166 - Part 5c: Use override keyword for all virtual methods of ↵FranklinDM2023-03-17
| | | | | | Recover Instructions Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1341951
* Issue #2166 - Part 5b: Replace RInstructionStorage copy by a cloneInto ↵FranklinDM2023-03-17
| | | | | | function on every RInstruction Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1341951
* Issue #2166 - Part 5a: Use alignas/alignof inside RInstructionStorageFranklinDM2023-03-17
| | | | Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1341951
* No Issue - Ensure more OsiSpaceMoonchild2023-03-16
| | | | | ensureOsiSpace(); was very much under-used. This adds more instances where it makes sense to ensure Osi space before placing masm calls.
* Issue #2148 - Make Vector not use AlignedStorage for its inline element storageFranklinDM2023-03-15
| | | | See Bug 1338374 1/2
* Issue #2089 - Avoid copying/recreating iterator result, ↵Martok2023-01-22
| | | | | | AsyncGeneratorRequest and GeneratorObject expression stacks Based-on: m-c 1394682,1410283,1396499
* Issue #2089 - Use JS engine stack if necessary when reporting errorsMartok2023-01-22
| | | | Based-on: m-c 996060
* No issue - factor out some frame iterator helper functions.Moonchild2023-01-18
|
* Issue #1285 - implement named capturing groups and named backrefsMartok2022-12-21
| | | | | | | | | | | | | | - RegExpParser collects seen groups in named_captures_. - After irregexp::ParsePattern has finished, RegExpParser::StoreNamedCaptureMap translates the parser data to RegExpCompileData.capture_name/index - RegExpShared::initializeNamedCaptures takes these and builds a PlainObject map which is kept with the compiled expression This is done because irregexp doesn't have access to the JS context and so can't allocate any JSValues itself. - for each match result, this map is used to build PlainObjects of name->match/undefined (extremely simplified from upstream at the expense of some perf) IonMonkey switches to non-masm code path for expressions with named groups.
* Revert "Issue #1676 - Part 12: Split jit sources out of js/src/moz.build"Moonchild2022-09-05
| | | | This reverts commit 95e057e737e3edcb270c256000b893365e1d9a9b.
* Revert "Issue #1676 - Part 17: Put remaining source files which have debug ↵Moonchild2022-09-05
| | | | | | code ifdef'd behind MOZ_DEBUG" This reverts commit ff355fe9ac5327a62cdbd05f99dff9febe5de5df.
* Revert "Issue #1676 - Follow-up: Put js/src (including vm), jit, and wasm ↵Moonchild2022-09-05
| | | | | | back into unified sources." This reverts commit a8a397fbceb78d2338e214e583be4f02797637d1.
* 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 #1894 - Part 4: Implement IonMonkey support for nullish coalescingFranklinDM2022-05-21
| | | | Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1566141
* Issue #1658 - Part 6: Break and return no control flow for jumps emitted by ↵FranklinDM2022-05-04
| | | | | | optional chains under IonBuilder IIUC, we want to process the GOTO in the case of optional chains, and we do not satisfy the requirements mentioned in the comment of snoopControlFlow's caller. Optional chains are not loops, we (probably) don't have a loop in the instruction following the GOTO, and in the GOTO destination, we're either returning an undefined/null value or the actual value.
* 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_MACOSX conditionals from ↵Brian Smith2022-04-26
|/ | | | | | | | | the rest of the tree.” This also removes some PP abuse and takes file entries out of PP when no longer needed without XP_MACOSX conditionals. This reverts commit 6f707bde95dab6998ac204f9ee6c925ee230c740.
* Merge pull request 'Issue #1818 Cleanup some old GCC hacks' (#1865) from ↵Moonchild2022-04-16
|\ | | | | | | | | | | trav90/UXP-contrib:compiler-hacks-cleanup into master Reviewed-on: https://repo.palemoon.org/MoonchildProductions/UXP/pulls/1865
| * Issue #1818 - Part 3: Remove more old gcc compiler hacks.trav902022-04-15
| |
| * Issue #1818 - Part 2: Remove code for implementation of atomics with __synctrav902022-04-15
| | | | | | | | | | All supported compilers support using C++11 <atomic> natively, so implementing this using GCC's old __sync functions is no longer necessary.
* | Issue #1864 - Fix IonBuilder::maybeMarkEmpty.Moonchild2022-04-15
|/ | | | | Look at the instruction's operands instead of the instruction itself, and take an early exit on empty types.
* [js] Fix AliasSet of MLoadTypedArrayElementHoleMoonchild2022-04-09
|
* Issue #1053 - Second pass remove android defines and build system stuff.Moonchild2022-04-01
| | | | Mostly IPC, tools and mozbuild.
* Issue #1053 - First pass Android defines and remove Android AnnotationMoonchild2022-04-01
| | | | processors, some Andoid packaging stuff, Eclipse IDE support et al.
* Issue #1679 - Part 3: Make everything build on supported compilers.Moonchild2021-07-30
|
* [js] Fix porting typoMoonchild2021-06-03
| | | | Follow-up for 9acd98298ccadd83495fa1615573ebcca6648bae
* [js] Fix invalid early return in BaselineFrame::trace.Jan de Mooij2021-06-02
| | | | | We were not tracing debugger environments for Baseline frames without any local/expression slots.
* Issue #1751 -- Remove XP_MACOSX conditionals from the rest of the tree.Moonchild2021-05-06
| | | | | This also removes some PP abuse and takes file entries out of PP when no longer needed without XP_MACOSX conditionals.
* Issue #1751 -- Remove XP_IOSMoonchild2021-05-01
|
* Issue #1053 - Remove __ANDROID__ defines (except in third party code)Moonchild2021-03-21
|
* [js] Add XMMRegName for invalid_xmmMoonchild2021-02-14
|