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: [tree-ssa] Non-transitive inlining plans


> On Tue, 9 Dec 2003, Jan Hubicka wrote:
> 
> > > This would also make some more explicit control over inlining possible,
> > > as the much anticipated __attribute__((leafify)) and/or common #pragmas
> >
> > Implementing leafify attribute is now very trivial - all you need is to
> > do recursive DFS walk over call edges and call cgraph_mark_inline_edge
> > on each edge you see with some sanity checking via
> > cgraph_recursive_inlining_p so you know that you are not caught in
> > infinite loop.
> 
> Yes, I thought so, too.
> 
> > > like
> > > #pragma inline
> > > to inline the following call, or
> > > #pragma inline complete
> > > as the equivalent to __attribute__((leafify)) at the call site. All these
> > > sort of pragmas can be found in HPC compilers.
> >
> > I didn't know this idea is already standarized somewhere (I was just
> > playing about it). I consider the pragma syntax somewhat disgusting, but
> > overall this is good feature to have and ineed it is easy to do.
> 
> Its easy to do, and it might make some people complain less about "inline"
> not meaning inline...

Well, in the case we want to HPC in longer run, we probably ought to
support this syntax.  Perhaps we can invent something more C-like as GNU
extension too (this seems to be scheme we do for other cases), however I
am not quite sure what it should be.  Any ideas?  We probably can't
attach attribute to the call expression...
> 
> > > Thanks for your continued work on improving inlining!
> > >
> > > I'll try to bring forward my __attribute__((leafify)) work to tree-ssa
> > > once this new inlining infrastructure has settled a bit.
> >
> > What was the conclusion about including this in official tree?  Was
> > there any oposition against the attribute?
> 
> There were no opposition, if I remember correctly, but there also were no
> real supporters for the idea.  All these manual inlining control is really
> special to the (small) group of HPC C++ community...
> 
> > If you do have problems with copyright assignments, I can simply re-do
> > the patch, it shall be few lines anyway now.
> 
> I don't have a copyright assignment.

Well, I am supporter now :), since it is so easy to do and I can easilly
imagine it is usefull feature to have.  I will try to prepare patch
later this week..

Honza
> 
> > I hope to have infrastructure in the form I wanted it to be.  Now I plan
> > to concentrate on new features :) (of course modulo new problems - the
> > change is intrusive and somewhat dificult)
> 
> Of course ;)
> 
> Thanks,
> 
> Richard.
> 
> --
> Richard Guenther <richard dot guenther at uni-tuebingen dot de>
> WWW: http://www.tat.physik.uni-tuebingen.de/~rguenth/


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