diff options
author | Paul Burton <paul.burton@mips.com> | 2018-11-21 22:56:36 +0100 |
---|---|---|
committer | Paul Burton <paul.burton@mips.com> | 2018-11-22 00:36:49 +0100 |
commit | c0436b503591f927f326457a588c461881260276 (patch) | |
tree | 805fdef33156e14df943d5bfad3aa0deb2b43cd5 /arch/mips/Kconfig | |
parent | MIPS: OCTEON: cvmx-ciu2-defs.h: delete unused unions (diff) | |
download | linux-c0436b503591f927f326457a588c461881260276.tar.xz linux-c0436b503591f927f326457a588c461881260276.zip |
MIPS: Enable dead code elimination
Select CONFIG_HAVE_LD_DEAD_CODE_DATA_ELIMINATION for MIPS, allowing the
user to enable dead code elimination. In order for this to work, ensure
that we keep the data bus exception table & the machine list by
annotating them with KEEP.
This shrinks both 32r2el_defconfig & 64r6el_defconfig builds by ~6%, as
shown by numbers from scripts/bloat-o-meter:
| 32r2el_defconfig | 64r6el_defconfig
--------|------------------|------------------
No DCE | 8919864 | 8286307
DCE | 8338988 (-6.51%) | 7741808 (-6.57%)
Signed-off-by: Paul Burton <paul.burton@mips.com>
Patchwork: https://patchwork.linux-mips.org/patch/21187/
Cc: linux-mips@linux-mips.org
Diffstat (limited to 'arch/mips/Kconfig')
-rw-r--r-- | arch/mips/Kconfig | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig index e83a8cce41e9..e49b5a0c8585 100644 --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig @@ -63,6 +63,7 @@ config MIPS select HAVE_IRQ_TIME_ACCOUNTING select HAVE_KPROBES select HAVE_KRETPROBES + select HAVE_LD_DEAD_CODE_DATA_ELIMINATION select HAVE_MEMBLOCK_NODE_MAP select HAVE_MOD_ARCH_SPECIFIC select HAVE_NMI |