Index: src/mips/code-stubs-mips.cc |
diff --git a/src/mips/code-stubs-mips.cc b/src/mips/code-stubs-mips.cc |
index 19346af04bf29fd205e87a109cac20f962e79a7b..5771caa0578a7e01fcc1b1592f9108a780faaddc 100644 |
--- a/src/mips/code-stubs-mips.cc |
+++ b/src/mips/code-stubs-mips.cc |
@@ -3947,7 +3947,7 @@ void CEntryStub::GenerateCore(MacroAssembler* masm, |
v0, Operand(reinterpret_cast<int32_t>(out_of_memory))); |
// Retrieve the pending exception and clear the variable. |
- __ li(a3, Operand(isolate->factory()->the_hole_value())); |
+ __ LoadRoot(a3, Heap::kTheHoleValueRootIndex); |
__ li(t0, Operand(ExternalReference(Isolate::kPendingExceptionAddress, |
isolate))); |
__ lw(v0, MemOperand(t0)); |
@@ -3955,8 +3955,9 @@ void CEntryStub::GenerateCore(MacroAssembler* masm, |
// Special handling of termination exceptions which are uncatchable |
// by javascript code. |
+ __ LoadRoot(t0, Heap::kTerminationExceptionRootIndex); |
__ Branch(throw_termination_exception, eq, |
Erik Corry
2012/03/17 02:49:18
This all fits on one line now.
|
- v0, Operand(isolate->factory()->termination_exception())); |
+ v0, Operand(t0)); |
// Handle normal exception. |
__ jmp(throw_normal_exception); |
@@ -4083,6 +4084,7 @@ void JSEntryStub::GenerateBody(MacroAssembler* masm, bool is_construct) { |
offset_to_argv += kNumCalleeSavedFPU * kDoubleSize; |
} |
+ __ InitializeRootRegister(); |
__ lw(s0, MemOperand(sp, offset_to_argv + kCArgsSlotsSize)); |
// We build an EntryFrame. |
@@ -4155,7 +4157,7 @@ void JSEntryStub::GenerateBody(MacroAssembler* masm, bool is_construct) { |
// saved values before returning a failure to C. |
// Clear any pending exceptions. |
- __ li(t1, Operand(isolate->factory()->the_hole_value())); |
+ __ LoadRoot(t1, Heap::kTheHoleValueRootIndex); |
__ li(t0, Operand(ExternalReference(Isolate::kPendingExceptionAddress, |
isolate))); |
__ sw(t1, MemOperand(t0)); |
@@ -7081,7 +7083,7 @@ void DirectCEntryStub::GenerateCall(MacroAssembler* masm, |
// This spot for ra was reserved in EnterExitFrame. |
masm->sw(ra, MemOperand(sp, kCArgsSlotsSize)); |
masm->li(ra, Operand(reinterpret_cast<intptr_t>(GetCode().location()), |
- RelocInfo::CODE_TARGET), true); |
+ RelocInfo::CODE_TARGET), CONSTANT_SIZE); |
Erik Corry
2012/03/17 02:49:18
I fixed some strange line breaking here.
|
// Call the function. |
masm->Jump(t9); |
// Make sure the stored 'ra' points to this position. |