[PATCH] m68k: consolidate initcall sections
[linux-2.6.git] / arch / m68k / kernel / vmlinux-sun3.lds
1 /* ld script to make m68k Linux kernel */
2
3 #include <asm-generic/vmlinux.lds.h>
4
5 OUTPUT_FORMAT("elf32-m68k", "elf32-m68k", "elf32-m68k")
6 OUTPUT_ARCH(m68k)
7 ENTRY(_start)
8 jiffies = jiffies_64 + 4;
9 SECTIONS
10 {
11   . = 0xE004000;
12   _text = .;                    /* Text and read-only data */
13   .text : {
14         *(.head)
15         *(.text)
16         SCHED_TEXT
17         LOCK_TEXT
18         *(.fixup)
19         *(.gnu.warning)
20         } :text = 0x4e75
21         RODATA
22
23   _etext = .;                   /* End of text section */
24
25   .data : {                     /* Data */
26         *(.data)
27         CONSTRUCTORS
28         . = ALIGN(16);          /* Exception table */
29         __start___ex_table = .;
30         *(__ex_table)
31         __stop___ex_table = .;
32         } :data
33   /* End of data goes *here* so that freeing init code works properly. */
34   _edata = .;
35
36   /* will be freed after init */
37   . = ALIGN(8192);      /* Init code and data */
38 __init_begin = .;
39         .init.text : {
40                 _sinittext = .;
41                 *(.init.text)
42                 _einittext = .;
43         }
44         .init.data : { *(.init.data) }
45         . = ALIGN(16);
46         __setup_start = .;
47         .init.setup : { *(.init.setup) }
48         __setup_end = .;
49         __initcall_start = .;
50         .initcall.init : {
51                 INITCALLS
52         }
53         __initcall_end = .;
54         __con_initcall_start = .;
55         .con_initcall.init : { *(.con_initcall.init) }
56         __con_initcall_end = .;
57         SECURITY_INIT
58         . = ALIGN(8192);
59         __initramfs_start = .;
60         .init.ramfs : { *(.init.ramfs) }
61         __initramfs_end = .;
62         . = ALIGN(8192);
63         __init_end = .;
64         .data.init.task : { *(.data.init_task) }
65
66
67   .bss : { *(.bss) }            /* BSS */
68
69   _end = . ;
70
71   /* Sections to be discarded */
72   /DISCARD/ : {
73         *(.exit.text)
74         *(.exit.data)
75         *(.exitcall.exit)
76         }
77
78   .crap : {
79         /* Stabs debugging sections.  */
80         *(.stab)
81         *(.stabstr)
82         *(.stab.excl)
83         *(.stab.exclstr)
84         *(.stab.index)
85         *(.stab.indexstr)
86         *(.comment)
87         *(.note)
88   }
89
90 }