Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(783)

Unified Diff: src/js/async-await.js

Issue 2599003002: [async-await] Remove call indirection in Create and Reject (Closed)
Patch Set: Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | src/js/promise.js » ('j') | src/js/promise.js » ('J')
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/js/async-await.js
diff --git a/src/js/async-await.js b/src/js/async-await.js
index 5c9c4b5ceba4931aded31ef3d98ac27502415718..a9b4b67f4312505b4ec0ebe20f6751694907a6ed 100644
--- a/src/js/async-await.js
+++ b/src/js/async-await.js
@@ -14,16 +14,11 @@
var AsyncFunctionNext;
var AsyncFunctionThrow;
var CreateInternalPromiseCapability;
-var PromiseCreate;
-var PromiseNextMicrotaskID;
-var RejectPromise;
utils.Import(function(from) {
AsyncFunctionNext = from.AsyncFunctionNext;
AsyncFunctionThrow = from.AsyncFunctionThrow;
CreateInternalPromiseCapability = from.CreateInternalPromiseCapability;
- PromiseCreate = from.PromiseCreate;
- RejectPromise = from.RejectPromise;
});
var promiseAsyncStackIDSymbol =
@@ -42,7 +37,7 @@ function PromiseCastResolved(value) {
if (%is_promise(value)) {
return value;
} else {
- var promise = PromiseCreate();
+ var promise = %promise_internal_constructor(UNDEFINED);
%promise_resolve(promise, value);
return promise;
}
@@ -121,11 +116,11 @@ function AsyncFunctionAwaitCaught(generator, awaited, outerPromise) {
// How the parser rejects promises from async/await desugaring
function RejectPromiseNoDebugEvent(promise, reason) {
- return RejectPromise(promise, reason, false);
+ return %PromiseReject(promise, reason, false);
}
function AsyncFunctionPromiseCreate() {
- var promise = PromiseCreate();
+ var promise = %promise_internal_constructor(UNDEFINED);
if (DEBUG_IS_ACTIVE) {
// Push the Promise under construction in an async function on
// the catch prediction stack to handle exceptions thrown before
« no previous file with comments | « no previous file | src/js/promise.js » ('j') | src/js/promise.js » ('J')

Powered by Google App Engine
This is Rietveld 408576698