Chromium Code Reviews| 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. |