Skip to content

aco: use average use distances as spilling heuristic

Daniel Schürmann requested to merge daniel-schuermann/mesa:aco_spill2 into main

This MR replaces the MIN algorithm from the paper "Register Spilling and Live-Range Splitting for SSA-Form Programs" by Matthias Braun and Sebastian Hack by a simplified version. Key difference between this algorithm and the MIN-algorithm from the paper is the use of average use distances rather than next-use distances per instruction. As we decrement the number of remaining uses, the average use distances give an approximation of the next-use distances while being computationally and memory-wise less expensive.

based on !27774 (merged)

Edited by Daniel Schürmann

Merge request reports