Index: src/crankshaft/ia32/lithium-ia32.cc |
diff --git a/src/crankshaft/ia32/lithium-ia32.cc b/src/crankshaft/ia32/lithium-ia32.cc |
index 130ac852d33bfe6490b6c62de717ebe8a314c82d..724562f0559640d5caf065a68d752d21918d0f87 100644 |
--- a/src/crankshaft/ia32/lithium-ia32.cc |
+++ b/src/crankshaft/ia32/lithium-ia32.cc |
@@ -344,11 +344,11 @@ void LAccessArgumentsAt::PrintDataTo(StringStream* stream) { |
int LPlatformChunk::GetNextSpillIndex(RegisterKind kind) { |
// Skip a slot if for a double-width slot. |
if (kind == DOUBLE_REGISTERS) { |
- spill_slot_count_++; |
- spill_slot_count_ |= 1; |
+ current_frame_slots_++; |
+ current_frame_slots_ |= 1; |
num_double_slots_++; |
} |
- return spill_slot_count_++; |
+ return current_frame_slots_++; |
} |
@@ -2512,6 +2512,7 @@ LInstruction* LChunkBuilder::DoUnknownOSRValue(HUnknownOSRValue* instr) { |
// The first local is saved at the end of the unoptimized frame. |
spill_index = graph()->osr()->UnoptimizedFrameSlots(); |
} |
+ spill_index += StandardFrameConstants::kFixedSlotCount; |
} |
return DefineAsSpilled(new(zone()) LUnknownOSRValue, spill_index); |
} |