From e44638b110a30579c220b4d855981959830d8958 Mon Sep 17 00:00:00 2001 From: nbd Date: Tue, 22 Sep 2009 18:00:35 +0000 Subject: [PATCH] when using -O2 instead of -Os, get rid of the two optimizations that are causing most of the extra bloat. brings kernel size close to the -Os size again git-svn-id: svn://svn.openwrt.org/openwrt/trunk@17679 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../patches-2.6.28/004-extra_optimization.patch | 9 +++++++++ .../patches-2.6.30/004-extra_optimization.patch | 9 +++++++++ .../patches-2.6.31/004-extra_optimization.patch | 9 +++++++++ 3 files changed, 27 insertions(+) diff --git a/target/linux/generic-2.6/patches-2.6.28/004-extra_optimization.patch b/target/linux/generic-2.6/patches-2.6.28/004-extra_optimization.patch index d6866899c..8827ed0c3 100644 --- a/target/linux/generic-2.6/patches-2.6.28/004-extra_optimization.patch +++ b/target/linux/generic-2.6/patches-2.6.28/004-extra_optimization.patch @@ -1,5 +1,14 @@ --- a/Makefile +++ b/Makefile +@@ -512,7 +512,7 @@ all: vmlinux + ifdef CONFIG_CC_OPTIMIZE_FOR_SIZE + KBUILD_CFLAGS += -Os + else +-KBUILD_CFLAGS += -O2 ++KBUILD_CFLAGS += -O2 -fno-reorder-blocks -fno-tree-ch + endif + + include $(srctree)/arch/$(SRCARCH)/Makefile @@ -549,6 +549,9 @@ endif NOSTDINC_FLAGS += -nostdinc -isystem $(shell $(CC) -print-file-name=include) CHECKFLAGS += $(NOSTDINC_FLAGS) diff --git a/target/linux/generic-2.6/patches-2.6.30/004-extra_optimization.patch b/target/linux/generic-2.6/patches-2.6.30/004-extra_optimization.patch index 018e673e2..0b5174cbb 100644 --- a/target/linux/generic-2.6/patches-2.6.30/004-extra_optimization.patch +++ b/target/linux/generic-2.6/patches-2.6.30/004-extra_optimization.patch @@ -1,5 +1,14 @@ --- a/Makefile +++ b/Makefile +@@ -529,7 +529,7 @@ all: vmlinux + ifdef CONFIG_CC_OPTIMIZE_FOR_SIZE + KBUILD_CFLAGS += -Os + else +-KBUILD_CFLAGS += -O2 ++KBUILD_CFLAGS += -O2 -fno-reorder-blocks -fno-tree-ch + endif + + include $(srctree)/arch/$(SRCARCH)/Makefile @@ -567,6 +567,9 @@ endif NOSTDINC_FLAGS += -nostdinc -isystem $(shell $(CC) -print-file-name=include) CHECKFLAGS += $(NOSTDINC_FLAGS) diff --git a/target/linux/generic-2.6/patches-2.6.31/004-extra_optimization.patch b/target/linux/generic-2.6/patches-2.6.31/004-extra_optimization.patch index 333acb612..e0ba51598 100644 --- a/target/linux/generic-2.6/patches-2.6.31/004-extra_optimization.patch +++ b/target/linux/generic-2.6/patches-2.6.31/004-extra_optimization.patch @@ -1,5 +1,14 @@ --- a/Makefile +++ b/Makefile +@@ -521,7 +521,7 @@ all: vmlinux + ifdef CONFIG_CC_OPTIMIZE_FOR_SIZE + KBUILD_CFLAGS += -Os + else +-KBUILD_CFLAGS += -O2 ++KBUILD_CFLAGS += -O2 -fno-reorder-blocks -fno-tree-ch + endif + + include $(srctree)/arch/$(SRCARCH)/Makefile @@ -559,6 +559,9 @@ endif NOSTDINC_FLAGS += -nostdinc -isystem $(shell $(CC) -print-file-name=include) CHECKFLAGS += $(NOSTDINC_FLAGS) -- 2.20.1