4.104.114.84.95
Last change
on this file since 4eef8f7 was
db3ca1f,
checked in by Joel Sherrill <joel.sherrill@…>, on 08/05/02 at 16:55:50
|
2002-08-05 Joel Sherrill <joel@…>
- startup/bspstart.c, startup/linkcmds: Per PR247 , fix the linkcmds
to avoid overlapping sections and reworked the way the heap and
workspace are calculated.
|
-
Property mode set to
100644
|
File size:
1.9 KB
|
Line | |
---|
1 | /* |
---|
2 | * $Id$ |
---|
3 | */ |
---|
4 | |
---|
5 | OUTPUT_ARCH(h8300h) |
---|
6 | /* |
---|
7 | * Declare some sizes. |
---|
8 | */ |
---|
9 | _RamBase = DEFINED(_RamBase) ? _RamBase : 0x0; |
---|
10 | _RamSize = DEFINED(_RamSize) ? _RamSize : 1M; |
---|
11 | _HeapSize = DEFINED(_HeapSize) ? _HeapSize : 0x4000; |
---|
12 | _StackSize = DEFINED(_StackSize) ? _StackSize : 0x1000; |
---|
13 | |
---|
14 | ENTRY("_start") |
---|
15 | /* The memory size is 256KB to coincide with the simulator. |
---|
16 | Don't change either without considering the other. */ |
---|
17 | MEMORY |
---|
18 | { |
---|
19 | /* 0xc4 is a magic entry. We should have the linker just |
---|
20 | skip over it one day... */ |
---|
21 | vectors : o = 0x0000, l = 0xc4 |
---|
22 | magicvectors : o = 0xc4, l = 0x3c |
---|
23 | /* We still only use 256k as the main ram size. */ |
---|
24 | ram : o = 0x0100, l = 0x3fefc |
---|
25 | /* The stack starts at the top of main ram. */ |
---|
26 | topram : o = 0x3fffc, l = 0x4 |
---|
27 | /* This holds variables in the "tiny" sections. */ |
---|
28 | tiny : o = 0xff8000, l = 0x7f00 |
---|
29 | /* At the very top of the address space is the 8-bit area. */ |
---|
30 | eight : o = 0xffff00, l = 0x100 |
---|
31 | } |
---|
32 | |
---|
33 | |
---|
34 | SECTIONS |
---|
35 | { |
---|
36 | .vectors : |
---|
37 | { |
---|
38 | *(.vectors) |
---|
39 | } > vectors |
---|
40 | |
---|
41 | .text : |
---|
42 | { |
---|
43 | *(.text) |
---|
44 | |
---|
45 | /* |
---|
46 | * Read-only data |
---|
47 | */ |
---|
48 | . = ALIGN (16); |
---|
49 | PROVIDE(_rodata_start = . ); |
---|
50 | *(.rodata) |
---|
51 | *(.gnu.linkonce.r*) |
---|
52 | PROVIDE(_erodata = . ); |
---|
53 | |
---|
54 | _etext = .; |
---|
55 | } >ram |
---|
56 | .tors SIZEOF(.text) + ADDR(.text): { |
---|
57 | ___ctors = . ; |
---|
58 | *(.ctors) |
---|
59 | ___ctors_end = . ; |
---|
60 | ___dtors = . ; |
---|
61 | *(.dtors) |
---|
62 | ___dtors_end = . ; |
---|
63 | } >ram |
---|
64 | .data SIZEOF(.tors) + ADDR(.tors): |
---|
65 | { |
---|
66 | *(.data) |
---|
67 | *(.gcc_exc*) |
---|
68 | CONSTRUCTORS |
---|
69 | _edata = .; |
---|
70 | } >ram |
---|
71 | .bss SIZEOF(.data) + ADDR(.data): |
---|
72 | { |
---|
73 | _bss_start = .; |
---|
74 | *(.bss) |
---|
75 | *(COMMON) |
---|
76 | . = ALIGN (64); |
---|
77 | . += _StackSize; |
---|
78 | _stack_init = .; |
---|
79 | _clear_end = .; |
---|
80 | _WorkspaceBase = .; |
---|
81 | _end = .; |
---|
82 | __end = .; |
---|
83 | } >ram |
---|
84 | .tiny : { |
---|
85 | *(.tiny) |
---|
86 | } > tiny |
---|
87 | .eight : { |
---|
88 | *(.eight) |
---|
89 | } > eight |
---|
90 | .stab 0 (NOLOAD) : { |
---|
91 | [ .stab ] |
---|
92 | } |
---|
93 | .stabstr 0 (NOLOAD) : { |
---|
94 | [ .stabstr ] |
---|
95 | } |
---|
96 | |
---|
97 | } |
---|
Note: See
TracBrowser
for help on using the repository browser.