Index: src/objects-visiting-inl.h |
diff --git a/src/objects-visiting-inl.h b/src/objects-visiting-inl.h |
index 31117bb945bb62991245ef676beac33314940167..569ed513a9930a9574bd21473b4331f87c94101f 100644 |
--- a/src/objects-visiting-inl.h |
+++ b/src/objects-visiting-inl.h |
@@ -312,7 +312,8 @@ void StaticMarkingVisitor<StaticVisitor>::VisitCodeTarget( |
if (FLAG_cleanup_code_caches_at_gc && target->is_inline_cache_stub() |
&& (target->ic_state() == MEGAMORPHIC || target->ic_state() == GENERIC || |
target->ic_state() == POLYMORPHIC || heap->flush_monomorphic_ics() || |
- Serializer::enabled() || target->ic_age() != heap->global_ic_age())) { |
+ Serializer::enabled() || target->ic_age() != heap->global_ic_age() || |
+ target->is_invalidated_weak_stub())) { |
IC::Clear(target->GetIsolate(), rinfo->pc(), |
rinfo->host()->constant_pool()); |
target = Code::GetCodeFromTargetAddress(rinfo->target_address()); |