On Sun, 2005-05-08 at 02:52 +0200, Markus F.X.J. Oberhumer
wrote:> Put simply, the inliner is too greedy and nice little leaf functions
> suddenly run out of CPU registers. Even gcc 3.4 with -funit-at-a-time
> started inlining too much, but at least I can tell gcc where to stop.
> This whole noinline issue may be somewhat X86 specific, though.
This is where a register allocator that splits live ranges will be most
beneficial. It would not be that hard to leverage the LiveInterval
analysis to implement second-chance bin-packing (a linear scan variant
that performs on the fly live range splitting), but unfortunately noone
has time or interest to work on something like that at this time.
--
Alkis