1/* ld script to make SparcLinux kernel */ 2 3#include <asm-generic/vmlinux.lds.h> 4 5OUTPUT_FORMAT("elf32-sparc", "elf32-sparc", "elf32-sparc") 6OUTPUT_ARCH(sparc) 7ENTRY(_start) 8jiffies = jiffies_64 + 4; 9SECTIONS 10{ 11 . = 0x10000 + SIZEOF_HEADERS; 12 .text 0xf0004000 : 13 { 14 _text = .; 15 TEXT_TEXT 16 SCHED_TEXT 17 LOCK_TEXT 18 *(.gnu.warning) 19 } =0 20 _etext = .; 21 PROVIDE (etext = .); 22 RODATA 23 .data : 24 { 25 DATA_DATA 26 CONSTRUCTORS 27 } 28 .data1 : { *(.data1) } 29 _edata = .; 30 PROVIDE (edata = .); 31 __start___fixup = .; 32 .fixup : { *(.fixup) } 33 __stop___fixup = .; 34 __start___ex_table = .; 35 __ex_table : { *(__ex_table) } 36 __stop___ex_table = .; 37 38 NOTES 39 40 . = ALIGN(4096); 41 __init_begin = .; 42 _sinittext = .; 43 .init.text : { 44 *(.init.text) 45 } 46 _einittext = .; 47 __init_text_end = .; 48 .init.data : { *(.init.data) } 49 . = ALIGN(16); 50 __setup_start = .; 51 .init.setup : { *(.init.setup) } 52 __setup_end = .; 53 __initcall_start = .; 54 .initcall.init : { 55 INITCALLS 56 } 57 __initcall_end = .; 58 __con_initcall_start = .; 59 .con_initcall.init : { *(.con_initcall.init) } 60 __con_initcall_end = .; 61 SECURITY_INIT 62 63#ifdef CONFIG_BLK_DEV_INITRD 64 . = ALIGN(4096); 65 __initramfs_start = .; 66 .init.ramfs : { *(.init.ramfs) } 67 __initramfs_end = .; 68#endif 69 70 PERCPU(4096) 71 . = ALIGN(4096); 72 __init_end = .; 73 . = ALIGN(32); 74 .data.cacheline_aligned : { *(.data.cacheline_aligned) } 75 76 __bss_start = .; 77 .sbss : { *(.sbss) *(.scommon) } 78 .bss : 79 { 80 *(.dynbss) 81 *(.bss) 82 *(COMMON) 83 } 84 _end = . ; 85 PROVIDE (end = .); 86 /DISCARD/ : { *(.exit.text) *(.exit.data) *(.exitcall.exit) } 87 88 STABS_DEBUG 89 90 DWARF_DEBUG 91} 92