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 SCHED_TEXT 16 LOCK_TEXT 17 *(.gnu.warning) 18 } =0 19 _etext = .; 20 PROVIDE (etext = .); 21 RODATA 22 .data : 23 { 24 *(.data) 25 CONSTRUCTORS 26 } 27 .data1 : { *(.data1) } 28 _edata = .; 29 PROVIDE (edata = .); 30 __start___fixup = .; 31 .fixup : { *(.fixup) } 32 __stop___fixup = .; 33 __start___ex_table = .; 34 __ex_table : { *(__ex_table) } 35 __stop___ex_table = .; 36 37 . = ALIGN(4096); 38 __init_begin = .; 39 .init.text : { 40 _sinittext = .; 41 *(.init.text) 42 _einittext = .; 43 } 44 __init_text_end = .; 45 .init.data : { *(.init.data) } 46 . = ALIGN(16); 47 __setup_start = .; 48 .init.setup : { *(.init.setup) } 49 __setup_end = .; 50 __initcall_start = .; 51 .initcall.init : { 52 *(.initcall1.init) 53 *(.initcall2.init) 54 *(.initcall3.init) 55 *(.initcall4.init) 56 *(.initcall5.init) 57 *(.initcall6.init) 58 *(.initcall7.init) 59 } 60 __initcall_end = .; 61 __con_initcall_start = .; 62 .con_initcall.init : { *(.con_initcall.init) } 63 __con_initcall_end = .; 64 SECURITY_INIT 65 . = ALIGN(4096); 66 __initramfs_start = .; 67 .init.ramfs : { *(.init.ramfs) } 68 __initramfs_end = .; 69 . = ALIGN(32); 70 __per_cpu_start = .; 71 .data.percpu : { *(.data.percpu) } 72 __per_cpu_end = .; 73 . = ALIGN(4096); 74 __init_end = .; 75 . = ALIGN(32); 76 .data.cacheline_aligned : { *(.data.cacheline_aligned) } 77 78 __bss_start = .; 79 .sbss : { *(.sbss) *(.scommon) } 80 .bss : 81 { 82 *(.dynbss) 83 *(.bss) 84 *(COMMON) 85 } 86 _end = . ; 87 PROVIDE (end = .); 88 /DISCARD/ : { *(.exit.text) *(.exit.data) *(.exitcall.exit) } 89 90 STABS_DEBUG 91 92 DWARF_DEBUG 93} 94