source: mainline/arch/ia32/_link.ld@ dd80fc6

lfn serial ticket/834-toolchain-update topic/msim-upgrade topic/simplify-dev-export
Last change on this file since dd80fc6 was ab08b42, checked in by Ondrej Palkovsky <ondrap@…>, 20 years ago

Added symbol table lookup in exceptions.
This breaks ia64 & ppc architecture compiles.

  • Property mode set to 100644
File size: 1.6 KB
Line 
1/** IA-32 linker script
2 *
3 * umapped section:
4 * kernel text
5 * kernel data
6 * mapped section:
7 * kernel text
8 * kernel data
9 */
10
11OUTPUT_FORMAT(binary)
12ENTRY(kernel_image_start)
13
14SECTIONS {
15 .unmapped 0x8000: AT (0x8000) {
16 unmapped_ktext_start = .;
17 *(K_TEXT_START);
18 *(K_TEXT_START_2);
19 unmapped_ktext_end = .;
20
21 unmapped_kdata_start = .;
22 *(K_DATA_START);
23 unmapped_kdata_end = .;
24 }
25
26 .mapped (0x80100000+0x8000+SIZEOF(.unmapped)): AT (0x8000+SIZEOF(.unmapped)) {
27 ktext_start = .;
28 *(BOOT_DATA)
29 *(.text);
30 ktext_end = .;
31
32 kdata_start = .;
33 *(.data); /* initialized data */
34 *(.rodata*); /* string literals */
35 *(COMMON); /* global variables */
36 hardcoded_load_address = .;
37 LONG(0x80108000);
38 hardcoded_ktext_size = .;
39 LONG(ktext_end - ktext_start + (unmapped_ktext_end - unmapped_ktext_start));
40 hardcoded_kdata_size = .;
41 LONG(kdata_end - kdata_start + (unmapped_kdata_end - unmapped_kdata_start));
42 hardcoded_unmapped_ktext_size = .;
43 LONG(unmapped_ktext_end - unmapped_ktext_start);
44 hardcoded_unmapped_kdata_size = .;
45 LONG(unmapped_kdata_end - unmapped_kdata_start);
46 *(.bss); /* uninitialized static variables */
47 *(K_DATA_END);
48
49 symbol_table = .;
50 *(symtab.*); /* Symbol table, must be LAST symbol!*/
51
52 kdata_end = .;
53 }
54
55 _hardcoded_kernel_size = (ktext_end - ktext_start) + (unmapped_ktext_end - unmapped_ktext_start) + (kdata_end - kdata_start) + (unmapped_kdata_end - unmapped_kdata_start);
56
57 _map_address = 0x80100000;
58 e820table_boot = e820table - _map_address;
59 e820counter_boot = e820counter - _map_address;
60}
Note: See TracBrowser for help on using the repository browser.