| Index: runtime/vm/stub_code_arm.cc
 | 
| diff --git a/runtime/vm/stub_code_arm.cc b/runtime/vm/stub_code_arm.cc
 | 
| index 14fe95c825941b3af74f1d20de70111b6b6f4d30..c94c9a134b41c0a7cb1245a5735d967383b8ed0f 100644
 | 
| --- a/runtime/vm/stub_code_arm.cc
 | 
| +++ b/runtime/vm/stub_code_arm.cc
 | 
| @@ -103,14 +103,12 @@ void StubCode::GenerateCallToRuntimeStub(Assembler* assembler) {
 | 
|    __ Ret();
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Print the stop message.
 | 
|  DEFINE_LEAF_RUNTIME_ENTRY(void, PrintStopMessage, 1, const char* message) {
 | 
|    OS::Print("Stop message: %s\n", message);
 | 
|  }
 | 
|  END_LEAF_RUNTIME_ENTRY
 | 
|  
 | 
| -
 | 
|  // Input parameters:
 | 
|  //   R0 : stop message (const char*).
 | 
|  // Must preserve all registers.
 | 
| @@ -122,7 +120,6 @@ void StubCode::GeneratePrintStopMessageStub(Assembler* assembler) {
 | 
|    __ Ret();
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Input parameters:
 | 
|  //   LR : return address.
 | 
|  //   SP : address of return value.
 | 
| @@ -205,21 +202,18 @@ static void GenerateCallNativeWithWrapperStub(Assembler* assembler,
 | 
|    __ Ret();
 | 
|  }
 | 
|  
 | 
| -
 | 
|  void StubCode::GenerateCallNoScopeNativeStub(Assembler* assembler) {
 | 
|    GenerateCallNativeWithWrapperStub(
 | 
|        assembler,
 | 
|        Address(THR, Thread::no_scope_native_wrapper_entry_point_offset()));
 | 
|  }
 | 
|  
 | 
| -
 | 
|  void StubCode::GenerateCallAutoScopeNativeStub(Assembler* assembler) {
 | 
|    GenerateCallNativeWithWrapperStub(
 | 
|        assembler,
 | 
|        Address(THR, Thread::auto_scope_native_wrapper_entry_point_offset()));
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Input parameters:
 | 
|  //   LR : return address.
 | 
|  //   SP : address of return value.
 | 
| @@ -298,7 +292,6 @@ void StubCode::GenerateCallBootstrapNativeStub(Assembler* assembler) {
 | 
|    __ Ret();
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Input parameters:
 | 
|  //   R4: arguments descriptor array.
 | 
|  void StubCode::GenerateCallStaticFunctionStub(Assembler* assembler) {
 | 
| @@ -319,7 +312,6 @@ void StubCode::GenerateCallStaticFunctionStub(Assembler* assembler) {
 | 
|    __ bx(R0);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Called from a static call only when an invalid code has been entered
 | 
|  // (invalid because its function was optimized or deoptimized).
 | 
|  // R4: arguments descriptor array.
 | 
| @@ -345,7 +337,6 @@ void StubCode::GenerateFixCallersTargetStub(Assembler* assembler) {
 | 
|    __ bx(R0);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Called from object allocate instruction when the allocation stub has been
 | 
|  // disabled.
 | 
|  void StubCode::GenerateFixAllocationStubTargetStub(Assembler* assembler) {
 | 
| @@ -368,7 +359,6 @@ void StubCode::GenerateFixAllocationStubTargetStub(Assembler* assembler) {
 | 
|    __ bx(R0);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Input parameters:
 | 
|  //   R2: smi-tagged argument count, may be zero.
 | 
|  //   FP[kParamEndSlotFromFp + 1]: last argument.
 | 
| @@ -398,7 +388,6 @@ static void PushArgumentsArray(Assembler* assembler) {
 | 
|    __ b(&loop, PL);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Used by eager and lazy deoptimization. Preserve result in R0 if necessary.
 | 
|  // This stub translates optimized frame into unoptimized frame. The optimized
 | 
|  // frame can contain values in registers and on stack, the unoptimized
 | 
| @@ -555,7 +544,6 @@ static void GenerateDeoptimizationSequence(Assembler* assembler,
 | 
|    // The caller is responsible for emitting the return instruction.
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // R0: result, must be preserved
 | 
|  void StubCode::GenerateDeoptimizeLazyFromReturnStub(Assembler* assembler) {
 | 
|    // Push zap value instead of CODE_REG for lazy deopt.
 | 
| @@ -568,7 +556,6 @@ void StubCode::GenerateDeoptimizeLazyFromReturnStub(Assembler* assembler) {
 | 
|    __ Ret();
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // R0: exception, must be preserved
 | 
|  // R1: stacktrace, must be preserved
 | 
|  void StubCode::GenerateDeoptimizeLazyFromThrowStub(Assembler* assembler) {
 | 
| @@ -582,13 +569,11 @@ void StubCode::GenerateDeoptimizeLazyFromThrowStub(Assembler* assembler) {
 | 
|    __ Ret();
 | 
|  }
 | 
|  
 | 
| -
 | 
|  void StubCode::GenerateDeoptimizeStub(Assembler* assembler) {
 | 
|    GenerateDeoptimizationSequence(assembler, kEagerDeopt);
 | 
|    __ Ret();
 | 
|  }
 | 
|  
 | 
| -
 | 
|  static void GenerateDispatcherCode(Assembler* assembler,
 | 
|                                     Label* call_target_function) {
 | 
|    __ Comment("NoSuchMethodDispatch");
 | 
| @@ -622,7 +607,6 @@ static void GenerateDispatcherCode(Assembler* assembler,
 | 
|    __ Ret();
 | 
|  }
 | 
|  
 | 
| -
 | 
|  void StubCode::GenerateMegamorphicMissStub(Assembler* assembler) {
 | 
|    __ EnterStubFrame();
 | 
|  
 | 
| @@ -662,7 +646,6 @@ void StubCode::GenerateMegamorphicMissStub(Assembler* assembler) {
 | 
|    __ bx(R2);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Called for inline allocation of arrays.
 | 
|  // Input parameters:
 | 
|  //   LR: return address.
 | 
| @@ -785,7 +768,6 @@ void StubCode::GenerateAllocateArrayStub(Assembler* assembler) {
 | 
|    __ Ret();
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Called when invoking Dart code from C++ (VM code).
 | 
|  // Input parameters:
 | 
|  //   LR : points to return address.
 | 
| @@ -906,7 +888,6 @@ void StubCode::GenerateInvokeDartCodeStub(Assembler* assembler) {
 | 
|    __ Ret();
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Called for inline allocation of contexts.
 | 
|  // Input:
 | 
|  //   R1: number of context variables.
 | 
| @@ -1028,7 +1009,6 @@ void StubCode::GenerateAllocateContextStub(Assembler* assembler) {
 | 
|    __ Ret();
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Helper stub to implement Assembler::StoreIntoObject.
 | 
|  // Input parameters:
 | 
|  //   R0: address (i.e. object) being stored into.
 | 
| @@ -1101,7 +1081,6 @@ void StubCode::GenerateUpdateStoreBufferStub(Assembler* assembler) {
 | 
|    __ Ret();
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Called for inline allocation of objects.
 | 
|  // Input parameters:
 | 
|  //   LR : return address.
 | 
| @@ -1238,7 +1217,6 @@ void StubCode::GenerateAllocationStubForClass(Assembler* assembler,
 | 
|    __ Ret();
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Called for invoking "dynamic noSuchMethod(Invocation invocation)" function
 | 
|  // from the entry code of a dart function after an error in passed argument
 | 
|  // name or number is detected.
 | 
| @@ -1274,7 +1252,6 @@ void StubCode::GenerateCallClosureNoSuchMethodStub(Assembler* assembler) {
 | 
|    __ bkpt(0);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  //  R8: function object.
 | 
|  //  R9: inline cache data object.
 | 
|  // Cannot use function object from ICData as it may be the inlined
 | 
| @@ -1297,7 +1274,6 @@ void StubCode::GenerateOptimizedUsageCounterIncrement(Assembler* assembler) {
 | 
|    __ str(NOTFP, FieldAddress(func_reg, Function::usage_counter_offset()));
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Loads function into 'temp_reg'.
 | 
|  void StubCode::GenerateUsageCounterIncrement(Assembler* assembler,
 | 
|                                               Register temp_reg) {
 | 
| @@ -1313,7 +1289,6 @@ void StubCode::GenerateUsageCounterIncrement(Assembler* assembler,
 | 
|    }
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Note: R9 must be preserved.
 | 
|  // Attempt a quick Smi operation for known operations ('kind'). The ICData
 | 
|  // must have been primed with a Smi/Smi check that will be used for counting
 | 
| @@ -1377,7 +1352,6 @@ static void EmitFastSmiOp(Assembler* assembler,
 | 
|    __ Ret();
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Generate inline cache check for 'num_args'.
 | 
|  //  LR: return address.
 | 
|  //  R9: inline cache data object.
 | 
| @@ -1552,7 +1526,6 @@ void StubCode::GenerateNArgsCheckInlineCacheStub(
 | 
|    }
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Use inline cache data array to invoke the target or continue in inline
 | 
|  // cache miss handler. Stub for 1-argument check (receiver class).
 | 
|  //  LR: return address.
 | 
| @@ -1569,7 +1542,6 @@ void StubCode::GenerateOneArgCheckInlineCacheStub(Assembler* assembler) {
 | 
|        assembler, 1, kInlineCacheMissHandlerOneArgRuntimeEntry, Token::kILLEGAL);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  void StubCode::GenerateTwoArgsCheckInlineCacheStub(Assembler* assembler) {
 | 
|    GenerateUsageCounterIncrement(assembler, R8);
 | 
|    GenerateNArgsCheckInlineCacheStub(assembler, 2,
 | 
| @@ -1577,28 +1549,24 @@ void StubCode::GenerateTwoArgsCheckInlineCacheStub(Assembler* assembler) {
 | 
|                                      Token::kILLEGAL);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  void StubCode::GenerateSmiAddInlineCacheStub(Assembler* assembler) {
 | 
|    GenerateUsageCounterIncrement(assembler, R8);
 | 
|    GenerateNArgsCheckInlineCacheStub(
 | 
|        assembler, 2, kInlineCacheMissHandlerTwoArgsRuntimeEntry, Token::kADD);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  void StubCode::GenerateSmiSubInlineCacheStub(Assembler* assembler) {
 | 
|    GenerateUsageCounterIncrement(assembler, R8);
 | 
|    GenerateNArgsCheckInlineCacheStub(
 | 
|        assembler, 2, kInlineCacheMissHandlerTwoArgsRuntimeEntry, Token::kSUB);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  void StubCode::GenerateSmiEqualInlineCacheStub(Assembler* assembler) {
 | 
|    GenerateUsageCounterIncrement(assembler, R8);
 | 
|    GenerateNArgsCheckInlineCacheStub(
 | 
|        assembler, 2, kInlineCacheMissHandlerTwoArgsRuntimeEntry, Token::kEQ);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  void StubCode::GenerateOneArgOptimizedCheckInlineCacheStub(
 | 
|      Assembler* assembler) {
 | 
|    GenerateOptimizedUsageCounterIncrement(assembler);
 | 
| @@ -1607,7 +1575,6 @@ void StubCode::GenerateOneArgOptimizedCheckInlineCacheStub(
 | 
|                                      Token::kILLEGAL, true /* optimized */);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  void StubCode::GenerateTwoArgsOptimizedCheckInlineCacheStub(
 | 
|      Assembler* assembler) {
 | 
|    GenerateOptimizedUsageCounterIncrement(assembler);
 | 
| @@ -1616,7 +1583,6 @@ void StubCode::GenerateTwoArgsOptimizedCheckInlineCacheStub(
 | 
|                                      Token::kILLEGAL, true /* optimized */);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Intermediary stub between a static call and its target. ICData contains
 | 
|  // the target function and the call count.
 | 
|  // R9: ICData
 | 
| @@ -1683,21 +1649,18 @@ void StubCode::GenerateZeroArgsUnoptimizedStaticCallStub(Assembler* assembler) {
 | 
|    }
 | 
|  }
 | 
|  
 | 
| -
 | 
|  void StubCode::GenerateOneArgUnoptimizedStaticCallStub(Assembler* assembler) {
 | 
|    GenerateUsageCounterIncrement(assembler, R8);
 | 
|    GenerateNArgsCheckInlineCacheStub(
 | 
|        assembler, 1, kStaticCallMissHandlerOneArgRuntimeEntry, Token::kILLEGAL);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  void StubCode::GenerateTwoArgsUnoptimizedStaticCallStub(Assembler* assembler) {
 | 
|    GenerateUsageCounterIncrement(assembler, R8);
 | 
|    GenerateNArgsCheckInlineCacheStub(
 | 
|        assembler, 2, kStaticCallMissHandlerTwoArgsRuntimeEntry, Token::kILLEGAL);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Stub for compiling a function and jumping to the compiled code.
 | 
|  // R9: IC-Data (for methods).
 | 
|  // R4: Arguments descriptor.
 | 
| @@ -1717,7 +1680,6 @@ void StubCode::GenerateLazyCompileStub(Assembler* assembler) {
 | 
|    __ bx(R2);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // R9: Contains an ICData.
 | 
|  void StubCode::GenerateICCallBreakpointStub(Assembler* assembler) {
 | 
|    __ EnterStubFrame();
 | 
| @@ -1732,7 +1694,6 @@ void StubCode::GenerateICCallBreakpointStub(Assembler* assembler) {
 | 
|    __ bx(R0);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  void StubCode::GenerateRuntimeCallBreakpointStub(Assembler* assembler) {
 | 
|    __ EnterStubFrame();
 | 
|    __ LoadImmediate(R0, 0);
 | 
| @@ -1745,7 +1706,6 @@ void StubCode::GenerateRuntimeCallBreakpointStub(Assembler* assembler) {
 | 
|    __ bx(R0);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Called only from unoptimized code. All relevant registers have been saved.
 | 
|  void StubCode::GenerateDebugStepCheckStub(Assembler* assembler) {
 | 
|    // Check single stepping.
 | 
| @@ -1764,7 +1724,6 @@ void StubCode::GenerateDebugStepCheckStub(Assembler* assembler) {
 | 
|    __ b(&done_stepping);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Used to check class and type arguments. Arguments passed in registers:
 | 
|  // LR: return address.
 | 
|  // R0: instance (must be preserved).
 | 
| @@ -1850,7 +1809,6 @@ static void GenerateSubtypeNTestCacheStub(Assembler* assembler, int n) {
 | 
|    __ Ret();
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Used to check class and type arguments. Arguments passed in registers:
 | 
|  // LR: return address.
 | 
|  // R0: instance (must be preserved).
 | 
| @@ -1862,7 +1820,6 @@ void StubCode::GenerateSubtype1TestCacheStub(Assembler* assembler) {
 | 
|    GenerateSubtypeNTestCacheStub(assembler, 1);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Used to check class and type arguments. Arguments passed in registers:
 | 
|  // LR: return address.
 | 
|  // R0: instance (must be preserved).
 | 
| @@ -1874,7 +1831,6 @@ void StubCode::GenerateSubtype2TestCacheStub(Assembler* assembler) {
 | 
|    GenerateSubtypeNTestCacheStub(assembler, 2);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Used to check class and type arguments. Arguments passed in registers:
 | 
|  // LR: return address.
 | 
|  // R0: instance (must be preserved).
 | 
| @@ -1886,14 +1842,12 @@ void StubCode::GenerateSubtype4TestCacheStub(Assembler* assembler) {
 | 
|    GenerateSubtypeNTestCacheStub(assembler, 4);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Return the current stack pointer address, used to do stack alignment checks.
 | 
|  void StubCode::GenerateGetCStackPointerStub(Assembler* assembler) {
 | 
|    __ mov(R0, Operand(SP));
 | 
|    __ Ret();
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Jump to a frame on the call stack.
 | 
|  // LR: return address.
 | 
|  // R0: program_counter.
 | 
| @@ -1904,11 +1858,11 @@ void StubCode::GenerateGetCStackPointerStub(Assembler* assembler) {
 | 
|  void StubCode::GenerateJumpToFrameStub(Assembler* assembler) {
 | 
|    ASSERT(kExceptionObjectReg == R0);
 | 
|    ASSERT(kStackTraceObjectReg == R1);
 | 
| -  __ mov(IP, Operand(R1));      // Copy Stack pointer into IP.
 | 
| -  __ mov(LR, Operand(R0));      // Program counter.
 | 
| -  __ mov(THR, Operand(R3));     // Thread.
 | 
| -  __ mov(FP, Operand(R2));      // Frame_pointer.
 | 
| -  __ mov(SP, Operand(IP));      // Set Stack pointer.
 | 
| +  __ mov(IP, Operand(R1));   // Copy Stack pointer into IP.
 | 
| +  __ mov(LR, Operand(R0));   // Program counter.
 | 
| +  __ mov(THR, Operand(R3));  // Thread.
 | 
| +  __ mov(FP, Operand(R2));   // Frame_pointer.
 | 
| +  __ mov(SP, Operand(IP));   // Set Stack pointer.
 | 
|    // Set the tag.
 | 
|    __ LoadImmediate(R2, VMTag::kDartTagId);
 | 
|    __ StoreToOffset(kWord, R2, THR, Thread::vm_tag_offset());
 | 
| @@ -1921,7 +1875,6 @@ void StubCode::GenerateJumpToFrameStub(Assembler* assembler) {
 | 
|    __ bx(LR);  // Jump to continuation point.
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Run an exception handler.  Execution comes from JumpToFrame
 | 
|  // stub or from the simulator.
 | 
|  //
 | 
| @@ -1942,7 +1895,6 @@ void StubCode::GenerateRunExceptionHandlerStub(Assembler* assembler) {
 | 
|    __ bx(LR);  // Jump to the exception handler code.
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Deoptimize a frame on the call stack before rewinding.
 | 
|  // The arguments are stored in the Thread object.
 | 
|  // No result.
 | 
| @@ -1962,7 +1914,6 @@ void StubCode::GenerateDeoptForRewindStub(Assembler* assembler) {
 | 
|    __ bkpt(0);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Calls to the runtime to optimize the given function.
 | 
|  // R8: function to be reoptimized.
 | 
|  // R4: argument descriptor (preserved).
 | 
| @@ -1983,7 +1934,6 @@ void StubCode::GenerateOptimizeFunctionStub(Assembler* assembler) {
 | 
|    __ bkpt(0);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Does identical check (object references are equal or not equal) with special
 | 
|  // checks for boxed numbers.
 | 
|  // LR: return address.
 | 
| @@ -2050,7 +2000,6 @@ static void GenerateIdenticalWithNumberCheckStub(Assembler* assembler,
 | 
|    __ Bind(&done);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Called only from unoptimized code. All relevant registers have been saved.
 | 
|  // LR: return address.
 | 
|  // SP + 4: left operand.
 | 
| @@ -2086,7 +2035,6 @@ void StubCode::GenerateUnoptimizedIdenticalWithNumberCheckStub(
 | 
|    }
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Called from optimized code only.
 | 
|  // LR: return address.
 | 
|  // SP + 4: left operand.
 | 
| @@ -2103,7 +2051,6 @@ void StubCode::GenerateOptimizedIdenticalWithNumberCheckStub(
 | 
|    __ Ret();
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Called from megamorphic calls.
 | 
|  //  R0: receiver
 | 
|  //  R9: MegamorphicCache (preserved)
 | 
| @@ -2158,7 +2105,6 @@ void StubCode::GenerateMegamorphicCallStub(Assembler* assembler) {
 | 
|    __ b(&loop);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Called from switchable IC calls.
 | 
|  //  R0: receiver
 | 
|  //  R9: ICData (preserved)
 | 
| @@ -2199,7 +2145,6 @@ void StubCode::GenerateICCallThroughFunctionStub(Assembler* assembler) {
 | 
|    __ bx(R1);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  void StubCode::GenerateICCallThroughCodeStub(Assembler* assembler) {
 | 
|    Label loop, found, miss;
 | 
|    __ ldr(R4, FieldAddress(R9, ICData::arguments_descriptor_offset()));
 | 
| @@ -2234,7 +2179,6 @@ void StubCode::GenerateICCallThroughCodeStub(Assembler* assembler) {
 | 
|    __ bx(R1);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Called from switchable IC calls.
 | 
|  //  R0: receiver
 | 
|  //  R9: UnlinkedCall
 | 
| @@ -2258,7 +2202,6 @@ void StubCode::GenerateUnlinkedCallStub(Assembler* assembler) {
 | 
|    __ bx(R1);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Called from switchable IC calls.
 | 
|  //  R0: receiver
 | 
|  //  R9: SingleTargetCache
 | 
| @@ -2298,7 +2241,6 @@ void StubCode::GenerateSingleTargetCallStub(Assembler* assembler) {
 | 
|    __ bx(R1);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  // Called from the monomorphic checked entry.
 | 
|  //  R0: receiver
 | 
|  void StubCode::GenerateMonomorphicMissStub(Assembler* assembler) {
 | 
| @@ -2321,12 +2263,10 @@ void StubCode::GenerateMonomorphicMissStub(Assembler* assembler) {
 | 
|    __ bx(R1);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  void StubCode::GenerateFrameAwaitingMaterializationStub(Assembler* assembler) {
 | 
|    __ bkpt(0);
 | 
|  }
 | 
|  
 | 
| -
 | 
|  void StubCode::GenerateAsynchronousGapMarkerStub(Assembler* assembler) {
 | 
|    __ bkpt(0);
 | 
|  }
 | 
| 
 |