Subversion Repositories HelenOS-historic

Rev

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

Rev 272 Rev 455
1
/*
-
 
2
 *  IA-64 linker script
1
/** IA-64 linker script
3
 *
2
 *
4
 *  It is ELF format, but its only section looks like this:
3
 *  It is ELF format, but its only section looks like this:
5
 *  kernel text
4
 *  kernel text
6
 *  kernel data
5
 *  kernel data
7
 *
6
 *
8
 */
7
 */
9
 
8
 
-
 
9
#define __ASM__
-
 
10
 
10
OUTPUT_FORMAT(elf64-ia64-little)
11
OUTPUT_FORMAT(elf64-ia64-little)
11
ENTRY(kernel_image_start)
12
ENTRY(kernel_image_start)
12
 
13
 
13
SECTIONS {
14
SECTIONS {
14
	.image 0x0000000000001000: AT (0x0000000000001000) { 
15
	.image 0x0000000000001000: AT (0x0000000000001000) { 
15
		ktext_start = .;
16
		ktext_start = .;
16
		*(K_TEXT_START);
17
		*(K_TEXT_START);
17
		*(.text)
18
		*(.text)
18
		ktext_end = .;
19
		ktext_end = .;
19
		
20
		
20
		kdata_start = .;
21
		kdata_start = .;
21
		*(K_DATA_START)
22
		*(K_DATA_START)
22
		*(.rodata .rodata.*)
23
		*(.rodata .rodata.*)
23
		*(.opd)
24
		*(.opd)
24
		*(.data)
25
		*(.data)
25
		*(.got .got.*)
26
		*(.got .got.*)
26
		*(.sdata)
27
		*(.sdata)
27
		*(.sbss)
28
		*(.sbss)
28
		*(.scommon)
29
		*(.scommon)
29
		*(.bss)
30
		*(.bss)
30
		*(COMMON);
31
		*(COMMON);
31
 
32
 
32
                symbol_table = .;
33
                symbol_table = .;
33
                *(symtab.*);            /* Symbol table, must be LAST symbol!*/
34
                *(symtab.*);            /* Symbol table, must be LAST symbol!*/
34
 
35
 
35
		kdata_end = .;
36
		kdata_end = .;
36
	}
37
	}
37
 
38
 
38
	_hardcoded_ktext_size = ktext_end - ktext_start;
39
	_hardcoded_ktext_size = ktext_end - ktext_start;
39
	_hardcoded_kdata_size = kdata_end - kdata_start;
40
	_hardcoded_kdata_size = kdata_end - kdata_start;
40
	_hardcoded_load_address = 0x0000000000001000;
41
	_hardcoded_load_address = 0x0000000000001000;
41
 
42
 
42
}
43
}
43
 
44