• Clemens Backes's avatar
    [wasm][debug] Fully tier up on Debugger.disable · 7637ed59
    Clemens Backes authored
    When the last debugger is disabled, we tier up the module to TurboFan.
    Doing this in the background creates problems with profiling, where the
    debugger is disabled before starting to profile, in order to guarantee
    profiling of top-tier code.
    
    Hence this CL changes the logic such that we only return from the
    {TierUpAllModulesPerIsolate} methods once tier up is complete. Since
    the DevTools frontend disables all debuggers before starting a profile,
    this will ensure that all new calls execute TurboFan code.
    Because of this change, the {TriggerRecompilation} method is renamed to
    {RecompileForTiering}.
    
    The test cases stay unchanged (do a busy wait until tier up is done),
    because in the multi-isolates tests it is not guaranteed that tier up is
    complete after disabling a single debugger.
    
    R=thibaudm@chromium.org
    
    Bug: v8:10580
    Change-Id: I75c4b97825f856f562cfa656c11293d3b964898b
    Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_rel
    Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_isolates_rel_ng
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2232539
    Commit-Queue: Clemens Backes <clemensb@chromium.org>
    Reviewed-by: 's avatarThibaud Michaud <thibaudm@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#68212}
    7637ed59
wasm-engine.cc 54.2 KB