source: rtems/c/src/lib/libbsp/i386/pc386/startup/linkcmds @ f74578a2

4.104.114.84.95
Last change on this file since f74578a2 was f74578a2, checked in by Till Straumann <strauman@…>, on Sep 4, 2006 at 11:24:08 PM
  • startup/linkcmds: added *(.text.*) *(.data.*) *(.bss.*)
  • Property mode set to 100644
File size: 4.0 KB
Line 
1/*-------------------------------------------------------------------------+
2| linkcmds v1.1 - PC386 BSP - 1997/08/07
3+--------------------------------------------------------------------------+
4| This file contains directives for the GNU linker which are specific to the
5| PC386 bsp.
6+--------------------------------------------------------------------------+
7| (C) Copyright 1997 -
8| - NavIST Group - Real-Time Distributed Systems and Industrial Automation
9|
10| http://pandora.ist.utl.pt
11|
12| Instituto Superior Tecnico * Lisboa * PORTUGAL
13+--------------------------------------------------------------------------+
14| Disclaimer:
15|
16| This file is provided "AS IS" without warranty of any kind, either
17| expressed or implied.
18+--------------------------------------------------------------------------+
19| This code is based on:
20|   linkcmds,v 1.3 1995/12/19 20:06:58 joel Exp - FORCE CPU386 BSP
21| With the following copyright notice:
22| **************************************************************************
23| *  COPYRIGHT (c) 1989-1999.
24| *  On-Line Applications Research Corporation (OAR).
25| *
26| *  The license and distribution terms for this file may be
27| *  found in found in the file LICENSE in this distribution or at
28| *  http://www.rtems.com/license/LICENSE.
29| **************************************************************************
30|
31|  $Id$
32+--------------------------------------------------------------------------*/
33
34
35SECTIONS
36{
37/*  .m_hdr : 
38  {
39    . = ALIGN(4);
40    *(.m_hdr)
41  }
42*/
43  .text :
44  {
45    _text_start = . ;
46    . = ALIGN(4);
47    *(.m_hdr)
48    *(.text)
49    *(.text.*)
50    . = ALIGN (16);
51
52    /*
53     * Special FreeBSD sysctl sections.
54     */
55    . = ALIGN (16);
56    __start_set_sysctl_set = .;
57    *(set_sysctl_*);
58    __stop_set_sysctl_set = ABSOLUTE(.);
59    *(set_domain_*);
60    *(set_pseudo_*);
61
62    *(.eh_frame)
63    . = ALIGN (16);
64
65    *(.gnu.linkonce.t*)
66
67    /*
68     * C++ constructors
69     */
70    __CTOR_LIST__ = .;
71    LONG((__CTOR_END__ - __CTOR_LIST__) / 4 - 2)
72    *(.ctors)
73    LONG(0)
74    __CTOR_END__ = .;
75    __DTOR_LIST__ = .;
76    LONG((__DTOR_END__ - __DTOR_LIST__) / 4 - 2)
77    *(.dtors)
78    LONG(0)
79    __DTOR_END__ = .;
80
81    _rodata_start = . ;
82    *(.rodata*)
83    *(.gnu.linkonce.r*)
84    _erodata = ALIGN( 0x10 ) ;
85
86    *(.jcr)
87    _etext = ALIGN( 0x10 ) ;
88  }
89
90  .init : { *(.init) } = 0x9090
91  .fini : { *(.fini) } = 0x9090
92  .data ADDR( .fini ) + SIZEOF( .fini ):
93  {
94    _data_start = . ;
95    *(.data)
96    *(.data.*)
97    *(.gnu.linkonce.d*)
98    *(.gcc_except_table)
99    _edata = ALIGN( 0x10 ) ;
100  }
101
102  .bss ADDR( .data ) + SIZEOF( .data ):
103  {
104    _bss_start = . ;
105    *(.bss)
106    *(.bss.*)
107    *(COMMON)
108    _end = . ;
109    __end = . ;
110  }
111
112  /* Stabs debugging sections.  */
113  .stab 0 : { *(.stab) }
114  .stabstr 0 : { *(.stabstr) }
115  .stab.excl 0 : { *(.stab.excl) }
116  .stab.exclstr 0 : { *(.stab.exclstr) }
117  .stab.index 0 : { *(.stab.index) }
118  .stab.indexstr 0 : { *(.stab.indexstr) }
119  .comment 0 : { *(.comment) }
120 
121  /* DWARF debug sections.
122     Symbols in the DWARF debugging sections are relative to the beginning
123     of the section so we begin them at 0.  */
124  /* DWARF 1 */
125  .debug          0 : { *(.debug) }
126  .line           0 : { *(.line) }
127 
128  /* GNU DWARF 1 extensions */
129  .debug_srcinfo  0 : { *(.debug_srcinfo) }
130  .debug_sfnames  0 : { *(.debug_sfnames) }
131 
132  /* DWARF 1.1 and DWARF 2 */
133  .debug_aranges  0 : { *(.debug_aranges) }
134  .debug_pubnames 0 : { *(.debug_pubnames) }
135 
136  /* DWARF 2 */
137  .debug_info     0 : { *(.debug_info) }
138  .debug_abbrev   0 : { *(.debug_abbrev) }
139  .debug_line     0 : { *(.debug_line) }
140  .debug_frame    0 : { *(.debug_frame) }
141  .debug_str      0 : { *(.debug_str) }
142  .debug_loc      0 : { *(.debug_loc) }
143  .debug_macinfo  0 : { *(.debug_macinfo) }
144 
145  /* SGI/MIPS DWARF 2 extensions */
146  .debug_weaknames 0 : { *(.debug_weaknames) }
147  .debug_funcnames 0 : { *(.debug_funcnames) }
148  .debug_typenames 0 : { *(.debug_typenames) }
149  .debug_varnames  0 : { *(.debug_varnames) }
150  /* These must appear regardless of  .  */
151}
152
Note: See TracBrowser for help on using the repository browser.