Index: src/x64/lithium-x64.cc |
diff --git a/src/x64/lithium-x64.cc b/src/x64/lithium-x64.cc |
index 048169c97adc473dfe08f056b2b4c55e92f28f67..b1d77c05081ce361de38be6073bf27144d167fe6 100644 |
--- a/src/x64/lithium-x64.cc |
+++ b/src/x64/lithium-x64.cc |
@@ -369,9 +369,9 @@ LOperand* LChunk::GetNextSpillSlot(bool is_double) { |
// stack slots for int32 values. |
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()); |
} |
} |
@@ -467,23 +467,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()); |
} |
@@ -522,7 +522,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()); |
} |
@@ -757,7 +758,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; |
} |
@@ -1594,7 +1595,7 @@ LInstruction* LChunkBuilder::DoValueOf(HValueOf* instr) { |
LInstruction* LChunkBuilder::DoDateField(HDateField* instr) { |
LOperand* object = UseFixed(instr->value(), rax); |
- LDateField* result = new LDateField(object, instr->index()); |
+ LDateField* result = new(zone()) LDateField(object, instr->index()); |
return MarkAsCall(DefineFixed(result, rax), instr); |
} |
@@ -2103,7 +2104,7 @@ LInstruction* LChunkBuilder::DoStringLength(HStringLength* instr) { |
LInstruction* LChunkBuilder::DoAllocateObject(HAllocateObject* instr) { |
- LAllocateObject* result = new LAllocateObject(TempRegister()); |
+ LAllocateObject* result = new(zone()) LAllocateObject(TempRegister()); |
return AssignPointerMap(DefineAsRegister(result)); |
} |