x86: Enable -fdata-sections always
authorAlexander Graf <agraf@suse.de>
Mon, 20 Aug 2018 12:20:51 +0000 (14:20 +0200)
committerAlexander Graf <agraf@suse.de>
Mon, 20 Aug 2018 12:20:53 +0000 (14:20 +0200)
We left -fdata-sections disabled for x86_64 before because we encountered
random bugs that were at that time inexplicable.

Turns out this really was just side effects of missing .bss* statements
in the linker scripts. With those fixed, we can enable data sections for all
targets.

Signed-off-by: Alexander Graf <agraf@suse.de>
arch/x86/config.mk

index 586e11a0dda55a62c3318cdbc036318ee5881f40..5b04febd680eacad89db4fddb5164dbb927b1ea2 100644 (file)
@@ -23,13 +23,11 @@ endif
 
 ifeq ($(IS_32BIT),y)
 PLATFORM_CPPFLAGS += -march=i386 -m32
-# TODO: These break on x86_64; need to debug further
-PLATFORM_RELFLAGS += -fdata-sections
 else
 PLATFORM_CPPFLAGS += $(if $(CONFIG_SPL_BUILD),,-fpic) -fno-common -m64
 endif
 
-PLATFORM_RELFLAGS += -ffunction-sections -fvisibility=hidden
+PLATFORM_RELFLAGS += -fdata-sections -ffunction-sections -fvisibility=hidden
 
 PLATFORM_LDFLAGS += -Bsymbolic -Bsymbolic-functions
 PLATFORM_LDFLAGS += -m $(if $(IS_32BIT),elf_i386,elf_x86_64)