| Index: src/ic/ic.cc
|
| diff --git a/src/ic/ic.cc b/src/ic/ic.cc
|
| index c86b932d83c414f3dd7ee4ce35b2fe4ac37c52c0..964f1d876d5ec9671e7f1e37a48e6f37f33e114a 100644
|
| --- a/src/ic/ic.cc
|
| +++ b/src/ic/ic.cc
|
| @@ -2310,6 +2310,12 @@ void CallIC::HandleMiss(Handle<Object> function) {
|
| if (array_function.is_identical_to(js_function)) {
|
| // Alter the slot.
|
| nexus->ConfigureMonomorphicArray();
|
| + } else if (js_function->context()->native_context() !=
|
| + *isolate()->native_context()) {
|
| + // Don't collect cross-native context feedback for the CallIC.
|
| + // TODO(bmeurer): We should collect the SharedFunctionInfo as
|
| + // feedback in this case instead.
|
| + nexus->ConfigureMegamorphic();
|
| } else {
|
| nexus->ConfigureMonomorphic(js_function);
|
| }
|
|
|