Subversion Repositories HelenOS

Rev

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

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