| Index: src/runtime.cc
 | 
| diff --git a/src/runtime.cc b/src/runtime.cc
 | 
| index 61eb8ad72a30ff6dd34ae4410c1bca3a644cca00..fefe1e46844afb06f030832e58452b60eddbfda1 100644
 | 
| --- a/src/runtime.cc
 | 
| +++ b/src/runtime.cc
 | 
| @@ -8523,6 +8523,10 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_NotifyDeoptimized) {
 | 
|          PrintF("]\n");
 | 
|        }
 | 
|        function->ReplaceCode(function->shared()->code());
 | 
| +      // Evict optimized code for this function from the cache so that it
 | 
| +      // doesn't get used for new closures.
 | 
| +      function->shared()->EvictFromOptimizedCodeMap(*optimized_code,
 | 
| +                                                    "notify deoptimized");
 | 
|      }
 | 
|    } else {
 | 
|      // TODO(titzer): we should probably do DeoptimizeCodeList(code)
 | 
| @@ -8530,10 +8534,6 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_NotifyDeoptimized) {
 | 
|      // If there is an index by shared function info, all the better.
 | 
|      Deoptimizer::DeoptimizeFunction(*function);
 | 
|    }
 | 
| -  // Evict optimized code for this function from the cache so that it doesn't
 | 
| -  // get used for new closures.
 | 
| -  function->shared()->EvictFromOptimizedCodeMap(
 | 
| -      function->context()->native_context(), "notify deoptimized");
 | 
|  
 | 
|    return isolate->heap()->undefined_value();
 | 
|  }
 | 
| 
 |