summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKirill Smelkov <kirr@mns.spb.ru>2012-11-02 15:41:01 +0400
committerLinus Torvalds <torvalds@linux-foundation.org>2013-01-16 12:42:57 -0800
commit3a55fb0d9fe8e2f4594329edd58c5fd6f35a99dd (patch)
tree7198833c5bc3e7aac4b2a23282c2c4a09eae85d2
parentfbfc23ef905e41cbf621031a3d560a55a010dd54 (diff)
downloadlinux-3a55fb0d9fe8e2f4594329edd58c5fd6f35a99dd.tar.gz
linux-3a55fb0d9fe8e2f4594329edd58c5fd6f35a99dd.tar.xz
Tell the world we gave up on pushing CC_OPTIMIZE_FOR_SIZE
In commit 281dc5c5ec0f ("Give up on pushing CC_OPTIMIZE_FOR_SIZE") we already changed the actual default value, but the help-text still suggested 'y'. Fix the help text too, for all the same reasons. Sadly, -Os keeps on generating some very suboptimal code for certain cases, to the point where any I$ miss upside is swamped by the downside. The main ones are: - using "rep movsb" for memcpy, even on CPU's where that is horrendously bad for performance. - not honoring branch prediction information, so any I$ footprint you win from smaller code, you lose from less code density in the I$. - using divide instructions when that is very expensive. Signed-off-by: Kirill Smelkov <kirr@mns.spb.ru> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--init/Kconfig2
1 files changed, 1 insertions, 1 deletions
diff --git a/init/Kconfig b/init/Kconfig
index 7d30240e5bf..be8b7f55312 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -1182,7 +1182,7 @@ config CC_OPTIMIZE_FOR_SIZE
Enabling this option will pass "-Os" instead of "-O2" to gcc
resulting in a smaller kernel.
- If unsure, say Y.
+ If unsure, say N.
config SYSCTL
bool