[api] Port v8::MicrotaskQueue to CppGC [v8/v8 : main]

0 views
Skip to first unread message

Igor Sheludko (Gerrit)

unread,
Jun 23, 2026, 11:31:18 AM (11 days ago) Jun 23
to Michael Lippautz, android-bu...@system.gserviceaccount.com, v8-s...@luci-project-accounts.iam.gserviceaccount.com, Hannes Payer, oilpan-r...@chromium.org, was...@google.com, cbruni...@chromium.org, mlippau...@chromium.org, v8-re...@googlegroups.com, victorgo...@chromium.org
Attention needed from Michael Lippautz

Igor Sheludko voted and added 2 comments

Votes added by Igor Sheludko

Commit-Queue+1

2 comments

Patchset-level comments
File-level comment, Patchset 16 (Latest):
Igor Sheludko . resolved

PTAL

File src/heap/memory-reducer.cc
Line 49, Patchset 15: SetCurrentLocalHeapScope thread_local_scope(heap->isolate());
Igor Sheludko . unresolved

Required by one of DCHECKs in `GCTracer::Scope`.

Open in Gerrit

Related details

Attention is currently required from:
  • Michael Lippautz
Submit Requirements:
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedNo-Unresolved-Comments
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: v8/v8
Gerrit-Branch: main
Gerrit-Change-Id: Ic3e5b7be00bd6610f86c2b46844bb6b231324f90
Gerrit-Change-Number: 7956924
Gerrit-PatchSet: 16
Gerrit-Owner: Igor Sheludko <ish...@chromium.org>
Gerrit-Reviewer: Igor Sheludko <ish...@chromium.org>
Gerrit-Reviewer: Michael Lippautz <mlip...@chromium.org>
Gerrit-CC: Hannes Payer <hpa...@chromium.org>
Gerrit-Attention: Michael Lippautz <mlip...@chromium.org>
Gerrit-Comment-Date: Tue, 23 Jun 2026 15:31:14 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
unsatisfied_requirement
open
diffy

Igor Sheludko (Gerrit)

unread,
Jun 23, 2026, 11:31:45 AM (11 days ago) Jun 23
to Michael Lippautz, android-bu...@system.gserviceaccount.com, v8-s...@luci-project-accounts.iam.gserviceaccount.com, Hannes Payer, oilpan-r...@chromium.org, was...@google.com, cbruni...@chromium.org, mlippau...@chromium.org, v8-re...@googlegroups.com, victorgo...@chromium.org
Attention needed from Michael Lippautz

Igor Sheludko added 1 comment

File gni/v8.gni
Line 95, Patchset 16 (Latest): v8_cppgc_microtask_queue = true
Igor Sheludko . unresolved

I'll disable it before landing.

Open in Gerrit

Related details

Attention is currently required from:
  • Michael Lippautz
Submit Requirements:
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedNo-Unresolved-Comments
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: v8/v8
Gerrit-Branch: main
Gerrit-Change-Id: Ic3e5b7be00bd6610f86c2b46844bb6b231324f90
Gerrit-Change-Number: 7956924
Gerrit-PatchSet: 16
Gerrit-Owner: Igor Sheludko <ish...@chromium.org>
Gerrit-Reviewer: Igor Sheludko <ish...@chromium.org>
Gerrit-Reviewer: Michael Lippautz <mlip...@chromium.org>
Gerrit-CC: Hannes Payer <hpa...@chromium.org>
Gerrit-Attention: Michael Lippautz <mlip...@chromium.org>
Gerrit-Comment-Date: Tue, 23 Jun 2026 15:31:41 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
unsatisfied_requirement
open
diffy

Igor Sheludko (Gerrit)

unread,
Jun 23, 2026, 2:03:23 PM (11 days ago) Jun 23
to Michael Lippautz, android-bu...@system.gserviceaccount.com, v8-s...@luci-project-accounts.iam.gserviceaccount.com, Hannes Payer, oilpan-r...@chromium.org, was...@google.com, cbruni...@chromium.org, mlippau...@chromium.org, v8-re...@googlegroups.com, victorgo...@chromium.org
Attention needed from Michael Lippautz

