Index: src/ia32/deoptimizer-ia32.cc |
diff --git a/src/ia32/deoptimizer-ia32.cc b/src/ia32/deoptimizer-ia32.cc |
index 6718b8f85c40dbc3485e30cc45ccdc61c22732d6..12d303f36398ca5780a2d5e34c1806c574ffa11c 100644 |
--- a/src/ia32/deoptimizer-ia32.cc |
+++ b/src/ia32/deoptimizer-ia32.cc |
@@ -123,14 +123,14 @@ void Deoptimizer::DeoptimizeFunctionWithPreparedFunctionList( |
ASSERT(function->IsOptimized()); |
ASSERT(function->FunctionsInFunctionListShareSameCode()); |
- // The optimized code is going to be patched, so we cannot use it |
- // any more. Play safe and reset the whole cache. |
- function->shared()->ClearOptimizedCodeMap("deoptimized function"); |
- |
// Get the optimized code. |
Code* code = function->code(); |
Address code_start_address = code->instruction_start(); |
+ // The optimized code is going to be patched, so we cannot use it |
+ // any more. Play safe and reset the whole cache. |
Michael Starzinger
2013/05/13 14:26:46
The second sentence of the comment is out-dated, l
danno
2013/05/13 15:23:10
Done.
|
+ function->shared()->EvictFromOptimizedCodeMap(code, "deoptimized function"); |
+ |
// We will overwrite the code's relocation info in-place. Relocation info |
// is written backward. The relocation info is the payload of a byte |
// array. Later on we will slide this to the start of the byte array and |