| Index: runtime/vm/assembler_x64.cc
 | 
| diff --git a/runtime/vm/assembler_x64.cc b/runtime/vm/assembler_x64.cc
 | 
| index 20153ad438ceca507c377ac0b4605406633e2cd4..a8ce3afbcf2780816af0884bd707035418ffebb2 100644
 | 
| --- a/runtime/vm/assembler_x64.cc
 | 
| +++ b/runtime/vm/assembler_x64.cc
 | 
| @@ -1594,11 +1594,9 @@ void Assembler::StoreIntoObjectFilter(Register object,
 | 
|  void Assembler::StoreIntoObject(Register object,
 | 
|                                  const FieldAddress& dest,
 | 
|                                  Register value) {
 | 
| -  // TODO(kmillikin): pass temp registers to avoid pushing registers.
 | 
| +  ASSERT(object != value);
 | 
|    movq(dest, value);
 | 
| -
 | 
|    Label done;
 | 
| -  pushq(value);
 | 
|    StoreIntoObjectFilter(object, value, &done);
 | 
|    // A store buffer update is required.
 | 
|    if (value != RAX) pushq(RAX);
 | 
| @@ -1606,7 +1604,6 @@ void Assembler::StoreIntoObject(Register object,
 | 
|    call(&StubCode::UpdateStoreBufferLabel());
 | 
|    if (value != RAX) popq(RAX);
 | 
|    Bind(&done);
 | 
| -  popq(value);
 | 
|  }
 | 
|  
 | 
|  
 | 
| 
 |