Messages in this thread | | | Date | Thu, 29 Dec 2005 20:14:19 +0100 | From | Adrian Bunk <> | Subject | Re: [patch 00/2] improve .text size on gcc 4.0 and newer compilers |
| |
On Thu, Dec 29, 2005 at 10:42:41AM -0500, Jakub Jelinek wrote: > On Thu, Dec 29, 2005 at 04:35:29PM +0100, Adrian Bunk wrote: > > > You describe a nice utopia where only the most essential functions are > > > inlined.. but so far that hasn't worked out all that well ;) Turning > > > "inline" back into the hint to the compiler that the C language makes it > > > is maybe a cop-out, but it's a sustainable approach at least. > > >... > > > > But shouldn't nowadays gcc be able to know best even without an "inline" > > hint? > > Only for static functions (and in -funit-at-a-time mode).
I'm assuming -funit-at-a-time mode. Currently it's disabled on i386, but this will change in the medium-term future.
> Anything else would require full IMA over the whole kernel and we aren't > there yet. So inline hints are useful. But most of the inline keywords > in the kernel really should be that, hints, because e.g. while it can be
Are there (on !alpha) any places in the kernel where a function is inline but not static, and this is wanted?
> beneficial to inline something on one arch, it may be not beneficial on > another arch, depending on cache sizes, number of general registers > available to the compiler, register preassure, speed of the call/ret > pair, calling convention and many other factors.
Does gcc really need hints when the functions are static?
> Jakub
cu Adrian
--
"Is there not promise of rain?" Ling Tan asked suddenly out of the darkness. There had been need of rain for many days. "Only a promise," Lao Er said. Pearl S. Buck - Dragon Seed
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |