]> git.sur5r.net Git - freertos/blob - Demo/PPC405_FPU_Xilinx_Virtex4_GCC/RTOSDemo/RTOSDemo_linker_script.ld
Start to re-arrange files to include FreeRTOS+ in main download.
[freertos] / Demo / PPC405_FPU_Xilinx_Virtex4_GCC / RTOSDemo / RTOSDemo_linker_script.ld
1 /*******************************************************************/\r
2 /*                                                                 */\r
3 /* This file is automatically generated by linker script generator.*/\r
4 /*                                                                 */\r
5 /* Version: Xilinx EDK 10.1.01 EDK_K_SP1.3                                */\r
6 /*                                                                 */\r
7 /* Copyright (c) 2004 Xilinx, Inc.  All rights reserved.           */\r
8 /*                                                                 */\r
9 /* Description : PowerPC405 Linker Script                          */\r
10 /*                                                                 */\r
11 /*******************************************************************/\r
12 \r
13 _STACK_SIZE = DEFINED(_STACK_SIZE) ? _STACK_SIZE : 0x400;\r
14 _HEAP_SIZE = DEFINED(_HEAP_SIZE) ? _HEAP_SIZE : 0x100;\r
15 \r
16 /* Define Memories in the system */\r
17 \r
18 MEMORY\r
19 {\r
20    SRAM_C_MEM0_BASEADDR : ORIGIN = 0xFFF00000, LENGTH = 0x000FFFEC\r
21 }\r
22 \r
23 /* Specify the default entry point to the program */\r
24 \r
25 ENTRY(_boot)\r
26 STARTUP(boot.o)\r
27 \r
28 /* Define the sections, and where they are mapped in memory */\r
29 \r
30 SECTIONS\r
31 {\r
32 .vectors : {\r
33    __vectors_start = .;\r
34    *(.vectors)\r
35    __vectors_end = .;\r
36 } > SRAM_C_MEM0_BASEADDR\r
37 \r
38 .text : {\r
39    *(.text)\r
40    *(.text.*)\r
41    *(.gnu.linkonce.t.*)\r
42 } > SRAM_C_MEM0_BASEADDR\r
43 \r
44 .init : {\r
45    KEEP (*(.init))\r
46 } > SRAM_C_MEM0_BASEADDR\r
47 \r
48 .fini : {\r
49    KEEP (*(.fini))\r
50 } > SRAM_C_MEM0_BASEADDR\r
51 \r
52 .rodata : {\r
53    __rodata_start = .;\r
54    *(.rodata)\r
55    *(.rodata.*)\r
56    *(.gnu.linkonce.r.*)\r
57    __rodata_end = .;\r
58 } > SRAM_C_MEM0_BASEADDR\r
59 \r
60 .sdata2 : {\r
61    __sdata2_start = .;\r
62    *(.sdata2)\r
63    *(.sdata2.*)\r
64    *(.gnu.linkonce.s2.*)\r
65    __sdata2_end = .;\r
66 } > SRAM_C_MEM0_BASEADDR\r
67 \r
68 .sbss2 : {\r
69    __sbss2_start = .;\r
70    *(.sbss2)\r
71    *(.sbss2.*)\r
72    *(.gnu.linkonce.sb2.*)\r
73    __sbss2_end = .;\r
74 } > SRAM_C_MEM0_BASEADDR\r
75 \r
76 .data : {\r
77    __data_start = .;\r
78    *(.data)\r
79    *(.data.*)\r
80    *(.gnu.linkonce.d.*)\r
81    __data_end = .;\r
82 } > SRAM_C_MEM0_BASEADDR\r
83 \r
84 .got : {\r
85    *(.got)\r
86 } > SRAM_C_MEM0_BASEADDR\r
87 \r
88 .got1 : {\r
89    *(.got1)\r
90 } > SRAM_C_MEM0_BASEADDR\r
91 \r
92 .got2 : {\r
93    *(.got2)\r
94 } > SRAM_C_MEM0_BASEADDR\r
95 \r
96 .ctors : {\r
97    __CTOR_LIST__ = .;\r
98    ___CTORS_LIST___ = .;\r
99    KEEP (*crtbegin.o(.ctors))\r
100    KEEP (*(EXCLUDE_FILE(*crtend.o) .ctors))\r
101    KEEP (*(SORT(.ctors.*)))\r
102    KEEP (*(.ctors))\r
103    __CTOR_END__ = .;\r
104    ___CTORS_END___ = .;\r
105 } > SRAM_C_MEM0_BASEADDR\r
106 \r
107 .dtors : {\r
108    __DTOR_LIST__ = .;\r
109    ___DTORS_LIST___ = .;\r
110    KEEP (*crtbegin.o(.dtors))\r
111    KEEP (*(EXCLUDE_FILE(*crtend.o) .dtors))\r
112    KEEP (*(SORT(.dtors.*)))\r
113    KEEP (*(.dtors))\r
114    __DTOR_END__ = .;\r
115    ___DTORS_END___ = .;\r
116 } > SRAM_C_MEM0_BASEADDR\r
117 \r
118 .fixup : {\r
119    __fixup_start = .;\r
120    *(.fixup)\r
121    __fixup_end = .;\r
122 } > SRAM_C_MEM0_BASEADDR\r
123 \r
124 .eh_frame : {\r
125    *(.eh_frame)\r
126 } > SRAM_C_MEM0_BASEADDR\r
127 \r
128 .jcr : {\r
129    *(.jcr)\r
130 } > SRAM_C_MEM0_BASEADDR\r
131 \r
132 .gcc_except_table : {\r
133    *(.gcc_except_table)\r
134 } > SRAM_C_MEM0_BASEADDR\r
135 \r
136 .sdata : {\r
137    __sdata_start = .;\r
138    *(.sdata)\r
139    *(.sdata.*)\r
140    *(.gnu.linkonce.s.*)\r
141    __sdata_end = .;\r
142 } > SRAM_C_MEM0_BASEADDR\r
143 \r
144 .sbss : {\r
145    __sbss_start = .;\r
146    *(.sbss)\r
147    *(.sbss.*)\r
148    *(.gnu.linkonce.sb.*)\r
149    __sbss_end = .;\r
150 } > SRAM_C_MEM0_BASEADDR\r
151 \r
152 .tdata : {\r
153    __tdata_start = .;\r
154    *(.tdata)\r
155    *(.tdata.*)\r
156    *(.gnu.linkonce.td.*)\r
157    __tdata_end = .;\r
158 } > SRAM_C_MEM0_BASEADDR\r
159 \r
160 .tbss : {\r
161    __tbss_start = .;\r
162    *(.tbss)\r
163    *(.tbss.*)\r
164    *(.gnu.linkonce.tb.*)\r
165    __tbss_end = .;\r
166 } > SRAM_C_MEM0_BASEADDR\r
167 \r
168 .bss : {\r
169    __bss_start = .;\r
170    *(.bss)\r
171    *(.bss.*)\r
172    *(.gnu.linkonce.b.*)\r
173    *(COMMON)\r
174    . = ALIGN(4);\r
175    __bss_end = .;\r
176 } > SRAM_C_MEM0_BASEADDR\r
177 \r
178 .boot0 0xFFFFFFEC : {\r
179    __boot0_start = .;\r
180    *(.boot0)\r
181    __boot0_end = .;\r
182\r
183 \r
184 .boot 0xFFFFFFFC : {\r
185    __boot_start = .;\r
186    *(.boot)\r
187    __boot_end = .;\r
188\r
189 \r
190 /* Generate Stack and Heap Sections */\r
191 \r
192 .stack : {\r
193    _stack_end = .;\r
194    . += _STACK_SIZE;\r
195    . = ALIGN(16);\r
196    __stack = .;\r
197 } > SRAM_C_MEM0_BASEADDR\r
198 \r
199 .heap : {\r
200    . = ALIGN(16);\r
201    _heap_start = .;\r
202    . += _HEAP_SIZE;\r
203    . = ALIGN(16);\r
204    _heap_end = .;\r
205    _end = .;\r
206 } > SRAM_C_MEM0_BASEADDR\r
207 \r
208 }\r
209 \r