Subversion Repositories HelenOS

Rev

Rev 2225 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2225 Rev 3910
Line 1... Line 1...
1
/*
1
/*
2
 *  MIPS32 linker script
2
 * MIPS32 linker script
3
 *  
3
 *
4
 *  kernel text
4
 *  kernel text
5
 *  kernel data
5
 *  kernel data
6
 *  
6
 *
7
 */
7
 */
-
 
8
 
8
#undef mips
9
#undef mips
9
#define mips mips
10
#define mips mips
10
 
11
 
11
OUTPUT_ARCH(mips)
12
OUTPUT_ARCH(mips)
12
 
-
 
13
ENTRY(kernel_image_start)
13
ENTRY(kernel_image_start)
14
 
14
 
15
SECTIONS {
15
SECTIONS {
16
	. = KERNEL_LOAD_ADDRESS;
16
	. = KERNEL_LOAD_ADDRESS;
17
	.text : {
17
	.text : {
Line 19... Line 19...
19
		*(.text);
19
		*(.text);
20
		ktext_end = .;
20
		ktext_end = .;
21
	}
21
	}
22
	.data : {
22
	.data : {
23
		kdata_start = .;
23
		kdata_start = .;
24
		*(.data);		/* initialized data */
24
		*(.data);                       /* initialized data */
25
		hardcoded_ktext_size = .;
25
		hardcoded_ktext_size = .;
26
		LONG(ktext_end - ktext_start);	
26
		LONG(ktext_end - ktext_start);
27
		hardcoded_kdata_size = .;
27
		hardcoded_kdata_size = .;
28
		LONG(kdata_end - kdata_start);
28
		LONG(kdata_end - kdata_start);
29
		hardcoded_load_address = .;
29
		hardcoded_load_address = .;
30
		LONG(KERNEL_LOAD_ADDRESS);
30
		LONG(KERNEL_LOAD_ADDRESS);
31
		*(.rodata*);
31
		*(.rodata*);
32
		*(.sdata);
32
		*(.sdata);
33
		*(.reginfo);
33
		*(.reginfo);
34
		*(.sbss);
34
		*(.sbss);
35
		*(.scommon);
35
		*(.scommon);
36
		*(.bss);		/* uninitialized static variables */
36
		*(.bss);                        /* uninitialized static variables */
37
		*(COMMON); 		/* global variables */
37
		*(COMMON);                      /* global variables */
38
		symbol_table = .;
38
		symbol_table = .;
39
		*(symtab.*);             
39
		*(symtab.*);
40
	}
40
	}
41
	_gp = . + 0x8000;
41
	_gp = . + 0x8000;
42
	.lit8 : { *(.lit8) }
42
	.lit8 : { *(.lit8) }
43
	.lit4 : { *(.lit4) }
43
	.lit4 : { *(.lit4) }
44
 
44
	
45
	kdata_end = .;
45
	kdata_end = .;
46
 
46
	
47
	/DISCARD/ : {
47
	/DISCARD/ : {
48
	  *(.mdebug*);
48
		*(.mdebug*);
49
	  *(.pdr);
49
		*(.pdr);
50
	  *(.comment);
50
		*(.comment);
51
	  *(.note);
51
		*(.note);
52
	}
52
	}
53
}
53
}