From 6f4e700acd737903c12fee0f0790f84c39a28a19 Mon Sep 17 00:00:00 2001 From: Felix Fietkau 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 SVN-Revision: 17679 --- .../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 d6866899c3..8827ed0c3d 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 018e673e20..0b5174cbbd 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 333acb612b..e0ba51598e 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.34.1