summaryrefslogtreecommitdiffstats
path: root/js/src/jit
Commit message (Collapse)AuthorAgeLines
* Call a more generic function when inlining array natives.wolfbeast2019-06-20-26/+5
| | | | | | | This simplifies the code a bit because ElementAccessHasExtraIndexedProperty checks for length-overflow (directly) and sparse-indexes (through TypeCanHaveExtraIndexedProperties) so the callers don't have to do that anymore.
* Tabs -> Spaces (no code change)wolfbeast2019-06-18-2/+2
|
* Remove JSOP_SPREADCALLARRAY and just use JSOP_NEWARRAY again.wolfbeast2019-06-18-7/+2
|
* Remove and clean up more code.wolfbeast2019-06-18-25/+8
|
* Replace SetOrExtendBoxedOrUnboxedDenseElements with direct calls.wolfbeast2019-06-18-23/+19
|
* Convert CopyBoxedOrUnboxedDenseElements to something that doesn't crash.wolfbeast2019-06-17-2/+12
|
* Remove unused LIR temp register for unboxed arrays.wolfbeast2019-06-12-28/+12
|
* Make use of ArrayObjects in favor of generic JS objects.wolfbeast2019-06-12-12/+12
| | | | | ArrayObjects has been a thing for years but been under-used. About time they are used where prudent.
* Inline combined methods for NativeObject and UnboxedArrayObject accesses.wolfbeast2019-06-10-33/+29
|
* Merge branch 'master' into remove-unboxedwolfbeast2019-06-08-2/+12
|\
| * Fix #1091 deprotwolfbeast2019-05-29-0/+2
| |
| * [js, ARM] Always check error return from BufferOffset::diffB.Lars T Hansen2019-05-25-2/+10
| | | | | | | | | | | | | | We were missing error checks at two points. In one case an error return is meaningful; in another case it is not, as the problem should have been guarded against at a higher level by emitting far jump islands soon enough during pasteup of compiled code.
* | Remove UnboxedArray code part 2wolfbeast2019-05-23-77/+16
| |
* | Remove UnboxedArray code part 1wolfbeast2019-05-23-1138/+199
|/
* Remove unboxed object code from jit, Part 1wolfbeast2019-05-16-615/+26
|
* Remove Unboxed Objects from vm/ Part 1 + fix deprotwolfbeast2019-05-16-0/+3
|
* Remove Unboxed Objects in ScalarReplacementwolfbeast2019-05-15-112/+0
| | | | | | | | | A note about the Scalar Replacement Changes: The M{Load,Store}Unboxed* instructions in theory could be used to manipulate and analyze typed arrays. However, TypedArrays should already be excluded from eligibility because of the potential for cross-thread sharing in a SharedArrayBuffer world, and so the only support in Scalar Replacement here is for Unboxed Objects, meaning it can all be removed.
* remove unboxed code chunk (wip1)wolfbeast2019-05-14-107/+25
|
* Simplify some alias sets in IonMonkey.wolfbeast2019-03-26-6/+4
|
* Restrict ExtractLinearSum to monotonous operation in infinite math space.Nicolas B. Pierron2019-03-23-4/+17
| | | | | Thanks to Bruno Keith & Niklas Baumstark from the phoenhex team for finding this issue and reporting it with a proper analysis.
* Pref the use of unboxed plain objects in JS and disable by default.wolfbeast2019-03-21-1/+1
| | | | | This should be all that's needed for #1017, but verification of impact is definitely desired.
* Remove a couple of unused variablesadeshkp2019-03-14-1/+0
|
* Restrict ExtractLinearSum to find non-wrapping results.wolfbeast2018-12-13-1/+1
|
* Fix mistakingly flagged instructions.wolfbeast2018-12-12-1/+1
| | | | This enables optimizations which were wrongly inhibited before by this typo.
* Simplify SIMD conversion from Uint64 to Double.wolfbeast2018-11-01-31/+21
|
* Don't mark MGetFirstDollarIndex as movable.wolfbeast2018-10-31-1/+4
|
* Code style improvements (no bug).wolfbeast2018-10-23-9/+18
|
* Improve graph edge resolution code.wolfbeast2018-10-23-17/+24
| | | | This is a follow-up to ca7ecd37c94e268972697a37eec4e46771c6e6f2 further improving the DiD resolution for CVE-2018-12386.
* Bug 1493900.wolfbeast2018-10-04-3/+12
| | | | DiD fix.
* Don't memset-zero the BacktrackingAllocator::vregs array of non-trivial ↵trav902018-09-12-15/+11
| | | | VirtualRegister instances
* Stop using PodZero in several places to initialize values of non-trivial typetrav902018-09-12-14/+7
|
* Add extra check for assembler buffer space.wolfbeast2018-09-04-1/+2
|
* Revert "Bug 1444668 - Avoid allocating large AssemblerBuffers. r=luke, ↵wolfbeast2018-08-30-49/+9
| | | | | | r=bbouvier, a=RyanVM" This reverts commit 9472136272f01b858412f2d9d7854d2daa82496f.
* Remove recover instruction results after bailouts.wolfbeast2018-07-13-38/+20
|
* Bug 1464829 - Ensure the recover instruction vector has the expected size.Nicolas B. Pierron2018-06-07-5/+1
|
* Change inlining of intrinsics.wolfbeast2018-06-07-12/+155
|
* Bug 1411415.wolfbeast2018-04-29-9/+17
|
* Bug 1444668 - Avoid allocating large AssemblerBuffers. r=luke, r=bbouvier, ↵Jan de Mooij2018-04-19-9/+49
| | | | a=RyanVM
* Fix Value::isGCThing footgun, stop returning true for NullValuetrav902018-04-07-42/+42
|
* Bug 1357075 - Pad a nop to unwind to the scope just before a destructuring ↵janekptacijarabaci2018-03-25-3/+11
| | | | | | iterator close trynote Issue #74
* Bug 1346862 - Fix IteratorClose due to non-local jumps being catchable by ↵janekptacijarabaci2018-03-25-1/+30
| | | | | | try statements inside for-of Issue #74
* Bug 1342553 - Part 0.2: Support JSOP_CHECKISCALLABLE in JITjanekptacijarabaci2018-03-25-43/+189
| | | | Issue #74
* Bug 1342553, Bug 1343072, Bug 1344753 (details in the description)janekptacijarabaci2018-03-25-25/+4
| | | | | | | | | | Bug 1342553 - Part 0.1: Use try-catch for IteratorClose in for-of Bug 1343072 - Update HasLiveStackValueAtDepth to follow the change in JSTRY_FOR_OF Bug 1344753 - Update for-of stack depth in ControlFlowGenerator::processWhileOrForInLoop Issue #74
* Bug 1334314 - Fix debug mode OSR exception handling for IteratorClose trynotesjanekptacijarabaci2018-03-25-9/+32
| | | | Issue #74
* Bug 1331585 - Allow falsy "done" values for IteratorClose due to exception ↵janekptacijarabaci2018-03-25-6/+6
| | | | | | during array destructuring Issue #74
* Bug 1341339 - Check for duplicates in processIteratorsjanekptacijarabaci2018-03-25-3/+6
| | | | Issue #74
* Bug 1333946 - Make IonBuilder::processIterators transitivejanekptacijarabaci2018-03-25-24/+21
| | | | Issue #74
* Bug 1331444 - Keep iterators alive in Ion in for-of loops for IteratorClose ↵janekptacijarabaci2018-03-25-6/+15
| | | | | | due to exceptions Issue #74
* Bug 1147371: Implement calling IteratorClose and "return" on iterators in yield*janekptacijarabaci2018-03-24-1/+16
| | | | Issue #74
* Bug 1147371: Implement IteratorClose for array destructuringjanekptacijarabaci2018-03-24-22/+60
| | | | Issue #74