Commit Graph

523 Commits

Author SHA1 Message Date
wolfbeast 60dc9eaa95 Simplify some alias sets in IonMonkey. 2020-01-11 13:09:17 +01:00
wolfbeast d429ac8a60 Simplify value setting.
This gets rid of unused boolean return values on setters and a level of
indirection for calls to set values.
2020-01-09 18:26:06 +01:00
wolfbeast f71108680b Issue #1118 - Part 6: Fix various tests that are no longer correct.
The behavior change of document.open() requires these tests to be
changed to account for the new spec behavior.
2019-12-22 23:48:40 +01:00
wolfbeast cdea310f17 Issue #1322 - Part 2: Remove --enable-sm-promise buildconfig switch. 2019-12-19 01:36:07 +01:00
wolfbeast fb96b43b5f Issue #1322 - Part 1: Remove the DOM Promise guts.
This removes all the parts guarded by SPIDERMONKEY_PROMISE
2019-12-19 01:35:24 +01:00
Gaming4JC 6c3e42ac64 Bug 1454285 - Part 2: Disallow using innermostEmitterScope while the value does not match the bytecode environment.
Tag #1287
2019-12-17 06:25:31 -05:00
Gaming4JC c66d255122 Bug 1454285 - Part 1: Specify the current scope when emitting await and .generator.
Tag #1287
2019-12-17 06:25:31 -05:00
Gaming4JC c9bddfca7e Bug 1352312 - Enable Async Iteration.
Tag #1287
2019-12-17 06:25:30 -05:00
Gaming4JC e0eee318c6 Bug 1390082 - Implement AsyncGeneratorQueue with simpler array operations.
Tag #1287

Note: Without ReadableStream implementation
2019-12-17 06:25:30 -05:00
Gaming4JC 4a5ed79c6c Bug 1379525 - Part 2: Properly handle rejection in async-from-sync iteration.
Tag #1287
2019-12-17 06:25:30 -05:00
Gaming4JC 38c1d558af Bug 1379525 - Part 1: Await on the value before yielding or returning inside async generator.
Tag #1287
2019-12-17 06:25:29 -05:00
Gaming4JC dd1cbde156 Bug 1364608 - Stash rval in AsyncIteratorClose.
Tag #1287
2019-12-17 06:25:29 -05:00
Gaming4JC 63eee6325e Bug 1355399 - Switch property retrieval in Async-from-Sync Iterator prototype methods.
Tag #1287
2019-12-17 06:25:29 -05:00
Gaming4JC 55728c964f Bug 1331092 - Part 11: Await on the innerResult.value when innerResult.done is true in yield*.
Tag #1287
2019-12-17 06:25:29 -05:00
Gaming4JC 5bdfdb678d Bug 1331092 - Part 9: Implement for-await-of.
Tag #1287
2019-12-17 06:25:28 -05:00
Gaming4JC 580dfb2afb Bug 1331092 - Part 8: Support JSOP_TOASYNCITER in JIT.
Tag #1287
2019-12-17 06:25:28 -05:00
Gaming4JC ef44324d91 Bug 1331092 - Part 7: Implement Async Generator yield*.
Tag #1287
2019-12-17 06:25:28 -05:00
Gaming4JC bbd1fef784 Bug 1331092 - Part 6: Support JSOP_TOASYNCGEN in JIT.
Tag #1287
2019-12-17 06:25:27 -05:00
Gaming4JC 8e2f6a7599 Bug 1331092 - Part 2: Implement Async Generator except yield*.
Tag #1287
2019-12-17 06:25:27 -05:00
Gaming4JC d5086ac3aa Bug 1331092 - Part 2: Implement Async Generator except yield*.
Tag #1287
2019-12-17 06:25:27 -05:00
Gaming4JC 82f9efff93 Bug 1331092 - Part 1: Add Symbol.asyncIterator.
Tag #1287
2019-12-17 06:25:26 -05:00
Gaming4JC 5e1f00240d Bug 1331092 - Part 0: Define NOMINMAX to avoid compile error from min/max macro on windows.
Tag #1287
2019-12-17 06:25:26 -05:00
Gaming4JC f87b1b8850 Bug 1317389: Change property attributes for generator and async functions to match ES2015/2017.
Tag #1287
2019-12-17 06:25:26 -05:00
Gaming4JC f5fa6cfea7 Bug 1344753 - Update for-of stack depth in ControlFlowGenerator::processWhileOrForInLoop.
Tag #1287
2019-12-17 06:25:25 -05:00
Gaming4JC d0d9a4f43d Bug 1316098 - Optimize out result object allocation for await/return in async function.
Tag #1287
2019-12-17 06:25:25 -05:00
Gaming4JC 79b5eb14bc Bug 1343481 - Part 7: Add BytecodeEmitter::emitDotGenerator and make yield/await nodes unary.
Tag #1287
2019-12-17 06:25:25 -05:00
Gaming4JC cba3f61427 Bug 1343481 - Part 6: Add native functions wrapper for GetInternalError and GetTypeError.
Tag #1287
2019-12-17 06:25:25 -05:00
Gaming4JC 4f88fc8513 Bug 1343481 - Part 5: Rename AsyncFunction-related names in Promise.cpp to explicitly say Async Function.
Tag #1287
2019-12-17 06:25:24 -05:00
Gaming4JC 73c8732000 Bug 1343481 - Part 4: Add Add GeneratorObject.{isAfterYield,isAfterAwait}.
Tag #1287
2019-12-17 06:25:24 -05:00
Gaming4JC 3a3de55aad Bug 1343481 - Part 3: Add JSOP_AWAIT and rename {yieldIndex,yieldOffset} to {yieldAndAwaitIndex,yieldAndAwaitOffset}.
Tag #1287
2019-12-17 06:25:24 -05:00
Gaming4JC f07d5707c7 Bug 1343481 - Part 2: Stop using StarGegerator for async function.
Tag #1287
2019-12-17 06:25:23 -05:00
Gaming4JC 9163aaebb6 Bug 1343481 - Part 1: Remove {JSFunction,JSScript,LazyScript}.isGenerator() method.
Tag #1287
2019-12-17 06:25:23 -05:00
Gaming4JC 1fd726c6b0 Bug 1336705 - Part 2: Add self-hosting intrinsics for resolving/rejecting Promises and adding reactions.
Tag #1287
2019-12-17 06:25:23 -05:00
Gaming4JC cb732e5fdd Bug 336705 - Part 1: Support creating and resolving Promises without resolve/reject functions.
Useful for internally-created Promises that'll only ever be resolved/rejected internally.

