This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Current verify_cgraph checking failure
Hi Jan,
You replaced pass_apply_inline with pass_ipa_inline. pass_ipa_inline is
never called at -O0 and always_inline attribute is broken at -O0.
H.J.
On Thu, May 1, 2008 at 12:17 PM, H.J. Lu <hjl.tools@gmail.com> wrote:
> Hi Jan,
>
> Will it fix
>
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36100
>
> It is caused by the same change.
>
> Thanks.
>
>
> H.J.
>
>
> On Thu, May 1, 2008 at 12:14 PM, Jan Hubicka <hubicka@ucw.cz> wrote:
> > Hi,
> > my previous commit of passmanager patch broke bootstrap on many (all?)
> > targets with checking enabled. I am testing the following fix and will
> > commit it if it suceeds.
> >
> > I apologize for problems
> >
> > Index: passes.c
> > ===================================================================
> > --- passes.c (revision 134864)
> > +++ passes.c (working copy)
> > @@ -999,11 +999,15 @@ execute_todo (unsigned int flags)
> > to analyze side effects. The full removal is done just at the end
> > of IPA pass queue. */
> > if (flags & TODO_remove_functions)
> > - cgraph_remove_unreachable_nodes (true, dump_file);
> > + {
> > + gcc_assert (!cfun);
> > + cgraph_remove_unreachable_nodes (true, dump_file);
> > + }
> >
> > if ((flags & TODO_dump_cgraph)
> > && dump_file && !current_function_decl)
> > {
> > + gcc_assert (!cfun);
> > dump_cgraph (dump_file);
> > /* Flush the file. If verification fails, we won't be able to
> > close the file before aborting. */
> > @@ -1162,7 +1166,7 @@ execute_one_ipa_transform_pass (struct c
> > pass_init_dump_file (pass);
> >
> > /* Run pre-pass verification. */
> > - execute_todo (pass->todo_flags_start);
> > + execute_todo (ipa_pass->function_transform_todo_flags_start);
> >
> > /* If a timevar is present, start it. */
> > if (pass->tv_id)
> >
>