This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Inlining heuristics for C++
- To: mike stump <mrs at windriver dot com>
- Subject: Re: Inlining heuristics for C++
- From: Daniel Berlin <dan at cgsoftware dot com>
- Date: Tue, 10 Jul 2001 18:04:40 -0400
- Cc: dan at cgsoftware dot com, gcc at gcc dot gnu dot org
- References: <200107102153.OAA03212@kankakee.wrs.com>
mike stump <mrs@windriver.com> writes:
>> To: gcc@gcc.gnu.org
>> From: Daniel Berlin <dan@cgsoftware.com>
>> Date: Mon, 09 Jul 2001 21:46:59 -0400
>
>> Right now, they are horrific.
>
> You should have seen it before we limited the growth of the function
> being inlined into. :-(
>
> Anyway, would be nice if someone could take a pass through the
> literature and find the good stuff that describes when to do it and
> when not to and give us pointers to it.
I already did this.
Most of the literature is actually pretty concise.
You want to look at "Aggressive Inlining" (It's a desccription of
what HP's compilers do. I posted the author names in a seperate
message, it's frmo PLDI '97), "Training compilers for better inlining
Decisions" (Dean and Chambers, 1993), and "Fast and Effective
Procedure Inlining" (Waddell, Dybvig, 1997).
As soon as the basic block on trees stuff goes in, i'll implement
profile directed cloning and inlining, and we'll be just like all the
other commercial compilers.
--
"My neighbor has a circular driveway... He can't get out.
"-Steven Wright