source: trunk/libs/newlib/src/libgloss/i386/cygmon.ld @ 639

Last change on this file since 639 was 444, checked in by satin@…, 7 years ago

add newlib,libalmos-mkh, restructure shared_syscalls.h and mini-libc

File size: 1.9 KB
RevLine 
[444]1STARTUP(cygmon-crt0.o)
2ENTRY(__start)
3GROUP(-lcygmon -lc -lcygmon -lgcc)
4SEARCH_DIR(.)
5__DYNAMIC  =  0;
6
7/*
8 * Allocate the stack to be at the top of memory, since the stack
9 * grows down
10 */
11PROVIDE (__stack = 0x500000);
12
13/*
14 * Initalize some symbols to be zero so we can reference them in the
15 * crt0 without core dumping. These functions are all optional, but
16 * we do this so we can have our crt0 always use them if they exist.
17 * This is so BSPs work better when using the crt0 installed with gcc.
18 * We have to initalize them twice, so we multiple object file
19 * formats, as some prepend an underscore.
20 */
21PROVIDE (hardware_init_hook = 0);
22PROVIDE (software_init_hook = 0);
23PROVIDE (__mem_start = 0x100000);
24PROVIDE (___mem_start = 0x100000);
25SECTIONS
26{       
27  . = 0x100000;
28  .text : {
29     _ftext = . ;
30    *(.init)
31     eprol  =  .;
32    *(.text)
33    PROVIDE (__runtime_reloc_start = .);
34    *(.rel.sdata)
35    PROVIDE (__runtime_reloc_stop = .);
36    *(.fini)
37    . = ALIGN(4);
38     __CTOR_LIST__ = .;
39    CONSTRUCTORS
40    LONG(-1)
41    *(.ctors)
42    LONG(0)
43    __CTOR_END__ = .;
44    __DTOR_LIST__ = .;
45    LONG(-1)
46    *(.dtors)
47     LONG(0)
48    __DTOR_END__ = .;
49    PROVIDE(_etext  =  .);
50    PROVIDE(__etext  =  .);
51  }
52  . = .;
53  .rdata : {
54    *(.rdata)
55  }
56  .rodata : {
57    *(.rodata)
58    *(.rodata.*)
59  }
60  .eh_frame :
61  {
62    PROVIDE (__EH_FRAME_BEGIN__ = .);
63    *(.eh_frame)
64    PROVIDE (__EH_FRAME_END__ = .);
65  }
66  _fdata = ALIGN(16);
67  .data : {
68    *(.data)
69    *(.gcc_except_table)
70    *(.gcc_exc)
71  }
72  . = ALIGN(8);
73  _gp = . + 0x8000;
74  __global = . + 0x8000;
75  .lit8 : {
76    *(.lit8)
77  }
78  .lit4 : {
79    *(.lit4)
80  }
81  .sdata : {
82    *(.sdata)
83  }
84  . = ALIGN(4);
85   PROVIDE(_edata  =  .);
86   PROVIDE(__edata  =  .);
87   fbss = .;
88   _fbss = .;
89  .sbss : {
90    PROVIDE(__bss_start = .);
91    *(.sbss)
92    *(.scommon)
93  }
94  .bss : {
95    *(.bss)
96    *(COMMON)
97    PROVIDE(__bss_end = .);
98  }
99  PROVIDE(_end = .);
100  PROVIDE(__end = .);
101}
Note: See TracBrowser for help on using the repository browser.