| Index: src/x64/lithium-x64.cc
|
| diff --git a/src/x64/lithium-x64.cc b/src/x64/lithium-x64.cc
|
| index 4ecb733508ebb544099c352acd67045dc2c32d7f..5a199eaa22ebbe5dd28f453c5a42118b70d145e5 100644
|
| --- a/src/x64/lithium-x64.cc
|
| +++ b/src/x64/lithium-x64.cc
|
| @@ -2237,15 +2237,15 @@ LInstruction* LChunkBuilder::DoStoreNamedField(HStoreNamedField* instr) {
|
| instr->NeedsWriteBarrierForMap();
|
|
|
| LOperand* obj;
|
| - if (needs_write_barrier) {
|
| - obj = is_in_object
|
| - ? UseRegister(instr->object())
|
| - : UseTempRegister(instr->object());
|
| - } else if (is_external_location) {
|
| + if (is_external_location) {
|
| ASSERT(!is_in_object);
|
| ASSERT(!needs_write_barrier);
|
| ASSERT(!needs_write_barrier_for_map);
|
| obj = UseRegisterOrConstant(instr->object());
|
| + } else if (needs_write_barrier) {
|
| + obj = is_in_object
|
| + ? UseRegister(instr->object())
|
| + : UseTempRegister(instr->object());
|
| } else {
|
| obj = needs_write_barrier_for_map
|
| ? UseRegister(instr->object())
|
|
|