Subversion Repositories HelenOS-historic

Rev

Rev 130 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 130 Rev 216
1
/*
1
/*
2
 *  MIPS linker script
2
 *  MIPS linker script
3
 *  
3
 *  
4
 *  kernel text
4
 *  kernel text
5
 *  kernel data
5
 *  kernel data
6
 *  
6
 *  
7
 */
7
 */
8
 
8
 
9
OUTPUT_FORMAT(binary)
9
OUTPUT_FORMAT(binary)
10
ENTRY(kernel_image_start) 
10
ENTRY(kernel_image_start) 
11
 
11
 
12
SECTIONS {
12
SECTIONS {
13
	.image 0x80000000: AT (0x80000000) {
13
	.image 0x80000000: AT (0x80000000) {
14
		_gp = 0x00000000;
14
		_gp = 0x00000000;
15
		
15
		
16
		ktext_start = .;
16
		ktext_start = .;
17
		*(.text);
17
		*(.text);
18
		ktext_end = .;
18
		ktext_end = .;
19
 
19
 
20
		kdata_start = .;
20
		kdata_start = .;
21
		*(.reginfo);
21
		*(.reginfo);
22
		*(.rodata);
22
		*(.rodata);
23
		*(.rodata.*);
23
		*(.rodata.*);
24
		*(.rdata);
24
		*(.rdata);
25
		*(.data);		/* initialized data */
25
		*(.data);		/* initialized data */
26
		*(.lit8);
26
		*(.lit8);
27
		*(.lit4);
27
		*(.lit4);
28
		*(.sdata);
28
		*(.sdata);
29
		*(.sbss);
29
		*(.sbss);
-
 
30
		hardcoded_ktext_size = .;
-
 
31
		LONG(ktext_end - ktext_start);	
-
 
32
		hardcoded_kdata_size = .;
-
 
33
		LONG(kdata_end - kdata_start);
-
 
34
		hardcoded_load_address = .;
-
 
35
		LONG(0x80000000);
30
		*(.bss);		/* uninitialized static variables */	
36
		*(.bss);		/* uninitialized static variables */	
31
		*(.scommon);
37
		*(.scommon);
32
		*(COMMON); 		/* global variables */
38
		*(COMMON); 		/* global variables */
33
		kdata_end = .;
39
		kdata_end = .;
34
 
40
 
35
	} = 0x00000000
41
	} = 0x00000000
36
 
-
 
37
	. = ABSOLUTE(hardcoded_ktext_size);
-
 
38
	.patch_1 : {
-
 
39
		LONG(ktext_end - ktext_start);
-
 
40
	}
-
 
41
 
-
 
42
	. = ABSOLUTE(hardcoded_kdata_size);
-
 
43
	.patch_2 : {
-
 
44
		LONG(kdata_end - kdata_start);
-
 
45
	}
-
 
46
 
-
 
47
	. = ABSOLUTE(hardcoded_load_address);
-
 
48
	.patch_3 : {
-
 
49
		LONG(0x80000000);
-
 
50
	}
-
 
51
 
-
 
52
}
42
}
53
 
43