summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--openwrt/target/linux/linux-2.4/patches/generic/006-extra_optimization.patch24
-rw-r--r--openwrt/target/linux/linux-2.6/patches/generic/004-extra_optimization.patch12
-rw-r--r--openwrt/toolchain/Config.in2
-rw-r--r--openwrt/toolchain/Config.in.devel4
4 files changed, 39 insertions, 3 deletions
diff --git a/openwrt/target/linux/linux-2.4/patches/generic/006-extra_optimization.patch b/openwrt/target/linux/linux-2.4/patches/generic/006-extra_optimization.patch
new file mode 100644
index 0000000000..5ae25cbfb7
--- /dev/null
+++ b/openwrt/target/linux/linux-2.4/patches/generic/006-extra_optimization.patch
@@ -0,0 +1,24 @@
+--- linux-2.4.30/Makefile 2005-10-23 20:52:56.813948000 +0200
++++ linux.dev/Makefile 2005-10-23 20:53:12.482927250 +0200
+@@ -89,6 +89,8 @@
+ # standard CFLAGS
+ #
+
++check_gcc = $(shell if $(CC) $(1) -S -o /dev/null -xc /dev/null > /dev/null 2>&1; then echo "$(1)"; else echo "$(2)"; fi)
++
+ CPPFLAGS := -D__KERNEL__ -I$(HPATH)
+
+ CFLAGS := $(CPPFLAGS) -Wall -Wstrict-prototypes -Wno-trigraphs -Os \
+@@ -100,6 +102,12 @@
+ endif
+ AFLAGS := -D__ASSEMBLY__ $(CPPFLAGS)
+
++CFLAGS += $(call check_gcc, -funit-at-a-time,)
++
++
++
++
++
+ #
+ # ROOT_DEV specifies the default root-device when making the image.
+ # This can be either FLOPPY, CURRENT, /dev/xxxx or empty, in which case
diff --git a/openwrt/target/linux/linux-2.6/patches/generic/004-extra_optimization.patch b/openwrt/target/linux/linux-2.6/patches/generic/004-extra_optimization.patch
new file mode 100644
index 0000000000..805d2f0ea9
--- /dev/null
+++ b/openwrt/target/linux/linux-2.6/patches/generic/004-extra_optimization.patch
@@ -0,0 +1,12 @@
+--- linux-2.6.12.5/Makefile.old 2005-10-23 22:56:29.017270000 +0200
++++ linux-2.6.12.5/Makefile 2005-10-23 22:57:23.226138500 +0200
+@@ -533,6 +533,9 @@
+ NOSTDINC_FLAGS += -nostdinc -isystem $(shell $(CC) -print-file-name=include)
+ CHECKFLAGS += $(NOSTDINC_FLAGS)
+
++# improve gcc optimization
++CFLAGS += $(call cc-option,-funit-at-a-time,)
++
+ # warn about C99 declaration after statement
+ CFLAGS += $(call cc-option,-Wdeclaration-after-statement,)
+
diff --git a/openwrt/toolchain/Config.in b/openwrt/toolchain/Config.in
index fd906f05f6..67a331f048 100644
--- a/openwrt/toolchain/Config.in
+++ b/openwrt/toolchain/Config.in
@@ -24,5 +24,5 @@ config BR2_SOFT_FLOAT
config BR2_TARGET_OPTIMIZATION
string
- default "-Os -pipe -mips32 -mtune=mips32"
+ default "-Os -pipe -mips32 -mtune=mips32 -funit-at-a-time"
diff --git a/openwrt/toolchain/Config.in.devel b/openwrt/toolchain/Config.in.devel
index c7ad48f7e4..2f2bbc426d 100644
--- a/openwrt/toolchain/Config.in.devel
+++ b/openwrt/toolchain/Config.in.devel
@@ -37,8 +37,8 @@ config BR2_SOFT_FLOAT
config BR2_TARGET_OPTIMIZATION
string "Target Optimizations"
- default "-Os -pipe -march=i486" if BR2_i386
- default "-Os -pipe -mips32 -mtune=mips32" if BR2_mipsel
+ default "-Os -pipe -march=i486 -funit-at-a-time" if BR2_i386
+ default "-Os -pipe -mips32 -mtune=mips32 -funit-at-a-time" if BR2_mipsel
help
Optimizations to use when building for the target host.