diff options
author | Denys Vlasenko | 2020-12-14 05:53:45 +0100 |
---|---|---|
committer | Denys Vlasenko | 2020-12-14 05:53:45 +0100 |
commit | db793480cb8ec3e5f878d1ec18b6ed5010c85e85 (patch) | |
tree | f0b398018025a481084f0afb6218a58dd1985b29 /arch | |
parent | a8e19608fc9d2f775a4f81eaf9c38a5844684237 (diff) | |
download | busybox-db793480cb8ec3e5f878d1ec18b6ed5010c85e85.zip busybox-db793480cb8ec3e5f878d1ec18b6ed5010c85e85.tar.gz |
build system: combat gcc zealotry in data alignment
text data bss dec hex filename
1020934 559 5052 1026545 fa9f1 busybox_old
1020750 559 5052 1026361 fa939 busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/i386/Makefile | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/i386/Makefile b/arch/i386/Makefile index 425361f..2fa008f 100644 --- a/arch/i386/Makefile +++ b/arch/i386/Makefile @@ -11,3 +11,11 @@ ifeq ($(CONFIG_STACK_OPTIMIZATION_386),y) # from aligning stack to 16 bytes. (Which is gcc's way of supporting SSE). CFLAGS += $(call cc-option,-mpreferred-stack-boundary=2,) endif + +# "Control how GCC aligns variables. +# Supported values for type are compat uses increased alignment value +# compatible uses GCC 4.8 and earlier, abi uses alignment value as specified by the psABI, +# and cacheline uses increased alignment value to match the cache line size. +# compat is the default." +# "abi" seems to be somewhat successful in preventing oversealous data alignment. +CFLAGS += $(call cc-option,-malign-data=abi,) |