From 6b149e60a14cdfff2aa0c502a4e73c62f53a8496 Mon Sep 17 00:00:00 2001 From: Giovanni Di Sirio Date: Tue, 10 Jul 2018 14:49:30 +0000 Subject: Workaround for clang linker bug. git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@12157 110e8d01-0319-4d1e-a829-52ad28d1bb01 --- .../ARMCMx/compilers/LLVM/ld/STM32F401xE.ld | 37 +++++++++++++--------- 1 file changed, 22 insertions(+), 15 deletions(-) (limited to 'os') diff --git a/os/common/startup/ARMCMx/compilers/LLVM/ld/STM32F401xE.ld b/os/common/startup/ARMCMx/compilers/LLVM/ld/STM32F401xE.ld index b1ac10141..ca127c165 100644 --- a/os/common/startup/ARMCMx/compilers/LLVM/ld/STM32F401xE.ld +++ b/os/common/startup/ARMCMx/compilers/LLVM/ld/STM32F401xE.ld @@ -149,21 +149,6 @@ SECTIONS __rodata_end__ = .; } > flash0 - .data : ALIGN(4) - { - . = ALIGN(4); - PROVIDE(_textdata = LOADADDR(.data)); - PROVIDE(_data = .); - _textdata_start = LOADADDR(.data); - _data_start = .; - *(.data) - *(.data.*) - *(.ramtext) - . = ALIGN(4); - PROVIDE(_edata = .); - _data_end = .; - } > ram0 AT > flash0 - .ARM.extab : { *(.ARM.extab* .gnu.linkonce.armextab.*) @@ -186,6 +171,28 @@ SECTIONS *(.eh_frame) } > flash0 + .data : ALIGN(4) + { + . = ALIGN(4); + PROVIDE(_textdata = LOADADDR(.data)); + PROVIDE(_data = .); + _textdata_start = LOADADDR(.data); + _data_start = .; + *(.data) + *(.data.*) + *(.ramtext) + . = ALIGN(4); + PROVIDE(_edata = .); + _data_end = .; + } > ram0 AT > flash0 + + .dummy : + { + __dummy_start = .; + LONG(0) + __dummy_end = .; + } > flash0 AT> flash0 + .bss (NOLOAD) : ALIGN(4) { . = ALIGN(4); -- cgit v1.2.3