Home | History | Annotate | Line # | Download | only in gnuefi
      1 /*	$NetBSD: elf_riscv64_efi.lds,v 1.1.1.1 2021/09/30 18:50:09 jmcneill Exp $	*/
      2 
      3 /* SPDX-License-Identifier: GPL-2.0+ */
      4 
      5 OUTPUT_FORMAT("elf64-littleriscv", "elf64-littleriscv", "elf64-littleriscv")
      6 OUTPUT_ARCH(riscv)
      7 ENTRY(_start)
      8 SECTIONS {
      9 .text 0x0 :
     10 	{
     11 		_text = .;
     12 		*(.text.head)
     13 		*(.text)
     14 		*(.text.*)
     15 		*(.gnu.linkonce.t.*)
     16 		*(.srodata)
     17 		*(.rodata*)
     18 		. = ALIGN(16);
     19 	}
     20 	_etext = .;
     21 	_text_size = . - _text;
     22 .dynamic  :
     23 	{ *(.dynamic) }
     24 .data :
     25 	ALIGN(4096)
     26 	{
     27 		_data = .;
     28 		*(.sdata)
     29 		*(.data)
     30 		*(.data1)
     31 		*(.data.*)
     32 		*(.got.plt)
     33 		*(.got)
     34 
     35 		/* the EFI loader doesn't seem to like a .bss section, so we stick
     36 		   it all into .data: */
     37 		. = ALIGN(16);
     38 		_bss = .;
     39 		*(.sbss)
     40 		*(.scommon)
     41 		*(.dynbss)
     42 		*(.bss)
     43 		*(COMMON)
     44 		. = ALIGN(16);
     45 		_bss_end = .;
     46 	}
     47 
     48 .rela.text :
     49 	{ *(.rela.text) *(.rela.text*) }
     50 .rela.dyn :
     51 	{ *(.rela.dyn) }
     52 .rela.plt :
     53 	{ *(.rela.plt) }
     54 .rela.got :
     55 	{ *(.rela.got) }
     56 .rela.data :
     57 	{ *(.rela.data) *(.rela.data*) }
     58 	. = ALIGN(512);
     59 	_edata = .;
     60 	_data_size = . - _data;
     61 
     62 	. = ALIGN(4096);
     63 .dynsym   :
     64 	{ *(.dynsym) }
     65 	. = ALIGN(4096);
     66 .dynstr   :
     67 	{ *(.dynstr) }
     68 	. = ALIGN(4096);
     69 .note.gnu.build-id :
     70 	{ *(.note.gnu.build-id) }
     71 /DISCARD/ :
     72 	{
     73 		*(.rel.reloc)
     74 		*(.eh_frame)
     75 		*(.note.GNU-stack)
     76 	}
     77 .comment 0 :
     78 	{ *(.comment) }
     79 }
     80