• Nikolaos Papaspyrou's avatar
    heap: Report full GC cycles when sweeping finishes · 9d6df33d
    Nikolaos Papaspyrou authored
    This CL moves the call to GCTracer::StopCycle for the full GC from
    Heap::CompleteSweeping full, which is called to force sweeping to
    finish, to GCTracer::NotifySweepingComplete, which is called as soon
    as sweeping finishes --- and symmetrically to a new method
    GCTracer::NotifyCppGCCompleted, which is called as soon as sweeping
    of the managed C++ heap finishes. In this way, a full GC cycle is
    reported as soon as sweeping is finished both for the V8 and the C++
    managed heap.
    
    The changes introduced in this CL are essentially a partial revert of
    https://crrev.com/c/3456563, fixed in such a way that when the full
    GC cycle is reported, the current tracer event will be the correct
    one corresponding to that cycle.
    
    Bug: v8:12503
    Bug: chromium:1154636
    Change-Id: Icea07cf35a9565994e798b0500e9da72cd95f9ac
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3497318Reviewed-by: 's avatarOmer Katz <omerkatz@chromium.org>
    Reviewed-by: 's avatarMichael Lippautz <mlippautz@chromium.org>
    Commit-Queue: Nikolaos Papaspyrou <nikolaos@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#79470}
    9d6df33d
gc-tracer.cc 69.1 KB