| Index: src/lithium-allocator.cc
|
| diff --git a/src/lithium-allocator.cc b/src/lithium-allocator.cc
|
| index c00ef15fe4e6657faf0b0d53c44db0cbb10f7a35..30b86ffe7273e9e1e9cca75d15ba38b063836715 100644
|
| --- a/src/lithium-allocator.cc
|
| +++ b/src/lithium-allocator.cc
|
| @@ -585,17 +585,12 @@ void LAllocator::AddInitialIntervals(HBasicBlock* block,
|
| LifetimePosition start = LifetimePosition::FromInstructionIndex(
|
| block->first_instruction_index());
|
| LifetimePosition end = LifetimePosition::FromInstructionIndex(
|
| - block->last_instruction_index());
|
| + block->last_instruction_index()).NextInstruction();
|
| BitVector::Iterator iterator(live_out);
|
| while (!iterator.Done()) {
|
| int operand_index = iterator.Current();
|
| LiveRange* range = LiveRangeFor(operand_index);
|
| - if (!range->IsEmpty() &&
|
| - range->Start().Value() == end.NextInstruction().Value()) {
|
| - range->AddUseInterval(start, end.NextInstruction());
|
| - } else {
|
| - range->AddUseInterval(start, end);
|
| - }
|
| + range->AddUseInterval(start, end);
|
| iterator.Advance();
|
| }
|
| }
|
| @@ -978,8 +973,8 @@ void LAllocator::ProcessInstructions(HBasicBlock* block, BitVector* live) {
|
| }
|
| }
|
| }
|
| - Use(block_start_position, curr_position, temp, NULL);
|
| - Define(curr_position.PrevInstruction(), temp, NULL);
|
| + Use(block_start_position, curr_position.InstructionEnd(), temp, NULL);
|
| + Define(curr_position, temp, NULL);
|
| }
|
| }
|
| }
|
| @@ -1832,7 +1827,7 @@ bool LAllocator::TryAllocateFreeReg(LiveRange* current) {
|
| // Register reg is available at the range start and is free until
|
| // the range end.
|
| ASSERT(pos.Value() >= current->End().Value());
|
| - TraceAlloc("Assigning reg %s to live range %d\n",
|
| + TraceAlloc("Assigning free reg %s to live range %d\n",
|
| RegisterName(reg),
|
| current->id());
|
| current->set_assigned_register(reg, mode_);
|
| @@ -1922,7 +1917,7 @@ void LAllocator::AllocateBlockedReg(LiveRange* current) {
|
|
|
| // Register reg is not blocked for the whole range.
|
| ASSERT(block_pos[reg].Value() >= current->End().Value());
|
| - TraceAlloc("Assigning reg %s to live range %d\n",
|
| + TraceAlloc("Assigning blocked reg %s to live range %d\n",
|
| RegisterName(reg),
|
| current->id());
|
| current->set_assigned_register(reg, mode_);
|
|
|