Gaming4JC
87bfc02f09
1320408 - Part 4: Change JSObject::getGroup to static method.
2019-07-22 19:47:34 +08:00
Gaming4JC
07cd213071
1320408 - Part 2: Change JSFunction::getOrCreateScript to static method.
2019-07-22 19:47:27 +08:00
Lars T Hansen
b97da34a21
Define JumpImmediateRange on ARM64.
...
There are comments in the code suggesting that we've made plans at some
point to handle very far jumps via patching + indirect jumps, but all of
those comments are TODO/FIXME. Absent such a strategy, the furthest jump
is 2^27-1 bytes, and we need to define JumpImmediateRange to reflect
that.
2019-07-22 19:45:17 +08:00
Gaming4JC
db85a69fdb
Issue #1142 - Cleanup unused debug code for unboxed objects
...
Also fixes an assertion during compile if debug is enabled since unboxed objects have been removed.
2019-07-05 21:30:00 +08:00
g4jc
2b5f3e87c8
Issue #1142 - Remove uneeded assertion ( #1145 )
...
Since unboxed objects were removed, isUnboxed is undefined. This causes a build failure when debuging is enabled. This patch fixes the issue by removing the uneeeded assertion.
2019-07-05 21:29:58 +08:00
wolfbeast
0342ac0a6b
Clean up MObjectState
2019-06-28 20:11:24 +08:00
wolfbeast
c2c997f393
Remove now-unused parameter (prev. used for unboxed objects).
2019-06-28 20:11:21 +08:00
wolfbeast
82e3eafecf
Remove UnboxedObjects ObjectGroup addendum
2019-06-28 20:11:18 +08:00
wolfbeast
05daa3c420
Remove Unboxed Objects Option Code
2019-06-28 20:11:12 +08:00
wolfbeast
7ec709fb70
Remove Unboxed Object code from jit, Part 4.
2019-06-28 20:11:07 +08:00
wolfbeast
bc5121a769
Remove Unboxed Object code from jit, Part 3.
2019-06-28 20:11:04 +08:00
wolfbeast
0c434f7244
Fix unified deprot
2019-06-28 20:11:01 +08:00
wolfbeast
3e1ffa6cf6
Remove Unboxed Object code from jit, Part 2.
2019-06-28 20:10:58 +08:00
wolfbeast
bd6c34b56a
Revert "Remove JSOP_SPREADCALLARRAY and just use JSOP_NEWARRAY again."
...
This reverts commit 912c3f5cbc512557794a3dfd7bc5cb4994413dfe.
2019-06-28 20:10:21 +08:00
wolfbeast
aae7584fdd
Call a more generic function when inlining array natives.
...
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.
2019-06-21 09:58:16 +08:00
wolfbeast
8dcf847a45
Tabs -> Spaces (no code change)
2019-06-19 21:34:41 +08:00
wolfbeast
a6bb928fa4
Remove JSOP_SPREADCALLARRAY and just use JSOP_NEWARRAY again.
2019-06-19 21:34:38 +08:00
wolfbeast
90bb3e7f1d
Remove and clean up more code.
2019-06-19 21:34:34 +08:00
wolfbeast
c6c456b12b
Replace SetOrExtendBoxedOrUnboxedDenseElements with direct calls.
2019-06-19 21:34:33 +08:00
wolfbeast
ec0e78d127
Convert CopyBoxedOrUnboxedDenseElements to something that doesn't crash.
2019-06-19 21:34:29 +08:00
wolfbeast
051e96c365
Remove unused LIR temp register for unboxed arrays.
2019-06-19 21:34:23 +08:00
wolfbeast
87f3c86484
Make use of ArrayObjects in favor of generic JS objects.
...
ArrayObjects has been a thing for years but been under-used. About time
they are used where prudent.
2019-06-19 21:34:21 +08:00
wolfbeast
1176a9ace1
Inline combined methods for NativeObject and UnboxedArrayObject accesses.
2019-06-19 21:34:19 +08:00
wolfbeast
54b6b407a9
Remove UnboxedArray code part 2
2019-06-19 21:34:02 +08:00
wolfbeast
5c15924907
Remove UnboxedArray code part 1
2019-06-19 21:33:59 +08:00
wolfbeast
ad95798269
Fix #1091 deprot
2019-05-31 07:22:17 +08:00
Lars T Hansen
772e51c7b4
[js, ARM] Always check error return from BufferOffset::diffB.
...
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.
2019-05-31 07:18:34 +08:00
wolfbeast
cc936df2e5
Remove unboxed object code from jit, Part 1
2019-05-24 21:56:13 +08:00
wolfbeast
37315e4898
Remove Unboxed Objects from vm/ Part 1 + fix deprot
2019-05-24 21:56:09 +08:00
wolfbeast
d7714885d1
Remove Unboxed Objects in ScalarReplacement
...
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.
2019-05-24 21:55:55 +08:00
wolfbeast
7b0eb7be8c
remove unboxed code chunk (wip1)
2019-05-24 21:55:45 +08:00
wolfbeast
c3a58ab50b
Simplify some alias sets in IonMonkey.
2019-03-29 22:27:39 +08:00
Nicolas B. Pierron
e390f01ef5
Restrict ExtractLinearSum to monotonous operation in infinite math space.
...
Thanks to Bruno Keith & Niklas Baumstark from the phoenhex team for
finding this issue and reporting it with a proper analysis.
2019-03-29 22:21:19 +08:00
wolfbeast
eb32b5d7e4
Pref the use of unboxed plain objects in JS and disable by default.
...
This should be all that's needed for #1017 , but verification of
impact is definitely desired.
2019-03-23 06:44:08 +08:00
adeshkp
f922e8ae0e
Remove a couple of unused variables
2019-03-16 07:04:13 +08:00
wolfbeast
0c5263683a
Restrict ExtractLinearSum to find non-wrapping results.
2019-02-16 00:22:09 +08:00
wolfbeast
e4ac0e17f8
Fix mistakingly flagged instructions.
...
This enables optimizations which were wrongly inhibited before by this typo.
2019-02-16 00:21:23 +08:00
wolfbeast
acb2819baa
Simplify SIMD conversion from Uint64 to Double.
2019-02-16 00:18:22 +08:00
wolfbeast
c554052ddd
Don't mark MGetFirstDollarIndex as movable.
2019-02-16 00:18:16 +08:00
wolfbeast
3567db7ccc
Code style improvements (no bug).
2019-02-16 00:16:18 +08:00
wolfbeast
f592b614d0
Improve graph edge resolution code.
...
This is a follow-up to ca7ecd37c94e268972697a37eec4e46771c6e6f2 further improving the DiD resolution for CVE-2018-12386.
2019-02-16 00:16:16 +08:00
wolfbeast
3757eafab3
Bug 1493900.
...
DiD fix.
2019-02-16 00:15:07 +08:00
trav90
4b23aec47e
Don't memset-zero the BacktrackingAllocator::vregs array of non-trivial VirtualRegister instances
2019-02-16 00:13:50 +08:00
trav90
02e07860b2
Stop using PodZero in several places to initialize values of non-trivial type
2019-02-16 00:13:45 +08:00
wolfbeast
ac3468d5cc
Add extra check for assembler buffer space.
2019-02-16 00:12:29 +08:00
wolfbeast
36a9805617
Revert "Bug 1444668 - Avoid allocating large AssemblerBuffers. r=luke, r=bbouvier, a=RyanVM"
...
This reverts commit 9472136272f01b858412f2d9d7854d2daa82496f.
2019-02-16 00:12:16 +08:00
wolfbeast
2a6262ee6d
Remove recover instruction results after bailouts.
2019-02-16 00:08:29 +08:00
Nicolas B. Pierron
0c1ca8a865
Bug 1464829 - Ensure the recover instruction vector has the expected size.
2019-02-16 00:01:56 +08:00
wolfbeast
8f16d02c34
Change inlining of intrinsics.
2019-02-16 00:01:15 +08:00
wolfbeast
66bf4fa8f9
Bug 1411415.
2019-02-15 23:53:18 +08:00