Reviewers: Benedikt Meurer, dstence, joransiu, john.yan,
Description:
PPC: Correctify instanceof and make it optimizable.
Port 5d875a57fa2e65c1a4a6b50aeb23c38299c3cfbc
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], [email protected], [email protected],
[email protected]
BUG=v8:4376
LOG=n
Please review this at https://codereview.chromium.org/1314263002/
Base URL: https://chromium.googlesource.com/v8/v8.git@master
Affected files (+173, -618 lines):
M src/full-codegen/ppc/full-codegen-ppc.cc
M src/ppc/code-stubs-ppc.cc
M src/ppc/interface-descriptors-ppc.cc
M src/ppc/lithium-codegen-ppc.h
M src/ppc/lithium-codegen-ppc.cc
M src/ppc/lithium-ppc.h
M src/ppc/lithium-ppc.cc
M src/ppc/macro-assembler-ppc.h
M src/ppc/macro-assembler-ppc.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.