xref: /DragonStub/gnuefi/elf_x86_64_fbsd_efi.lds (revision 530d68ba191850edafc6da22cb2df55bec0c5fa5)
1/* Same as elf_x86_64_efi.lds, except for OUTPUT_FORMAT below - KEEP IN SYNC */
2OUTPUT_FORMAT("elf64-x86-64-freebsd", "elf64-x86-64-freebsd", "elf64-x86-64-freebsd")
3OUTPUT_ARCH(i386:x86-64)
4ENTRY(_start)
5SECTIONS
6{
7  . = 0;
8  ImageBase = .;
9  .hash : { *(.hash) }	/* this MUST come first! */
10  . = ALIGN(4096);
11  .eh_frame :
12  {
13    *(.eh_frame)
14  }
15  . = ALIGN(4096);
16  .text :
17  {
18   *(.text)
19  }
20  .reloc :
21  {
22   *(.reloc)
23  }
24  . = ALIGN(4096);
25  .data :
26  {
27   *(.rodata*)
28   *(.got.plt)
29   *(.got)
30   *(.data*)
31   *(.sdata)
32   /* the EFI loader doesn't seem to like a .bss section, so we stick
33      it all into .data: */
34   *(.sbss)
35   *(.scommon)
36   *(.dynbss)
37   *(.bss)
38   *(COMMON)
39   *(.rel.local)
40  }
41  . = ALIGN(4096);
42  .dynamic  : { *(.dynamic) }
43  . = ALIGN(4096);
44  .rela :
45  {
46    *(.rela.data*)
47    *(.rela.got)
48    *(.rela.stab)
49  }
50  . = ALIGN(4096);
51  .dynsym   : { *(.dynsym) }
52  . = ALIGN(4096);
53  .dynstr   : { *(.dynstr) }
54  . = ALIGN(4096);
55  .ignored.reloc :
56  {
57    *(.rela.reloc)
58  }
59}
60