Index: src/mips/lithium-mips.cc |
diff --git a/src/mips/lithium-mips.cc b/src/mips/lithium-mips.cc |
index ba0e361da6a27ee29bf9a838f7d61fd665eeadbe..8b8d0ccc4cf0dda0086889c0faead8c58f146f96 100644 |
--- a/src/mips/lithium-mips.cc |
+++ b/src/mips/lithium-mips.cc |
@@ -411,9 +411,9 @@ LChunk::LChunk(CompilationInfo* info, HGraph* graph) |
: spill_slot_count_(0), |
info_(info), |
graph_(graph), |
- instructions_(32), |
- pointer_maps_(8), |
- inlined_closures_(1) { |
+ instructions_(32, graph->zone()), |
+ pointer_maps_(8, graph->zone()), |
+ inlined_closures_(1, graph->zone()) { |
} |
@@ -427,9 +427,9 @@ int LChunk::GetNextSpillIndex(bool is_double) { |
LOperand* LChunk::GetNextSpillSlot(bool is_double) { |
int index = GetNextSpillIndex(is_double); |
if (is_double) { |
- return LDoubleStackSlot::Create(index); |
+ return LDoubleStackSlot::Create(index, zone()); |
} else { |
- return LStackSlot::Create(index); |
+ return LStackSlot::Create(index, zone()); |
} |
} |
@@ -474,23 +474,23 @@ void LChunk::AddInstruction(LInstruction* instr, HBasicBlock* block) { |
LInstructionGap* gap = new(graph_->zone()) LInstructionGap(block); |
int index = -1; |
if (instr->IsControl()) { |
- instructions_.Add(gap); |
+ instructions_.Add(gap, zone()); |
index = instructions_.length(); |
- instructions_.Add(instr); |
+ instructions_.Add(instr, zone()); |
} else { |
index = instructions_.length(); |
- instructions_.Add(instr); |
- instructions_.Add(gap); |
+ instructions_.Add(instr, zone()); |
+ instructions_.Add(gap, zone()); |
} |
if (instr->HasPointerMap()) { |
- pointer_maps_.Add(instr->pointer_map()); |
+ pointer_maps_.Add(instr->pointer_map(), zone()); |
instr->pointer_map()->set_lithium_position(index); |
} |
} |
LConstantOperand* LChunk::DefineConstantOperand(HConstant* constant) { |
- return LConstantOperand::Create(constant->id()); |
+ return LConstantOperand::Create(constant->id(), zone()); |
} |
@@ -529,7 +529,8 @@ int LChunk::NearestGapPos(int index) const { |
void LChunk::AddGapMove(int index, LOperand* from, LOperand* to) { |
- GetGapAt(index)->GetOrCreateParallelMove(LGap::START)->AddMove(from, to); |
+ GetGapAt(index)->GetOrCreateParallelMove( |
+ LGap::START, zone())->AddMove(from, to, zone()); |
} |
@@ -762,7 +763,7 @@ LInstruction* LChunkBuilder::MarkAsCall(LInstruction* instr, |
LInstruction* LChunkBuilder::AssignPointerMap(LInstruction* instr) { |
ASSERT(!instr->HasPointerMap()); |
- instr->set_pointer_map(new(zone()) LPointerMap(position_)); |
+ instr->set_pointer_map(new(zone()) LPointerMap(position_, zone())); |
return instr; |
} |
@@ -1596,7 +1597,8 @@ LInstruction* LChunkBuilder::DoValueOf(HValueOf* instr) { |
LInstruction* LChunkBuilder::DoDateField(HDateField* instr) { |
LOperand* object = UseFixed(instr->value(), a0); |
- LDateField* result = new LDateField(object, FixedTemp(a1), instr->index()); |
+ LDateField* result = |
+ new(zone()) LDateField(object, FixedTemp(a1), instr->index()); |
return MarkAsCall(DefineFixed(result, v0), instr); |
} |
@@ -2111,8 +2113,8 @@ LInstruction* LChunkBuilder::DoStringLength(HStringLength* instr) { |
LInstruction* LChunkBuilder::DoAllocateObject(HAllocateObject* instr) { |
- LAllocateObject* result = new(zone()) LAllocateObject( |
- TempRegister(), TempRegister()); |
+ LAllocateObject* result = |
+ new(zone()) LAllocateObject(TempRegister(), TempRegister()); |
return AssignPointerMap(DefineAsRegister(result)); |
} |