Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Bug 1781205: Move Await of AsyncGeneratorYield. r=arai
Spec PR: tc39/ecma262#2819 The PR moves the `Await` operation of out `AsyncGeneratorYield` and instead executes it before calling `AsyncGeneratorYield` from `Yield`. `BytecodeEmitter::emitYieldStar()` has an inlined implementation of the `AsyncGeneratorYield` operation. Removing the call to `emitAwaitInInnermostScope()` is equivalent to removing the `Await` operation in `AsyncGeneratorYield`. And in `BytecodeEmitter::emitYield()` we only need to remove the comment explaining why we call `emitAwaitInInnermostScope()`, because executing `Await` is now part of the normal evaluation of the `Yield` expression and no longer happens in `AsyncGeneratorYield`. Differential Revision: https://phabricator.services.mozilla.com/D156933
- Loading branch information