cppgc: Keep |marking_done_| true upon initialization
Since the variable was initialized as |false|, the very first minor gc triggered a check in TraceEpilogue(). Bug: v8:13475 Change-Id: I8ec574583ec4aa0b97cc1750f8ceea866fbdef7b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4061892 Reviewed-by: Omer Katz <omerkatz@chromium.org> Auto-Submit: Anton Bikineev <bikineev@chromium.org> Commit-Queue: Anton Bikineev <bikineev@chromium.org> Cr-Commit-Position: refs/heads/main@{#84529}
This commit is contained in:
parent
8c47ca8dc5
commit
c74c73be6f
@ -691,6 +691,7 @@ MarkingWorklists::Local* GetV8MarkingWorklists(
|
||||
} // namespace
|
||||
|
||||
void CppHeap::StartTracing() {
|
||||
CHECK(marking_done_);
|
||||
if (!TracingInitialized()) return;
|
||||
if (isolate_) {
|
||||
// Reuse the same local worklist for the mutator marking state which results
|
||||
|
@ -200,7 +200,7 @@ class V8_EXPORT_PRIVATE CppHeap final
|
||||
bool TracingInitialized() const { return collection_type_.has_value(); }
|
||||
|
||||
Isolate* isolate_ = nullptr;
|
||||
bool marking_done_ = false;
|
||||
bool marking_done_ = true;
|
||||
// |collection_type_| is initialized when marking is in progress.
|
||||
base::Optional<CollectionType> collection_type_;
|
||||
GarbageCollectionFlags current_gc_flags_;
|
||||
|
Loading…
Reference in New Issue
Block a user