Index: src/runtime.cc |
diff --git a/src/runtime.cc b/src/runtime.cc |
index 48022b049c0790f18292984843e39aaa3872e9db..47eb9479a093031d15727f78a5b49f5b67290401 100644 |
--- a/src/runtime.cc |
+++ b/src/runtime.cc |
@@ -8046,11 +8046,13 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_NotifyDeoptimized) { |
return isolate->heap()->undefined_value(); |
} |
- // Find other optimized activations of the function. |
+ // Find other optimized activations of the function or functions that |
+ // share the same optimized code. |
bool has_other_activations = false; |
while (!it.done()) { |
JavaScriptFrame* frame = it.frame(); |
- if (frame->is_optimized() && frame->function() == *function) { |
+ JSFunction* other_function = JSFunction::cast(frame->function()); |
+ if (frame->is_optimized() && other_function->code() == function->code()) { |
has_other_activations = true; |
break; |
} |