This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: __attribute__((leafify))
- From: Richard Guenther <rguenth at tat dot physik dot uni-tuebingen dot de>
- To: Gabriel Dos Reis <gdr at integrable-solutions dot net>
- Cc: "Michael S. Zick" <mszick at goquest dot com>, Richard Guenther <rguenth at tat dot physik dot uni-tuebingen dot de>, "Joseph S. Myers" <jsm28 at cam dot ac dot uk>, <gcc at gcc dot gnu dot org>, Jan Hubicka <jh at suse dot cz>
- Date: Fri, 6 Jun 2003 21:43:30 +0200 (CEST)
- Subject: Re: __attribute__((leafify))
On 6 Jun 2003, Gabriel Dos Reis wrote:
> "Michael S. Zick" <mszick@goquest.com> writes:
>
> [...]
>
> | Perhaps an attribute on the function definitation - not to effect in-lining:
> | __attribute__((keep_tree))
>
> I think we should be cautious about attributes multiplication. If
> the inlining machinery is defective about inlining leaf functions I'm
> not sure we should introdure yet another attribute that exposes the
> compiler internal details at the user program level.
Yes, I also dont like this suggestion. I think there is everything in
place with the global CFG of unit-at-a-time, but I'm not able to find out
where to put the __attribute__((leafify)) machinery in there.
That __attribute__((leafify)) workes for me is probably due to using C++
and all functions I want to be inlined are markes as such because they're
methods defined inside the class bodies.
I really would like that someone else looks at how to integrate a leafify
attribute with the unit-at-a-time framework, as I neither have a copyright
assignment in place, nor enough time to dig into this myself. Also I
consider better inlining very important for 3.4 - in fact, I'm going to
submit yet another PR about the deficiencies of the current state.
Thanks anyway,
Richard.