-
Clemens Backes authored
Huge functions can take a really long time (several minutes) in register allocation. This is caused by a big number of virtual registers combined with a big number of blocks. We can avoid such long-running register allocation by falling back to the mid-tier register allocation if we detect a huge number of virtual registers. Note that this is mostly relevant for bigger WebAssembly modules, but we implement it as a general TurboFan flag. The flag is off by default for now, since there seem to be bugs lurking in the mid-tier register allocator. Once those are fixed, we can stage it behind --future and then ship it. R=mslekova@chromium.org CC=thibaudm@chromium.org Bug: v8:12320 Change-Id: Iff14de456c2b3a91ee2b2b12221295dd56b69463 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3231336Reviewed-by: Maya Lekova <mslekova@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#77461}
184213d3