| Index: src/objects.cc
|
| diff --git a/src/objects.cc b/src/objects.cc
|
| index e69b004a9b0d2b8fc64dc2f463eec10bf205a0a3..fef74442c3da4a6b93cd0028868e6a4a51c4bdcf 100644
|
| --- a/src/objects.cc
|
| +++ b/src/objects.cc
|
| @@ -11107,6 +11107,16 @@
|
|
|
|
|
| void SharedFunctionInfo::ClearOptimizedCodeMap() {
|
| + FixedArray* code_map = FixedArray::cast(optimized_code_map());
|
| +
|
| + // If the next map link slot is already used then the function was
|
| + // enqueued with code flushing and we remove it now.
|
| + if (!code_map->get(kNextMapIndex)->IsUndefined()) {
|
| + CodeFlusher* flusher = GetHeap()->mark_compact_collector()->code_flusher();
|
| + flusher->EvictOptimizedCodeMap(this);
|
| + }
|
| +
|
| + DCHECK(code_map->get(kNextMapIndex)->IsUndefined());
|
| set_optimized_code_map(Smi::FromInt(0));
|
| }
|
|
|
|
|