This is the mail archive of the gcc@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: 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/


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