source: rtems/c/src/lib/libbsp/powerpc/papyrus/startup/linkcmds @ c3a0358

4.104.114.84.95
Last change on this file since c3a0358 was 634e746, checked in by Joel Sherrill <joel.sherrill@…>, on 01/29/97 at 00:28:47

All RTEMS system call implementation renamed to be rtems_*.

  • Property mode set to 100644
File size: 2.1 KB
Line 
1/*
2 *  This file contains directives for the GNU linker which are specific
3 *  to the Papyrus.
4 *
5 *  $Id$
6 */
7
8OUTPUT_FORMAT("elf32-powerpc", "elf32-powerpc",
9              "elf32-powerpc")
10OUTPUT_ARCH(powerpc)
11 SEARCH_DIR(/usr/local/powerpc-rtems/lib);
12 
13ENTRY(download_entry)
14 
15MEMORY
16  {
17        RAM : ORIGIN = 0, LENGTH = 4M
18        FLASH : ORIGIN = 0xFF000000, LENGTH = 0x80000
19        EPROM : ORIGIN = 0xFFFE0000, LENGTH = 0x20000
20  }
21 
22/* Do we need any of these for elf?
23   __DYNAMIC = 0;    */
24
25/* What are these for? */
26
27__EXCEPT_START__ = 0;
28__EXCEPT_END__ = 0;
29__SDATA2_START__ = 0;
30__SDATA2_END__ = 0;
31__SBSS2_START__ = 0;
32__SBSS2_END__ = 0;
33__FIXUP_START__ = 0;
34__FIXUP_END__ = 0;
35__GOT2_START__ = 0;
36__GOT2_END__ = 0;
37__SDATA_START__ = 0;
38__SDATA_END__ = 0;
39
40
41SECTIONS
42{
43  .vectors 0x0100 :
44  {
45    *(.vectors)
46  }
47 
48  .text 0x20000 :
49  {
50     *(.entry)
51     *(.entry2)
52     *(.text)
53     *(.rodata)
54     *(.rodata1)
55     *(.descriptors)
56     *(rom_ver)
57     etext = ALIGN(0x10);
58     _etext = .;
59     __CTOR_LIST__ = .;
60     LONG((__CTOR_END__ - __CTOR_LIST__) / 4 - 2)
61     *(.ctors)
62     LONG(0)
63     __CTOR_END__ = .;
64     __DTOR_LIST__ = .;
65     LONG((__DTOR_END__ - __DTOR_LIST__) / 4 - 2)
66     *(.dtors)
67     LONG(0)
68     __DTOR_END__ = .;
69     *(.lit)
70     *(.shdata)
71     *(.init)
72     *(.fini)
73     _endtext = .;
74  } > RAM
75 
76  /* R/W Data */
77  .data :
78  {
79    *(.data)
80    *(.data1)
81  } > RAM
82 
83  __GOT_START__ = .;
84  .got :
85  {
86     s.got = .;
87     *(.got.plt) *(.got)
88  } > RAM
89  __GOT_END__ = .;
90 
91  __SBSS_START__ = .;
92  .bss :
93  {
94    bss.start = .;
95    *(.bss) *(.sbss) *(COMMON)
96    bss.end = ALIGN(4);
97  } > RAM
98  __SBSS_END__ = .;
99 
100  bss.size = bss.end - bss.start;
101  PROVIDE(_end = bss.end);
102
103  .line 0 : { *(.line) }
104  .debug 0 : { *(.debug) }
105  .debug_sfnames 0 : { *(.debug_sfnames) }
106  .debug_srcinfo 0 : { *(.debug_srcinfo) }
107  .debug_pubnames 0 : { *(.debug_pubnames) }
108  .debug_aranges 0 : { *(.debug_aranges) }
109  .debug_aregion 0 : { *(.debug_aregion) }
110  .debug_macinfo 0 : { *(.debug_macinfo) }
111  .stab 0 : { *(.stab) }
112  .stabstr 0 : { *(.stabstr) }
113}
114
115
Note: See TracBrowser for help on using the repository browser.