sys/boot: Unbreak efi build with WORLD_LDVER=ld.bfd.
[dragonfly.git] / sys / boot / efi / loader / arch / x86_64 / ldscript.x86_64
1 /* $FreeBSD: head/sys/boot/efi/loader/arch/amd64/ldscript.amd64 280950 2015-04-01 08:30:40Z andrew $ */
2 OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64")
3 OUTPUT_ARCH(i386:x86-64)
4 ENTRY(_start)
5 SECTIONS
6 {
7   /* Read-only sections, merged into text segment: */
8   . = 0;
9   ImageBase = .;
10   .hash : { *(.hash) }  /* this MUST come first! */
11   . = ALIGN(4096);
12   .eh_frame :
13   {
14     *(.eh_frame)
15   }
16   . = ALIGN(4096);
17   .text         : {
18     *(.text .stub .text.* .gnu.linkonce.t.*)
19     /* .gnu.warning sections are handled specially by elf32.em. */
20     *(.gnu.warning)
21     *(.plt)
22   } =0xCCCCCCCC
23   . = ALIGN(4096);
24   .data         : {
25     *(.rodata .rodata.* .gnu.linkonce.r.*)
26     *(.rodata1)
27     *(.sdata2 .sdata2.* .gnu.linkonce.s2.*)
28     *(.sbss2 .sbss2.* .gnu.linkonce.sb2.*)
29     *(.opd)
30     *(.data .data.* .gnu.linkonce.d.*)
31     *(.data1)
32     *(.plabel)
33     *(.dynbss)
34     *(.bss .bss.* .gnu.linkonce.b.*)
35     *(COMMON)
36   }
37   . = ALIGN(4096);
38   set_Xcommand_set      : {
39     __start_set_Xcommand_set = .;
40     *(set_Xcommand_set)
41     __stop_set_Xcommand_set = .;
42   }
43   . = ALIGN(4096);
44   __gp = .;
45   .sdata        : {
46     *(.got.plt .got)
47     *(.sdata .sdata.* .gnu.linkonce.s.*)
48     *(dynsbss)
49     *(.sbss .sbss.* .gnu.linkonce.sb.*)
50     *(.scommon)
51   }
52   . = ALIGN(4096);
53   .dynamic      : { *(.dynamic) }
54   . = ALIGN(4096);
55   .rela.dyn     : {
56     *(.rela.data*)
57     *(.rela.got)
58     *(.rela.stab)
59     *(.relaset_*)
60   }
61   . = ALIGN(4096);
62   .reloc        : { *(.reloc) }
63   . = ALIGN(4096);
64   .dynsym       : { *(.dynsym) }
65   . = ALIGN(4096);
66   .dynstr       : { *(.dynstr) }
67 }