]> git.proxmox.com Git - efi-boot-shim.git/blob - elf_arm_efi.lds
New upstream version 15.4
[efi-boot-shim.git] / elf_arm_efi.lds
1 OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")
2 OUTPUT_ARCH(arm)
3 ENTRY(_start)
4 SECTIONS
5 {
6 .text 0x0 : {
7 _text = .;
8 *(.text.head)
9 *(.text)
10 *(.text.*)
11 *(.gnu.linkonce.t.*)
12 _evtext = .;
13 . = ALIGN(4096);
14 }
15 _etext = .;
16 _text_size = . - _text;
17 _text_vsize = _evtext - _text;
18
19 . = ALIGN(4096);
20 .data :
21 {
22 _data = .;
23 *(.sdata)
24 *(.data)
25 *(.data1)
26 *(.data.*)
27 *(.got.plt)
28 *(.got)
29
30 *(.dynamic)
31
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)
41 _evdata = .;
42 . = ALIGN(4096);
43 _bss_end = .;
44 }
45 _edata = .;
46 _data_vsize = _evdata - _data;
47 _data_size = . - _data;
48
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 */
56 . = ALIGN(4096);
57 .sbat :
58 {
59 _sbat = .;
60 *(.sbat)
61 *(.sbat.*)
62 _esbat = .;
63 . = ALIGN(4096);
64 _epsbat = .;
65 }
66 _sbat_size = _epsbat - _sbat;
67 _sbat_vsize = _esbat - _sbat;
68
69 . = ALIGN(4096);
70 .rodata :
71 {
72 _rodata = .;
73 *(.rel.dyn)
74 *(.rel.plt)
75 *(.rel.got)
76 *(.rel.data)
77 *(.rel.data*)
78
79 *(.rodata*)
80 *(.srodata)
81 *(.dynsym)
82 *(.dynstr)
83 . = ALIGN(16);
84 *(.note.gnu.build-id)
85 . = ALIGN(4096);
86 *(.vendor_cert)
87 *(.data.ident)
88 _evrodata = .;
89 . = ALIGN(4096);
90 }
91 _erodata = .;
92 _rodata_size = . - _rodata;
93 _rodata_vsize = _evrodata - _rodata;
94 _alldata_size = . - _data;
95
96 /DISCARD/ :
97 {
98 *(.rel.reloc)
99 *(.eh_frame)
100 *(.note.GNU-stack)
101 }
102 .comment 0 : { *(.comment) }
103 }