diff options
author | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2012-12-28 19:17:19 +0000 |
---|---|---|
committer | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2012-12-28 19:17:19 +0000 |
commit | d53eec088e43eca8161c16adb56dde954141e2d5 (patch) | |
tree | c36a6336a7c6810b0d1c3a0d1c7163f015824c8d | |
parent | 4db876cff1f4570da0d81b4913472c990453313d (diff) |
mips: use -mno-branch-likely for kernel and userspace, saves ~11k kernel size after lzma and ~12k squashfs size in the default configuration
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34909 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r-- | include/target.mk | 2 | ||||
-rw-r--r-- | target/linux/ar71xx/Makefile | 2 | ||||
-rw-r--r-- | target/linux/generic/patches-3.6/302-mips_no_branch_likely.patch | 11 | ||||
-rw-r--r-- | target/linux/generic/patches-3.6/305-mips_module_reloc.patch | 2 | ||||
-rw-r--r-- | target/linux/generic/patches-3.7/302-mips_no_branch_likely.patch | 11 | ||||
-rw-r--r-- | target/linux/lantiq/Makefile | 2 | ||||
-rw-r--r-- | target/linux/ramips/Makefile | 2 |
7 files changed, 27 insertions, 5 deletions
diff --git a/include/target.mk b/include/target.mk index 61cdf0640..4f31aaf17 100644 --- a/include/target.mk +++ b/include/target.mk @@ -193,7 +193,7 @@ ifeq ($(DUMP),1) DEFAULT_CFLAGS_i386=-O2 -pipe -march=i486 -fno-caller-saves DEFAULT_CFLAGS_x86_64=-O2 -pipe -march=athlon64 -fno-caller-saves DEFAULT_CFLAGS_m68k=-Os -pipe -mcfv4e -fno-caller-saves - DEFAULT_CFLAGS_mips=-Os -pipe -mips32 -mtune=mips32 -fno-caller-saves + DEFAULT_CFLAGS_mips=-Os -pipe -mips32 -mtune=mips32 -fno-caller-saves -mno-branch-likely DEFAULT_CFLAGS_mipsel=$(DEFAULT_CFLAGS_mips) DEFAULT_CFLAGS_mips64=-Os -pipe -mips64 -mtune=mips64 -mabi=64 -fno-caller-saves DEFAULT_CFLAGS_mips64el=$(DEFAULT_CFLAGS_mips64) diff --git a/target/linux/ar71xx/Makefile b/target/linux/ar71xx/Makefile index 73d90e37b..fe8826f07 100644 --- a/target/linux/ar71xx/Makefile +++ b/target/linux/ar71xx/Makefile @@ -10,7 +10,7 @@ ARCH:=mips BOARD:=ar71xx BOARDNAME:=Atheros AR7xxx/AR9xxx FEATURES:=squashfs jffs2 targz -CFLAGS:=-Os -pipe -mips32r2 -mtune=mips32r2 -fno-caller-saves +CFLAGS:=-Os -pipe -mips32r2 -mtune=mips32r2 -fno-caller-saves -mno-branch-likely SUBTARGETS:=generic nand LINUX_VERSION:=3.6.11 diff --git a/target/linux/generic/patches-3.6/302-mips_no_branch_likely.patch b/target/linux/generic/patches-3.6/302-mips_no_branch_likely.patch new file mode 100644 index 000000000..1da954005 --- /dev/null +++ b/target/linux/generic/patches-3.6/302-mips_no_branch_likely.patch @@ -0,0 +1,11 @@ +--- a/arch/mips/Makefile ++++ b/arch/mips/Makefile +@@ -87,7 +87,7 @@ all-$(CONFIG_SYS_SUPPORTS_ZBOOT)+= vmlin + # machines may also. Since BFD is incredibly buggy with respect to + # crossformat linking we rely on the elf2ecoff tool for format conversion. + # +-cflags-y += -G 0 -mno-abicalls -fno-pic -pipe ++cflags-y += -G 0 -mno-abicalls -fno-pic -pipe -mno-branch-likely + cflags-y += -msoft-float + LDFLAGS_vmlinux += -G 0 -static -n -nostdlib + KBUILD_AFLAGS_MODULE += -mlong-calls diff --git a/target/linux/generic/patches-3.6/305-mips_module_reloc.patch b/target/linux/generic/patches-3.6/305-mips_module_reloc.patch index fea4a0012..a2738dca7 100644 --- a/target/linux/generic/patches-3.6/305-mips_module_reloc.patch +++ b/target/linux/generic/patches-3.6/305-mips_module_reloc.patch @@ -1,7 +1,7 @@ --- a/arch/mips/Makefile +++ b/arch/mips/Makefile @@ -90,8 +90,8 @@ all-$(CONFIG_SYS_SUPPORTS_ZBOOT)+= vmlin - cflags-y += -G 0 -mno-abicalls -fno-pic -pipe + cflags-y += -G 0 -mno-abicalls -fno-pic -pipe -mno-branch-likely cflags-y += -msoft-float LDFLAGS_vmlinux += -G 0 -static -n -nostdlib -KBUILD_AFLAGS_MODULE += -mlong-calls diff --git a/target/linux/generic/patches-3.7/302-mips_no_branch_likely.patch b/target/linux/generic/patches-3.7/302-mips_no_branch_likely.patch new file mode 100644 index 000000000..1da954005 --- /dev/null +++ b/target/linux/generic/patches-3.7/302-mips_no_branch_likely.patch @@ -0,0 +1,11 @@ +--- a/arch/mips/Makefile ++++ b/arch/mips/Makefile +@@ -87,7 +87,7 @@ all-$(CONFIG_SYS_SUPPORTS_ZBOOT)+= vmlin + # machines may also. Since BFD is incredibly buggy with respect to + # crossformat linking we rely on the elf2ecoff tool for format conversion. + # +-cflags-y += -G 0 -mno-abicalls -fno-pic -pipe ++cflags-y += -G 0 -mno-abicalls -fno-pic -pipe -mno-branch-likely + cflags-y += -msoft-float + LDFLAGS_vmlinux += -G 0 -static -n -nostdlib + KBUILD_AFLAGS_MODULE += -mlong-calls diff --git a/target/linux/lantiq/Makefile b/target/linux/lantiq/Makefile index d0eb2df1b..84958df7f 100644 --- a/target/linux/lantiq/Makefile +++ b/target/linux/lantiq/Makefile @@ -13,7 +13,7 @@ SUBTARGETS=xway ase falcon LINUX_VERSION:=3.7.1 -CFLAGS=-Os -pipe -mips32r2 -mtune=mips32r2 -fno-caller-saves +CFLAGS=-Os -pipe -mips32r2 -mtune=mips32r2 -fno-caller-saves -mno-branch-likely define Target/Description Build firmware images for Lantiq SoC diff --git a/target/linux/ramips/Makefile b/target/linux/ramips/Makefile index e165da6f2..ba00c9268 100644 --- a/target/linux/ramips/Makefile +++ b/target/linux/ramips/Makefile @@ -10,7 +10,7 @@ ARCH:=mipsel BOARD:=ramips BOARDNAME:=Ralink RT288x/RT3xxx SUBTARGETS:=rt288x rt305x rt3883 -CFLAGS:=-Os -pipe -mips32r2 -mtune=mips32r2 -fno-caller-saves +CFLAGS:=-Os -pipe -mips32r2 -mtune=mips32r2 -fno-caller-saves -mno-branch-likely FEATURES:=squashfs LINUX_VERSION:=3.6.11 |