Index: src/deoptimizer.cc |
diff --git a/src/deoptimizer.cc b/src/deoptimizer.cc |
index 587fc0946a9157caa542a45696d449503b6c4246..2c82c72ef7875a2541a468ee33085068afff32d0 100644 |
--- a/src/deoptimizer.cc |
+++ b/src/deoptimizer.cc |
@@ -414,11 +414,9 @@ void Deoptimizer::DeoptimizeMarkedCodeForContext(Context* context) { |
PatchCodeForDeoptimization(isolate, codes[i]); |
// We might be in the middle of incremental marking with compaction. |
- // Ignore all slots that might have been recorded in the body of the |
- // deoptimized code object. |
- Code* code = codes[i]; |
- isolate->heap()->mark_compact_collector()->RemoveObjectSlots( |
- code->instruction_start(), code->address() + code->Size()); |
+ // Tell collector to treat this code object in a special way and |
+ // ignore all slots that might have been recorded on it. |
+ isolate->heap()->mark_compact_collector()->InvalidateCode(codes[i]); |
} |
} |