| Index: src/arm/lithium-arm.cc
 | 
| diff --git a/src/arm/lithium-arm.cc b/src/arm/lithium-arm.cc
 | 
| index 46897a3726c398786950fc78d20efe393ab1e30a..3a811c7c68a3f0fc348ef02b8ddec392bc0c9f5e 100644
 | 
| --- a/src/arm/lithium-arm.cc
 | 
| +++ b/src/arm/lithium-arm.cc
 | 
| @@ -1098,9 +1098,17 @@ LInstruction* LChunkBuilder::DoTailCallThroughMegamorphicCache(
 | 
|        UseFixed(instr->receiver(), LoadDescriptor::ReceiverRegister());
 | 
|    LOperand* name_register =
 | 
|        UseFixed(instr->name(), LoadDescriptor::NameRegister());
 | 
| +  LOperand* slot = NULL;
 | 
| +  LOperand* vector = NULL;
 | 
| +  if (FLAG_vector_ics) {
 | 
| +    slot = UseFixed(instr->slot(), VectorLoadICDescriptor::SlotRegister());
 | 
| +    vector =
 | 
| +        UseFixed(instr->vector(), VectorLoadICDescriptor::VectorRegister());
 | 
| +  }
 | 
| +
 | 
|    // Not marked as call. It can't deoptimize, and it never returns.
 | 
|    return new (zone()) LTailCallThroughMegamorphicCache(
 | 
| -      context, receiver_register, name_register);
 | 
| +      context, receiver_register, name_register, slot, vector);
 | 
|  }
 | 
|  
 | 
|  
 | 
| @@ -2111,7 +2119,7 @@ LInstruction* LChunkBuilder::DoLoadGlobalGeneric(HLoadGlobalGeneric* instr) {
 | 
|    LOperand* global_object =
 | 
|        UseFixed(instr->global_object(), LoadDescriptor::ReceiverRegister());
 | 
|    LOperand* vector = NULL;
 | 
| -  if (FLAG_vector_ics) {
 | 
| +  if (instr->HasVectorAndSlot()) {
 | 
|      vector = FixedTemp(VectorLoadICDescriptor::VectorRegister());
 | 
|    }
 | 
|    LLoadGlobalGeneric* result =
 | 
| @@ -2170,7 +2178,7 @@ LInstruction* LChunkBuilder::DoLoadNamedGeneric(HLoadNamedGeneric* instr) {
 | 
|    LOperand* object =
 | 
|        UseFixed(instr->object(), LoadDescriptor::ReceiverRegister());
 | 
|    LOperand* vector = NULL;
 | 
| -  if (FLAG_vector_ics) {
 | 
| +  if (instr->HasVectorAndSlot()) {
 | 
|      vector = FixedTemp(VectorLoadICDescriptor::VectorRegister());
 | 
|    }
 | 
|  
 | 
| @@ -2237,7 +2245,7 @@ LInstruction* LChunkBuilder::DoLoadKeyedGeneric(HLoadKeyedGeneric* instr) {
 | 
|        UseFixed(instr->object(), LoadDescriptor::ReceiverRegister());
 | 
|    LOperand* key = UseFixed(instr->key(), LoadDescriptor::NameRegister());
 | 
|    LOperand* vector = NULL;
 | 
| -  if (FLAG_vector_ics) {
 | 
| +  if (instr->HasVectorAndSlot()) {
 | 
|      vector = FixedTemp(VectorLoadICDescriptor::VectorRegister());
 | 
|    }
 | 
|  
 | 
| 
 |