This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [tree-ssa] Copy propagation [patch]


On Fri, 2003-02-28 at 19:45, law at redhat dot com wrote:

> FWIW, you can do this essentially for free while building the SSA
> form, along with value numbering and simple copy propagations.  In
> addition to being effectively free, you also get to cut down on the
> amount of code all the other SSA opts ever see.
> 
Right.  I forgot to mention that.  I've still not decided whether I'll
do the dominator opts first or the rewriting out of SSA.  But it would
probably be a good idea to get in sync first.

One of the things we could probably do is the propagation of pointer
copies.  Once we are in SSA form, propagating pointers is a bit awkward
because we need to update their associated INDIRECT_REFs and rewrite the
VUSES for the statements that dereference them.

I also forgot to mention that since the regressions are only at runtime,
I did some compile time tests.  For insn-attrtab.c, copy propagation
simplifies the program quite a bit, cutting the time for schedule 2 in
half (compile time goes from 52 to 45 seconds).  Right now it's largely
meaningless, of course.  Many of those copies we are removing may end up
being re-added by the unSSA pass.


> Anyway, I'm damn close to having the double-gimplification problem
> nailed down.  There's a couple nits that I'm still tracking down, but
> it's real real close.
> 
Cool.


Diego.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]