GNU Linux-libre 4.14.266-gnu1
[releases.git] / arch / um / include / asm / common.lds.S
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #include <asm-generic/vmlinux.lds.h>
3
4   .fini      : { *(.fini)    } =0x9090
5   _etext = .;
6   PROVIDE (etext = .);
7
8   . = ALIGN(4096);
9   _sdata = .;
10   PROVIDE (sdata = .);
11
12   RODATA
13
14   .unprotected : { *(.unprotected) }
15   . = ALIGN(4096);
16   PROVIDE (_unprotected_end = .);
17
18   . = ALIGN(4096);
19   NOTES
20   EXCEPTION_TABLE(0)
21
22   BUG_TABLE
23
24   .uml.setup.init : {
25         __uml_setup_start = .;
26         *(.uml.setup.init)
27         __uml_setup_end = .;
28   }
29         
30   .uml.help.init : {
31         __uml_help_start = .;
32         *(.uml.help.init)
33         __uml_help_end = .;
34   }
35         
36   .uml.postsetup.init : {
37         __uml_postsetup_start = .;
38         *(.uml.postsetup.init)
39         __uml_postsetup_end = .;
40   }
41         
42   .init.setup : {
43         INIT_SETUP(0)
44   }
45
46   PERCPU_SECTION(32)
47         
48   .initcall.init : {
49         INIT_CALLS
50   }
51
52   .con_initcall.init : {
53         CON_INITCALL
54   }
55
56   .uml.initcall.init : {
57         __uml_initcall_start = .;
58         *(.uml.initcall.init)
59         __uml_initcall_end = .;
60   }
61
62   SECURITY_INIT
63
64   .exitcall : {
65         __exitcall_begin = .;
66         *(.exitcall.exit)
67         __exitcall_end = .;
68   }
69
70   .uml.exitcall : {
71         __uml_exitcall_begin = .;
72         *(.uml.exitcall.exit)
73         __uml_exitcall_end = .;
74   }
75
76   . = ALIGN(4);
77   .altinstructions : {
78         __alt_instructions = .;
79         *(.altinstructions)
80         __alt_instructions_end = .;
81   }
82   .altinstr_replacement : { *(.altinstr_replacement) }
83   /* .exit.text is discard at runtime, not link time, to deal with references
84      from .altinstructions and .eh_frame */
85   .exit.text : { EXIT_TEXT }
86   .exit.data : { *(.exit.data) }
87
88   .preinit_array : {
89         __preinit_array_start = .;
90         *(.preinit_array)
91         __preinit_array_end = .;
92   }
93   .init_array : {
94         __init_array_start = .;
95         *(.init_array)
96         __init_array_end = .;
97   }
98   .fini_array : {
99         __fini_array_start = .;
100         *(.fini_array)
101         __fini_array_end = .;
102   }
103
104    . = ALIGN(4096);
105   .init.ramfs : {
106         INIT_RAM_FS
107   }
108