• Caitlin Potter's avatar
    [async-await] remove CSA_SLOW_ASSERT in AsyncGeneratorResolve · 9867aa3f
    Caitlin Potter authored
    The assertion was intended to verify that the function is only called
    at appropriate times (at a point when it was called both by by other builtins, and by desugarings added in the parser and during bytecode generation) --- However, it didn't account for the case where
    the wrapper Promise is resolved with another JSPromise with a
    non-callable "then" method. (Step 12 of
    https://tc39.github.io/ecma262/#sec-promise-resolve-functions):
    
    "If IsCallable(thenAction) is false, then
        Return FulfillPromise(promise, resolution)."
    
    It would be observable to verify this behaviour by loading the "then"
    value and asserting that it's non-callable, so instead the CSA_ASSERT
    is just removed and replaced with a comment explaining the appropriate
    use of the function.
    
    BUG=chromium:897436, v8:5855
    R=bmeurer@chromium.org
    
    Change-Id: Ib4b11abfe3339409b57ccfda9c3f75a34e0db532
    Reviewed-on: https://chromium-review.googlesource.com/c/1296909
    Commit-Queue: Caitlin Potter <caitp@igalia.com>
    Reviewed-by: 's avatarBenedikt Meurer <bmeurer@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#56916}
    9867aa3f
Name
Last commit
Last update
..
bigint Loading commit data...
regress Loading commit data...
weakrefs Loading commit data...
array-concat-array-proto-getter.js Loading commit data...
array-concat-array-proto.js Loading commit data...
array-concat-object-proto-dict-getter.js Loading commit data...
array-concat-object-proto-dict.js Loading commit data...
array-concat-object-proto-generic-dict.js Loading commit data...
array-concat-object-proto.js Loading commit data...
array-flat-species.js Loading commit data...
array-flat.js Loading commit data...
array-flatMap-species.js Loading commit data...
array-flatMap.js Loading commit data...
array-sort-comparefn.js Loading commit data...
async-await-optimization.js Loading commit data...
async-for-of-non-iterable.js Loading commit data...
async-from-sync-iterator.js Loading commit data...
async-generators-basic.js Loading commit data...
async-generators-resume-return.js Loading commit data...
async-generators-return.js Loading commit data...
async-generators-yield.js Loading commit data...
atomics-notify.js Loading commit data...
atomics-value-check.js Loading commit data...
atomics.js Loading commit data...
bigintarray-keyedstore-tobigint.js Loading commit data...
block-lazy-compile.js Loading commit data...
dataview-accessors.js Loading commit data...
default-parameter-do-expression.js Loading commit data...
do-expressions-arrow-param-scope.js Loading commit data...
do-expressions-control.js Loading commit data...
do-expressions.js Loading commit data...
for-await-of.js Loading commit data...
function-tostring.js Loading commit data...
futex.js Loading commit data...
generators-reduced.js Loading commit data...
generators.js Loading commit data...
global-configurable.js Loading commit data...
global-writable.js Loading commit data...
global.js Loading commit data...
harmony-string-pad-end.js Loading commit data...
harmony-string-pad-start.js Loading commit data...
import-from-compilation-errored.js Loading commit data...
import-from-evaluation-errored.js Loading commit data...
import-from-fetch-errored.js Loading commit data...
import-from-instantiation-errored.js Loading commit data...
module-parsing-eval.js Loading commit data...
modules-import-1.js Loading commit data...
modules-import-10.js Loading commit data...
modules-import-11.js Loading commit data...
modules-import-12.js Loading commit data...
modules-import-13.js Loading commit data...
modules-import-14.js Loading commit data...
modules-import-15.js Loading commit data...
modules-import-16.js Loading commit data...
modules-import-17.js Loading commit data...
modules-import-2.js Loading commit data...
modules-import-3.js Loading commit data...
modules-import-4.js Loading commit data...
modules-import-5.js Loading commit data...
modules-import-6.js Loading commit data...
modules-import-7.js Loading commit data...
modules-import-8.js Loading commit data...
modules-import-9.js Loading commit data...
modules-import-large.js Loading commit data...
modules-import-meta.js Loading commit data...
modules-import-namespace.js Loading commit data...
modules-skip-1.js Loading commit data...
modules-skip-10.js Loading commit data...
modules-skip-11.js Loading commit data...
modules-skip-12.js Loading commit data...
modules-skip-13.js Loading commit data...
modules-skip-2.js Loading commit data...
modules-skip-3.js Loading commit data...
modules-skip-4.js Loading commit data...
modules-skip-5.js Loading commit data...
modules-skip-6.js Loading commit data...
modules-skip-7.js Loading commit data...
modules-skip-8.js Loading commit data...
modules-skip-9.js Loading commit data...
modules-skip-empty.js Loading commit data...
modules-skip-export-import-meta.js Loading commit data...
modules-skip-large1.js Loading commit data...
modules-skip-large2.js Loading commit data...
numeric-separator.js Loading commit data...
optional-catch-binding-breaks.js Loading commit data...
optional-catch-binding.js Loading commit data...
private-fields-ic.js Loading commit data...
private-fields-special-object.js Loading commit data...
private-fields.js Loading commit data...
private-symbols.js Loading commit data...
private.js Loading commit data...
promise-prototype-finally.js Loading commit data...
public-instance-class-fields.js Loading commit data...
public-static-class-fields.js Loading commit data...
regexp-change-exec.js Loading commit data...
regexp-dotall.js Loading commit data...
regexp-named-captures.js Loading commit data...
regexp-property-binary.js Loading commit data...
regexp-property-char-class.js Loading commit data...
regexp-property-emoji-flag-sequence-generated.js Loading commit data...
regexp-property-emoji-keycap-sequence-generated.js Loading commit data...
regexp-property-emoji-modifier-sequence-generated.js Loading commit data...
regexp-property-emoji-tag-sequence-generated.js Loading commit data...
regexp-property-emoji-zwj-sequence-generated.js Loading commit data...
regexp-property-enumerated.js Loading commit data...
regexp-property-exact-match.js Loading commit data...
regexp-property-general-category.js Loading commit data...
regexp-property-invalid.js Loading commit data...
regexp-property-lu-ui.js Loading commit data...
regexp-property-lu-ui0.js Loading commit data...
regexp-property-lu-ui1.js Loading commit data...
regexp-property-lu-ui2.js Loading commit data...
regexp-property-lu-ui3.js Loading commit data...
regexp-property-lu-ui4.js Loading commit data...
regexp-property-lu-ui5.js Loading commit data...
regexp-property-lu-ui6.js Loading commit data...
regexp-property-lu-ui7.js Loading commit data...
regexp-property-lu-ui8.js Loading commit data...
regexp-property-lu-ui9.js Loading commit data...
regexp-property-script-extensions.js Loading commit data...
regexp-property-scripts.js Loading commit data...
regexp-property-sequence.js Loading commit data...
regexp-property-special.js Loading commit data...
regress-generators-resume.js Loading commit data...
set-prototype-of.js Loading commit data...
sharedarraybuffer.js Loading commit data...
string-matchAll.js Loading commit data...
symbol-async-iterator.js Loading commit data...
symbol-description.js Loading commit data...
to-length.js Loading commit data...
to-name.js Loading commit data...
to-number.js Loading commit data...
to-string.js Loading commit data...
trailing-commas-length.js Loading commit data...
well-formed-json-stringify-checked.js Loading commit data...
well-formed-json-stringify-unchecked.js Loading commit data...