Subversion Repositories Kolibri OS

Rev

Rev 6312 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
4349 Serge 1
/*OUTPUT_FORMAT("binary")*/
2
 
3
ENTRY(__start)
4
SECTIONS
5
{
6
   .text 0x000000:
7
   {
8
        LONG(0x554e454D);
9
        LONG(0x32305445);
10
        LONG(1);
11
        LONG(__start);
12
        LONG(___iend);
13
        LONG(___memsize);
14
        LONG(___stacktop);
15
        LONG(___cmdline);
16
        LONG(___pgmname);     /*  full path    */
17
        LONG(0);              /*FIXME tls data */
18
        LONG(__idata_start)
19
        LONG(__idata_end)
20
        LONG(_main)
21
 
22
        *(.init)
23
        *(.text)
24
        *(SORT(.text$*))
25
        *(.text.*)
26
        *(.glue_7t)
27
        *(.glue_7)
28
        ___CTOR_LIST__ = .; __CTOR_LIST__ = . ;
29
                        LONG (-1);*(.ctors); *(.ctor); *(SORT(.ctors.*));  LONG (0);
30
        ___DTOR_LIST__ = .; __DTOR_LIST__ = . ;
31
                        LONG (-1); *(.dtors); *(.dtor); *(SORT(.dtors.*));  LONG (0);
32
        *(.fini)
33
    /* ??? Why is .gcc_exc here?  */
34
        *(.gcc_exc)
35
        PROVIDE (etext = .);
36
        *(.gcc_except_table)
37
   }
38
 
39
   .rdata ALIGN(16) :
40
   {
41
        *(.rdata)
42
        *(SORT(.rdata$*))
43
        ___RUNTIME_PSEUDO_RELOC_LIST__ = .;
44
        __RUNTIME_PSEUDO_RELOC_LIST__ = .;
45
        *(.rdata_runtime_pseudo_reloc)
46
        ___RUNTIME_PSEUDO_RELOC_LIST_END__ = .;
47
        __RUNTIME_PSEUDO_RELOC_LIST_END__ = .;
48
   }
6312 serge 49
 
50
   .eh_frame ALIGN(16) :
51
 
52
   {
53
 
54
	___EH_FRAME_BEGIN___ = .;
55
    	*(.eh_frame*);
56
 
57
58
 
59
 
60
61
 
4349 Serge 62
   {
63
         ___crt_xc_start__ = . ;
64
        *(SORT(.CRT$XC*))  /* C initialization */
65
        ___crt_xc_end__ = . ;
66
        ___crt_xi_start__ = . ;
67
        *(SORT(.CRT$XI*))  /* C++ initialization */
68
        ___crt_xi_end__ = . ;
69
        ___crt_xl_start__ = . ;
70
        *(SORT(.CRT$XL*))  /* TLS callbacks */
71
    /* ___crt_xl_end__ is defined in the TLS Directory support code */
72
        ___crt_xp_start__ = . ;
73
        *(SORT(.CRT$XP*))  /* Pre-termination */
74
        ___crt_xp_end__ = . ;
75
        ___crt_xt_start__ = . ;
76
        *(SORT(.CRT$XT*))  /* Termination */
77
        ___crt_xt_end__ = . ;
78
   }
79
80
 
81
   {
82
     	PROVIDE ( __data_start__ = .) ;
83
        *(.data)
84
        *(.data2)
85
        *(SORT(.data$*))
86
        *(.jcr)
87
        __CRT_MT = .;
88
        LONG(1);
6536 serge 89
       	PROVIDE ( __data_end__ = .) ;
4349 Serge 90
        *(.data_cygwin_nocopy)
91
        ___iend = . ;
92
   }
93
94
 
95
   {
96
      __idata_start = .;
97
      SORT(*)(.idata$2)
98
      SORT(*)(.idata$3)
99
    /* These zeroes mark the end of the import list. */
100
      LONG (0); LONG (0); LONG (0); LONG (0); LONG (0);
101
      SORT(*)(.idata$4)
102
      SORT(*)(.idata$5)
103
      SORT(*)(.idata$6)
104
      SORT(*)(.idata$7)
105
      __idata_end = .  ;
106
   }
107
108
 
109
   {
110
        *(.bss)
111
        *(COMMON)
112
        . = ALIGN(16);
113
        ___cmdline = .;
114
        . = . + 256;
115
        ___pgmname = .;
116
        . = . + 1024 + 16;
117
        ___stacktop = .;
118
        ___memsize = . ;
119
   }
120
121
 
122
  {
123
    *(.debug$S)
124
    *(.debug$T)
125
    *(.debug$F)
126
    *(.drectve)
127
    *(.note.GNU-stack)
128
    *(.comment)
129
    *(.debug_abbrev)
130
    *(.debug_info)
131
    *(.debug_line)
132
    *(.debug_frame)
133
    *(.debug_loc)
134
    *(.debug_pubnames)
135
    *(.debug_aranges)
136
    *(.debug_ranges)
137
  }
138
139
 
140