15b3b9a58SWarner LoshOUTPUT_FORMAT("elf64-x86-64-freebsd", "elf64-x86-64-freebsd", "elf64-x86-64-freebsd")
25b3b9a58SWarner LoshOUTPUT_ARCH(i386:x86-64)
35b3b9a58SWarner LoshENTRY(_start)
45b3b9a58SWarner LoshSECTIONS
55b3b9a58SWarner Losh{
65b3b9a58SWarner Losh  /* Read-only sections, merged into text segment: */
75b3b9a58SWarner Losh  . = 0;
85b3b9a58SWarner Losh  ImageBase = .;
95b3b9a58SWarner Losh  .hash : { *(.hash) }  /* this MUST come first! */
105b3b9a58SWarner Losh  . = ALIGN(4096);
115b3b9a58SWarner Losh  .eh_frame :
125b3b9a58SWarner Losh  {
135b3b9a58SWarner Losh    *(.eh_frame)
145b3b9a58SWarner Losh  }
155b3b9a58SWarner Losh  . = ALIGN(4096);
165b3b9a58SWarner Losh  .text		: {
175b3b9a58SWarner Losh    *(.text .stub .text.* .gnu.linkonce.t.*)
185b3b9a58SWarner Losh    /* .gnu.warning sections are handled specially by elf32.em. */
195b3b9a58SWarner Losh    *(.gnu.warning)
205b3b9a58SWarner Losh    *(.plt)
215b3b9a58SWarner Losh  } =0xCCCCCCCC
225b3b9a58SWarner Losh  . = ALIGN(4096);
235b3b9a58SWarner Losh  .data		: {
245b3b9a58SWarner Losh    *(.rodata .rodata.* .gnu.linkonce.r.*)
255b3b9a58SWarner Losh    *(.rodata1)
265b3b9a58SWarner Losh    *(.sdata2 .sdata2.* .gnu.linkonce.s2.*)
275b3b9a58SWarner Losh    *(.sbss2 .sbss2.* .gnu.linkonce.sb2.*)
285b3b9a58SWarner Losh    *(.opd)
295b3b9a58SWarner Losh    *(.data .data.* .gnu.linkonce.d.*)
305b3b9a58SWarner Losh    *(.data1)
315b3b9a58SWarner Losh    *(.plabel)
325b3b9a58SWarner Losh    *(.dynbss)
335b3b9a58SWarner Losh    *(.bss .bss.* .gnu.linkonce.b.*)
345b3b9a58SWarner Losh    *(COMMON)
355b3b9a58SWarner Losh  }
365b3b9a58SWarner Losh  . = ALIGN(4096);
375b3b9a58SWarner Losh  __gp = .;
385b3b9a58SWarner Losh  .sdata	: {
395b3b9a58SWarner Losh    *(.got.plt .got)
405b3b9a58SWarner Losh    *(.sdata .sdata.* .gnu.linkonce.s.*)
415b3b9a58SWarner Losh    *(dynsbss)
425b3b9a58SWarner Losh    *(.sbss .sbss.* .gnu.linkonce.sb.*)
435b3b9a58SWarner Losh    *(.scommon)
445b3b9a58SWarner Losh  }
455b3b9a58SWarner Losh  . = ALIGN(4096);
465b3b9a58SWarner Losh  .dynamic	: { *(.dynamic) }
475b3b9a58SWarner Losh  . = ALIGN(4096);
485b3b9a58SWarner Losh  .rela.dyn	: {
495b3b9a58SWarner Losh    *(.rela.data*)
505b3b9a58SWarner Losh    *(.rela.got)
515b3b9a58SWarner Losh    *(.rela.stab)
525b3b9a58SWarner Losh    *(.relaset_*)
535b3b9a58SWarner Losh  }
545b3b9a58SWarner Losh  . = ALIGN(4096);
555b3b9a58SWarner Losh  .reloc	: { *(.reloc) }
565b3b9a58SWarner Losh  . = ALIGN(4096);
575b3b9a58SWarner Losh  .dynsym	: { *(.dynsym) }
585b3b9a58SWarner Losh  . = ALIGN(4096);
595b3b9a58SWarner Losh  .dynstr	: { *(.dynstr) }
605b3b9a58SWarner Losh}
61