Reviewers: Paul Lind, Jakob, danno, kisg, kilvadyb,
Message:
PTAL.
Description:
MIPS: Add LoadIC_Slow builtin and use it for loading properties from
primitive
values.
Port r14950 (12748bb)
Original commit message:
This fixes recent performance regressions on Dromaeo.
BUG=chromium:242512
Please review this at https://codereview.chromium.org/16452011/
SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge
Affected files:
M src/mips/ic-mips.cc
Index: src/mips/ic-mips.cc
diff --git a/src/mips/ic-mips.cc b/src/mips/ic-mips.cc
index
8b2b3254f1b2d4540933559f23ed17696b3f31bf..a4dc9e45c8721078a4efef518f44cc08a1fba5fc
100644
--- a/src/mips/ic-mips.cc
+++ b/src/mips/ic-mips.cc
@@ -646,9 +646,6 @@ void KeyedCallIC::GenerateNormal(MacroAssembler* masm,
int argc) {
}
-// Defined in ic.cc.
-Object* LoadIC_Miss(Arguments args);
-
void LoadIC::GenerateMegamorphic(MacroAssembler* masm) {
// ----------- S t a t e -------------
// -- a2 : name
@@ -710,6 +707,21 @@ void LoadIC::GenerateMiss(MacroAssembler* masm) {
}
+void LoadIC::GenerateRuntimeGetProperty(MacroAssembler* masm) {
+ // ---------- S t a t e --------------
+ // -- a2 : name
+ // -- ra : return address
+ // -- a0 : receiver
+ // -- sp[0] : receiver
+ // -----------------------------------
+
+ __ mov(a3, a0);
+ __ Push(a3, a2);
+
+ __ TailCallRuntime(Runtime::kGetProperty, 2, 1);
+}
+
+
static MemOperand GenerateMappedArgumentsLookup(MacroAssembler* masm,
Register object,
Register key,
@@ -883,9 +895,6 @@ void
KeyedCallIC::GenerateNonStrictArguments(MacroAssembler* masm,
}
-Object* KeyedLoadIC_Miss(Arguments args);
-
-
void KeyedLoadIC::GenerateMiss(MacroAssembler* masm, ICMissMode miss_mode)
{
// ---------- S t a t e --------------
// -- ra : return address
--
--
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/groups/opt_out.