aboutsummaryrefslogtreecommitdiffstats
path: root/os/common
diff options
context:
space:
mode:
authorGiovanni Di Sirio <gdisirio@gmail.com>2018-07-10 14:49:30 +0000
committerGiovanni Di Sirio <gdisirio@gmail.com>2018-07-10 14:49:30 +0000
commit6b149e60a14cdfff2aa0c502a4e73c62f53a8496 (patch)
tree1587af649468f7854ba06fb756d3daeffd2d6477 /os/common
parent13e854961f71c2d06d67b66ee2ab8a5c8dde9b61 (diff)
downloadChibiOS-6b149e60a14cdfff2aa0c502a4e73c62f53a8496.tar.gz
ChibiOS-6b149e60a14cdfff2aa0c502a4e73c62f53a8496.tar.bz2
ChibiOS-6b149e60a14cdfff2aa0c502a4e73c62f53a8496.zip
Workaround for clang linker bug.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@12157 110e8d01-0319-4d1e-a829-52ad28d1bb01
Diffstat (limited to 'os/common')
-rw-r--r--os/common/startup/ARMCMx/compilers/LLVM/ld/STM32F401xE.ld37
1 files changed, 22 insertions, 15 deletions
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);