blob: 467d13a0d5c1314fa99c645ac62f5699ee7cb3d3 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001/* ld script to make UltraLinux kernel */
2
3#include <asm-generic/vmlinux.lds.h>
4
5OUTPUT_FORMAT("elf64-sparc", "elf64-sparc", "elf64-sparc")
6OUTPUT_ARCH(sparc:v9a)
7ENTRY(_start)
8
9jiffies = jiffies_64;
10SECTIONS
11{
David S. Miller56425302005-09-25 16:46:57 -070012 swapper_low_pmd_dir = 0x0000000000402000;
Linus Torvalds1da177e2005-04-16 15:20:36 -070013 . = 0x4000;
14 .text 0x0000000000404000 :
15 {
16 *(.text)
17 SCHED_TEXT
18 LOCK_TEXT
Prasanna S Panchamukhi05e14cb2005-09-06 15:19:30 -070019 KPROBES_TEXT
Linus Torvalds1da177e2005-04-16 15:20:36 -070020 *(.gnu.warning)
21 } =0
22 _etext = .;
23 PROVIDE (etext = .);
24
25 RODATA
26
27 .data :
28 {
29 *(.data)
30 CONSTRUCTORS
31 }
32 .data1 : { *(.data1) }
33 . = ALIGN(64);
34 .data.cacheline_aligned : { *(.data.cacheline_aligned) }
David S. Millerd369ddd2005-07-10 15:45:11 -070035 . = ALIGN(64);
36 .data.read_mostly : { *(.data.read_mostly) }
Linus Torvalds1da177e2005-04-16 15:20:36 -070037 _edata = .;
38 PROVIDE (edata = .);
39 .fixup : { *(.fixup) }
40
41 . = ALIGN(16);
42 __start___ex_table = .;
43 __ex_table : { *(__ex_table) }
44 __stop___ex_table = .;
45
46 . = ALIGN(8192);
47 __init_begin = .;
48 .init.text : {
49 _sinittext = .;
50 *(.init.text)
51 _einittext = .;
52 }
53 .init.data : { *(.init.data) }
54 . = ALIGN(16);
55 __setup_start = .;
56 .init.setup : { *(.init.setup) }
57 __setup_end = .;
58 __initcall_start = .;
59 .initcall.init : {
60 *(.initcall1.init)
61 *(.initcall2.init)
62 *(.initcall3.init)
63 *(.initcall4.init)
64 *(.initcall5.init)
65 *(.initcall6.init)
66 *(.initcall7.init)
67 }
68 __initcall_end = .;
69 __con_initcall_start = .;
70 .con_initcall.init : { *(.con_initcall.init) }
71 __con_initcall_end = .;
72 SECURITY_INIT
73 . = ALIGN(8192);
74 __initramfs_start = .;
75 .init.ramfs : { *(.init.ramfs) }
76 __initramfs_end = .;
77 . = ALIGN(8192);
78 __per_cpu_start = .;
79 .data.percpu : { *(.data.percpu) }
80 __per_cpu_end = .;
81 . = ALIGN(8192);
82 __init_end = .;
83 __bss_start = .;
84 .sbss : { *(.sbss) *(.scommon) }
85 .bss :
86 {
87 *(.dynbss)
88 *(.bss)
89 *(COMMON)
90 }
91 _end = . ;
92 PROVIDE (end = .);
Linus Torvalds1da177e2005-04-16 15:20:36 -070093 /DISCARD/ : { *(.exit.text) *(.exit.data) *(.exitcall.exit) }
David S. Millerd5784b52005-12-28 13:22:54 -080094
95 STABS_DEBUG
96
97 DWARF_DEBUG
Linus Torvalds1da177e2005-04-16 15:20:36 -070098}