Tag #1287
2019-12-17 06:25:22 -05:00
Gaming4JC f589ef8166 Bug 1317376 - Part 2: Detect Promise self-resolution when resolving through the Promise resolving fast path.
Tag #1287
2019-12-17 06:25:22 -05:00
Gaming4JC e23b013adf Bug 1317376 - Part 1: Remove unreachable code and remnants from the self-hosted implementation.
Tag #1287
2019-12-17 06:25:16 -05:00
wolfbeast d88f471cbc Issue #1302 followup - Add spec-compliance checks/errors
- Check for undefined/null regex flags (because...)
- Make it throw a typeerror instead of syntax error on non-global
- Generalize JS error messages for these checks.
2019-11-30 00:46:07 +01:00
wolfbeast 185a9a7508 Issue #1302 - Add self-hosted implementation for string regex .matchAll
This resolves #1302.
2019-11-26 13:37:09 +01:00
Gaming4JC 0a6ccfaa9a Issue #1284 - Update js/src/builtin/TestingFunctions.cpp for /s (dotAll) regular expression changes
This fixes debug builds
2019-11-18 19:30:45 -05:00
wolfbeast 122e1ee6cd Issue #1284 - Implement /s (dotAll) for regular expressions, v2.
Resolves #1284.
2019-11-18 16:50:40 +01:00
wolfbeast bd529c60c6 Revert "Issue #1284 - Implement /s (dotAll) for regular expressions."
This reverts commit f31b04a303.
2019-11-18 13:34:18 +01:00
wolfbeast f31b04a303 Issue #1284 - Implement /s (dotAll) for regular expressions.
Resolves #1284.
2019-11-18 12:20:44 +01:00
Gaming4JC e79607a7a6 Issue #1279 - Update js/src/builtin/TestingFunctions.cpp for regex lookbehind changes
This fixes debug builds
2019-11-14 22:40:15 -05:00
wolfbeast ce0dd36a78 Merge branch 'issue-1279' 2019-11-12 17:03:28 +01:00
André Bargull 899be7cedb Issue #1283 - Implement Promise.prototype.finally()
This resolves #1283.
2019-11-12 17:02:16 +01:00
wolfbeast fa473930f4 Issue #1279 - Implement regular expression lookbehind
Based on Tom Schuster's work, with extra minters for unicode.
2019-11-11 23:37:35 +01:00
wolfbeast 974a481d12 Merge branch 'master' into js-modules
# Conflicts:
#	modules/libpref/init/all.js
2019-11-10 11:39:27 +01:00
Moonchild 21b3f62474 Merge pull request #1262 from athenian200/solaris-work
Support Modern Solaris
2019-11-02 14:37:22 +01:00
wolfbeast 24027f0df9 Issue #1257 - Part 3: Remove/update tests.
This removes a ton of tests that are no longer relevant with (un)watch
removed (e.g. testing stability/bugs in the watchpoint system itself
which has never been the most stable), and updates others that would
previously rely on watch/unwatch, so that they don't unexpectedly fail.
2019-10-27 02:14:16 +01:00
wolfbeast 44a077980a Issue #1257 - Part 2: Remove watch/unwatch and JS watchpoint class. 2019-10-27 02:51:11 +02:00