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.


Reply via email to