wolfbeast
c2cb5e2195
Silence for-each-in warnings
2018-04-05 16:04:21 +02:00
janekptacijarabaci
b2294011f8
Merge branch 'master' of https://github.com/MoonchildProductions/UXP into js_array_values_1
2018-03-27 15:57:18 +02:00
wolfbeast
4d3de12fa8
Merge remote-tracking branch 'janek/js_regexp_lastindex_1'
2018-03-27 13:22:30 +02:00
janekptacijarabaci
fcd118b79a
Bug 1360839 - Call IteratorClose due to abrupt completion from yield
...
Issue mcp-graveyard/UXP#74
2018-03-25 19:06:08 +02:00
janekptacijarabaci
6606526f82
Bug 1357075 - Pad a nop to unwind to the scope just before a destructuring iterator close trynote
...
Issue mcp-graveyard/UXP#74
2018-03-25 18:24:06 +02:00
janekptacijarabaci
b4b11c9a3d
Bug 1346862 - Fix IteratorClose due to non-local jumps being catchable by try statements inside for-of
...
Issue mcp-graveyard/UXP#74
2018-03-25 18:21:15 +02:00
janekptacijarabaci
f5273cf72f
Bug 1342553 - Part 0.2: Support JSOP_CHECKISCALLABLE in JIT
...
Issue mcp-graveyard/UXP#74
2018-03-25 17:00:47 +02:00
janekptacijarabaci
7d5a3b8254
Bug 1342553, Bug 1343072, Bug 1344753 (details in the description)
...
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 mcp-graveyard/UXP#74
2018-03-25 16:22:38 +02:00
janekptacijarabaci
662e60d77c
Bug 1334314 - Fix debug mode OSR exception handling for IteratorClose trynotes
...
Issue mcp-graveyard/UXP#74
2018-03-25 14:49:32 +02:00
janekptacijarabaci
8c7748c60d
Bug 1331585 - Allow falsy "done" values for IteratorClose due to exception during array destructuring
...
Issue mcp-graveyard/UXP#74
2018-03-25 14:48:34 +02:00
janekptacijarabaci
6a5cd960ac
Bug 1341339 - Check for duplicates in processIterators
...
Issue mcp-graveyard/UXP#74
2018-03-25 14:47:39 +02:00
janekptacijarabaci
1854cc94e4
Bug 1338796 - Do not call iterator.return if iterator.throw is present in yield*
...
Issue mcp-graveyard/UXP#74
2018-03-25 14:20:11 +02:00
janekptacijarabaci
e6ad1cd6a5
Bug 1335996 - Make test for bug 1333946 more reliable
...
Issue mcp-graveyard/UXP#74
2018-03-25 13:35:18 +02:00
janekptacijarabaci
ae88affbf7
Bug 1333946 - Make IonBuilder::processIterators transitive
...
Issue mcp-graveyard/UXP#74
2018-03-25 13:34:31 +02:00
janekptacijarabaci
231ab90006
Bug 1322069 - Add TryEmitter
...
Issue mcp-graveyard/UXP#74
2018-03-25 13:32:14 +02:00
janekptacijarabaci
e67b419eed
Bug 1334799 - Handle stack value in correct order when leaving for-of loop from finally block
...
Issue mcp-graveyard/UXP#74
2018-03-25 12:56:18 +02:00
janekptacijarabaci
d6eb5c1959
Bug 1332881 - Handle stack value in correct order when leaving loop and try-finally
...
Issue mcp-graveyard/UXP#74
2018-03-25 12:38:28 +02:00
janekptacijarabaci
6b62ffb294
Bug 1332155 - Skip non-try-related trynotes when asserting jump targets
...
Issue mcp-graveyard/UXP#74
2018-03-25 12:37:44 +02:00
janekptacijarabaci
f0883feb51
Bug 1331444 - Keep iterators alive in Ion in for-of loops for IteratorClose due to exceptions
...
Issue mcp-graveyard/UXP#74
2018-03-25 12:37:06 +02:00
janekptacijarabaci
84626e8e73
Bug 1317397: Only set lastIndex for global or sticky RegExps in RegExpBuiltinExec per ES2017
2018-03-24 16:01:06 +01:00
janekptacijarabaci
6178a8136b
Bug 1343375: Update RegExp.prototype.replace and .match to call ToLength(lastIndex) for non-global RegExp and handle recompilations
...
[Depends on] Bug 1317397: Implement RegExp.lastIndex changes from ES2017
2018-03-24 15:54:49 +01:00
janekptacijarabaci
981816155f
Bug 1147371: Always decompile argument names in self-hosted code in the caller frame
...
Issue mcp-graveyard/UXP#74
2018-03-24 12:29:12 +01:00
janekptacijarabaci
76aa8d5652
Bug 1147371: Implement JSOP_PICK and JSOP_UNPICK in the expression decompiler
...
Issue mcp-graveyard/UXP#74
2018-03-24 12:28:12 +01:00
janekptacijarabaci
37f0a017e4
Bug 1147371: Implement calling IteratorClose and "return" on iterators in yield*
...
Issue mcp-graveyard/UXP#74
2018-03-24 12:27:00 +01:00
janekptacijarabaci
6c2e8311a1
Bug 1147371: Implement IteratorClose for array destructuring
...
Issue mcp-graveyard/UXP#74
2018-03-24 12:23:14 +01:00
janekptacijarabaci
b2a92cce75
Bug 1147371: Convert self-hosted code that need to call IteratorClose to use for-of
...
Issue mcp-graveyard/UXP#74
2018-03-24 12:15:02 +01:00
janekptacijarabaci
7d119cca77
Bug 1147371: Rename allowContentSpread to allowContentIter
...
Issue mcp-graveyard/UXP#74
2018-03-24 12:11:23 +01:00
janekptacijarabaci
09863e9656
Bug 1147371: Implement IteratorClose for for-of
...
Issue mcp-graveyard/UXP#74
2018-03-24 12:09:30 +01:00
janekptacijarabaci
cfd9e0d2be
Bug 1204028: Evaluate LHS reference before RHS in destructuring
...
Issue mcp-graveyard/UXP#73
[Depends on] Bug 1147371: Implement IteratorClose
2018-03-20 12:40:00 +01:00
janekptacijarabaci
9b488c7cff
Bug 1322314 - Do not emit ParseNode twice in BytecodeEmitter::emitDestructuringOpsArray
...
Issue mcp-graveyard/UXP#73
[Depends on] Bug 1147371: Implement IteratorClose
2018-03-20 10:46:22 +01:00
janekptacijarabaci
1664c8df00
Bug 1322314 - Disallow emitting ParseNode twice
...
Issue mcp-graveyard/UXP#73
[Depends on] Bug 1147371: Implement IteratorClose
2018-03-20 10:27:23 +01:00
wolfbeast
a30795e043
Add support for the function name property.
...
This resolves #78 .
Merged remote-tracking branch 'janek/js_function_name_1'
2018-03-20 10:10:12 +01:00
janekptacijarabaci
3369685755
Follow up: A opening bracket { was added; Added "function()->explicitName()" instead of "function()->name()"
...
Issue mcp-graveyard/UXP#78
2018-03-19 18:11:08 +01:00
janekptacijarabaci
00dc93e1d1
Part 4: Fix existing tests
...
Issue mcp-graveyard/UXP#87
2018-03-19 16:08:36 +01:00
janekptacijarabaci
74c522ca2d
Part 3: Support JSOP_SETFUNNAME in Baseline and Ion
...
Issue mcp-graveyard/UXP#87
2018-03-19 15:59:22 +01:00
janekptacijarabaci
261580632b
Part 2: Call NameFunctions after emitting
...
Issue mcp-graveyard/UXP#78
2018-03-19 15:51:02 +01:00
janekptacijarabaci
ec0e91c50b
Part 1: Implement ES6 function name property semantics
...
Issue mcp-graveyard/UXP#78
2018-03-19 15:47:10 +01:00
janekptacijarabaci
23f5317d1c
Bug 1317309: Throw a TypeError when passing a Symbol value to ToAtom
...
Issue mcp-graveyard/UXP#78
[Depends on] Bug 883377: Implement ES6 function "name" property
semantics
2018-03-19 15:18:37 +01:00
janekptacijarabaci
390ab5cff6
Bug 1320042: Rename BytecodeEmitter::emitConditionallyExecuted{SOMETHING} to BytecodeEmitter::emit{SOMETHING}InBranch
...
Issue mcp-graveyard/UXP#78
[Depends on] Bug 883377: Implement ES6 function "name" property
semantics
2018-03-19 14:55:56 +01:00
janekptacijarabaci
ff9a6baee0
Bug 1320388: Move JSFunction::HAS_REST to JSScript and LazyScript
...
Issue mcp-graveyard/UXP#78
[Depends on] Bug 883377: Implement ES6 function "name" property
semantics
2018-03-19 14:48:24 +01:00
janekptacijarabaci
4cf55447dc
Update RegExp Xray code
...
Issue mcp-graveyard/UXP#77
2018-03-19 12:47:01 +01:00
janekptacijarabaci
baa1682c84
Tests
...
Issue mcp-graveyard/UXP#77
2018-03-19 10:46:14 +01:00
janekptacijarabaci
613accc61a
Use ordinary object for RegExp prototype
...
Issue mcp-graveyard/UXP#77
2018-03-19 10:42:58 +01:00
janekptacijarabaci
351cdd85ee
Bug 1323868: Report object allocation failure when running off-main-thread
...
Issue mcp-graveyard/UXP#77
[Depends on] Bug 1192038: RegExp.prototype should be an ordinary object
2018-03-19 10:25:44 +01:00
wolfbeast
6c956e8e53
Prototypes should be regular objects.
...
This resolves #76
Merged remote-tracking branch 'janek/js_error_ordinary-object_1'
2018-03-19 09:23:23 +01:00
wolfbeast
aaa674d3f9
Remove strict arguments poison pill for "caller" property per ES2017
...
This resolves #79 .
Merged remote-tracking branch 'janek/js_strict_arguments_caller_removed_1'
2018-03-18 20:00:50 +01:00
wolfbeast
5fd8a47119
Correctly tokenize valid JS names when using code points outside of BMP range.
...
This resolves #72 .
Merged remote-tracking branch 'janek/js_variable_unicode_1'
2018-03-18 17:58:37 +01:00
wolfbeast
ee9ad1a841
Support ES6's "new function" construct
...
This resolves #75 .
Merged remote-tracking branch 'janek/js_function_new_1'
2018-03-18 17:56:16 +01:00
janekptacijarabaci
4abcac7256
Correctly tokenize valid JS names when using Unicode mathematical alphanumeric symbols as variable name
...
Issue https://github.com/MoonchildProductions/Pale-Moon/issues/1647
2018-03-18 14:55:49 +01:00
wolfbeast
c717bc479f
Merge branch 'ported-upstream'
2018-03-18 10:56:28 +01:00