| Index: src/mips64/macro-assembler-mips64.cc
|
| diff --git a/src/mips64/macro-assembler-mips64.cc b/src/mips64/macro-assembler-mips64.cc
|
| index 7b9683fba27ede46abe4b0b0fd9925779beac6d8..3d59b3949351afbfd4d494ae542a03ce4d5b634f 100644
|
| --- a/src/mips64/macro-assembler-mips64.cc
|
| +++ b/src/mips64/macro-assembler-mips64.cc
|
| @@ -3385,14 +3385,19 @@ void MacroAssembler::AllocateHeapNumber(Register result,
|
| Register scratch2,
|
| Register heap_number_map,
|
| Label* need_gc,
|
| - TaggingMode tagging_mode) {
|
| + TaggingMode tagging_mode,
|
| + MutableMode mode) {
|
| // Allocate an object in the heap for the heap number and tag it as a heap
|
| // object.
|
| Allocate(HeapNumber::kSize, result, scratch1, scratch2, need_gc,
|
| tagging_mode == TAG_RESULT ? TAG_OBJECT : NO_ALLOCATION_FLAGS);
|
|
|
| + Heap::RootListIndex map_index = mode == MUTABLE
|
| + ? Heap::kMutableHeapNumberMapRootIndex
|
| + : Heap::kHeapNumberMapRootIndex;
|
| + AssertIsRoot(heap_number_map, map_index);
|
| +
|
| // Store heap number map in the allocated object.
|
| - AssertIsRoot(heap_number_map, Heap::kHeapNumberMapRootIndex);
|
| if (tagging_mode == TAG_RESULT) {
|
| sd(heap_number_map, FieldMemOperand(result, HeapObject::kMapOffset));
|
| } else {
|
|
|