This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Care to kill couple of SSA datastructures leaking out of outof-ssa pass.
> On Tue, Jun 28, 2005 at 01:00:06AM +0200, Jan Hubicka wrote:
> > > On Mon, Jun 27, 2005 at 06:29:16PM +0200, Jan Hubicka wrote:
> > > > * tree-optimize.c (exercute_free_datastructures):
> > > > Do not disband implicit edges; do not attempt to build insn list;
> > > > do not free cfg annotations.
> > > > (execute_free_cfg_annotations); Disband implicit edges here;
> > > > free cfg annotations here too.
> > > > (pass_free_cfg_annotations); New pass.
> > > > (init_tree_optimization_passes); Add pass_free_cfg_annotations.
> > >
> > > What is the point of this? You've placed the passes adjacent.
> >
> > When I go in and out SSA I need to kill the SSA but not CFG.
> >
> Which reminds me, are we going in and out of SSA during
> inter-procedural optimizations? The flow I sort of have in my
> head is:
>
> 1 create call graph
> 2 convert bodies to SSA form
> 3 do interprocedural tree optimizations
> 4 do intraprocedural tree optimizations
> 5 convert call graph to RTL
>
> I can see how that can be expensive, but it would mean that we
> only go out of SSA in step #5.
This is sort of flow we are heading for, but there memory issues and
some other problems to work on. On the tree-profiling branch I have the
code to go in/out of SSA before interprocedural optimizations that seems
to be rather easy and effective in some cases, so I would like to get it
in until we replace it by more complex beast...
Honza
>
>
> Diego.