xref: /freebsd-13-stable/stand/efi/loader/arch/i386/ldscript.i386 (revision 8ad303d68cec3ee1133550de37e0009502621e50)
1OUTPUT_FORMAT("elf32-i386-freebsd", "elf32-i386-freebsd", "elf32-i386-freebsd")
2OUTPUT_ARCH(i386)
3ENTRY(_start)
4SECTIONS
5{
6  /* Read-only sections, merged into text segment: */
7  . = 0;
8  ImageBase = .;
9  . = SIZEOF_HEADERS;
10  . = ALIGN(4096);
11  .text		: {
12    *(.text .stub .text.* .gnu.linkonce.t.*)
13    /* .gnu.warning sections are handled specially by elf32.em. */
14    *(.gnu.warning)
15    *(.plt)
16  } =0xCCCCCCCC
17  . = ALIGN(4096);
18  .data		: {
19    *(.rodata .rodata.* .gnu.linkonce.r.*)
20    *(.rodata1)
21    *(.sdata2 .sdata2.* .gnu.linkonce.s2.*)
22    *(.sbss2 .sbss2.* .gnu.linkonce.sb2.*)
23    *(.opd)
24    *(.data .data.* .gnu.linkonce.d.*)
25    *(.data1)
26    *(.plabel)
27    *(.dynbss)
28    *(.bss .bss.* .gnu.linkonce.b.*)
29    *(COMMON)
30  }
31  . = ALIGN(4096);
32  set_Xcommand_set	: {
33    __start_set_Xcommand_set = .;
34    *(set_Xcommand_set)
35    __stop_set_Xcommand_set = .;
36  }
37  set_Xficl_compile_set	: {
38    __start_set_Xficl_compile_set = .;
39    *(set_Xficl_compile_set)
40    __stop_set_Xficl_compile_set = .;
41  }
42  . = ALIGN(4096);
43  __gp = .;
44  .sdata	: {
45    *(.got.plt .got)
46    *(.sdata .sdata.* .gnu.linkonce.s.*)
47    *(dynsbss)
48    *(.sbss .sbss.* .gnu.linkonce.sb.*)
49    *(.scommon)
50  }
51  . = ALIGN(4096);
52  .dynamic	: { *(.dynamic) }
53  . = ALIGN(4096);
54  .rel.dyn	: {
55    *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*)
56    *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*)
57    *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*)
58    *(.rel.got)
59    *(.rel.sdata .rel.sdata.* .rel.gnu.linkonce.s.*)
60    *(.rel.sbss .rel.sbss.* .rel.gnu.linkonce.sb.*)
61    *(.rel.sdata2 .rel.sdata2.* .rel.gnu.linkonce.s2.*)
62    *(.rel.sbss2 .rel.sbss2.* .rel.gnu.linkonce.sb2.*)
63    *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*)
64    *(.rel.plt)
65    *(.relset_*)
66    *(.rel.dyn .rel.dyn.*)
67  }
68  . = ALIGN(4096);
69  .reloc	: { *(.reloc) }
70  . = ALIGN(4096);
71  .hash		: { *(.hash) }
72  . = ALIGN(4096);
73  .dynsym	: { *(.dynsym) }
74  . = ALIGN(4096);
75  .dynstr	: { *(.dynstr) }
76}
77