| Index: src/lithium-allocator.cc
|
| diff --git a/src/lithium-allocator.cc b/src/lithium-allocator.cc
|
| index eecc441f4f81fd85221f9956b16d7b839fce19d4..abdef0932011b94a862665cd7756808af32362b5 100644
|
| --- a/src/lithium-allocator.cc
|
| +++ b/src/lithium-allocator.cc
|
| @@ -940,6 +940,9 @@ void LAllocator::ProcessInstructions(HBasicBlock* block, BitVector* live) {
|
| curr_position.InstructionEnd());
|
| }
|
| }
|
| + }
|
| +
|
| + if (summary->IsCall() || summary->IsSaveDoubles()) {
|
| for (int i = 0; i < DoubleRegister::kNumAllocatableRegisters; ++i) {
|
| if (output == NULL || !output->IsDoubleRegister() ||
|
| output->index() != i) {
|
| @@ -1607,6 +1610,11 @@ void LAllocator::MarkAsCall() {
|
| }
|
|
|
|
|
| +void LAllocator::MarkAsSaveDoubles() {
|
| + current_summary()->MarkAsSaveDoubles();
|
| +}
|
| +
|
| +
|
| void LAllocator::RecordDefinition(HInstruction* instr, LUnallocated* operand) {
|
| operand->set_virtual_register(instr->id());
|
| current_summary()->SetOutput(operand);
|
|
|