| Index: src/ic/arm64/ic-compiler-arm64.cc | 
| diff --git a/src/ic/arm64/ic-compiler-arm64.cc b/src/ic/arm64/ic-compiler-arm64.cc | 
| index 6883374862e8703be6550bac47adc971e1caa86f..08ce4cba210f4fa929b710052b2974f7e5bcf083 100644 | 
| --- a/src/ic/arm64/ic-compiler-arm64.cc | 
| +++ b/src/ic/arm64/ic-compiler-arm64.cc | 
| @@ -33,7 +33,7 @@ void PropertyICCompiler::GenerateRuntimeSetProperty( | 
| #define __ ACCESS_MASM(masm()) | 
|  | 
|  | 
| -Handle<Code> PropertyICCompiler::CompilePolymorphic(TypeHandleList* types, | 
| +Handle<Code> PropertyICCompiler::CompilePolymorphic(MapHandleList* maps, | 
| CodeHandleList* handlers, | 
| Handle<Name> name, | 
| Code::StubType type, | 
| @@ -59,7 +59,7 @@ Handle<Code> PropertyICCompiler::CompilePolymorphic(TypeHandleList* types, | 
| } | 
|  | 
| Label number_case; | 
| -  Label* smi_target = IncludesNumberType(types) ? &number_case : &miss; | 
| +  Label* smi_target = IncludesNumberMap(maps) ? &number_case : &miss; | 
| __ JumpIfSmi(receiver(), smi_target); | 
|  | 
| // Polymorphic keyed stores may use the map register | 
| @@ -67,18 +67,17 @@ Handle<Code> PropertyICCompiler::CompilePolymorphic(TypeHandleList* types, | 
| DCHECK(kind() != Code::KEYED_STORE_IC || | 
| map_reg.is(ElementTransitionAndStoreDescriptor::MapRegister())); | 
| __ Ldr(map_reg, FieldMemOperand(receiver(), HeapObject::kMapOffset)); | 
| -  int receiver_count = types->length(); | 
| +  int receiver_count = maps->length(); | 
| int number_of_handled_maps = 0; | 
| for (int current = 0; current < receiver_count; ++current) { | 
| -    Handle<HeapType> type = types->at(current); | 
| -    Handle<Map> map = IC::TypeToMap(*type, isolate()); | 
| +    Handle<Map> map = maps->at(current); | 
| if (!map->is_deprecated()) { | 
| number_of_handled_maps++; | 
| Handle<WeakCell> cell = Map::WeakCellForMap(map); | 
| __ CmpWeakValue(map_reg, cell, scratch2()); | 
| Label try_next; | 
| __ B(ne, &try_next); | 
| -      if (type->Is(HeapType::Number())) { | 
| +      if (map->instance_type() == HEAP_NUMBER_TYPE) { | 
| DCHECK(!number_case.is_unused()); | 
| __ Bind(&number_case); | 
| } | 
|  |