• gsathya's avatar
    [async-await] Don't create resolving callbacks for throwaway promises · 764548e2
    gsathya authored
    This patch also cleans up NewPromiseCapability.
    
    This patch results in a 20% improvement over 4 runs with the following micro
    benchmark -
    
    var x = Promise.resolve();
    
    async function bar() {
        return x;
    }
    
    async function foo() {
        await bar();
    }
    
    var start = performance.now();
    var count = 0;
    var max = 10000;
    for(var i = 0; i <= max; i++) {
        foo().then(() => {
            count++;
            if(count === max) print( performance.now() - start );
        })
    }
    
    BUG=v8:5639
    
    Review-Url: https://codereview.chromium.org/2512103002
    Cr-Commit-Position: refs/heads/master@{#41116}
    764548e2
Name
Last commit
Last update
..
OWNERS Loading commit data...
array.js Loading commit data...
arraybuffer.js Loading commit data...
async-await.js Loading commit data...
collection-iterator.js Loading commit data...
collection.js Loading commit data...
datetime-format-to-parts.js Loading commit data...
harmony-atomics.js Loading commit data...
harmony-simd.js Loading commit data...
harmony-string-padding.js Loading commit data...
i18n.js Loading commit data...
icu-case-mapping.js Loading commit data...
macros.py Loading commit data...
messages.js Loading commit data...
prologue.js Loading commit data...
promise.js Loading commit data...
proxy.js Loading commit data...
runtime.js Loading commit data...
spread.js Loading commit data...
string.js Loading commit data...
symbol.js Loading commit data...
templates.js Loading commit data...
typedarray.js Loading commit data...
v8natives.js Loading commit data...
weak-collection.js Loading commit data...