• Jakob Kummerow's avatar
    [wasm] Fix tier-up budget tracking for recursive calls · 15f372af
    Jakob Kummerow authored
    In the previous implementation, functions overwrote any budget
    decrements caused by recursive invocations of themselves, which
    could cause tier-up decisions for certain unlucky functions to
    get delayed unreasonably long.
    This patch avoids this by working with the on-instance value
    directly instead of caching it in a stack slot. That generates
    the same amount of Liftoff code as the status quo, but handles
    recursive functions properly.
    The "barista3" benchmark's peak performance improves by almost 20%.
    
    Bug: v8:12281
    Change-Id: I8b487a88da99c2d22e132f2cc72bdf36aa5f6e63
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3693710
    Commit-Queue: Jakob Kummerow <jkummerow@chromium.org>
    Reviewed-by: 's avatarClemens Backes <clemensb@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#81249}
    15f372af
Name
Last commit
Last update
..
liftoff-assembler-s390.h Loading commit data...