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