|
|
Description[promises] Move PromiseReject to c++
This patch refactors most of FulfillPromise runtime call out to a separate
function so that we can to it from PromiseReject runtime call.
This patch adds a PromiseStatus enum.
BUG=v8:5343
Committed: https://crrev.com/f80f450993f926e6b4cd2d4b0bbf9c931bb199a1
Cr-Commit-Position: refs/heads/master@{#40615}
Patch Set 1 #Patch Set 2 : rebase #Patch Set 3 : fix handle #
Total comments: 1
Patch Set 4 : Address review comments #Patch Set 5 : fix test #Patch Set 6 : use enum #Patch Set 7 : Fix comment #Patch Set 8 : move comment #
Total comments: 4
Patch Set 9 : make promise a jsobject #
Messages
Total messages: 51 (40 generated)
The CQ bit was checked by gsathya@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: v8_linux64_avx2_rel_ng on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux64_avx2_rel_ng/buil...) v8_linux64_gyp_rel_ng on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux64_gyp_rel_ng/build...) v8_linux64_rel_ng on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux64_rel_ng/builds/15249) v8_linux_arm_rel_ng on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux_arm_rel_ng/builds/...) v8_linux_dbg_ng on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux_dbg_ng/builds/15274) v8_linux_mips64el_compile_rel on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux_mips64el_compile_r...) v8_linux_mipsel_compile_rel on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux_mipsel_compile_rel...) v8_linux_rel_ng on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux_rel_ng/builds/15210) v8_mac_rel_ng on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_mac_rel_ng/builds/11523)
The CQ bit was checked by gsathya@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Description was changed from ========== [promises] Move PromiseReject to c++ BUG=v8:5343 ========== to ========== [promises] Move PromiseReject to c++ This patch refactors most of FulfillPromise runtime call out to a separate function so that we can to it from PromiseReject runtime call. This patch also exports PromiseSet and kPromiseRejected. BUG=v8:5343 ==========
gsathya@chromium.org changed reviewers: + adamk@chromium.org
We export kRejectedPromise and PromiseSet for async await which is weird since they're internal to promises. I could potentially keep PromiseReject around for async await. Thoughts?
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: v8_linux64_avx2_rel_ng on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux64_avx2_rel_ng/buil...) v8_linux64_avx2_rel_ng_triggered on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux64_avx2_rel_ng_trig...)
The CQ bit was checked by gsathya@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
I'd prefer to keep RejectPromise as a two-line function in promise.js and export that. https://codereview.chromium.org/2451163003/diff/40001/src/runtime/runtime-int... File src/runtime/runtime-internal.cc (right): https://codereview.chromium.org/2451163003/diff/40001/src/runtime/runtime-int... src/runtime/runtime-internal.cc:625: const int kRejected = 2; This needs a comment that it must be kept in sync with the same thing in promise.js (and add a comment in promise.js referring back here).
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: v8_linux64_avx2_rel_ng on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux64_avx2_rel_ng/buil...) v8_linux64_avx2_rel_ng_triggered on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux64_avx2_rel_ng_trig...)
The CQ bit was checked by gsathya@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: v8_mac_rel_ng on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_mac_rel_ng/builds/11536) v8_mac_rel_ng_triggered on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_mac_rel_ng_triggered/bui...)
The CQ bit was checked by gsathya@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
On 2016/10/26 14:39:50, adamk wrote: > I'd prefer to keep RejectPromise as a two-line function in promise.js and export > that. Done. > https://codereview.chromium.org/2451163003/diff/40001/src/runtime/runtime-int... > File src/runtime/runtime-internal.cc (right): > > https://codereview.chromium.org/2451163003/diff/40001/src/runtime/runtime-int... > src/runtime/runtime-internal.cc:625: const int kRejected = 2; > This needs a comment that it must be kept in sync with the same thing in > promise.js (and add a comment in promise.js referring back here). Done.
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
Description was changed from ========== [promises] Move PromiseReject to c++ This patch refactors most of FulfillPromise runtime call out to a separate function so that we can to it from PromiseReject runtime call. This patch also exports PromiseSet and kPromiseRejected. BUG=v8:5343 ========== to ========== [promises] Move PromiseReject to c++ This patch refactors most of FulfillPromise runtime call out to a separate function so that we can to it from PromiseReject runtime call. This patch adds a PromiseStatus enum. BUG=v8:5343 ==========
The CQ bit was checked by gsathya@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
On 2016/10/26 16:00:50, gsathya wrote: > On 2016/10/26 14:39:50, adamk wrote: > > I'd prefer to keep RejectPromise as a two-line function in promise.js and > export > > that. > > Done. > > > > https://codereview.chromium.org/2451163003/diff/40001/src/runtime/runtime-int... > > File src/runtime/runtime-internal.cc (right): > > > > > https://codereview.chromium.org/2451163003/diff/40001/src/runtime/runtime-int... > > src/runtime/runtime-internal.cc:625: const int kRejected = 2; > > This needs a comment that it must be kept in sync with the same thing in > > promise.js (and add a comment in promise.js referring back here). > > Done. Added enum.
The CQ bit was checked by gsathya@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
The CQ bit was checked by gsathya@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
https://codereview.chromium.org/2451163003/diff/140001/src/js/promise.js File src/js/promise.js (right): https://codereview.chromium.org/2451163003/diff/140001/src/js/promise.js#newc... src/js/promise.js:319: return; No need for this empty return https://codereview.chromium.org/2451163003/diff/140001/src/runtime/runtime-in... File src/runtime/runtime-internal.cc (right): https://codereview.chromium.org/2451163003/diff/140001/src/runtime/runtime-in... src/runtime/runtime-internal.cc:302: isolate->ReportPromiseReject(Handle<JSObject>::cast(promise), value, Why is this safe? Or rather, why did the promise argument change to a JSReceiver?
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
The CQ bit was checked by gsathya@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
https://codereview.chromium.org/2451163003/diff/140001/src/js/promise.js File src/js/promise.js (right): https://codereview.chromium.org/2451163003/diff/140001/src/js/promise.js#newc... src/js/promise.js:319: return; On 2016/10/27 08:02:34, adamk wrote: > No need for this empty return Done. https://codereview.chromium.org/2451163003/diff/140001/src/runtime/runtime-in... File src/runtime/runtime-internal.cc (right): https://codereview.chromium.org/2451163003/diff/140001/src/runtime/runtime-in... src/runtime/runtime-internal.cc:302: isolate->ReportPromiseReject(Handle<JSObject>::cast(promise), value, On 2016/10/27 08:02:34, adamk wrote: > Why is this safe? Or rather, why did the promise argument change to a > JSReceiver? Changed back to JSObject
lgtm
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
The CQ bit was checked by gsathya@chromium.org
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Message was sent while issue was closed.
Description was changed from ========== [promises] Move PromiseReject to c++ This patch refactors most of FulfillPromise runtime call out to a separate function so that we can to it from PromiseReject runtime call. This patch adds a PromiseStatus enum. BUG=v8:5343 ========== to ========== [promises] Move PromiseReject to c++ This patch refactors most of FulfillPromise runtime call out to a separate function so that we can to it from PromiseReject runtime call. This patch adds a PromiseStatus enum. BUG=v8:5343 ==========
Message was sent while issue was closed.
Committed patchset #9 (id:160001)
Message was sent while issue was closed.
A revert of this CL (patchset #9 id:160001) has been created in https://codereview.chromium.org/2460213002/ by cbruni@chromium.org. The reason for reverting is: Causes parse and compile regressions on yahoo and ebay (cbrug/660720)..
Message was sent while issue was closed.
Description was changed from ========== [promises] Move PromiseReject to c++ This patch refactors most of FulfillPromise runtime call out to a separate function so that we can to it from PromiseReject runtime call. This patch adds a PromiseStatus enum. BUG=v8:5343 ========== to ========== [promises] Move PromiseReject to c++ This patch refactors most of FulfillPromise runtime call out to a separate function so that we can to it from PromiseReject runtime call. This patch adds a PromiseStatus enum. BUG=v8:5343 Committed: https://crrev.com/f80f450993f926e6b4cd2d4b0bbf9c931bb199a1 Cr-Commit-Position: refs/heads/master@{#40615} ==========
Message was sent while issue was closed.
Patchset 9 (id:??) landed as https://crrev.com/f80f450993f926e6b4cd2d4b0bbf9c931bb199a1 Cr-Commit-Position: refs/heads/master@{#40615} |