dcbaker / meson-plus-plus

An experimental and incomplete implementation of Meson in C++, for solving Meson's bootstrapping issue.
Apache License 2.0
45 stars 7 forks source link

MIR: track blocks parents as well as their children #50

Closed dcbaker closed 2 years ago

dcbaker commented 2 years ago

This is necessary for cross block optimizations to work, especially branch joining. Without this the joining pass could easily try to join two blocks where the child has two parents. This is additionally helpful in allowing us to do reverse traversals of the IR