Igor Sheludko voted and added 1 comment

Votes added by Igor Sheludko

Commit-Queue+1

1 comment

File gni/v8.gni
Line 95, Patchset 16: v8_cppgc_microtask_queue = true
Igor Sheludko . resolved

I'll disable it before landing.

Igor Sheludko

Done

Open in Gerrit

Related details

Attention is currently required from:
  • Michael Lippautz
Submit Requirements:
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedNo-Unresolved-Comments
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: v8/v8
Gerrit-Branch: main
Gerrit-Change-Id: Ic3e5b7be00bd6610f86c2b46844bb6b231324f90
Gerrit-Change-Number: 7956924
Gerrit-PatchSet: 17
Gerrit-Owner: Igor Sheludko <ish...@chromium.org>
Gerrit-Reviewer: Igor Sheludko <ish...@chromium.org>
Gerrit-Reviewer: Michael Lippautz <mlip...@chromium.org>
Gerrit-CC: Hannes Payer <hpa...@chromium.org>
Gerrit-Attention: Michael Lippautz <mlip...@chromium.org>
Gerrit-Comment-Date: Tue, 23 Jun 2026 18:03:08 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
Comment-In-Reply-To: Igor Sheludko <ish...@chromium.org>
unsatisfied_requirement
open
diffy

Michael Lippautz (Gerrit)

unread,
Jun 24, 2026, 3:37:47 AM (10 days ago) Jun 24
to Igor Sheludko, android-bu...@system.gserviceaccount.com, v8-s...@luci-project-accounts.iam.gserviceaccount.com, Hannes Payer, oilpan-r...@chromium.org, was...@google.com, cbruni...@chromium.org, mlippau...@chromium.org, v8-re...@googlegroups.com, victorgo...@chromium.org
Attention needed from Igor Sheludko

Michael Lippautz added 4 comments

File include/v8-isolate.h
Line 457, Patchset 19 (Latest): cppgc::Persistent<internal::MicrotaskQueue> const microtask_queue_;
Michael Lippautz . unresolved

Is this scope always supposed to be used from stack? If so, this can be a raw pointer and we should annotate the scope with `CPPGC_STACK_ALLOCATED`.

File src/execution/execution.cc
Line 87, Patchset 19 (Latest): cppgc::UntracedMember<MicrotaskQueue> microtask_queue;
Michael Lippautz . unresolved

For stack, we should just use a raw pointer, not UntracedMember.

