By using statement lists in the entry blocks of region statements, instruction
level analyses also work on region statements.
We currently only model the entry block of a region statements, as this is
sufficient for most transformations the known-passes currently execute. Modeling
instructions in the presence of control flow (e.g. infinite loops) is left
out to not increase code complexity too much. It can be added when good use
cases are found.
[BlockGenerator] Generate entry block of regions from instruction lists
The adds code generation support for the previous commit.
Instead of passing std::vector by value, wouldn't it be better to pass an ArrayRef?