source: rtems/c/src/lib/libbsp/powerpc/gen405/startup/linkcmds.dl @ 87910b3

4.104.114.84.95
Last change on this file since 87910b3 was 87910b3, checked in by Joel Sherrill <joel.sherrill@…>, on 01/20/03 at 20:07:24

2003-01-20 Joel Sherrill <joel@…>

  • startup/linkcmds.dl: Add FreeBSD sysctl() sections.
  • Property mode set to 100644
File size: 2.8 KB
Line 
1/*
2 *  This file contains directives for the GNU linker which are specific
3 *  to the helas403
4 *  This file is intended to be used together with dlentry.s
5 *  it will generate downloadable code
6 *
7 *  $Id$
8 */
9
10OUTPUT_FORMAT("elf32-powerpc", "elf32-powerpc",
11              "elf32-powerpc")
12OUTPUT_ARCH(powerpc)
13 SEARCH_DIR(/usr/local/powerpc-rtems/lib);
14 
15ENTRY(download_entry)
16 
17MEMORY
18  {
19        RAM : ORIGIN = 0, LENGTH = 8M
20        FLASH : ORIGIN = 0xFFF00000, LENGTH = 512K
21  }
22 
23SECTIONS
24{
25  .vectors : 0x00010100
26  {
27    *(.vectors)
28  } > RAM
29
30  .text :
31  {
32     text.start = . ;
33     *(.entry)
34     *(.entry2)
35     *(.text)
36     *(.rodata)
37     *(.rodata1)
38
39     /*
40      * Special FreeBSD sysctl sections.
41      */
42     . = ALIGN (16);
43     __start_set_sysctl_set = .;
44     *(set_sysctl_*);
45     __stop_set_sysctl_set = ABSOLUTE(.);
46     *(set_domain_*);
47     *(set_pseudo_*);
48
49     *.(eh_frame)
50     *(.descriptors)
51     *(rom_ver)
52     etext = ALIGN(0x10);
53     _etext = .;
54
55
56     __CTOR_LIST__ = .;
57     LONG((__CTOR_END__ - __CTOR_LIST__) / 4 - 2)
58     *(.ctors)
59     LONG(0)
60     __CTOR_END__ = .;
61
62     __DTOR_LIST__ = .;
63     LONG((__DTOR_END__ - __DTOR_LIST__) / 4 - 2)
64     *(.dtors)
65     LONG(0)
66     __DTOR_END__ = .;
67
68     *(.lit)
69     *(.shdata)
70     *(.init)
71     *(.fini)
72     _endtext = ALIGN(0x10);
73     text.end = .;
74  } > RAM
75
76  text.size = text.end - text.start;
77
78  /* R/W Data */
79  .data :
80  {
81    *(.data)
82    *(.data1)
83    PROVIDE (__SDATA_START__ = .);
84    *(.sdata)
85  } > RAM
86 
87  PROVIDE (__EXCEPT_START__ = .);
88  .gcc_except_table   :
89  {
90        *(.gcc_except_table)
91  } >RAM
92  PROVIDE (__EXCEPT_END__ = .);
93
94  __GOT_START__ = .;
95  .got :
96  {
97     s.got = .;
98     *(.got.plt) *(.got)
99  } > RAM
100  __GOT_END__ = .;
101
102  .got1 :
103  {
104        *(.got1)               
105  } >RAM
106
107  PROVIDE (__GOT2_START__ = .);
108  PROVIDE (_GOT2_START_ = .);
109  .got2           : 
110  {
111        *(.got2)       
112  } >RAM
113  PROVIDE (__GOT2_END__ = .);
114  PROVIDE (_GOT2_END_ = .);
115
116  PROVIDE (__FIXUP_START__ = .);
117  PROVIDE (_FIXUP_START_ = .);
118  .fixup          : { *(.fixup)         } >RAM
119  PROVIDE (_FIXUP_END_ = .);
120  PROVIDE (__FIXUP_END__ = .);
121 
122  PROVIDE (__SDATA2_START__ = .);
123  .sdata2         : { *(.sdata2)        } >RAM
124  .sbss2          : { *(.sbss2)         } >RAM
125  PROVIDE (__SBSS2_END__ = .);
126
127  .sbss2          : { *(.sbss2)         } >RAM
128  PROVIDE (__SBSS2_END__ = .);
129
130  __SBSS_START__ = .;
131  .bss :
132  {
133    bss.start = .;
134    *(.bss) *(.sbss) *(COMMON)
135    bss.end = ALIGN(4);
136  } > RAM
137  __SBSS_END__ = .;
138 
139  bss.size = bss.end - bss.start;
140  PROVIDE(_end = bss.end);
141
142  .line 0 : { *(.line) }
143  .debug 0 : { *(.debug) }
144  .debug_sfnames 0 : { *(.debug_sfnames) }
145  .debug_srcinfo 0 : { *(.debug_srcinfo) }
146  .debug_pubnames 0 : { *(.debug_pubnames) }
147  .debug_aranges 0 : { *(.debug_aranges) }
148  .debug_aregion 0 : { *(.debug_aregion) }
149  .debug_macinfo 0 : { *(.debug_macinfo) }
150  .stab 0 : { *(.stab) }
151  .stabstr 0 : { *(.stabstr) }
152}
153
154
Note: See TracBrowser for help on using the repository browser.