| Index: runtime/vm/stub_code_mips.cc
 | 
| diff --git a/runtime/vm/stub_code_mips.cc b/runtime/vm/stub_code_mips.cc
 | 
| index 10f55d7af21d91bdbc34216377ae0c04e38f914c..8b8522d988e1cef8f2a5f4028391ad50d7d46830 100644
 | 
| --- a/runtime/vm/stub_code_mips.cc
 | 
| +++ b/runtime/vm/stub_code_mips.cc
 | 
| @@ -451,12 +451,20 @@ static void GenerateDeoptimizationSequence(Assembler* assembler,
 | 
|    if (preserve_result) {
 | 
|      __ Push(T1);  // Preserve result, it will be GC-d here.
 | 
|    }
 | 
| -  __ CallRuntime(kDeoptimizeMaterializeDoublesRuntimeEntry);
 | 
| +  __ PushObject(Smi::ZoneHandle());  // Space for the result.
 | 
| +  __ CallRuntime(kDeoptimizeMaterializeRuntimeEntry);
 | 
| +  // Result tells stub how many bytes to remove from the expression stack
 | 
| +  // of the bottom-most frame. They were used as materialization arguments.
 | 
| +  __ Pop(T1);
 | 
| +  __ SmiUntag(T1);
 | 
|    if (preserve_result) {
 | 
|      __ Pop(V0);  // Restore result.
 | 
|    }
 | 
| +  __ LeaveStubFrame();
 | 
|  
 | 
| -  __ LeaveStubFrameAndReturn();
 | 
| +  // Return.
 | 
| +  __ jr(RA);
 | 
| +  __ delay_slot()->addu(SP, SP, T1);  // Remove materialization arguments.
 | 
|  }
 | 
|  
 | 
|  
 | 
| 
 |