v8/test/mjsunit/es8
caitp 39642fa2be [async-await] (simpler) fix for Return in try/finally in async functions
Alternative approach to https://codereview.chromium.org/2667983004/, which
does not depend on implicit control flow changes from
https://codereview.chromium.org/2664083002

- Remove handling for `async function` from Parser::RewriteReturn(). This functionality
is moved to BytecodeGenerator::BuildAsyncReturn(). This ensures that promise resolution
is deferred until all finally blocks are evaluated fully.

- Add a new deferred command (CMD_ASYNC_RETURN), which instructs ControlScope to
generate return code using BuildAsyncReturn rather than BuildReturn.

- Parser has a new `NewReturnStatement()` helper which determines what type of return
statement to generate based on the type of function.

BUG=v8:5896, v8:4483
R=littledan@chromium.org, neis@chromium.org, rmcilroy@chromium.org, adamk@chromium.org, gsathya@chromium.org

Review-Url: https://codereview.chromium.org/2685683002
Cr-Commit-Position: refs/heads/master@{#43104}
2017-02-10 14:38:58 +00:00
..
regress Remove --harmony-async-await runtime flag 2017-01-10 23:27:02 +00:00
async-arrow-lexical-arguments.js Remove --harmony-async-await runtime flag 2017-01-10 23:27:02 +00:00
async-arrow-lexical-new.target.js Remove --harmony-async-await runtime flag 2017-01-10 23:27:02 +00:00
async-arrow-lexical-super.js Remove --harmony-async-await runtime flag 2017-01-10 23:27:02 +00:00
async-arrow-lexical-this.js Remove --harmony-async-await runtime flag 2017-01-10 23:27:02 +00:00
async-await-basic.js Remove --harmony-async-await runtime flag 2017-01-10 23:27:02 +00:00
async-await-no-constructor.js [async-await] Move remaining async-await code to TF 2017-01-20 19:36:28 +00:00
async-await-resolve-new.js Remove --harmony-async-await runtime flag 2017-01-10 23:27:02 +00:00
async-await-species.js Remove --harmony-async-await runtime flag 2017-01-10 23:27:02 +00:00
async-destructuring.js Remove --harmony-async-await runtime flag 2017-01-10 23:27:02 +00:00
async-function-stacktrace.js Remove --harmony-async-await runtime flag 2017-01-10 23:27:02 +00:00
async-function-try-finally.js [async-await] (simpler) fix for Return in try/finally in async functions 2017-02-10 14:38:58 +00:00
object-entries.js Remove --harmony-* flags for new Object static methods 2016-10-31 22:53:35 +00:00
object-get-own-property-descriptors.js Remove --harmony-* flags for new Object static methods 2016-10-31 22:53:35 +00:00
object-values.js Remove --harmony-* flags for new Object static methods 2016-10-31 22:53:35 +00:00
sloppy-no-duplicate-async.js Remove --harmony-async-await runtime flag 2017-01-10 23:27:02 +00:00