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: Development plan *ducks* (Re: Loop optimizer issues)


> > >Hmm, the testcase does not appear to fail in my setup (i686-linux too 
> > >as
> > >in the PR that is quite weird).  If it fails for you can you please 
> > >just
> > >step into cp_cannot_inline_tree_fn and figure out why it fails in foo1?
> > >The patch I was fixing was actually different problem and is already in
> > >the tree.
> > 
> > 
> > cp_cannot_inline_tree_fn does not even get called.
> OK, I seee it is compiled with -O2.  I am enabling unit-at-a-time for
> testing at -O2 that is why I don't see it.  I am working on it.

It is kind of merging error - that hunk of code went in after I
propagated the test in question in my local tree that were safe and
because I tested mainly the -funit-at-a-time enabled (when disabled
there should not be functional changes except for such a stupid thinko
we see here).
I am regtesting the attached patch and will install it if passes as
obvious.

Thanks for pointing this out to me!
I am removing my -funit-at-a-time at -O2 default patch from my tree for
now so I won't miss similar cases in the future.
Honza

Tue Jul 29 19:20:37 CEST 2003  Jan Hubicka  <jh@suse.cz>
	* tree-inline.c (expand_call_inline): Always call inlinable_function_p
	in !unit-at-a-time mode.
Index: tree-inline.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/tree-inline.c,v
retrieving revision 1.70
diff -c -3 -p -r1.70 tree-inline.c
*** tree-inline.c	25 Jul 2003 09:52:26 -0000	1.70
--- tree-inline.c	29 Jul 2003 17:19:55 -0000
*************** expand_call_inline (tree *tp, int *walk_
*** 1164,1171 ****
  
    /* Don't try to inline functions that are not well-suited to
       inlining.  */
!   if (!DECL_SAVED_TREE (fn)
!       || (flag_unit_at_a_time && !cgraph_inline_p (id->current_decl, fn))
        || (!flag_unit_at_a_time && !inlinable_function_p (fn, id, 0)))
      {
        if (warn_inline && DECL_INLINE (fn) && !DID_INLINE_FUNC (fn)
--- 1164,1171 ----
  
    /* Don't try to inline functions that are not well-suited to
       inlining.  */
!   if ((flag_unit_at_a_time
!        && (!DECL_SAVED_TREE (fn) || !cgraph_inline_p (id->current_decl, fn)))
        || (!flag_unit_at_a_time && !inlinable_function_p (fn, id, 0)))
      {
        if (warn_inline && DECL_INLINE (fn) && !DID_INLINE_FUNC (fn)


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