Revision: 16721
Author:   [email protected]
Date:     Fri Sep 13 15:28:15 2013 UTC
Log:      MIPS: remove getcurrent from stubs.

Port r16710 (c5203f8)

BUG=
[email protected]

Review URL: https://codereview.chromium.org/23710046

Patch from Balazs Kilvady <[email protected]>.
http://code.google.com/p/v8/source/detail?r=16721

Modified:
 /branches/bleeding_edge/src/mips/builtins-mips.cc
 /branches/bleeding_edge/src/mips/code-stubs-mips.cc
 /branches/bleeding_edge/src/mips/codegen-mips.cc

=======================================
--- /branches/bleeding_edge/src/mips/builtins-mips.cc Thu Sep 12 20:11:26 2013 UTC +++ /branches/bleeding_edge/src/mips/builtins-mips.cc Fri Sep 13 15:28:15 2013 UTC
@@ -833,14 +833,15 @@
// The following registers must be saved and restored when calling through to
   // the runtime:
   //   a0 - contains return address (beginning of patch sequence)
-  //   a1 - function object
+  //   a1 - isolate
   RegList saved_regs =
       (a0.bit() | a1.bit() | ra.bit() | fp.bit()) & ~sp.bit();
   FrameScope scope(masm, StackFrame::MANUAL);
   __ MultiPush(saved_regs);
-  __ PrepareCallCFunction(1, 0, a1);
+  __ PrepareCallCFunction(1, 0, a2);
+  __ li(a1, Operand(ExternalReference::isolate_address(masm->isolate())));
   __ CallCFunction(
-      ExternalReference::get_make_code_young_function(masm->isolate()), 1);
+      ExternalReference::get_make_code_young_function(masm->isolate()), 2);
   __ MultiPop(saved_regs);
   __ Jump(a0);
 }
=======================================
--- /branches/bleeding_edge/src/mips/code-stubs-mips.cc Fri Sep 13 09:57:48 2013 UTC +++ /branches/bleeding_edge/src/mips/code-stubs-mips.cc Fri Sep 13 15:28:15 2013 UTC
@@ -2795,8 +2795,9 @@
   if (do_gc) {
     // Move result passed in v0 into a0 to call PerformGC.
     __ mov(a0, v0);
-    __ PrepareCallCFunction(1, 0, a1);
- __ CallCFunction(ExternalReference::perform_gc_function(isolate), 1, 0);
+    __ PrepareCallCFunction(2, 0, a1);
+ __ li(a1, Operand(ExternalReference::isolate_address(masm->isolate()))); + __ CallCFunction(ExternalReference::perform_gc_function(isolate), 2, 0);
   }

   ExternalReference scope_depth =
=======================================
--- /branches/bleeding_edge/src/mips/codegen-mips.cc Wed Sep 11 18:30:01 2013 UTC +++ /branches/bleeding_edge/src/mips/codegen-mips.cc Fri Sep 13 15:28:15 2013 UTC
@@ -635,7 +635,8 @@
 }


-void Code::PatchPlatformCodeAge(byte* sequence,
+void Code::PatchPlatformCodeAge(Isolate* isolate,
+                                byte* sequence,
                                 Code::Age age,
                                 MarkingParity parity) {
   uint32_t young_length;
@@ -644,7 +645,7 @@
     CopyBytes(sequence, young_sequence, young_length);
     CPU::FlushICache(sequence, young_length);
   } else {
-    Code* stub = GetCodeAgeStub(age, parity);
+    Code* stub = GetCodeAgeStub(isolate, age, parity);
     CodePatcher patcher(sequence, young_length / Assembler::kInstrSize);
     // Mark this code sequence for FindPlatformCodeAgeSequence()
     patcher.masm()->nop(Assembler::CODE_AGE_MARKER_NOP);

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