source: rtems/c/src/lib/libbsp/arm/armulator/startup/linkcmds @ 4755bc1

4.104.114.84.95
Last change on this file since 4755bc1 was 4755bc1, checked in by Joel Sherrill <joel.sherrill@…>, on 11/05/04 at 14:43:00

2004-11-05 Joel Sherrill <joel@…>

  • startup/linkcmds: Add .gnu.linkonce.b section.
  • Property mode set to 100644
File size: 2.6 KB
Line 
1/*
2 *  $Id$
3 */
4
5/*
6 * Declare some sizes.
7 */
8_RamBase = DEFINED(_RamBase) ? _RamBase : 0x0;
9_RamSize = DEFINED(_RamSize) ? _RamSize : 1M;
10_HeapSize = DEFINED(_HeapSize) ? _HeapSize : 0x10000;
11_StackSize = DEFINED(_StackSize) ? _StackSize : 0x1000;
12
13SECTIONS
14{
15    . = 0x8000;
16    .text :
17    {
18         CREATE_OBJECT_SYMBOLS
19        *(.text)
20        *(.rodata*)
21        *(.gnu.linkonce.r*)
22
23        /*
24         * Special FreeBSD sysctl sections.
25         */
26        . = ALIGN (16);
27        __start_set_sysctl_set = .;
28        *(set_sysctl_*);
29        __stop_set_sysctl_set = ABSOLUTE(.);
30        *(set_domain_*);
31        *(set_pseudo_*);
32
33         _etext = .;
34       
35        ___CTOR_LIST__ = .;
36        LONG((___CTOR_END__ - ___CTOR_LIST__) / 4 - 2)
37        *(.ctors)
38        LONG(0)
39        ___CTOR_END__ = .;
40        ___DTOR_LIST__ = .;
41        LONG((___DTOR_END__ - ___DTOR_LIST__) / 4 - 2)
42        *(.dtors)
43        LONG(0)
44        ___DTOR_END__ = .;
45    } 
46    . = ALIGN(256) + (. & (256 - 1));
47    .data :
48    {
49        *(.data)
50        *(.jcr)
51        *(.gnu.linkonce.d*)
52        CONSTRUCTORS
53         _edata = .;
54    } 
55    .bss SIZEOF(.data) + ADDR(.data):
56    {
57         _bss_start = .;
58        _clear_start = .;
59        *(.bss) 
60        *(.gnu.linkonce.b.*)
61        *(COMMON)
62        . = ALIGN (64);
63        _stack_init = .;
64        . += _StackSize;
65        _clear_end = .;
66        _WorkspaceBase = .;
67        . += 512K;      /* reserve some memory for workspace */
68        _HeapBase = .;
69        . += _HeapSize; /* reserve some memory for heap */
70         _end = .;
71         __end = .;
72    }
73/* XXX */
74  /* These are needed for ELF backends which have not yet been
75     converted to the new style linker.  */
76  .stab 0 : { *(.stab) }
77  .stabstr 0 : { *(.stabstr) }
78  /* DWARF debug sections.
79     Symbols in the DWARF debugging sections are relative to the beginning
80     of the section so we begin them at 0.  */
81  /* DWARF 1 */
82  .debug          0 : { *(.debug) }
83  .line           0 : { *(.line) }
84  /* GNU DWARF 1 extensions */
85  .debug_srcinfo  0 : { *(.debug_srcinfo) }
86  .debug_sfnames  0 : { *(.debug_sfnames) }
87  /* DWARF 1.1 and DWARF 2 */
88  .debug_aranges  0 : { *(.debug_aranges) }
89  .debug_pubnames 0 : { *(.debug_pubnames) }
90  /* DWARF 2 */
91  .debug_info     0 : { *(.debug_info) }
92  .debug_abbrev   0 : { *(.debug_abbrev) }
93  .debug_line     0 : { *(.debug_line) }
94  .debug_frame    0 : { *(.debug_frame) }
95  .debug_str      0 : { *(.debug_str) }
96  .debug_loc      0 : { *(.debug_loc) }
97  .debug_macinfo  0 : { *(.debug_macinfo) }
98  /* SGI/MIPS DWARF 2 extensions */
99  .debug_weaknames 0 : { *(.debug_weaknames) }
100  .debug_funcnames 0 : { *(.debug_funcnames) }
101  .debug_typenames 0 : { *(.debug_typenames) }
102  .debug_varnames  0 : { *(.debug_varnames) }
103  /* These must appear regardless of  .  */
104
105}
106
107HeapBase = _HeapBase;
108HeapSize = _HeapSize;
109WorkspaceBase = _WorkspaceBase;
Note: See TracBrowser for help on using the repository browser.