1 /* ld script to make i386 Linux kernel
2 * Written by Martin Mares <mj@atrey.karlin.mff.cuni.cz>;
4 OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386")
9 . = 0xC0000000 + 0x100000;
10 _text = .; /* Text and read-only data */
16 .text.lock : { *(.text.lock) } /* out-of-line lock text */
18 _etext = .; /* End of text section */
20 .rodata : { *(.rodata) }
21 .kstrtab : { *(.kstrtab) }
23 . = ALIGN(16); /* Exception table */
24 __start___ex_table = .;
25 __ex_table : { *(__ex_table) }
26 __stop___ex_table = .;
28 __start___ksymtab = .; /* Kernel symbol table */
29 __ksymtab : { *(__ksymtab) }
37 _edata = .; /* End of data section */
39 . = ALIGN(8192); /* init_task */
40 .data.init_task : { *(.data.init_task) }
42 . = ALIGN(4096); /* Init code and data */
44 .text.init : { *(.text.init) }
45 .data.init : { *(.data.init) }
48 .setup.init : { *(.setup.init) }
51 .initcall.init : { *(.initcall.init) }
57 .data.page_aligned : { *(.data.idt) }
60 .data.cacheline_aligned : { *(.data.cacheline_aligned) }
62 __bss_start = .; /* BSS */
68 /* Sections to be discarded */
75 /* Stabs debugging sections. */
76 .stab 0 : { *(.stab) }
77 .stabstr 0 : { *(.stabstr) }
78 .stab.excl 0 : { *(.stab.excl) }
79 .stab.exclstr 0 : { *(.stab.exclstr) }
80 .stab.index 0 : { *(.stab.index) }
81 .stab.indexstr 0 : { *(.stab.indexstr) }
82 .comment 0 : { *(.comment) }