1*5f4d3f8eSWarner LoshOUTPUT_FORMAT("elf64-x86-64-freebsd", "elf64-x86-64-freebsd", "elf64-x86-64-freebsd")
2*5f4d3f8eSWarner LoshOUTPUT_ARCH(i386:x86-64)
3*5f4d3f8eSWarner LoshENTRY(_start)
4*5f4d3f8eSWarner LoshSECTIONS
5*5f4d3f8eSWarner Losh{
6*5f4d3f8eSWarner Losh  /* Read-only sections, merged into text segment: */
7*5f4d3f8eSWarner Losh  . = 0;
8*5f4d3f8eSWarner Losh  ImageBase = .;
9*5f4d3f8eSWarner Losh  .hash : { *(.hash) }  /* this MUST come first! */
10*5f4d3f8eSWarner Losh  . = ALIGN(4096);
11*5f4d3f8eSWarner Losh  .eh_frame :
12*5f4d3f8eSWarner Losh  {
13*5f4d3f8eSWarner Losh    *(.eh_frame)
14*5f4d3f8eSWarner Losh  }
15*5f4d3f8eSWarner Losh  . = ALIGN(4096);
16*5f4d3f8eSWarner Losh  .text		: {
17*5f4d3f8eSWarner Losh    *(.text .stub .text.* .gnu.linkonce.t.*)
18*5f4d3f8eSWarner Losh    /* .gnu.warning sections are handled specially by elf32.em. */
19*5f4d3f8eSWarner Losh    *(.gnu.warning)
20*5f4d3f8eSWarner Losh    *(.plt)
21*5f4d3f8eSWarner Losh  } =0xCCCCCCCC
22*5f4d3f8eSWarner Losh  . = ALIGN(4096);
23*5f4d3f8eSWarner Losh  .data		: {
24*5f4d3f8eSWarner Losh    *(.rodata .rodata.* .gnu.linkonce.r.*)
25*5f4d3f8eSWarner Losh    *(.rodata1)
26*5f4d3f8eSWarner Losh    *(.sdata2 .sdata2.* .gnu.linkonce.s2.*)
27*5f4d3f8eSWarner Losh    *(.sbss2 .sbss2.* .gnu.linkonce.sb2.*)
28*5f4d3f8eSWarner Losh    *(.opd)
29*5f4d3f8eSWarner Losh    *(.data .data.* .gnu.linkonce.d.*)
30*5f4d3f8eSWarner Losh    *(.data1)
31*5f4d3f8eSWarner Losh    *(.plabel)
32*5f4d3f8eSWarner Losh    *(.dynbss)
33*5f4d3f8eSWarner Losh    *(.bss .bss.* .gnu.linkonce.b.*)
34*5f4d3f8eSWarner Losh    *(COMMON)
35*5f4d3f8eSWarner Losh  }
36*5f4d3f8eSWarner Losh  . = ALIGN(4096);
37*5f4d3f8eSWarner Losh  __gp = .;
38*5f4d3f8eSWarner Losh  .sdata	: {
39*5f4d3f8eSWarner Losh    *(.got.plt .got)
40*5f4d3f8eSWarner Losh    *(.sdata .sdata.* .gnu.linkonce.s.*)
41*5f4d3f8eSWarner Losh    *(dynsbss)
42*5f4d3f8eSWarner Losh    *(.sbss .sbss.* .gnu.linkonce.sb.*)
43*5f4d3f8eSWarner Losh    *(.scommon)
44*5f4d3f8eSWarner Losh  }
45*5f4d3f8eSWarner Losh  . = ALIGN(4096);
46*5f4d3f8eSWarner Losh  .dynamic	: { *(.dynamic) }
47*5f4d3f8eSWarner Losh  . = ALIGN(4096);
48*5f4d3f8eSWarner Losh  .rela.dyn	: {
49*5f4d3f8eSWarner Losh    *(.rela.data*)
50*5f4d3f8eSWarner Losh    *(.rela.got)
51*5f4d3f8eSWarner Losh    *(.rela.stab)
52*5f4d3f8eSWarner Losh    *(.relaset_*)
53*5f4d3f8eSWarner Losh  }
54*5f4d3f8eSWarner Losh  . = ALIGN(4096);
55*5f4d3f8eSWarner Losh  .reloc	: { *(.reloc) }
56*5f4d3f8eSWarner Losh  . = ALIGN(4096);
57*5f4d3f8eSWarner Losh  .dynsym	: { *(.dynsym) }
58*5f4d3f8eSWarner Losh  . = ALIGN(4096);
59*5f4d3f8eSWarner Losh  .dynstr	: { *(.dynstr) }
60*5f4d3f8eSWarner Losh}
61