Skip to content

WIP: lima/ppir build successors/predecessors lists at later stage

Vasily Khoruzhick requested to merge anarsoul/mesa:lima-ppir-later-succ into master

Currently we're updating successors/predecessors lists any time when we create a node. It proved to be cumbersome in lowering, this MR attempts to build these lists when lowering is done.

It's still WIP. Current progress:

  • Added ppir_node pointer into ppir_src. It will only be populated when source is SSA and will be NULL if it's a register. We'll create additional dependencies for registers (read after write deps) at later stage as well.
  • const lowering is rewritten. Consts are cloned so each const is guaranteed to have exactly one successor. Also const lowering is moved into its own pass.
  • Introduced accessors for ppir_node sources to avoid using switch/case everywhere.
Edited by Vasily Khoruzhick

Merge request reports