Revision: 14961
Author:   [email protected]
Date:     Wed Jun  5 10:52:44 2013
Log: 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

Review URL: https://codereview.chromium.org/16452011
Patch from Balazs Kilvady <[email protected]>.
http://code.google.com/p/v8/source/detail?r=14961

Modified:
 /branches/bleeding_edge/src/mips/ic-mips.cc

=======================================
--- /branches/bleeding_edge/src/mips/ic-mips.cc Fri May 10 15:47:49 2013
+++ /branches/bleeding_edge/src/mips/ic-mips.cc Wed Jun  5 10:52:44 2013
@@ -646,9 +646,6 @@
 }


-// Defined in ic.cc.
-Object* LoadIC_Miss(Arguments args);
-
 void LoadIC::GenerateMegamorphic(MacroAssembler* masm) {
   // ----------- S t a t e -------------
   //  -- a2    : name
@@ -708,6 +705,21 @@
ExternalReference ref = ExternalReference(IC_Utility(kLoadIC_Miss), isolate);
   __ TailCallExternalReference(ref, 2, 1);
 }
+
+
+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,
@@ -881,9 +893,6 @@
   __ bind(&slow);
   GenerateMiss(masm, argc);
 }
-
-
-Object* KeyedLoadIC_Miss(Arguments args);


void KeyedLoadIC::GenerateMiss(MacroAssembler* masm, ICMissMode miss_mode) {

--
--
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