-
Jakob Kummerow authored
This is a reland of commit 15f372af Change since revert: TSan fix for tier-up budget reset. Original change's description: > [wasm] Fix tier-up budget tracking for recursive calls > > 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: Clemens Backes <clemensb@chromium.org> > Cr-Commit-Position: refs/heads/main@{#81249} Bug: v8:12281,v8:12984 Change-Id: Ia6ce776848dc86617546ec514660c9a840484cb1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3716479Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Auto-Submit: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#81281}
6f398553