Index: src/mips64/stub-cache-mips64.cc |
diff --git a/src/mips64/stub-cache-mips64.cc b/src/mips64/stub-cache-mips64.cc |
index 5260eb3e95a724aaa0a85499da2e5bfd75a2f348..8a6b02eece79e02c037c1cea77a858acfc4848d7 100644 |
--- a/src/mips64/stub-cache-mips64.cc |
+++ b/src/mips64/stub-cache-mips64.cc |
@@ -414,8 +414,9 @@ void StoreStubCompiler::GenerateStoreTransition(MacroAssembler* masm, |
} |
} else if (representation.IsDouble()) { |
Label do_store, heap_number; |
- __ LoadRoot(scratch3, Heap::kHeapNumberMapRootIndex); |
- __ AllocateHeapNumber(storage_reg, scratch1, scratch2, scratch3, slow); |
+ __ LoadRoot(scratch3, Heap::kMutableHeapNumberMapRootIndex); |
+ __ AllocateHeapNumber(storage_reg, scratch1, scratch2, scratch3, slow, |
+ TAG_RESULT, MUTABLE); |
__ JumpIfNotSmi(value_reg, &heap_number); |
__ SmiUntag(scratch1, value_reg); |