From b5de267b0671493d138f940c25f21f834f7275c4 Mon Sep 17 00:00:00 2001 From: chrysn Date: Tue, 2 Oct 2012 12:05:36 +0200 Subject: [PATCH] use _data_loadaddr instead of _etext this change was done in master in [1] and just merged here. [1] 74cd991e7e8972cf22933743c847b5ce2b165798 --- lib/efm32/tinygecko/tinygecko.ld | 1 + lib/efm32/tinygecko/vector.c | 6 +++--- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/lib/efm32/tinygecko/tinygecko.ld b/lib/efm32/tinygecko/tinygecko.ld index 92f4282a..8ef5e426 100644 --- a/lib/efm32/tinygecko/tinygecko.ld +++ b/lib/efm32/tinygecko/tinygecko.ld @@ -57,6 +57,7 @@ SECTIONS . = ALIGN(4); _ebss = .; } >ram AT >rom + _data_loadaddr = LOADADDR(.data); /* * The .eh_frame section appears to be used for C++ exception handling. diff --git a/lib/efm32/tinygecko/vector.c b/lib/efm32/tinygecko/vector.c index 264426bc..81421e79 100644 --- a/lib/efm32/tinygecko/vector.c +++ b/lib/efm32/tinygecko/vector.c @@ -23,8 +23,8 @@ #define WEAK __attribute__ ((weak)) -/* Symbols exported by the linker script(s). */ -extern unsigned _etext, _data, _edata, _ebss, _stack; +/* Symbols exported by the linker script(s): */ +extern unsigned _data_loadaddr, _data, _edata, _ebss, _stack; void main(void); void blocking_handler(void); @@ -109,7 +109,7 @@ void WEAK reset_handler(void) __asm__("MSR msp, %0" : : "r"(&_stack)); - for (src = &_etext, dest = &_data; dest < &_edata; src++, dest++) + for (src = &_data_loadaddr, dest = &_data; dest < &_edata; src++, dest++) *dest = *src; while (dest < &_ebss)