blob: b73e6b9067eddf5ba48ea26d503c607f67d2ea60 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001/* 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 {
Eric W. Biedermanfd593d12006-12-07 02:14:04 +010014 _text = .;
Linus Torvalds1da177e2005-04-16 15:20:36 -070015 *(.text)
16 SCHED_TEXT
17 LOCK_TEXT
18 *(.gnu.warning)
19 } =0
20 _etext = .;
21 PROVIDE (etext = .);
22 RODATA
23 .data :
24 {
25 *(.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 . = ALIGN(4096);
39 __init_begin = .;
Martin Habetsab5da282006-10-11 14:58:30 -070040 _sinittext = .;
Linus Torvalds1da177e2005-04-16 15:20:36 -070041 .init.text : {
Linus Torvalds1da177e2005-04-16 15:20:36 -070042 *(.init.text)
Linus Torvalds1da177e2005-04-16 15:20:36 -070043 }
Martin Habetsab5da282006-10-11 14:58:30 -070044 _einittext = .;
Linus Torvalds1da177e2005-04-16 15:20:36 -070045 __init_text_end = .;
46 .init.data : { *(.init.data) }
47 . = ALIGN(16);
48 __setup_start = .;
49 .init.setup : { *(.init.setup) }
50 __setup_end = .;
51 __initcall_start = .;
52 .initcall.init : {
Andrew Morton61ce1ef2006-10-27 11:41:44 -070053 INITCALLS
Linus Torvalds1da177e2005-04-16 15:20:36 -070054 }
55 __initcall_end = .;
56 __con_initcall_start = .;
57 .con_initcall.init : { *(.con_initcall.init) }
58 __con_initcall_end = .;
59 SECURITY_INIT
60 . = ALIGN(4096);
61 __initramfs_start = .;
62 .init.ramfs : { *(.init.ramfs) }
63 __initramfs_end = .;
64 . = ALIGN(32);
65 __per_cpu_start = .;
66 .data.percpu : { *(.data.percpu) }
67 __per_cpu_end = .;
68 . = ALIGN(4096);
69 __init_end = .;
70 . = ALIGN(32);
71 .data.cacheline_aligned : { *(.data.cacheline_aligned) }
72
73 __bss_start = .;
74 .sbss : { *(.sbss) *(.scommon) }
75 .bss :
76 {
77 *(.dynbss)
78 *(.bss)
79 *(COMMON)
80 }
81 _end = . ;
82 PROVIDE (end = .);
Linus Torvalds1da177e2005-04-16 15:20:36 -070083 /DISCARD/ : { *(.exit.text) *(.exit.data) *(.exitcall.exit) }
David S. Millerd5784b52005-12-28 13:22:54 -080084
85 STABS_DEBUG
86
87 DWARF_DEBUG
Linus Torvalds1da177e2005-04-16 15:20:36 -070088}