Reviewers: Weiliang,
Message:
PTAL.
Description:
X87: Correctify instanceof and make it optimizable.
port 5d875a57fa2e65c1a4a6b50aeb23c38299c3cfbc (r30342).
original commit message:
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.
[email protected]
BUG=
Please review this at https://codereview.chromium.org/1318663003/
Base URL: https://chromium.googlesource.com/v8/v8.git@master
Affected files (+177, -427 lines):
M src/full-codegen/x87/full-codegen-x87.cc
M src/x87/code-stubs-x87.cc
M src/x87/interface-descriptors-x87.cc
M src/x87/lithium-codegen-x87.h
M src/x87/lithium-codegen-x87.cc
M src/x87/lithium-x87.h
M src/x87/lithium-x87.cc
M src/x87/macro-assembler-x87.h
M src/x87/macro-assembler-x87.cc
--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
---
You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.