After a discussion with @enebo and @subbuss, I propose a new simple interface for controlling the execution of IR passes. Explanation:
In future, there are maybe more features required to linearize and resolve the dependencies on IR passes. However, this simple interface should then be extended by more sophisticated features and then iterate in the end on the Scheduler.
Add of interface for ordering CompilerPasses and executing them in co…
Simplified interface to be an Iterable on CompilerPass
Added method schedulePasses() to get a CompilerPassScheduler
runCompilerPasses() now uses new CompilerPassScheduler interface