From: Adrian Bunk <bunk@fs.tum.de>
To: Andrew Morton <akpm@osdl.org>
Cc: linux-kernel@vger.kernel.org
Subject: [2.6 patch] add a config option for -Os compilation
Date: Sun, 14 Sep 2003 14:16:56 +0200 [thread overview]
Message-ID: <20030914121655.GS27368@fs.tum.de> (raw)
The patch below adds a config option OPTIMIZE_FOR_SIZE for telling gcc
to use -Os instead of -O2. Besides this, it removes constructs on
architectures that had a -Os hardcoded in their Makefiles.
It works for me, I'm currently running a 2.6.0-test5 compild with this
option enabled and there are no obvious problems.
The last time I sent this to linux-kernel there were one positive and
zero negative reactions.
diffstat output:
Makefile | 8 +++++++-
arch/arm/Makefile | 2 --
arch/h8300/Makefile | 2 +-
init/Kconfig | 9 +++++++++
4 files changed, 17 insertions(+), 4 deletions(-)
Please apply
Adrian
--- linux-2.6.0-test5-Os/init/Kconfig.old 2003-09-13 17:30:50.000000000 +0200
+++ linux-2.6.0-test5-Os/init/Kconfig 2003-09-13 17:30:59.000000000 +0200
@@ -65,6 +65,15 @@
menu "General setup"
+config OPTIMIZE_FOR_SIZE
+ bool "Optimize for size" if EXPERIMENTAL
+ default n
+ help
+ Enabling this option will pass "-Os" instead of "-O2" to gcc
+ resulting in a smaller kernel.
+
+ If unsure, say N.
+
config SWAP
bool "Support for paging of anonymous memory"
depends on MMU
--- linux-2.6.0-test5-Os/Makefile.old 2003-09-13 17:30:50.000000000 +0200
+++ linux-2.6.0-test5-Os/Makefile 2003-09-13 17:30:59.000000000 +0200
@@ -223,7 +223,7 @@
NOSTDINC_FLAGS = -nostdinc -iwithprefix include
CPPFLAGS := -D__KERNEL__ -Iinclude
-CFLAGS := -Wall -Wstrict-prototypes -Wno-trigraphs -O2 \
+CFLAGS := -Wall -Wstrict-prototypes -Wno-trigraphs \
-fno-strict-aliasing -fno-common
AFLAGS := -D__ASSEMBLY__
@@ -370,6 +370,12 @@
# ---------------------------------------------------------------------------
+ifdef CONFIG_OPTIMIZE_FOR_SIZE
+CFLAGS += -Os
+else
+CFLAGS += -O2
+endif
+
ifndef CONFIG_FRAME_POINTER
CFLAGS += -fomit-frame-pointer
endif
--- linux-2.6.0-test5-Os/arch/arm/Makefile.old 2003-09-13 17:30:50.000000000 +0200
+++ linux-2.6.0-test5-Os/arch/arm/Makefile 2003-09-13 17:30:59.000000000 +0200
@@ -14,8 +14,6 @@
GZFLAGS :=-9
#CFLAGS +=-pipe
-CFLAGS :=$(CFLAGS:-O2=-Os)
-
ifeq ($(CONFIG_FRAME_POINTER),y)
CFLAGS +=-fno-omit-frame-pointer -mapcs -mno-sched-prolog
endif
--- linux-2.6.0-test5-Os/arch/h8300/Makefile.old 2003-09-13 17:30:50.000000000 +0200
+++ linux-2.6.0-test5-Os/arch/h8300/Makefile 2003-09-13 17:30:59.000000000 +0200
@@ -34,7 +34,7 @@
ldflags-$(CONFIG_CPU_H8S) := -mh8300self
CFLAGS += $(cflags-y)
-CFLAGS += -mint32 -fno-builtin -Os
+CFLAGS += -mint32 -fno-builtin
CFLAGS += -g
CFLAGS += -D__linux__
CFLAGS += -DUTS_SYSNAME=\"uClinux\"
next reply other threads:[~2003-09-14 12:17 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-09-14 12:16 Adrian Bunk [this message]
2003-09-14 12:33 ` Russell King
2003-09-14 13:21 ` Adrian Bunk
2003-09-14 14:52 ` Russell King
2003-09-25 14:38 ` Adrian Bunk
2003-09-25 18:11 ` Sam Ravnborg
2003-09-26 11:44 ` Russell King
2003-09-26 22:36 ` Adrian Bunk
2003-09-14 13:53 ` Wade
2003-09-14 14:57 ` Alan Cox
2003-09-15 15:15 ` Martin J. Bligh
2003-10-15 22:50 Adrian Bunk
2003-10-15 23:12 ` Andrew Morton
2003-10-15 23:24 ` Adrian Bunk
2003-10-15 23:52 ` Andrew Morton
2003-10-18 10:21 ` Adrian Bunk
2003-10-18 15:45 ` Martin J. Bligh
2003-10-18 17:24 ` Andrew Morton
2003-10-18 17:44 ` Adrian Bunk
2003-10-18 17:57 ` Andrew Morton
2003-10-19 15:43 ` Martin J. Bligh
2003-10-19 15:59 ` Adrian Bunk
2003-10-19 16:25 ` Arjan van de Ven
2003-10-19 18:32 ` Andrew Morton
2003-10-20 14:27 ` Martin J. Bligh
2003-10-21 8:22 ` Jan-Benedict Glaw
[not found] <H2MN.3cm.7@gated-at.bofh.it>
[not found] ` <H366.3IC.9@gated-at.bofh.it>
[not found] ` <H3fO.3VO.13@gated-at.bofh.it>
[not found] ` <H3IO.4yt.9@gated-at.bofh.it>
[not found] ` <HWvz.5PI.9@gated-at.bofh.it>
[not found] ` <I1EP.5QO.1@gated-at.bofh.it>
2003-10-18 17:10 ` Ihar 'Philips' Filipau
[not found] ` <20031019113743.GO12423@fs.tum.de>
2003-10-19 14:15 ` Ihar 'Philips' Filipau
2003-10-19 15:40 ` Martin J. Bligh
[not found] <20031015225055.GS17986@fs.tum.de.suse.lists.linux.kernel>
[not found] ` <20031015161251.7de440ab.akpm@osdl.org.suse.lists.linux.kernel>
[not found] ` <20031015232440.GU17986@fs.tum.de.suse.lists.linux.kernel>
[not found] ` <20031015165205.0cc40606.akpm@osdl.org.suse.lists.linux.kernel>
[not found] ` <20031018102127.GE12423@fs.tum.de.suse.lists.linux.kernel>
[not found] ` <649730000.1066491920@[10.10.2.4].suse.lists.linux.kernel>
[not found] ` <20031018102402.3576af6c.akpm@osdl.org.suse.lists.linux.kernel>
[not found] ` <20031018174434.GJ12423@fs.tum.de.suse.lists.linux.kernel>
[not found] ` <20031018105733.380ea8d2.akpm@osdl.org.suse.lists.linux.kernel>
2003-10-18 19:19 ` Andi Kleen
2003-10-19 13:56 ` Ingo Oeser
2003-10-19 14:09 ` Michael Buesch
2003-10-19 17:37 ` Sam Ravnborg
[not found] <I2Ue.7PG.3@gated-at.bofh.it>
[not found] ` <I2Ue.7PG.5@gated-at.bofh.it>
[not found] ` <I2Ue.7PG.7@gated-at.bofh.it>
[not found] ` <I2Ue.7PG.9@gated-at.bofh.it>
[not found] ` <I2Ue.7PG.11@gated-at.bofh.it>
[not found] ` <I2Ue.7PG.13@gated-at.bofh.it>
[not found] ` <I2Ue.7PG.1@gated-at.bofh.it>
[not found] ` <ImzK.4TR.25@gated-at.bofh.it>
[not found] ` <ImzK.4TR.23@gated-at.bofh.it>
[not found] ` <InYQ.6OJ.21@gated-at.bofh.it>
2003-10-19 16:05 ` Ihar 'Philips' Filipau
2003-10-19 16:14 ` Wichert Akkerman
2003-10-19 16:31 ` Valdis.Kletnieks
2003-10-19 16:57 ` Maciej Zenczykowski
2003-10-19 18:00 ` Valdis.Kletnieks
[not found] <Ioi6.7kG.15@gated-at.bofh.it>
[not found] ` <Ioi6.7kG.17@gated-at.bofh.it>
[not found] ` <Ioi6.7kG.19@gated-at.bofh.it>
[not found] ` <Ioi6.7kG.21@gated-at.bofh.it>
[not found] ` <Ioi6.7kG.23@gated-at.bofh.it>
[not found] ` <Ioi6.7kG.25@gated-at.bofh.it>
[not found] ` <Ioi6.7kG.27@gated-at.bofh.it>
[not found] ` <Ioi6.7kG.29@gated-at.bofh.it>
[not found] ` <Ioi6.7kG.31@gated-at.bofh.it>
[not found] ` <Ioi6.7kG.11@gated-at.bofh.it>
[not found] ` <IorM.7wQ.11@gated-at.bofh.it>
2003-10-19 16:55 ` Ihar 'Philips' Filipau
[not found] <Ip4B.8lT.23@gated-at.bofh.it>
[not found] ` <Ip4B.8lT.25@gated-at.bofh.it>
[not found] ` <Ip4B.8lT.27@gated-at.bofh.it>
[not found] ` <Ip4B.8lT.29@gated-at.bofh.it>
[not found] ` <Ip4B.8lT.31@gated-at.bofh.it>
[not found] ` <Ip4B.8lT.33@gated-at.bofh.it>
[not found] ` <Ip4B.8lT.35@gated-at.bofh.it>
[not found] ` <Ip4B.8lT.37@gated-at.bofh.it>
[not found] ` <Ip4B.8lT.39@gated-at.bofh.it>
[not found] ` <Ip4B.8lT.41@gated-at.bofh.it>
[not found] ` <Ip4B.8lT.43@gated-at.bofh.it>
[not found] ` <Ip4B.8lT.21@gated-at.bofh.it>
2003-10-19 17:04 ` Ihar 'Philips' Filipau
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20030914121655.GS27368@fs.tum.de \
--to=bunk@fs.tum.de \
--cc=akpm@osdl.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome