This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: [tree-ssa] AST optimizer in C++?
- From: Chris Lattner <sabre at nondot dot org>
- To: Diego Novillo <dnovillo at redhat dot com>
- Cc: Pop Sébastian <pop at gauvain dot u-strasbg dot fr>,<gcc at gcc dot gnu dot org>
- Date: Mon, 26 Aug 2002 10:42:32 -0500 (CDT)
- Subject: Re: [tree-ssa] AST optimizer in C++?
On Sun, 25 Aug 2002, Diego Novillo wrote:
> On Sun, 25 Aug 2002, Diego Novillo wrote:
> > On Sun, 25 Aug 2002, Chris Lattner wrote:
> > > Is there a reason that you'd like to have a SIMPLE form that is not in
> > > SSA?
> > Only that nobody has bothered implementing it. We'd need to
> Well, that and the fact that by encoding SSA into the IR you're
> now forcing every transformation to know about SSA. Not all of
> them do. In principle I don't see why dataflow and IR should be
> tied to each other.
In practice, I have found that it is _very_ easy to extend traditional
transformations to use SSA. The one exception I've found is the SSA-PRE
algorithm, which you need to wrap your mind around before it makes
complete sense. Once done, however, it's not a huge deal to implement it.
IMHO, the advantages of using SSA and having it available (for both
convenience, optimizer efficiency, and more powerful algorithms than data
flow can provide at times) greatly out-weigh the disadvantages of having
to update it.
What kinds of transformations do you have in mind that would be
inconvenient to implement in SSA form?
-Chris
http://llvm.cs.uiuc.edu/
http://www.nondot.org/~sabre/Projects/