1199767f8SToomas Soome/* $FreeBSD$ */
2199767f8SToomas Soome/*
3199767f8SToomas SoomeOUTPUT_FORMAT("elf64-aarch64-freebsd", "elf64-aarch64-freebsd", "elf64-aarch64-freebsd")
4199767f8SToomas Soome*/
5199767f8SToomas SoomeOUTPUT_ARCH(aarch64)
6199767f8SToomas SoomeENTRY(_start)
7199767f8SToomas SoomeSECTIONS
8199767f8SToomas Soome{
9199767f8SToomas Soome  /* Read-only sections, merged into text segment: */
10199767f8SToomas Soome  . = 0;
11199767f8SToomas Soome  ImageBase = .;
12199767f8SToomas Soome  .text		: {
13199767f8SToomas Soome    *(.peheader)
14199767f8SToomas Soome    *(.text .stub .text.* .gnu.linkonce.t.*)
15199767f8SToomas Soome    /* .gnu.warning sections are handled specially by elf32.em. */
16199767f8SToomas Soome    *(.gnu.warning)
17199767f8SToomas Soome    *(.plt)
186e28b3a9SToomas Soome  } =0xD4200000
19199767f8SToomas Soome  . = ALIGN(16);
20199767f8SToomas Soome  .data		: {
21199767f8SToomas Soome    *(.rodata .rodata.* .gnu.linkonce.r.*)
22199767f8SToomas Soome    *(.rodata1)
23199767f8SToomas Soome    *(.sdata2 .sdata2.* .gnu.linkonce.s2.*)
24199767f8SToomas Soome    *(.sbss2 .sbss2.* .gnu.linkonce.sb2.*)
25199767f8SToomas Soome    *(.opd)
26199767f8SToomas Soome    *(.data .data.* .gnu.linkonce.d.*)
27199767f8SToomas Soome    *(.data1)
28199767f8SToomas Soome    *(.plabel)
29199767f8SToomas Soome
30199767f8SToomas Soome    . = ALIGN(16);
31199767f8SToomas Soome    __bss_start = .;
32199767f8SToomas Soome    *(.sbss .sbss.* .gnu.linkonce.sb.*)
33199767f8SToomas Soome    *(.scommon)
34199767f8SToomas Soome    *(.dynbss)
35199767f8SToomas Soome    *(.bss *.bss.*)
36199767f8SToomas Soome    *(COMMON)
37199767f8SToomas Soome    . = ALIGN(16);
38199767f8SToomas Soome    __bss_end = .;
39199767f8SToomas Soome  }
40199767f8SToomas Soome  . = ALIGN(16);
41199767f8SToomas Soome  set_Xcommand_set	: {
42199767f8SToomas Soome    __start_set_Xcommand_set = .;
43199767f8SToomas Soome    *(set_Xcommand_set)
44199767f8SToomas Soome    __stop_set_Xcommand_set = .;
45199767f8SToomas Soome  }
46eee59048SToomas Soome  set_Xficl_compile_set : {
47eee59048SToomas Soome    __start_set_Xficl_compile_set = .;
48eee59048SToomas Soome    *(set_Xficl_compile_set)
49eee59048SToomas Soome    __stop_set_Xficl_compile_set = .;
50eee59048SToomas Soome  }
51199767f8SToomas Soome  . = ALIGN(16);
52199767f8SToomas Soome  __gp = .;
53199767f8SToomas Soome  .sdata	: {
54199767f8SToomas Soome    *(.got.plt .got)
55199767f8SToomas Soome    *(.sdata .sdata.* .gnu.linkonce.s.*)
56199767f8SToomas Soome    *(dynsbss)
57199767f8SToomas Soome    *(.scommon)
58199767f8SToomas Soome  }
59199767f8SToomas Soome  . = ALIGN(16);
60199767f8SToomas Soome  .dynamic	: { *(.dynamic) }
61199767f8SToomas Soome  . = ALIGN(16);
62199767f8SToomas Soome  .rela.dyn	: {
63199767f8SToomas Soome    *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*)
64199767f8SToomas Soome    *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*)
65199767f8SToomas Soome    *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*)
66199767f8SToomas Soome    *(.rela.got)
67199767f8SToomas Soome    *(.rela.sdata .rela.sdata.* .rela.gnu.linkonce.s.*)
68199767f8SToomas Soome    *(.rela.sbss .rela.sbss.* .rela.gnu.linkonce.sb.*)
69199767f8SToomas Soome    *(.rela.sdata2 .rela.sdata2.* .rela.gnu.linkonce.s2.*)
70199767f8SToomas Soome    *(.rela.sbss2 .rela.sbss2.* .rela.gnu.linkonce.sb2.*)
71199767f8SToomas Soome    *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*)
72199767f8SToomas Soome    *(.rela.plt)
73199767f8SToomas Soome    *(.relset_*)
74199767f8SToomas Soome    *(.rela.dyn .rela.dyn.*)
75199767f8SToomas Soome  }
76199767f8SToomas Soome  . = ALIGN(16);
77199767f8SToomas Soome  .reloc	: { *(.reloc) }
78199767f8SToomas Soome  . = ALIGN(16);
79199767f8SToomas Soome  .dynsym	: { *(.dynsym) }
80199767f8SToomas Soome  _edata = .;
81199767f8SToomas Soome
82199767f8SToomas Soome  /* Unused sections */
83199767f8SToomas Soome  .dynstr	: { *(.dynstr) }
84199767f8SToomas Soome  .hash		: { *(.hash) }
85199767f8SToomas Soome}
86