-
Stephan Herhut authored
This change lands a change to the register allocator. Other than classical linear scan, we now take control flow events into account when deciding spill descisions. The basic idea is to restore the state of a predecessor on entry of a successor. In the case of multiple predecessors, we use heuristics to compute the new state based on the predecessors. The main addition to the machinery is to support unspilling live ranges and to undo live range splitting in certain cases. Currently, disabled behind a flag. Change-Id: I37a70c948be826a90d8b806a52856ad81f475573 Reviewed-on: https://chromium-review.googlesource.com/c/1426129 Commit-Queue: Stephan Herhut <herhut@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#59195}
66771f42