[LLVMdev] RFC: Staging area proposal for new backends

dag at cray.com dag at cray.com
Tue Jul 24 14:02:18 PDT 2012


Chris Lattner <clattner at apple.com> writes:

> FWIW, I really like this idea or concept, but we have to be careful
> for it to be done right. This is also more general than just backends:
> experimental optimizers and runtime libraries can also benefit from
> something like this.

Absolutely.  In particular:

> In the past, we've had some general infrastructure features get denied
> because they didn't relate to any targets in-tree.

The same has been true for some proposed analysis and optimization
passes.  I would love to see a way to work on "experimental" passes
against trunk with the ability to move infrastructure pieces to
production state while still working on the pass.

Right now, there's a chicken-and-egg problem.  Can I get infrastructure
changes through review if the pass that uses them isn't ready and
therefore isn't visible to other developers?  Given the desire for
incremental development, how do I get a pass approved without the needed
infrastructure already in place?

A staging process for passes analogous to the proposal for backends
would solve that problem, I think.  It also gives the pass writers a
more concrete idea of the requirements to move into production.

                            -Dave



More information about the llvm-dev mailing list