summaryrefslogtreecommitdiffstats
path: root/js
Commit message (Collapse)AuthorAgeLines
* [js] Add some utility functions to get the current JS runtime.Moonchild2020-08-06-0/+8
|
* Issue #618 - Align error handling for module scripts with the spec - Debug ↵Gaming4JC2020-08-03-1/+2
| | | | | | | | follow up MODULE_STATUS_ERRORED is no more. Replacing with newer API. Ref: BZ 1420420
* Issue #618 - Lazily initialise module binding maps - Debug follow upGaming4JC2020-08-03-1/+1
| | | | | | The added debug assertion does not work due to missing API. They were added in BZ 1337491, 1395366, and others, but were primarily used for multi-threading. This uses our existing non-multithreaded syntax instead, resolving a `no member named` build error.
* Issue #618 - Lazily initialise module binding mapsMoonchild2020-07-08-27/+35
| | | | | | | Make it so they are not allocated on a background thread in a different zone to the final module. Ref: BZ 1372258
* Issue #618 - Use a single slot for the module's environment object.Moonchild2020-07-08-47/+29
| | | | | | | | | | | | | | | | | | | | 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-208/+252
| | | | | | | | 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 - Fix typo and remove old function declarations.Moonchild2020-07-07-3/+1
|
* Issue #618 - Report source position information (line/column)Moonchild2020-07-04-39/+161
| | | | | | Report source position information for module export resolution failures. Ref: BZ 1362098
* Issue #618 - Remove context and heap-idle checkMoonchild2020-07-04-8/+4
| | | | | | | | | For checking if a module is in an error state and what the error is, it shouldn't matter if we are currently GC-ing or not. So we don't need to check for it, which removes the requirement to pass in the JS context (needed for AssertHeapIsIdle's runtime check); this unblocks progress where otherwise we'd have to figure out what the context is at the module level just to satisfy this check.
* Issue #618 - Fix JSAPI additions to pass the JS context.Moonchild2020-07-03-6/+8
|
* Issue #618 - Match JSAPI names with the changes in ↵Moonchild2020-07-03-9/+8
| | | | | | 9ca74147225eed305e28c7887f9b2251aeeb0f36 Ref: BZ 1388728
* Issue #618 - Add APIs to query module record errorsMoonchild2020-07-03-0/+20
| | | | Ref: BZ 1388728
* Issue #618 - Update code comments for ModuleInstantiateMoonchild2020-07-03-2/+2
|
* Issue #618 - Align module instantiation/errors with the updated spec.Moonchild2020-07-03-217/+611
| | | | | Store and re-throw module instantiation and evaluation errors. Ref: BZ 1374239, 1394492
* Issue #1603 - Part 1: Reorganize ScriptLoader/ScriptElementMoonchild2020-06-30-9/+9
| | | | | | - Moves scripting parts of DOM into 'dom/script' - Renames nsScript{Loader/Element} to Script{Loader/Element} - Adjusts all callers
* Issue #1542 - Fix a typo in wasm which was causing build failure on ARMadeshkp2020-06-08-8/+8
|
* Issue #1570 - Implement globalThiswolfbeast2020-05-30-3/+44
| | | | This resolves #1570
* Bug 1412030 - [MIPS] Emit wasm memory access informationJiaxun Yang2020-05-14-107/+164
| | | | Tag: #1542
* Bug 1330942 - move MemoryAccessDesc::isUnaligned to the ARM/MIPS platform layerJiaxun Yang2020-05-14-21/+40
| | | | Tag: #1542
* Bug 1441521 : [MIPS] Optimize comparation with small constantsJiaxun Yang2020-05-14-74/+170
| | | | Tag: #1542
* Bug 1430693 - IonMonkey: MIPS: Fix generic NaN for legacy mips (IEEE 754-1985)Jiaxun Yang2020-05-14-0/+4
| | | | Tag: #1542
* Bug 1424978 - IonMonkey: MIPS64: Fix unboxNonDouble for Int32Jiaxun Yang2020-05-14-0/+30
| | | | Tag: #1542
* Bug 1424978 - IonMonkey: MIPS64: Fix tagValue functionJiaxun Yang2020-05-14-2/+7
| | | | Tag: #1542
* Bug 1424978 - IonMonkey: MIPS64: Fix boxValue functionJiaxun Yang2020-05-14-1/+6
| | | | Tag: #1542
* Bug 1390802 - IonMonkey: MIPS64: Fix storeValue functionJiaxun Yang2020-05-14-1/+5
| | | | Tag: #1542
* Bug 1424978 - IonMonkey: MIPS: Fix ma_store_unalignedJiaxun Yang2020-05-14-1/+1
| | | | Tag: #1542
* Bug 1424978 - IonMonkey: MIPS: Fix ma_addTestCarryJiaxun Yang2020-05-14-2/+8
| | | | Tag: #1542
* Bug 1390459 - mulby3 function implement error on mips platformJiaxun Yang2020-05-14-4/+6
| | | | Tag: #1542
* Bug 1271968 - IonMonkey: MIPS: Refactor addMixedJump.Jiaxun Yang2020-05-14-17/+17
| | | | Tag: #1542
* Bug 1271968 - wasm: MIPS: Port mixed jump for wasm.Jiaxun Yang2020-05-14-0/+5
| | | | Tag: #1542
* Bug 1271968 - IonMonkey: MIPS: Refactor PatchWrite_NearCall.Jiaxun Yang2020-05-14-86/+31
| | | | Tag: #1542
* Bug 1271968 - IonMonkey: MIPS: Handle conditional branch in out of line code ↵Jiaxun Yang2020-05-14-41/+39
| | | | | | of mixed jump. Tag: #1542
* Bug 1271968 - IonMonkey: MIPS: Merge MacroAssembler::branchWithCode.Jiaxun Yang2020-05-14-128/+67
| | | | Tag: #1542
* Bug 1271968 - IonMonkey: MIPS: Merge MacroAssembler::ma_jal.Jiaxun Yang2020-05-14-51/+26
| | | | Tag: #1542
* Bug 1271968 - IonMonkey: MIPS: Merge Assembler::bind.Jiaxun Yang2020-05-14-174/+83
| | | | Tag: #1542
* Bug 1271968 - IonMonkey: MIPS: Replace long jumps by mixed jumps.Jiaxun Yang2020-05-14-307/+277
| | | | Tag: #1542
* Bug 1271968 - IonMonkey: MIPS: Make jit code in same 256 MB-aligned regionJiaxun Yang2020-05-14-0/+16
| | | | Tag: #1542
* [IonMonkey] MIPS: Import small optimizations from load & storeJiaxun Yang2020-05-14-4/+17
|
* Issue #1542 - IonMonkey: MIPS32: Fix build error on O32 platform.Jiaxun Yang2020-05-14-0/+1
|
* Bug 1323646 - IonMonkey: MIPS64: Fix range checking in ma_addTestOverflowJiaxun Yang2020-05-14-1/+1
| | | | Tag: #1542
* Bug 1323642 - IonMonkey: MIPS64: Fix load unsigned 48-bit immediateJiaxun Yang2020-05-14-23/+32
| | | | | | | | | | | | | | | Issue: In ma_li(Register, ImmWord): Load unsigned 48-bit immediate: 0x0000_8000_0000_0000 Wrong instructions stream: lui reg, 0x8000 dsll reg, reg, 16 # reg = 0xffff_8000_0000_0000 Fixed instructions stream: lui reg, 0x8000 dinsu reg, zero, 32, 32 dsll reg, reg, 16 Tag: #1542
* Bug 1323136 - wasm: MIPS: Do bounds check in 32-bitJiaxun Yang2020-05-14-46/+44
| | | | Tag: #1542
* Bug 1344597 - Baldr: MIPS: Fix trap type of unsigned divide by zeroJiaxun Yang2020-05-14-1/+1
| | | | Tag: #1542
* Issue #1542 - IonMonkey: MIPS: Define JS_CODEGEN_MIPSXX by HAVE_64BIT_BUILD.Jiaxun Yang2020-05-14-6/+8
| | | | MIPSXX is required for 64bit build.
* [js] Record load in MCreateThis alias set.Moonchild2020-05-05-2/+4
|
* Bug 1416999 - Remove document.registerElementMatt A. Tobin2020-04-17-5/+5
| | | | Tag #1375
* [js] Handle functions with rest parameters in isObservableArgumentSlot.Jan de Mooij2020-04-08-1/+1
|
* Merge pull request #1472 from JMadgwick/masterMoonchild2020-03-28-6/+7
|\ | | | | Fix building on sparc64 Linux
| * Issue #1471 - Fix building on sparc64 LinuxJMadgwick2020-03-09-6/+7
| | | | | | | | | | Correct various pre-processor defines for sparc64 and in mozjemalloc use the JS arm64 allocator on Linux/sparc64. This corrects build problems opn Linux sparc64 and is in line with bugzilla bug #1275204.
* | [js] Remove pointless MakeMRegExpHoistable optimization.wolfbeast2020-03-18-302/+4
|/ | | | It's a lot of code with no measurable effect.