]>
Commit | Line | Data |
---|---|---|
221faac5 AB |
1 | OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm") |
2 | OUTPUT_ARCH(arm) | |
3 | ENTRY(_start) | |
4 | SECTIONS | |
5 | { | |
6 | .text 0x0 : { | |
d3819813 | 7 | _text = .; |
221faac5 AB |
8 | *(.text.head) |
9 | *(.text) | |
10 | *(.text.*) | |
11 | *(.gnu.linkonce.t.*) | |
8119f718 SM |
12 | _evtext = .; |
13 | . = ALIGN(4096); | |
f4173af1 | 14 | } |
8119f718 SM |
15 | _etext = .; |
16 | _text_size = . - _text; | |
17 | _text_vsize = _evtext - _text; | |
f4173af1 MTL |
18 | |
19 | . = ALIGN(4096); | |
221faac5 AB |
20 | .data : |
21 | { | |
d3819813 | 22 | _data = .; |
221faac5 AB |
23 | *(.sdata) |
24 | *(.data) | |
25 | *(.data1) | |
8119f718 | 26 | *(.data.*) |
221faac5 AB |
27 | *(.got.plt) |
28 | *(.got) | |
29 | ||
8119f718 SM |
30 | *(.dynamic) |
31 | ||
221faac5 AB |
32 | /* the EFI loader doesn't seem to like a .bss section, so we stick |
33 | it all into .data: */ | |
34 | . = ALIGN(16); | |
35 | _bss = .; | |
36 | *(.sbss) | |
37 | *(.scommon) | |
38 | *(.dynbss) | |
39 | *(.bss) | |
40 | *(COMMON) | |
8119f718 SM |
41 | _evdata = .; |
42 | . = ALIGN(4096); | |
221faac5 AB |
43 | _bss_end = .; |
44 | } | |
8119f718 SM |
45 | _edata = .; |
46 | _data_vsize = _evdata - _data; | |
47 | _data_size = . - _data; | |
221faac5 | 48 | |
8119f718 SM |
49 | /* |
50 | * Note that _sbat must be the beginning of the data, and _esbat must be the | |
51 | * end and must be before any section padding. The sbat self-check uses | |
52 | * _esbat to find the bounds of the data, and if the padding is included, the | |
53 | * CSV parser (correctly) rejects the data as having NUL values in one of the | |
54 | * required columns. | |
55 | */ | |
f4173af1 | 56 | . = ALIGN(4096); |
8119f718 | 57 | .sbat : |
221faac5 | 58 | { |
8119f718 SM |
59 | _sbat = .; |
60 | *(.sbat) | |
61 | *(.sbat.*) | |
62 | _esbat = .; | |
63 | . = ALIGN(4096); | |
64 | _epsbat = .; | |
221faac5 | 65 | } |
8119f718 SM |
66 | _sbat_size = _epsbat - _sbat; |
67 | _sbat_vsize = _esbat - _sbat; | |
68 | ||
f4173af1 | 69 | . = ALIGN(4096); |
8119f718 | 70 | .rodata : |
f4173af1 | 71 | { |
8119f718 | 72 | _rodata = .; |
8119f718 SM |
73 | *(.rodata*) |
74 | *(.srodata) | |
8119f718 SM |
75 | . = ALIGN(16); |
76 | *(.note.gnu.build-id) | |
77 | . = ALIGN(4096); | |
78 | *(.vendor_cert) | |
79 | *(.data.ident) | |
8529e0f7 SM |
80 | . = ALIGN(4096); |
81 | } | |
82 | . = ALIGN(4096); | |
83 | .rela : | |
84 | { | |
85 | *(.rela.dyn) | |
86 | *(.rela.plt) | |
87 | *(.rela.got) | |
88 | *(.rela.data) | |
89 | *(.rela.data*) | |
90 | } | |
91 | . = ALIGN(4096); | |
92 | .dyn : | |
93 | { | |
94 | *(.dynsym) | |
95 | *(.dynstr) | |
8119f718 SM |
96 | _evrodata = .; |
97 | . = ALIGN(4096); | |
f4173af1 | 98 | } |
8119f718 SM |
99 | _erodata = .; |
100 | _rodata_size = . - _rodata; | |
101 | _rodata_vsize = _evrodata - _rodata; | |
031e5cce | 102 | _alldata_size = . - _data; |
221faac5 | 103 | |
221faac5 AB |
104 | /DISCARD/ : |
105 | { | |
106 | *(.rel.reloc) | |
107 | *(.eh_frame) | |
108 | *(.note.GNU-stack) | |
109 | } | |
110 | .comment 0 : { *(.comment) } | |
111 | } |