| #include <asm-generic/vmlinux.lds.h> | |
| .fini : { *(.fini) } =0x9090 | |
| _etext = .; | |
| PROVIDE (etext = .); | |
| . = ALIGN(4096); | |
| _sdata = .; | |
| PROVIDE (sdata = .); | |
| RODATA | |
| .unprotected : { *(.unprotected) } | |
| . = ALIGN(4096); | |
| PROVIDE (_unprotected_end = .); | |
| . = ALIGN(4096); | |
| .note : { *(.note.*) } | |
| __ex_table : { | |
| __start___ex_table = .; | |
| *(__ex_table) | |
| __stop___ex_table = .; | |
| } | |
| BUG_TABLE | |
| .uml.setup.init : { | |
| __uml_setup_start = .; | |
| *(.uml.setup.init) | |
| __uml_setup_end = .; | |
| } | |
| .uml.help.init : { | |
| __uml_help_start = .; | |
| *(.uml.help.init) | |
| __uml_help_end = .; | |
| } | |
| .uml.postsetup.init : { | |
| __uml_postsetup_start = .; | |
| *(.uml.postsetup.init) | |
| __uml_postsetup_end = .; | |
| } | |
| .init.setup : { | |
| __setup_start = .; | |
| *(.init.setup) | |
| __setup_end = .; | |
| } | |
| . = ALIGN(32); | |
| .data.percpu : { | |
| __per_cpu_start = . ; | |
| *(.data.percpu) | |
| __per_cpu_end = . ; | |
| } | |
| .initcall.init : { | |
| __initcall_start = .; | |
| INITCALLS | |
| __initcall_end = .; | |
| } | |
| .con_initcall.init : { | |
| __con_initcall_start = .; | |
| *(.con_initcall.init) | |
| __con_initcall_end = .; | |
| } | |
| .uml.initcall.init : { | |
| __uml_initcall_start = .; | |
| *(.uml.initcall.init) | |
| __uml_initcall_end = .; | |
| } | |
| __init_end = .; | |
| SECURITY_INIT | |
| .exitcall : { | |
| __exitcall_begin = .; | |
| *(.exitcall.exit) | |
| __exitcall_end = .; | |
| } | |
| .uml.exitcall : { | |
| __uml_exitcall_begin = .; | |
| *(.uml.exitcall.exit) | |
| __uml_exitcall_end = .; | |
| } | |
| . = ALIGN(4); | |
| .altinstructions : { | |
| __alt_instructions = .; | |
| *(.altinstructions) | |
| __alt_instructions_end = .; | |
| } | |
| .altinstr_replacement : { *(.altinstr_replacement) } | |
| /* .exit.text is discard at runtime, not link time, to deal with references | |
| from .altinstructions and .eh_frame */ | |
| .exit.text : { *(.exit.text) } | |
| .exit.data : { *(.exit.data) } | |
| .preinit_array : { | |
| __preinit_array_start = .; | |
| *(.preinit_array) | |
| __preinit_array_end = .; | |
| } | |
| .init_array : { | |
| __init_array_start = .; | |
| *(.init_array) | |
| __init_array_end = .; | |
| } | |
| .fini_array : { | |
| __fini_array_start = .; | |
| *(.fini_array) | |
| __fini_array_end = .; | |
| } | |
| . = ALIGN(4096); | |
| .init.ramfs : { | |
| __initramfs_start = .; | |
| *(.init.ramfs) | |
| __initramfs_end = .; | |
| } | |
| /* Sections to be discarded */ | |
| /DISCARD/ : { | |
| *(.exitcall.exit) | |
| } | |