- 19 Jan, 2018 1 commit
-
-
Peter Marshall authored
This is a reland of a7c91c77. Original change's description: > [typedarray] Port ConstructByTypedArray to CSA. > > This is needed to easily port the constructor dispatcher to CSA. > > Bug: v8:7102 > Change-Id: I9672416495940ca12088a2980a9ecc61364aef9d > Reviewed-on: https://chromium-review.googlesource.com/785630 > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Commit-Queue: Peter Marshall <petermarshall@chromium.org> > Cr-Commit-Position: refs/heads/master@{#50671} Bug: v8:7102 Change-Id: I9d839343d9b95f288f806953455c2c26ca8cab06 Reviewed-on: https://chromium-review.googlesource.com/875031Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#50723}
-
- 18 Jan, 2018 2 commits
-
-
Michael Achenbach authored
This reverts commit a7c91c77. Reason for revert: changes a layout test https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/21031 Original change's description: > [typedarray] Port ConstructByTypedArray to CSA. > > This is needed to easily port the constructor dispatcher to CSA. > > Bug: v8:7102 > Change-Id: I9672416495940ca12088a2980a9ecc61364aef9d > Reviewed-on: https://chromium-review.googlesource.com/785630 > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Commit-Queue: Peter Marshall <petermarshall@chromium.org> > Cr-Commit-Position: refs/heads/master@{#50671} TBR=petermarshall@chromium.org,bmeurer@chromium.org,verwaest@chromium.org Change-Id: I118a1cb0d873a1d2e159619e5f327f9f6f7974c4 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7102 Reviewed-on: https://chromium-review.googlesource.com/873790Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#50686}
-
Peter Marshall authored
This is needed to easily port the constructor dispatcher to CSA. Bug: v8:7102 Change-Id: I9672416495940ca12088a2980a9ecc61364aef9d Reviewed-on: https://chromium-review.googlesource.com/785630Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#50671}
-
- 11 Jan, 2018 1 commit
-
-
Caitlin Potter authored
https://github.com/tc39/ecma262/pull/988 gained concensus during the september 2017 TC39 meetings. This moves the load of the "next" method to the very beginning of the iteration protocol, rather than during each iteration step. This impacts: - yield* - for-of loops - spread arguments - array spreads In the v8 implementation, this also affects async iteration versions of these things (the sole exception being the Async-From-Sync iterator, which requires a few more changes to work with this, likely done in a followup patch). This change introduces a new AST node, ResolvedProperty, which can be used as a callee by Call nodes to produce the same bytecode as Property calls, without observably re-loading the property. This is used in several AST-desugarings involving the iteration protocol. BUG=v8:6861, v8:5699 R=rmcilroy@chromium.org TBR=neis@chromium.org, adamk@chromium.org Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: I9685db6e85315ba8a2df87a4537c2bf491e1e35b Reviewed-on: https://chromium-review.googlesource.com/857593 Commit-Queue: Caitlin Potter <caitp@igalia.com> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#50518}
-
- 09 Jan, 2018 3 commits
-
-
Benedikt Meurer authored
Inlining the EnqueueMicrotask logic into the various uses blows up the snapshot size significantly. So instead of doing that we just turn the operation into a dedicated builtin that we call from the various uses. This still avoids the runtime function call overhead and maintains the fast path without write barriers for the common case of the microtask queue fitting into new space. This also moves back the microtask helper CSA functions to the specialized assembler. Bug: v8:7253, chromium:799563 Change-Id: I2d24d0e5c01e442c5ad7f5d4373fbc6e94351ac5 Reviewed-on: https://chromium-review.googlesource.com/856618Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#50461}
-
Michael Achenbach authored
This reverts commit bf4cc9ee. Reason for revert: Breaks windows with msvc and linux with gcc https://build.chromium.org/p/client.v8/builders/V8%20Win64%20-%20msvc/builds/841 https://build.chromium.org/p/client.v8/builders/V8%20Linux%20gcc%204.8/builds/17265 Original change's description: > [esnext] load `iterator.next` only once at beginning of iteration > > https://github.com/tc39/ecma262/pull/988 gained concensus during the > september 2017 TC39 meetings. This moves the load of the "next" method > to the very beginning of the iteration protocol, rather than during > each iteration step. > > This impacts: > > - yield* > - for-of loops > - spread arguments > - array spreads > > In the v8 implementation, this also affects async iteration versions of > these things (the sole exception being the Async-From-Sync iterator, > which requires a few more changes to work with this, likely done in a > followup patch). > > This change introduces a new AST node, ResolvedProperty, which can be used > as a callee by Call nodes to produce the same bytecode as Property calls, > without observably re-loading the property. This is used in several > AST-desugarings involving the iteration protocol. > > BUG=v8:6861, v8:5699 > R=rmcilroy@chromium.org, neis@chromium.org, adamk@chromium.org > > Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng > Change-Id: Ib81106a0182687fc5efea0bc32302ad06376773b > Reviewed-on: https://chromium-review.googlesource.com/687997 > Commit-Queue: Caitlin Potter <caitp@igalia.com> > Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> > Reviewed-by: Adam Klein <adamk@chromium.org> > Reviewed-by: Georg Neis <neis@chromium.org> > Cr-Commit-Position: refs/heads/master@{#50452} TBR=rmcilroy@chromium.org,adamk@chromium.org,neis@chromium.org,caitp@igalia.com,caitp@chromium.org Change-Id: I1797c0d596dfd6850d6f0f505f591a7a990dd1f1 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:6861, v8:5699 Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Reviewed-on: https://chromium-review.googlesource.com/857616Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#50454}
-
Caitlin Potter authored
https://github.com/tc39/ecma262/pull/988 gained concensus during the september 2017 TC39 meetings. This moves the load of the "next" method to the very beginning of the iteration protocol, rather than during each iteration step. This impacts: - yield* - for-of loops - spread arguments - array spreads In the v8 implementation, this also affects async iteration versions of these things (the sole exception being the Async-From-Sync iterator, which requires a few more changes to work with this, likely done in a followup patch). This change introduces a new AST node, ResolvedProperty, which can be used as a callee by Call nodes to produce the same bytecode as Property calls, without observably re-loading the property. This is used in several AST-desugarings involving the iteration protocol. BUG=v8:6861, v8:5699 R=rmcilroy@chromium.org, neis@chromium.org, adamk@chromium.org Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: Ib81106a0182687fc5efea0bc32302ad06376773b Reviewed-on: https://chromium-review.googlesource.com/687997 Commit-Queue: Caitlin Potter <caitp@igalia.com> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#50452}
-
- 07 Jan, 2018 1 commit
-
-
Timothy Gu authored
Bug: v8:7245 Change-Id: Ia8931037021b935e776230a6a50c580ad82efba8 Reviewed-on: https://chromium-review.googlesource.com/844065 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#50394}
-
- 05 Jan, 2018 1 commit
-
-
Benedikt Meurer authored
Previously the Promise builtins would always use a runtime function to schedule a new microtask, which is unnecessarily expensive. Since the runtime function only adds the microtask to a FixedArray (potentially growing that array) and increments the number of pending microtasks, it is fairly straight-forward to do this in CSA land instead. This change improves the Bluebird benchmarks by 2-4% on average. Bug: v8:7253 Change-Id: I77e96b9e5afbb4bdbe129b6bb289d9905ed581bf Reviewed-on: https://chromium-review.googlesource.com/851972 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#50372}
-
- 07 Nov, 2017 1 commit
-
-
Sathya Gunasekaran authored
We no longer need the kAlreadyVisitedSlot because we can just check for undefined in the kPromiseSlot to know if the clsoure was already fulfilled. This means we save one word per context per promise resolving closure. Bug: v8:7037 Change-Id: Ib8f0fb445d2e143714d57fe644ba6d7a3f04c1f7 Reviewed-on: https://chromium-review.googlesource.com/756176Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#49200}
-
- 16 Oct, 2017 1 commit
-
-
Benedikt Meurer authored
Port the baseline version of Reflect.has to the CodeStubAssembler and reuse the existing logic for HasProperty (i.e. the HasProperty builtin). Also inline the Reflect.has builtin into TurboFan, by adding a check on the target in front of a use of the JSHasProperty operator. Technically this additional check is not necessary, because the JSHasProperty operator already throws if the target is not a JSReceiver, but the exception message is confusing then. This improves the performance of the micro-benchmark from reflectHasPresent: 337 ms. reflectHasAbsent: 472 ms. to reflectHasPresent: 121 ms. reflectHasAbsent: 216 ms. which is a nice 2.8x improvement in the best case. It also improves the chai test on the web-tooling-benchmark by around 1-2%, which is roughly the expected win (since Reflect.has overall accounts for around 3-4%). Bug: v8:5996, v8:6936, v8:6937 Change-Id: I856183229677a71c19936f06f2a4fc7a794a9a4a Reviewed-on: https://chromium-review.googlesource.com/720959 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#48608}
-
- 07 Sep, 2017 1 commit
-
-
Sathya Gunasekaran authored
The spec calls out to Promise.prototype.then and also passes around the constructor of the receiver to Promise.prototype.finally. Adds a new constructor slot to PromiseFinallyContext enum and this is used to create a new promise in the thenFinally/catchFinally callbacks. Created a new PromiseResolve TFS builtin refactored from the existing PromiseResolve builtin. PromiseResolveWrapper calls out to this TFS Builtin and is now exposed as Promise.resolve. The thenFinally and catchFinally callbacks also call out to the PromiseResolve TFS builtin. Spec -- https://tc39.github.io/proposal-promise-finally/ Bug: v8:5967 Change-Id: I2ce89f14d3b149619d11e424b6e37062e466c4d5 Reviewed-on: https://chromium-review.googlesource.com/652026Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#47898}
-
- 28 Aug, 2017 1 commit
-
-
Sathya Gunasekaran authored
Instead of using a word to store the status of the promise, this patch uses 2 bit on flags. Bug: v8:5046 Change-Id: Ic651338230dbe1704c68de8652676f236a3298f0 Reviewed-on: https://chromium-review.googlesource.com/634623 Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#47628}
-
- 22 Aug, 2017 1 commit
-
-
Sathya Gunasekaran authored
Split the PromiseFinallyContextSlot enum into two separate enums because the spec requires additional slot to store the Promise constructor in the Promise.prototype.finally builtin. This will be added in a follow on patch. Inline the various context creation functions into their callsites since they're only a single line and have only one callsite. Bug: v8:5967 Change-Id: I2834c9c3d4940b8fbbdb7c162f42323d0fe0939f Reviewed-on: https://chromium-review.googlesource.com/624543 Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#47525}
-
- 08 Jul, 2017 1 commit
-
-
Caitlin Potter authored
- Implements the Promise.race algorithm using CodeStubAssembler. - Delete src/js/promise.js, which is no longer needed. - Migrate Promise constructor from slow to fast object in bootstrapper (per v8:5902) Increases size of snapshot_blob.bin on an x64.release build by 1.27kb. BUG=v8:5343 R=gsathya@chromium.org, cbruni@chromium.org Change-Id: I751e7389bd6ba410109640fcd7960b6021540f2f Reviewed-on: https://chromium-review.googlesource.com/535041 Commit-Queue: Caitlin Potter <caitp@igalia.com> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#46489}
-
- 30 Jun, 2017 1 commit
-
-
Caitlin Potter authored
Allocates the Await success/failure closures, their context, and the two required JSPromise objects all at once in a single call, rather than performing multiple allocations throughout the function. Saves about 2kb of snapshot space on an x64.release build. Performance impact of this change has not been measured yet. BUG=v8:4483 R=ishell@chromium.org, jgruber@chromium.org Change-Id: I8d911cb91f5d0e00544ad3ba608aa170f6b2f704 Reviewed-on: https://chromium-review.googlesource.com/549999Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Caitlin Potter <caitp@igalia.com> Cr-Commit-Position: refs/heads/master@{#46360}
-
- 14 Jun, 2017 1 commit
-
-
Caitlin Potter authored
Simplifies the implementation of IteratorClose in IteratorBuiltinsAssembler, and makes clear that it is only invoked when an exception occurs. Adds exception handling support to GetIterator, IteratorStep, and IteratorCloseOnException. Moves the Promise.all resolveElement closure and it's caller to builtins-promise-gen.cc. Instead of creating an internal array (and copying its elements into a result array), a single JSArray is allocated, and appended with BuildAppendJSArray(), falling back to %CreateDataProperty(), and elements are updated in the resolve closure the same way. This should always be unobservable. This CL increases the size of snapshot_blob.bin on an x64.release build by 8.51kb BUG=v8:5343 R=cbruni@chromium.org, gsathysa@chromium.org, jgruber@chromium.org, hpayer@chromium.org, tebbi@chromium.org Change-Id: I29c4a529154ef49ad65555ce6ddc2c5b7c9de6b3 Reviewed-on: https://chromium-review.googlesource.com/508473 Commit-Queue: Caitlin Potter <caitp@igalia.com> Reviewed-by: Hannes Payer <hpayer@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#45946}
-
- 15 May, 2017 2 commits
-
-
Clemens Hammacher authored
This reverts commit 7ef1df85. Reason for revert: Breaks inspector/debugger/get-possible-breakpoints-restrict-to-function: https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20nosnap%20-%20debug/builds/13191/steps/Check/logs/get-possible-breakpoi.. Original change's description: > [builtins] port Promise.all to CSA > > Introduces CodeStubAssembler helpers for common Iterator operations > (GetIterator, IteratorStep, IteratorClose). > > Moves the Promise.all resolveElement closure and it's caller to > builtins-promise-gen.cc. > > Instead of creating an internal array (and copying its elements into a result > array), a single JSArray is allocated, and appended with BuildAppendJSArray(), > falling back to %CreateDataProperty(), and elements are updated in the resolve > closure the same way. This should always be unobservable. > > This CL increases the size of snapshot_blob.bin on an x64.debug build by 11.44kb > > BUG=v8:5343 > R=cbruni@chromium.org, gsathysa@chromium.org, jgruber@chromium.org > > Change-Id: Id69b7f76866b29caccd97f35870154c4be85f418 > Reviewed-on: https://chromium-review.googlesource.com/497974 > Commit-Queue: Caitlin Potter <caitp@igalia.com> > Reviewed-by: Camillo Bruni <cbruni@chromium.org> > Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Cr-Commit-Position: refs/heads/master@{#45306} TBR=adamk@chromium.org,cbruni@chromium.org,gsathya@chromium.org,caitp@igalia.com,jgruber@chromium.org,ishell@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:5343 Change-Id: I831738003643561fa628266af2bcebbb18000e55 Reviewed-on: https://chromium-review.googlesource.com/506014Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#45313}
-
Caitlin Potter authored
Introduces CodeStubAssembler helpers for common Iterator operations (GetIterator, IteratorStep, IteratorClose). Moves the Promise.all resolveElement closure and it's caller to builtins-promise-gen.cc. Instead of creating an internal array (and copying its elements into a result array), a single JSArray is allocated, and appended with BuildAppendJSArray(), falling back to %CreateDataProperty(), and elements are updated in the resolve closure the same way. This should always be unobservable. This CL increases the size of snapshot_blob.bin on an x64.debug build by 11.44kb BUG=v8:5343 R=cbruni@chromium.org, gsathysa@chromium.org, jgruber@chromium.org Change-Id: Id69b7f76866b29caccd97f35870154c4be85f418 Reviewed-on: https://chromium-review.googlesource.com/497974 Commit-Queue: Caitlin Potter <caitp@igalia.com> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#45306}
-
- 21 Mar, 2017 1 commit
-
-
jkummerow authored
BUG=v8:6055 Review-Url: https://codereview.chromium.org/2760953002 Cr-Commit-Position: refs/heads/master@{#43975}
-
- 16 Mar, 2017 1 commit
-
-
jkummerow authored
This is in preparation for linking the former only into mksnapshot. Just shuffling code around, no changes in functionality. BUG=v8:6055 Review-Url: https://codereview.chromium.org/2752143004 Cr-Commit-Position: refs/heads/master@{#43858}
-
- 17 Feb, 2017 1 commit
-
-
gsathya authored
Adds five new TF builtins for the spec defined functions/closures. This follows mechanism similar to promise resolving functions approach where we store the closure variables in a custom context. Adds a new --harmony-promise-finally flag. BUG=v8:5967 Review-Url: https://codereview.chromium.org/2695753002 Cr-Commit-Position: refs/heads/master@{#43294}
-
- 20 Jan, 2017 1 commit
-
-
jgruber authored
This moves AsyncFunctionAwait{Caught,Uncaught} to CSA, and removes async-await.js. BUG=v8:5639 Review-Url: https://codereview.chromium.org/2643023002 Cr-Commit-Position: refs/heads/master@{#42579}
-
- 18 Jan, 2017 1 commit
-
-
caitp authored
First step in splitting apart https://codereview.chromium.org/2622833002/ to land piece by piece. Porting src/js/async-await.js to TF builtins using this boilerplate is now very straightforward. BUG=v8:4483, v8:5855 R=jgruber@chromium.org, gsathya@chromium.org Review-Url: https://codereview.chromium.org/2635353002 Cr-Commit-Position: refs/heads/master@{#42466}
-
- 17 Jan, 2017 2 commits
-
-
gsathya authored
BUG=v8:5343 Review-Url: https://codereview.chromium.org/2637523002 Cr-Commit-Position: refs/heads/master@{#42423}
-
gsathya authored
Also moves some functions to prologue.js BUG=v8:5343 Review-Url: https://codereview.chromium.org/2630593004 Cr-Commit-Position: refs/heads/master@{#42417}
-
- 12 Jan, 2017 1 commit
-
-
jochen authored
Since we only can do limited checks during microtask execution, do the checks before actually creating a promise BUG=chromium:658194 R=bmeurer@chromium.org,gsathya@chromium.org Review-Url: https://codereview.chromium.org/2628863002 Cr-Commit-Position: refs/heads/master@{#42265}
-
- 06 Jan, 2017 1 commit
-
-
gsathya authored
Also moves most of the runtime function into TF. There are lots of runtime calls but they happen only for the debug case so it's fine. BUG=v8:5343 Review-Url: https://codereview.chromium.org/2611083002 Cr-Commit-Position: refs/heads/master@{#42109}
-
- 04 Jan, 2017 3 commits
-
-
gsathya authored
Add a more low level BranchIfFastPath to take the native_context and promise_fun as args and change the existing one to use this. BUG=v8:5343 Review-Url: https://codereview.chromium.org/2592933004 Cr-Commit-Position: refs/heads/master@{#42075}
-
gsathya authored
BUG=v8:5343 Review-Url: https://codereview.chromium.org/2614603003 Cr-Commit-Position: refs/heads/master@{#42073}
-
gsathya authored
This removes all the promise allocation related methods from the CSA and moves them PromiseBuiltinsAssembler with some edits. BUG=v8:5343 Review-Url: https://codereview.chromium.org/2604273003 Cr-Commit-Position: refs/heads/master@{#42070}
-
- 02 Jan, 2017 1 commit
-
-
caitp authored
- Adds CodeAssembler::ConstructJS() to simplify calling JS functions as constructors, used by NewPromiseCapability() - Defines PromiseCapability as a special JSObject subclass, with a non-exensible Map, and read-only non-configurable DataDescriptors which point to its in-object fields. This allows its fields to be used by JS builtins until there is no longer any need. Currently, the performance benefit comes from https://codereview.chromium.org/2567033003/, but does not appear to regress performance in any significant way. BUG=v8:5343 TBR=ulan@chromium.org Review-Url: https://codereview.chromium.org/2567333002 Cr-Commit-Position: refs/heads/master@{#42014}
-
- 29 Dec, 2016 1 commit
-
-
gsathya authored
This patch stores the promise, resolve, reject properties of the deferred object created by CreateInternalPromiseCapability and NewPromiseCapability directly on the promise (if the promise hasn't been fulfilled), otherwise they are stored on the PromiseReactionJobInfo. This patch removes the currently unused CreateInternalPromiseCapability and inlines the call to create the deferred promise object. NewPromiseCapability is the only function that works with a deferred. This patch results in a 8.5% improvement in benchmarks over 5 runs. BUG=v8:5343 Review-Url: https://codereview.chromium.org/2590563003 Cr-Commit-Position: refs/heads/master@{#41991}
-
- 21 Dec, 2016 1 commit
-
-
gsathya authored
This patch also refactors most of PromiseThen into InternalPromiseThen to be reused with PromiseCatch and also changes InternalResolvePromise to return and not branch. BUG=v8:5343 Review-Url: https://codereview.chromium.org/2596553002 Cr-Commit-Position: refs/heads/master@{#41902}
-
- 19 Dec, 2016 2 commits
-
-
gsathya authored
2% improvement on benchmarks over 5 runs. BUG=v8:5343 Review-Url: https://codereview.chromium.org/2567033003 Cr-Commit-Position: refs/heads/master@{#41827}
-
gsathya authored
BUG=v8:5343 Review-Url: https://codereview.chromium.org/2585133002 Cr-Commit-Position: refs/heads/master@{#41816}
-