• bmeurer's avatar
    [es2015] Remove the @@hasInstance protector cell. · 1a236208
    bmeurer authored
    We cannot skip the @@hasInstance lookup in instanceof depending on a
    global protector cell, as the lookup of the property is observable
    via proxies or accessors. So remove the global protector and properly
    implement CSA::InstanceOf via GetPropertyStub, with an appropriate
    fast-path for Function.prototype[@@hasInstance] where we call the
    builtin code object directly if the function matches, skipping all
    the checks from the call sequence, and also avoid the redundant
    ToBoolean conversion on the result.
    
    R=yangguo@chromium.org
    TBR=ulan@chromium.org
    BUG=v8:5958
    
    Review-Url: https://codereview.chromium.org/2684033012
    Cr-Commit-Position: refs/heads/master@{#43137}
    1a236208
Name
Last commit
Last update
..
benchmarks Loading commit data...
cctest Loading commit data...
common Loading commit data...
debugger Loading commit data...
fuzzer Loading commit data...
inspector Loading commit data...
intl Loading commit data...
js-perf-test Loading commit data...
memory Loading commit data...
message Loading commit data...
mjsunit Loading commit data...
mozilla Loading commit data...
preparser Loading commit data...
promises-aplus Loading commit data...
simdjs Loading commit data...
test262 Loading commit data...
unittests Loading commit data...
webkit Loading commit data...
BUILD.gn Loading commit data...
bot_default.gyp Loading commit data...
bot_default.isolate Loading commit data...
default.gyp Loading commit data...
default.isolate Loading commit data...
optimize_for_size.gyp Loading commit data...
optimize_for_size.isolate Loading commit data...
perf.gyp Loading commit data...
perf.isolate Loading commit data...