source: mainline/arch/ia32/_link.ld@ 649d96b

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

Resolved mapping of e820 boot area, so that it can be accessed as
e820table from 32-bit mode and e820table_boot from real mode.

  • Property mode set to 100644
File size: 1.3 KB
RevLine 
[da585a52]1/** IA-32 linker script
[f761f1eb]2 *
[dcbc8be]3 * umapped section:
4 * kernel text
5 * kernel data
6 * mapped section:
7 * kernel text
8 * kernel data
[f761f1eb]9 */
10
11OUTPUT_FORMAT(binary)
12ENTRY(kernel_image_start)
13
14SECTIONS {
[ac5d02b]15 .unmapped 0x8000: AT (0x8000) {
16 unmapped_ktext_start = .;
17 *(K_TEXT_START);
[d47f0e1]18 *(K_TEXT_START_2);
[ac5d02b]19 unmapped_ktext_end = .;
20 unmapped_kdata_start = .;
21 *(K_DATA_START);
22 unmapped_kdata_end = .;
23 }
[f761f1eb]24
[5dce48b9]25 .mapped (0x80100000+SIZEOF(.unmapped)+0x8000) : AT (0x8000+SIZEOF(.unmapped)) {
[ac5d02b]26 ktext_start = .;
[32f6e1bd]27 *(BOOT_DATA)
[ac5d02b]28 *(.text);
29 ktext_end = .;
[f761f1eb]30
[ac5d02b]31 kdata_start = .;
32 *(.data); /* initialized data */
33 *(.rodata*); /* string literals */
34 *(COMMON); /* global variables */
[c832cc0a]35 hardcoded_load_address = .;
[5dce48b9]36 LONG(0x80108000);
[c832cc0a]37 hardcoded_ktext_size = .;
38 LONG(ktext_end - ktext_start + (unmapped_ktext_end - unmapped_ktext_start));
39 hardcoded_kdata_size = .;
40 LONG(kdata_end - kdata_start + (unmapped_kdata_end - unmapped_kdata_start));
[ac5d02b]41 *(.bss); /* uninitialized static variables */
42 *(K_DATA_END);
43 kdata_end = .;
44 }
[5dce48b9]45
46 _hardcoded_kernel_size = (ktext_end - ktext_start) + (unmapped_ktext_end - unmapped_ktext_start) + (kdata_end - kdata_start) + (unmapped_kdata_end - unmapped_kdata_start);
[32f6e1bd]47
48 _map_address = 0x80100000;
49 e820table_boot = e820table - _map_address;
50 e820counter_boot = e820counter - _map_address;
[f761f1eb]51}
Note: See TracBrowser for help on using the repository browser.