This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
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/