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: IPA merge: make ipa-type-escape and ipa-pure-const deal with SSA form


> On 12/28/06, Jan Hubicka <jh@suse.cz> wrote:
> >> On 12/28/06, Jan Hubicka <jh@suse.cz> wrote:
> >> >Hi,
> >> >this patch makes ipe-pure-const and ipa-type-escape to "tolerate" (ie 
> >work
> >> >on
> >> >but not take advantage of) the SSA form. I've bootstrapped/regtested the
> >> >change
> >> >on x86_64-linux with IPA-SSA and running routine bootstrap/regtest on 
> >clean
> >> >mainline i686-linux now. Will commit it as obvious once testing 
> >converge.
> >>
> >> Uh, but your patch seems wrong.
> >> How can a type escape through an ssa_name, which is purely local to a
> >> function (IE non-escaping)?
> >Hehe, it is what you or Kenny told me to do about 2 years ago ;)
> >Here is updated patch I am re-testing now.  Does it look better?
> 
> Sigh now i wonder what happens when we have bad casts to ssa variables
> and then copy the bad-casted variable to a global/static.
> Ugh.
> You may have been right the first time.
Looks like we mutually convinced each other ;)
OK, to defend your original position, all the other code paths (except
for the malloc stuff included in this patch) leads to
has_proper_scope_for_analysis and that one does:
  /* Do not care about a local automatic that is not static.  */
    if (!TREE_STATIC (t) && !DECL_EXTERNAL (t)) 
        return;
So I guess the later patch is sufficient and since it lets me progress,
I will commit it today (assuming my last testing of IPA-SSA converge)
and we can worry about the local casts incrementally.

Honza


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