• bmeurer's avatar
    Correctify instanceof and make it optimizable. · 5d875a57
    bmeurer authored
    The previous hack with HInstanceOfKnownGlobal was not only slower,
    but also very brittle and required a lot of weird hacks to support it. And
    what's even more important it wasn't even correct (because a map check
    on the lhs is never enough for instanceof).
    
    The new implementation provides a sane runtime implementation
    for InstanceOf plus a fast case in the InstanceOfStub, combined with
    a proper specialization in the case of a known global in CrankShaft,
    which does only the prototype chain walk (coupled with a code
    dependency on the known global).
    
    As a drive-by-fix: Also fix the incorrect Object.prototype.isPrototypeOf
    implementation.
    
    BUG=v8:4376
    LOG=y
    
    Review URL: https://codereview.chromium.org/1304633002
    
    Cr-Commit-Position: refs/heads/master@{#30342}
    5d875a57
Name
Last commit
Last update
..
arm Loading commit data...
arm64 Loading commit data...
ia32 Loading commit data...
mips Loading commit data...
mips64 Loading commit data...
ppc Loading commit data...
x64 Loading commit data...
x87 Loading commit data...
OWNERS Loading commit data...
full-codegen.cc Loading commit data...
full-codegen.h Loading commit data...