| Index: runtime/vm/stub_code_arm.cc
 | 
| diff --git a/runtime/vm/stub_code_arm.cc b/runtime/vm/stub_code_arm.cc
 | 
| index d8cf21cb95914ba70e13edbfaec9469fa3bc2d67..1ab83806be88062609fc493387b8bf038893ca2a 100644
 | 
| --- a/runtime/vm/stub_code_arm.cc
 | 
| +++ b/runtime/vm/stub_code_arm.cc
 | 
| @@ -1789,8 +1789,12 @@ static void GenerateSubtypeNTestCacheStub(Assembler* assembler, int n) {
 | 
|    // R4: instance type arguments (still null if closure).
 | 
|    __ SmiTag(R8);
 | 
|    __ CompareImmediate(R8, Smi::RawValue(kClosureCid));
 | 
| -  __ ldr(R4, FieldAddress(R0, Closure::instantiator_offset()), EQ);
 | 
| -  __ ldr(R8, FieldAddress(R0, Closure::function_offset()), EQ);
 | 
| +  __ b(&loop, NE);
 | 
| +  __ ldr(R4, FieldAddress(R0, Closure::function_type_arguments_offset()));
 | 
| +  __ CompareObject(R4, Object::null_object());
 | 
| +  __ b(¬_found, NE);  // Cache cannot be used for generic closures.
 | 
| +  __ ldr(R4, FieldAddress(R0, Closure::instantiator_type_arguments_offset()));
 | 
| +  __ ldr(R8, FieldAddress(R0, Closure::function_offset()));
 | 
|    // R8: instance class id as Smi or function.
 | 
|    __ Bind(&loop);
 | 
|    __ ldr(R9,
 | 
| 
 |