2 _load = 0x10000; /* kernel load address */
4 OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386")
7 SEARCH_DIR(/lib); SEARCH_DIR(/usr/lib); SEARCH_DIR(/usr/local/lib);
11 . = _load + SIZEOF_HEADERS;
15 PROVIDE_HIDDEN (__rel_iplt_start = .);
17 PROVIDE_HIDDEN (__rel_iplt_end = .);
21 _kernel_image_start = .;
26 *(.text .stub .text.* .gnu.linkonce.t.*)
36 *(.rodata .rodata.* .gnu.linkonce.r.*)
37 /* Discarding the build-id section will yield to an error from the
38 * linker so just put it here */
43 PROVIDE (__preinit_array_start = .);
45 PROVIDE (__preinit_array_end = .);
49 PROVIDE (__init_array_start = .);
51 PROVIDE (__init_array_end = .);
55 PROVIDE (__fini_array_start = .);
57 PROVIDE (__fini_array_end = .);
66 KEEP(*(.initkip.version))
67 KEEP(*(.initkip.features))
68 KEEP(*(.initkip.features.fini))
74 PROVIDE (_kernel_data_start = .);
75 *(.data .data.* .gnu.linkonce.d.*)
78 __PER_CPU_CTORS_END__ = .;
79 KEEP (*(.ctors.00010))
80 KEEP (*(.ctors.00009))
81 KEEP (*(.ctors.00008))
82 KEEP (*(.ctors.00007))
83 KEEP (*(.ctors.00006))
84 KEEP (*(.ctors.00005))
85 KEEP (*(.ctors.00004))
86 KEEP (*(.ctors.00003))
87 KEEP (*(.ctors.00002))
88 KEEP (*(.ctors.00001))
89 __PER_CPU_CTORS_LIST__ = .;
92 PROVIDE (_log_table = .);
94 * The section must start with ".debug" because else the linker
95 * complains about references to discarded sections
97 KEEP(*(SORT(.debug.jdb.log_table)))
98 PROVIDE (_log_table_end = .);
102 *(.tdata .tdata.* .gnu.linkonce.td.*)
105 *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
108 .eh_frame : { KEEP (*(.eh_frame)) }
109 .gcc_except_table : { *(.gcc_except_table) }
112 KEEP (*crtbegin.o(.ctors))
113 KEEP (*(EXCLUDE_FILE (*crtend.o ) .ctors))
114 KEEP (*(SORT(.ctors.*)))
119 KEEP (*crtbegin.o(.dtors))
120 KEEP (*(EXCLUDE_FILE (*crtend.o ) .dtors))
121 KEEP (*(SORT(.dtors.*)))
132 PROVIDE (_per_cpu_data_start = .);
135 PROVIDE (_per_cpu_data_end = .);
138 PROVIDE (_edata = .);
142 PROVIDE (_initcall_start = .);
145 PROVIDE (_initcall_end = .);
149 .bss : { /* Linux 2.2 requires BSS to be last */
151 *(.bss .bss.* .gnu.linkonce.b.*)
157 /* make the kip_init code happy */
158 PROVIDE (_boot_sys_start = .);
159 PROVIDE (_boot_sys_end = .);