19e0c52837
Rookie mistake... The liveness algorithm propagates information from later blocks to earlier blocks so if you run bottom-up it's exactly two passes when there aren't loops. If you run top-down, it's quadratic in the number of blocks. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24998>