| Index: src/interpreter/bytecode-array-builder.cc
 | 
| diff --git a/src/interpreter/bytecode-array-builder.cc b/src/interpreter/bytecode-array-builder.cc
 | 
| index 281eb14d16f52f0b8b3b68772991f59d3661b207..dfa395095abaf72da5407a415b7af5edb58b1410 100644
 | 
| --- a/src/interpreter/bytecode-array-builder.cc
 | 
| +++ b/src/interpreter/bytecode-array-builder.cc
 | 
| @@ -652,9 +652,10 @@ BytecodeArrayBuilder& BytecodeArrayBuilder::Debugger() {
 | 
|  }
 | 
|  
 | 
|  BytecodeArrayBuilder& BytecodeArrayBuilder::ForInPrepare(
 | 
| -    Register receiver, Register cache_info_triple) {
 | 
| +    Register receiver, RegisterList cache_info_triple) {
 | 
| +  DCHECK_EQ(3, cache_info_triple.register_count());
 | 
|    Output(Bytecode::kForInPrepare, RegisterOperand(receiver),
 | 
| -         RegisterOperand(cache_info_triple));
 | 
| +         RegisterOperand(cache_info_triple.first_register()));
 | 
|    return *this;
 | 
|  }
 | 
|  
 | 
| @@ -666,10 +667,12 @@ BytecodeArrayBuilder& BytecodeArrayBuilder::ForInContinue(
 | 
|  }
 | 
|  
 | 
|  BytecodeArrayBuilder& BytecodeArrayBuilder::ForInNext(
 | 
| -    Register receiver, Register index, Register cache_type_array_pair,
 | 
| +    Register receiver, Register index, RegisterList cache_type_array_pair,
 | 
|      int feedback_slot) {
 | 
| +  DCHECK_EQ(2, cache_type_array_pair.register_count());
 | 
|    Output(Bytecode::kForInNext, RegisterOperand(receiver),
 | 
| -         RegisterOperand(index), RegisterOperand(cache_type_array_pair),
 | 
| +         RegisterOperand(index),
 | 
| +         RegisterOperand(cache_type_array_pair.first_register()),
 | 
|           UnsignedOperand(feedback_slot));
 | 
|    return *this;
 | 
|  }
 | 
| @@ -774,19 +777,22 @@ BytecodeArrayBuilder& BytecodeArrayBuilder::CallRuntime(
 | 
|  }
 | 
|  
 | 
|  BytecodeArrayBuilder& BytecodeArrayBuilder::CallRuntimeForPair(
 | 
| -    Runtime::FunctionId function_id, RegisterList args, Register first_return) {
 | 
| +    Runtime::FunctionId function_id, RegisterList args,
 | 
| +    RegisterList return_pair) {
 | 
|    DCHECK_EQ(2, Runtime::FunctionForId(function_id)->result_size);
 | 
|    DCHECK(Bytecodes::SizeForUnsignedOperand(function_id) <= OperandSize::kShort);
 | 
| +  DCHECK_EQ(2, return_pair.register_count());
 | 
|    Output(Bytecode::kCallRuntimeForPair, static_cast<uint16_t>(function_id),
 | 
|           RegisterOperand(args.first_register()),
 | 
| -         UnsignedOperand(args.register_count()), RegisterOperand(first_return));
 | 
| +         UnsignedOperand(args.register_count()),
 | 
| +         RegisterOperand(return_pair.first_register()));
 | 
|    return *this;
 | 
|  }
 | 
|  
 | 
|  BytecodeArrayBuilder& BytecodeArrayBuilder::CallRuntimeForPair(
 | 
| -    Runtime::FunctionId function_id, Register arg, Register first_return) {
 | 
| +    Runtime::FunctionId function_id, Register arg, RegisterList return_pair) {
 | 
|    return CallRuntimeForPair(function_id, RegisterList(arg.index(), 1),
 | 
| -                            first_return);
 | 
| +                            return_pair);
 | 
|  }
 | 
|  
 | 
|  BytecodeArrayBuilder& BytecodeArrayBuilder::CallJSRuntime(int context_index,
 | 
| 
 |