xref: /netbsd-src/sys/external/bsd/gnu-efi/dist/gnuefi/elf_mips64el_efi.lds (revision d1b935f8e85510a16a1b49122bd2ccf5ad7e104c)
1/*	$NetBSD: elf_mips64el_efi.lds,v 1.1.1.1 2018/08/16 18:17:47 jmcneill Exp $	*/
2
3OUTPUT_FORMAT("elf64-tradlittlemips", "elf64-tradbigmips", "elf64-tradlittlemips")
4OUTPUT_ARCH(mips)
5ENTRY(_start)
6SECTIONS
7{
8  .text 0x0 : {
9    _text = .;
10    *(.text.head)
11    *(.text)
12    *(.text.*)
13    *(.gnu.linkonce.t.*)
14    *(.srodata)
15    *(.rodata*)
16    . = ALIGN(16);
17  }
18  _etext = .;
19  _text_size = . - _text;
20  .dynamic  : { *(.dynamic) }
21  .data :
22  {
23   _data = .;
24   *(.sdata)
25   *(.data)
26   *(.data1)
27   *(.data.*)
28   *(.got.plt)
29   HIDDEN (_gp = ALIGN (16) + 0x7ff0);
30   *(.got)
31
32   /* the EFI loader doesn't seem to like a .bss section, so we stick
33      it all into .data: */
34   . = ALIGN(16);
35   _bss = .;
36   *(.sbss)
37   *(.scommon)
38   *(.dynbss)
39   *(.bss)
40   *(COMMON)
41   . = ALIGN(16);
42   _bss_end = .;
43  }
44
45  .rel.dyn : { *(.rel.dyn) }
46  .rel.plt : { *(.rel.plt) }
47  .rel.got : { *(.rel.got) }
48  .rel.data : { *(.rel.data) *(.rel.data*) }
49  _edata = .;
50  _data_size = . - _etext;
51
52  . = ALIGN(4096);
53  .dynsym   : { *(.dynsym) }
54  . = ALIGN(4096);
55  .dynstr   : { *(.dynstr) }
56  . = ALIGN(4096);
57  .note.gnu.build-id : { *(.note.gnu.build-id) }
58  /DISCARD/ :
59  {
60    *(.rel.reloc)
61    *(.eh_frame)
62    *(.MIPS.abiflags)
63    *(.note.GNU-stack)
64  }
65  .comment 0 : { *(.comment) }
66}
67