This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [tree-ssa] live analysis on local static functions
- From: Jan Hubicka <hubicka at ucw dot cz>
- To: Richard Henderson <rth at redhat dot com>, Jan Hubicka <jh at suse dot cz>,Jan Hubicka <hubicka at ucw dot cz>, law at redhat dot com,Andrew MacLeod <amacleod at redhat dot com>,gcc mailing list <gcc at gcc dot gnu dot org>,Diego Novillo <dnovillo at redhat dot com>, gcc-patches at gcc dot gnu dot org
- Date: Thu, 16 Oct 2003 00:49:25 +0200
- Subject: Re: [tree-ssa] live analysis on local static functions
- References: <20031014180700.GO6212@kam.mff.cuni.cz> <200310151806.h9FI6QME027848@speedy.slc.redhat.com> <20031015203202.GD7266@atrey.karlin.mff.cuni.cz> <20031015213419.GP6212@kam.mff.cuni.cz> <20031015223402.GQ6212@kam.mff.cuni.cz> <20031015224436.GC28205@redhat.com>
> On Thu, Oct 16, 2003 at 12:34:02AM +0200, Jan Hubicka wrote:
> > There is no way to put same decl into the two lists, so I am not quite
> > sure what to do here. It is not good idea to always duplicate it
> > either as we will get multiple versions from multiple inline copies of
> > the same functions.
> > Ideas?
>
> Well, I'm fairly sure that debug info requires the decl to be
> duplicated as well. I think what is neeed, is that whenever
> cgraph and tree-ssa examine a variable to see if it is used,
cgraph is fine here as it uses hash tables on assembler name.
I am not sure what is proper fix on tree-ssa.
In case we decide that we can rely on fact that the variable is
not shared only for bind exprs, I think all we need is to add
DECL_ABSTRACT_ORIGIN check into that bind expr processing loop.
However that would still leave us with the reload misscompilation
comming from function inlining I am hitting when enable
-funit-at-a-time. Any idea what other can break on having two instances
of same static variable inside BIND_EXPR node?
Honza
> we must look at the abstract origin.
>
>
> r~