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