aboutsummaryrefslogtreecommitdiffstats
path: root/demos/ARM7-AT91SAM7X-GCC
diff options
context:
space:
mode:
authorgdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2009-08-28 15:11:16 +0000
committergdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2009-08-28 15:11:16 +0000
commit553f23ae74bee0bceb4d2b7e52e46699df2f6425 (patch)
treea33af23f8ca1ed95095a4e4a5ea1591e112228b9 /demos/ARM7-AT91SAM7X-GCC
parent1ce340b59e0b68f7bf868914af3701b408bd1820 (diff)
downloadChibiOS-553f23ae74bee0bceb4d2b7e52e46699df2f6425.tar.gz
ChibiOS-553f23ae74bee0bceb4d2b7e52e46699df2f6425.tar.bz2
ChibiOS-553f23ae74bee0bceb4d2b7e52e46699df2f6425.zip
Modified linker scripts for GCC 4.4.1.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@1113 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'demos/ARM7-AT91SAM7X-GCC')
-rw-r--r--demos/ARM7-AT91SAM7X-GCC/ch.ld86
1 files changed, 45 insertions, 41 deletions
diff --git a/demos/ARM7-AT91SAM7X-GCC/ch.ld b/demos/ARM7-AT91SAM7X-GCC/ch.ld
index 643453cd8..944a7f29d 100644
--- a/demos/ARM7-AT91SAM7X-GCC/ch.ld
+++ b/demos/ARM7-AT91SAM7X-GCC/ch.ld
@@ -30,8 +30,8 @@ __stacks_total_size__ = __und_stack_size__ + __abt_stack_size__ + __fiq_stack_si
MEMORY
{
- flash : org = 0x100000, len = 256k
- ram : org = 0x200020, len = 64k - 0x20
+ flash : org = 0x100000, len = 256k
+ ram : org = 0x200020, len = 64k - 0x20
}
__ram_start__ = ORIGIN(ram);
@@ -42,49 +42,53 @@ SECTIONS
{
. = 0;
- .text :
+ .text : ALIGN(16) SUBALIGN(16)
{
- _text = .;
- KEEP(*(vectors));
- *(.text)
- *(.text.*);
- *(.rodata);
- *(.rodata.*);
- *(.glue_7t);
- *(.glue_7);
- *(.gcc*);
- *(.ctors);
- *(.dtors);
- . = ALIGN(4);
- _etext = .;
- } > flash
+ _text = .;
+ KEEP(*(vectors))
+ *(.text)
+ *(.text.*);
+ *(.rodata);
+ *(.rodata.*);
+ *(.glue_7t);
+ *(.glue_7);
+ *(.gcc*);
+ *(.ctors);
+ *(.dtors);
+ . = ALIGN(4);
+ _etext = .;
+ } > flash
- _textdata = _etext;
+ _textdata = _etext;
- .data :
- {
- _data = .;
- _data = .;
- *(.data)
- . = ALIGN(4);
- *(.data.*)
- . = ALIGN(4);
- *(.ramtext)
- . = ALIGN(4);
- _edata = .;
- } > ram AT > flash
+ .data :
+ {
+ _data = .;
+ *(.data)
+ . = ALIGN(4);
+ *(.data.*)
+ . = ALIGN(4);
+ *(.ramtext)
+ . = ALIGN(4);
+ _edata = .;
+ } > ram AT > flash
- .bss :
- {
- _bss_start = .;
- *(.bss)
- . = ALIGN(4);
- *(.bss.*)
- . = ALIGN(4);
- *(COMMON)
- . = ALIGN(4);
- _bss_end = .;
- } > ram
+ .bss :
+ {
+ _bss_start = .;
+ *(.bss)
+ . = ALIGN(4);
+ *(.bss.*)
+ . = ALIGN(4);
+ *(COMMON)
+ . = ALIGN(4);
+ _bss_end = .;
+ } > ram
+
+ /DISCARD/ :
+ {
+ *(.eh_*)
+ }
}
PROVIDE(end = .);