File src/heap/heap.cc
Line 5070, Patchset 19 (Latest): if (!cpp_heap) {
Michael Lippautz . unresolved
File src/heap/memory-reducer.cc
Line 49, Patchset 15: SetCurrentLocalHeapScope thread_local_scope(heap->isolate());
Igor Sheludko . resolved

Required by one of DCHECKs in `GCTracer::Scope`.

Michael Lippautz

Acknowledged

Open in Gerrit

Related details

Attention is currently required from:
  • Igor Sheludko
Submit Requirements:
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedNo-Unresolved-Comments
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: v8/v8
Gerrit-Branch: main
Gerrit-Change-Id: Ic3e5b7be00bd6610f86c2b46844bb6b231324f90
Gerrit-Change-Number: 7956924
Gerrit-PatchSet: 19
Gerrit-Attention: Igor Sheludko <ish...@chromium.org>
Gerrit-Comment-Date: Wed, 24 Jun 2026 07:37:41 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Igor Sheludko <ish...@chromium.org>
unsatisfied_requirement
open
diffy

Omer Katz (Gerrit)

unread,
Jun 24, 2026, 4:12:48 AM (10 days ago) Jun 24
to Igor Sheludko, Michael Lippautz, android-bu...@system.gserviceaccount.com, v8-s...@luci-project-accounts.iam.gserviceaccount.com, Hannes Payer, oilpan-r...@chromium.org, was...@google.com, cbruni...@chromium.org, mlippau...@chromium.org, v8-re...@googlegroups.com, victorgo...@chromium.org
Attention needed from Igor Sheludko

Omer Katz voted Code-Review+1

Code-Review+1
Open in Gerrit

Related details

Attention is currently required from:
  • Igor Sheludko
Submit Requirements:
    • requirement is not satisfiedCode-Owners
    • requirement satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: v8/v8
    Gerrit-Branch: main
    Gerrit-Change-Id: Ic3e5b7be00bd6610f86c2b46844bb6b231324f90
    Gerrit-Change-Number: 7956924
    Gerrit-PatchSet: 19
    Gerrit-Owner: Igor Sheludko <ish...@chromium.org>
    Gerrit-Reviewer: Igor Sheludko <ish...@chromium.org>
    Gerrit-Reviewer: Michael Lippautz <mlip...@chromium.org>
    Gerrit-Reviewer: Omer Katz <omer...@chromium.org>
    Gerrit-Comment-Date: Wed, 24 Jun 2026 08:12:43 +0000
    Gerrit-HasComments: No
    Gerrit-Has-Labels: Yes
    unsatisfied_requirement
    satisfied_requirement
    open
    diffy

    Omer Katz (Gerrit)

    unread,
    Jun 24, 2026, 4:12:57 AM (10 days ago) Jun 24
    to Igor Sheludko, Michael Lippautz, android-bu...@system.gserviceaccount.com, v8-s...@luci-project-accounts.iam.gserviceaccount.com, Hannes Payer, oilpan-r...@chromium.org, was...@google.com, cbruni...@chromium.org, mlippau...@chromium.org, v8-re...@googlegroups.com, victorgo...@chromium.org
    Attention needed from Igor Sheludko

    Omer Katz removed a vote from this change

    Removed Code-Review+1 by Omer Katz <omer...@chromium.org>
    Open in Gerrit

    Related details

    Attention is currently required from:
    • Igor Sheludko
    Submit Requirements:
      • requirement is not satisfiedCode-Owners
      • requirement is not satisfiedCode-Review
      • requirement is not satisfiedNo-Unresolved-Comments
      • requirement is not satisfiedReview-Enforcement
      Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
      Gerrit-MessageType: deleteVote
      Gerrit-Project: v8/v8
      Gerrit-Branch: main
      Gerrit-Change-Id: Ic3e5b7be00bd6610f86c2b46844bb6b231324f90
      Gerrit-Change-Number: 7956924
      Gerrit-PatchSet: 20
      unsatisfied_requirement
      open
      diffy

      Igor Sheludko (Gerrit)

      unread,
      Jun 24, 2026, 5:22:07 AM (10 days ago) Jun 24
      to Michael Lippautz, android-bu...@system.gserviceaccount.com, v8-s...@luci-project-accounts.iam.gserviceaccount.com, Hannes Payer, jgrube...@chromium.org, oilpan-r...@chromium.org, was...@google.com, cbruni...@chromium.org, mlippau...@chromium.org, v8-re...@googlegroups.com, victorgo...@chromium.org
      Attention needed from Michael Lippautz

      Igor Sheludko voted and added 3 comments

      Votes added by Igor Sheludko

      Commit-Queue+1

      3 comments

      File include/v8-isolate.h
      Line 457, Patchset 19: cppgc::Persistent<internal::MicrotaskQueue> const microtask_queue_;
      Michael Lippautz . resolved

      Is this scope always supposed to be used from stack? If so, this can be a raw pointer and we should annotate the scope with `CPPGC_STACK_ALLOCATED`.

      Igor Sheludko

      Done

      File src/execution/execution.cc
      Line 87, Patchset 19: cppgc::UntracedMember<MicrotaskQueue> microtask_queue;
      Michael Lippautz . resolved

      For stack, we should just use a raw pointer, not UntracedMember.

      Igor Sheludko

      Done

      File src/heap/heap.cc
      Line 5070, Patchset 19: if (!cpp_heap) {
      Michael Lippautz . resolved
      Igor Sheludko

      Done

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Michael Lippautz
      Submit Requirements:
        • requirement is not satisfiedCode-Owners
        • requirement is not satisfiedCode-Review
        • requirement is not satisfiedReview-Enforcement
        Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
        Gerrit-MessageType: comment
        Gerrit-Project: v8/v8
        Gerrit-Branch: main
        Gerrit-Change-Id: Ic3e5b7be00bd6610f86c2b46844bb6b231324f90
        Gerrit-Change-Number: 7956924
        Gerrit-PatchSet: 22
        Gerrit-Owner: Igor Sheludko <ish...@chromium.org>
        Gerrit-Reviewer: Igor Sheludko <ish...@chromium.org>
        Gerrit-Reviewer: Michael Lippautz <mlip...@chromium.org>
        Gerrit-Attention: Michael Lippautz <mlip...@chromium.org>
        Gerrit-Comment-Date: Wed, 24 Jun 2026 09:22:03 +0000
        Gerrit-HasComments: Yes
        Gerrit-Has-Labels: Yes
        Comment-In-Reply-To: Michael Lippautz <mlip...@chromium.org>
        unsatisfied_requirement
        open
        diffy

        Michael Lippautz (Gerrit)

        unread,
        Jun 24, 2026, 3:08:30 PM (10 days ago) Jun 24
        to Igor Sheludko, android-bu...@system.gserviceaccount.com, v8-s...@luci-project-accounts.iam.gserviceaccount.com, Hannes Payer, jgrube...@chromium.org, oilpan-r...@chromium.org, was...@google.com, cbruni...@chromium.org, mlippau...@chromium.org, v8-re...@googlegroups.com, victorgo...@chromium.org
        Attention needed from Igor Sheludko

        Michael Lippautz voted and added 1 comment

        Votes added by Michael Lippautz

        Code-Review+1

        1 comment

        Patchset-level comments
        File-level comment, Patchset 24 (Latest):
        Michael Lippautz . resolved

        lgtm, good luck :)

        Open in Gerrit

        Related details

        Attention is currently required from:
        • Igor Sheludko
        Submit Requirements:
        • requirement satisfiedCode-Owners
        • requirement satisfiedCode-Review
        • requirement satisfiedReview-Enforcement
        Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
        Gerrit-MessageType: comment
        Gerrit-Project: v8/v8
        Gerrit-Branch: main
        Gerrit-Change-Id: Ic3e5b7be00bd6610f86c2b46844bb6b231324f90
        Gerrit-Change-Number: 7956924
        Gerrit-PatchSet: 24
        Gerrit-Attention: Igor Sheludko <ish...@chromium.org>
        Gerrit-Comment-Date: Wed, 24 Jun 2026 19:08:25 +0000
        Gerrit-HasComments: Yes
        Gerrit-Has-Labels: Yes
        satisfied_requirement
        open
        diffy

        Igor Sheludko (Gerrit)

        unread,
        Jun 24, 2026, 3:24:59 PM (10 days ago) Jun 24
        to Michael Lippautz, android-bu...@system.gserviceaccount.com, v8-s...@luci-project-accounts.iam.gserviceaccount.com, Hannes Payer, jgrube...@chromium.org, oilpan-r...@chromium.org, was...@google.com, cbruni...@chromium.org, mlippau...@chromium.org, v8-re...@googlegroups.com, victorgo...@chromium.org

        Igor Sheludko voted Commit-Queue+2

        Commit-Queue+2
        Open in Gerrit

        Related details

        Attention set is empty
        Submit Requirements:
        • requirement satisfiedCode-Owners
        • requirement satisfiedCode-Review
        • requirement satisfiedReview-Enforcement
        Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
        Gerrit-MessageType: comment
        Gerrit-Project: v8/v8
        Gerrit-Branch: main
        Gerrit-Change-Id: Ic3e5b7be00bd6610f86c2b46844bb6b231324f90
        Gerrit-Change-Number: 7956924
        Gerrit-PatchSet: 24
        Gerrit-Owner: Igor Sheludko <ish...@chromium.org>
        Gerrit-Reviewer: Igor Sheludko <ish...@chromium.org>
        Gerrit-Reviewer: Michael Lippautz <mlip...@chromium.org>
        Gerrit-CC: Hannes Payer <hpa...@chromium.org>
        Gerrit-Comment-Date: Wed, 24 Jun 2026 19:24:54 +0000
        Gerrit-HasComments: No
        Gerrit-Has-Labels: Yes
        satisfied_requirement
        open
        diffy

        v8-scoped@luci-project-accounts.iam.gserviceaccount.com (Gerrit)

        unread,
        Jun 24, 2026, 3:27:21 PM (10 days ago) Jun 24
        to Igor Sheludko, Michael Lippautz, android-bu...@system.gserviceaccount.com, Hannes Payer, jgrube...@chromium.org, oilpan-r...@chromium.org, was...@google.com, cbruni...@chromium.org, mlippau...@chromium.org, v8-re...@googlegroups.com, victorgo...@chromium.org

        v8-s...@luci-project-accounts.iam.gserviceaccount.com submitted the change

        Change information

        Commit message:
        [api] Port v8::MicrotaskQueue to CppGC

        This CL ports v8::MicrotaskQueue to CppGC (unified heap) behind the
        v8_cppgc_microtask_queue build flag and initiates deprecation of
        the non-CppGC MicrotaskQueue Api. The flag is currently disabled.

        TAG=agy
        CONV=4bb71540-afc9-4de3-8c14-b9a4b213d916
        Bug: 515252150
        Change-Id: Ic3e5b7be00bd6610f86c2b46844bb6b231324f90
        Reviewed-by: Michael Lippautz <mlip...@chromium.org>
        Commit-Queue: Igor Sheludko <ish...@chromium.org>
        Cr-Commit-Position: refs/heads/main@{#108233}
        Files:
        • M BUILD.bazel
        • M BUILD.gn
        • M gni/v8.gni
        • M include/DEPS
        • M include/v8-isolate.h
        • M include/v8-microtask-queue.h
        • M src/api/api.cc
        • M src/execution/execution.cc
        • M src/execution/isolate-data.h
        • M src/execution/isolate-inl.h
        • M src/execution/isolate.cc
        • M src/execution/isolate.h
        • M src/execution/microtask-queue.cc
        • M src/execution/microtask-queue.h
        • M src/heap/finalization-registry-cleanup-task.cc
        • M src/heap/heap.cc
        • M src/heap/heap.h
        • M src/heap/memory-reducer.cc
        • M src/snapshot/snapshot.cc
        • M src/snapshot/snapshot.h
        • M src/wasm/wasm-memory-map-descriptor.cc
        • M test/cctest/test-api.cc
        • M test/cctest/test-js-weak-refs.cc
        • M test/unittests/execution/microtask-queue-unittest.cc
        • M test/unittests/heap/gc-tracer-unittest.cc
        • M tools/gcmole/test-expectations.txt
        Change size: L
        Delta: 26 files changed, 296 insertions(+), 53 deletions(-)
        Branch: refs/heads/main
        Submit Requirements:
        • requirement satisfiedCode-Review: +1 by Michael Lippautz
        Open in Gerrit
        Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
        Gerrit-MessageType: merged
        Gerrit-Project: v8/v8
        Gerrit-Branch: main
        Gerrit-Change-Id: Ic3e5b7be00bd6610f86c2b46844bb6b231324f90
        Gerrit-Change-Number: 7956924
        Gerrit-PatchSet: 25
        Gerrit-Owner: Igor Sheludko <ish...@chromium.org>
        Gerrit-Reviewer: Igor Sheludko <ish...@chromium.org>
        Gerrit-Reviewer: Michael Lippautz <mlip...@chromium.org>
        open
        diffy
        satisfied_requirement
        Reply all
        Reply to author
        Forward
        0 new messages