This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/33434] [4.3 Regression] inlining miscompilation
- From: "rguenther at suse dot de" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 29 Oct 2007 13:12:36 -0000
- Subject: [Bug tree-optimization/33434] [4.3 Regression] inlining miscompilation
- References: <bug-33434-7958@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #13 from rguenther at suse dot de 2007-10-29 13:12 -------
Subject: Re: [4.3 Regression] inlining
miscompilation
On Mon, 29 Oct 2007, razya at il dot ibm dot com wrote:
> > ------- Comment #11 from rguenther at suse dot de 2007-10-29 12:14
> -------
> > Subject: Re: [4.3 Regression] inlining
> > miscompilation
> >
> > On Mon, 29 Oct 2007, razya at il dot ibm dot com wrote:
> >
> > > ------- Comment #10 from razya at il dot ibm dot com 2007-10-29
> > 12:08 -------
> > > (In reply to comment #6)
> > > > Hmm, I have a question about IPA CP, should it call cfgcleanup
> > also? It does
> > > > not fix the problem here but it seems like a good idea. I can
> > test a patch
> > > > which adds the cfgcleanup if it is a good idea.
> > >
> > > Hi Andrew
> > > IPA CP iterates the whole callgraph, so do you mean cfgcleanup for
> each
> > > function?
> >
> > Only for the clones it propagated constants into.
> >
> > Richard.
> >
>
> IPA CP basically replaces the uses of the (always consatnt)parameter
> with the constant.
> This can be further folded by the ssa-cp pass on the cloned method.
> So I'm not sure how necessary it is to have a control flow cleanup
> at this stage, but maybe I'm wrong...
Just because propagating the constants might result in
if (0)
...
which cfg_cleanup is able to remove (or if (1)).
Richard.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33434