Index: src/full-codegen/ia32/full-codegen-ia32.cc |
diff --git a/src/full-codegen/ia32/full-codegen-ia32.cc b/src/full-codegen/ia32/full-codegen-ia32.cc |
index 8bcc1834c4322d9577f46273726124adaab60eb8..b792657f29a45c3f46c78db9901f6c2f2ee440e2 100644 |
--- a/src/full-codegen/ia32/full-codegen-ia32.cc |
+++ b/src/full-codegen/ia32/full-codegen-ia32.cc |
@@ -1058,8 +1058,8 @@ void FullCodeGenerator::VisitForInStatement(ForInStatement* stmt) { |
__ bind(&fixed_array); |
// No need for a write barrier, we are storing a Smi in the feedback vector. |
- __ LoadHeapObject(ebx, FeedbackVector()); |
- int vector_index = FeedbackVector()->GetIndex(slot); |
+ __ EmitLoadTypeFeedbackVector(ebx); |
+ int vector_index = SmiFromSlot(slot)->value(); |
__ mov(FieldOperand(ebx, FixedArray::OffsetOfElementAt(vector_index)), |
Immediate(TypeFeedbackVector::MegamorphicSentinel(isolate()))); |
@@ -3074,7 +3074,7 @@ void FullCodeGenerator::VisitCallNew(CallNew* expr) { |
__ mov(edi, Operand(esp, arg_count * kPointerSize)); |
// Record call targets in unoptimized code. |
- __ LoadHeapObject(ebx, FeedbackVector()); |
+ __ EmitLoadTypeFeedbackVector(ebx); |
__ mov(edx, Immediate(SmiFromSlot(expr->CallNewFeedbackSlot()))); |
CallConstructStub stub(isolate(), RECORD_CONSTRUCTOR_TARGET); |
@@ -3114,7 +3114,7 @@ void FullCodeGenerator::EmitSuperConstructorCall(Call* expr) { |
__ mov(edi, Operand(esp, arg_count * kPointerSize)); |
// Record call targets in unoptimized code. |
- __ LoadHeapObject(ebx, FeedbackVector()); |
+ __ EmitLoadTypeFeedbackVector(ebx); |
__ mov(edx, Immediate(SmiFromSlot(expr->CallFeedbackSlot()))); |
CallConstructStub stub(isolate(), SUPER_CALL_RECORD_TARGET); |