Index: src/mips/stub-cache-mips.cc |
diff --git a/src/mips/stub-cache-mips.cc b/src/mips/stub-cache-mips.cc |
index 16c69d57addad40d22644f29281a48ba7c8e6bb1..e3d8fe14d939bac5a876a8cb580631acd97536ce 100644 |
--- a/src/mips/stub-cache-mips.cc |
+++ b/src/mips/stub-cache-mips.cc |
@@ -413,8 +413,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); |