Subversion Repositories HelenOS

Rev

Rev 3590 | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 3590 Rev 3691
1
ENTRY(__entry)
1
ENTRY(__entry)
2
 
2
 
3
PHDRS {
3
PHDRS {
4
	text PT_LOAD FLAGS(5);
4
	text PT_LOAD FLAGS(5);
5
	data PT_LOAD FLAGS(6);
5
	data PT_LOAD FLAGS(6);
-
 
6
	dynamic PT_DYNAMIC;
6
}
7
}
7
 
8
 
8
SECTIONS {
9
SECTIONS {
9
	. = 0x1000 + SIZEOF_HEADERS;
10
	. = 0x1000 + SIZEOF_HEADERS;
10
 
11
 
11
	.init : {
12
	.init : {
12
		*(.init);
13
		*(.init);
13
	} :text
14
	} :text
14
	.text : {
15
	.text : {
15
		*(.text);
16
		*(.text);
16
		*(.text.*);
17
		*(.text.*);
17
		*(.rodata*);
18
		*(.rodata*);
18
	} :text
19
	} :text
19
 
20
 
20
	.rel.plt : {
21
	.rel.plt : {
21
		*(.rel.plt);
22
		*(.rel.plt);
22
	}
23
	}
23
	/* 
24
	/* 
24
	 *.rel.dyn MUST FOLLOW IMMEDIATELY after .rel.plt 
25
	 *.rel.dyn MUST FOLLOW IMMEDIATELY after .rel.plt 
25
	 * without alignment gap or DT_REL will be broken
26
	 * without alignment gap or DT_REL will be broken
26
	 */
27
	 */
27
	.rel.dyn : {
28
	.rel.dyn : {
28
		*(.rel.*);
29
		*(.rel.*);
29
	} :text
30
	} :text
30
 
31
 
31
	.dynamic : {
-
 
32
		*(.dynamic);
-
 
33
	} :text
-
 
34
 
-
 
35
	.dynsym : {
32
	.dynsym : {
36
		*(.dynsym);
33
		*(.dynsym);
37
	} :text
34
	} :text
38
 
35
 
39
	.dynstr : {
36
	.dynstr : {
40
		*(.dynstr);
37
		*(.dynstr);
41
	} :text
38
	} :text
42
 
39
 
43
	. = . + 0x1000;
40
	. = . + 0x1000;
44
 
41
 
-
 
42
	.dynamic : {
-
 
43
		*(.dynamic);
-
 
44
	} :data :dynamic
-
 
45
 
45
	.data : {
46
	.data : {
46
		*(.data);
47
		*(.data);
47
		*(.sdata);
48
		*(.sdata);
48
	} :data
49
	} :data
49
 
50
 
50
	.data.rel : {
51
	.data.rel : {
51
                *(.data.rel);
52
                *(.data.rel);
52
	} :data
53
	} :data
53
 
54
 
54
	.got : {
55
	.got : {
55
                *(.got);
56
                *(.got);
56
	} :data
57
	} :data
57
	.got.plt : {
58
	.got.plt : {
58
                *(.got.plt);
59
                *(.got.plt);
59
	} :data
60
	} :data
60
 
61
 
61
	.tdata : {
62
	.tdata : {
62
		_tdata_start = .;
63
		_tdata_start = .;
63
		*(.tdata);
64
		*(.tdata);
64
		_tdata_end = .;
65
		_tdata_end = .;
65
	} :data
66
	} :data
66
	.tbss : {
67
	.tbss : {
67
		_tbss_start = .;
68
		_tbss_start = .;
68
		*(.tbss);
69
		*(.tbss);
69
		_tbss_end = .;
70
		_tbss_end = .;
70
	} :data
71
	} :data
71
	_tls_alignment = MAX(ALIGNOF(.tdata), ALIGNOF(.tbss));
72
	_tls_alignment = MAX(ALIGNOF(.tdata), ALIGNOF(.tbss));
72
	.bss : {
73
	.bss : {
73
		*(.sbss);
74
		*(.sbss);
74
		*(COMMON);
75
		*(COMMON);
75
		*(.bss);
76
		*(.bss);
76
	} :data
77
	} :data
77
 
78
 
78
	.plt : {
79
	.plt : {
79
		*(.plt);
80
		*(.plt);
80
	} :data
81
	} :data
81
 
82
 
82
	. = ALIGN(0x1000);
83
	. = ALIGN(0x1000);
83
	_heap = .;
84
	_heap = .;
84
}
85
}
85
 
86