Re: [patch] x86: phase out forced inlining

Andrew Morton
2008-03-04T06:43:16Z

On Mon, 3 Mar 2008 13:13:35 +0100 Ingo Molnar <mingo@elte.hu> wrote:

> +config OPTIMIZE_INLINING
> + bool "Allow gcc to uninline functions marked 'inline'"
> + default y
> + help
> + This option determines if the kernel forces gcc to inline the functions
> + developers have marked 'inline'. Doing so takes away freedom from gcc to
> + do what it thinks is best, which is desirable for the gcc 3.x series of
> + compilers. The gcc 4.x series have a rewritten inlining algorithm and
> + disabling this option will generate a smaller kernel there. Hopefully
> + this algorithm is so good that allowing gcc4 to make the decision can
> + become the default in the future, until then this option is there to
> + test gcc for this.

urgh. This will cause whatever problem
4507a6a59cfc6997e532cd812a8bd244181e6205 fixed five years ago to resurface
for incautious gcc-3.x users.

I'd suggest that this

> +#ifndef CONFIG_OPTIMIZE_INLINING

become something along the lines of

> +#ifndef CONFIG_OPTIMIZE_INLINING && (__GNUC__ > 3)

It would be nice to be able to feed the gcc version into the Kconfig logic,
really..