Index: src/ia32/full-codegen-ia32.cc |
diff --git a/src/ia32/full-codegen-ia32.cc b/src/ia32/full-codegen-ia32.cc |
index 39d4d7644ed0bd478c9d4ad06317848cb0df1e38..f7addef20b6e2ab24b2246780f0c36e090b99de5 100644 |
--- a/src/ia32/full-codegen-ia32.cc |
+++ b/src/ia32/full-codegen-ia32.cc |
@@ -1287,7 +1287,13 @@ void FullCodeGenerator::EmitLoadHomeObject(SuperReference* expr) { |
Handle<Symbol> home_object_symbol(isolate()->heap()->home_object_symbol()); |
__ mov(LoadDescriptor::NameRegister(), home_object_symbol); |
- CallLoadIC(NOT_CONTEXTUAL, expr->HomeObjectFeedbackId()); |
+ if (FLAG_vector_ics) { |
+ __ mov(VectorLoadICDescriptor::SlotRegister(), |
+ Immediate(Smi::FromInt(expr->HomeObjectFeedbackSlot()))); |
+ CallLoadIC(NOT_CONTEXTUAL); |
+ } else { |
+ CallLoadIC(NOT_CONTEXTUAL, expr->HomeObjectFeedbackId()); |
+ } |
__ cmp(eax, isolate()->factory()->undefined_value()); |
Label done; |