Subversion Repositories HelenOS

Rev

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

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