This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: attribute((leafify)) for 3.4
- From: Richard Guenther <rguenth at tat dot physik dot uni-tuebingen dot de>
- To: gcc at gcc dot gnu dot org
- Date: Mon, 27 Oct 2003 17:13:43 +0100 (CET)
- Subject: Re: attribute((leafify)) for 3.4
On Mon, 27 Oct 2003, Richard Guenther wrote:
> Hi!
>
> I tried to move attribute((leafify)) from 3.3 to 3.4 (see attached patch).
> I do this by marking nodes in the callgraph down from leafify functions as
> disregarding their inlining limits (which results in them being treated as
> always_inline functions). Unfortunately this doesnt really inline all of
> the callees of a leaf function as the patch for 3.3 does.
Btw. all these not inlined functions seem to come from the standard
library, such as
std::__uninitialized_fill_n_aux<>()
__gnu_cxx::__pool_alloc<(bool)1, (int)0>::allocate()
std::__uninitialized_copy_aux<>()
std::vector<Loc<(int)3>, std::allocator<Loc<(int)3> > >::operator=()
operator delete(void*)
operator delete[](void*)
are these somehow marked uninlinable? I.e. do they f.i. qualify as using
alloca or the like? I cant see anything obvious here - disabling pch
doesnt help, too.
Thanks again,
Richard.
--
Richard Guenther <richard dot guenther at uni-tuebingen dot de>
WWW: http://www.tat.physik.uni-tuebingen.de/~rguenth/