ft32.sc revision 1.1.1.1.2.2 1 TORS=".tors :
2 {
3 ___ctors = . ;
4 *(.ctors)
5 ___ctors_end = . ;
6 ___dtors = . ;
7 *(.dtors)
8 ___dtors_end = . ;
9 . = ALIGN(4);
10 } > ram"
11
12 cat <<EOF
13 OUTPUT_FORMAT("${OUTPUT_FORMAT}")
14 OUTPUT_ARCH(${ARCH})
15 ${LIB_SEARCH_DIRS}
16
17 PROVIDE( __PMSIZE = 256K );
18 PROVIDE( __RAMSIZE = 64K );
19
20 MEMORY
21 {
22 flash (rx) : ORIGIN = 0, LENGTH = __PMSIZE
23 ram (rw!x) : ORIGIN = 0x800000, LENGTH = __RAMSIZE
24 }
25 SECTIONS
26 {
27 .text :
28 {
29 *(.text*)
30 *(.strings)
31 *(._pm*)
32 *(.init)
33 *(.fini)
34 ${RELOCATING+ _etext = . ; }
35 . = ALIGN(4);
36 } ${RELOCATING+ > flash}
37 ${CONSTRUCTING+${TORS}}
38 .data : AT (ADDR (.text) + SIZEOF (.text))
39 {
40 *(.data)
41 *(.rodata)
42 *(.rodata*)
43 ${RELOCATING+ _edata = . ; }
44 } ${RELOCATING+ > ram}
45 .bss SIZEOF(.data) + ADDR(.data) :
46 {
47 ${RELOCATING+ _bss_start = . ; }
48 *(.bss)
49 *(COMMON)
50 ${RELOCATING+ _end = . ; }
51 } ${RELOCATING+ > ram}
52
53 ${RELOCATING+ __data_load_start = LOADADDR(.data); }
54 ${RELOCATING+ __data_load_end = __data_load_start + SIZEOF(.data); }
55
56 .stab 0 ${RELOCATING+(NOLOAD)} :
57 {
58 *(.stab)
59 }
60 .stabstr 0 ${RELOCATING+(NOLOAD)} :
61 {
62 *(.stabstr)
63 }
64 }
65 EOF
66