1 1.2 christos /* $NetBSD: ldscript,v 1.2 2018/12/24 18:21:50 christos Exp $ */ 2 1.1 nonaka /* Same as elf_x86_64_fbsd_efi.lds, except for OUTPUT_FORMAT below - KEEP IN SYNC */ 3 1.1 nonaka OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") 4 1.1 nonaka OUTPUT_ARCH(i386:x86-64) 5 1.1 nonaka ENTRY(_start) 6 1.2 christos 7 1.2 christos PHDRS 8 1.2 christos { 9 1.2 christos text PT_LOAD; 10 1.2 christos headers PT_PHDR FILEHDR PHDRS; 11 1.2 christos } 12 1.2 christos 13 1.1 nonaka SECTIONS 14 1.1 nonaka { 15 1.1 nonaka . = 0; 16 1.1 nonaka ImageBase = .; 17 1.1 nonaka .hash : { *(.hash) } /* this MUST come first! */ 18 1.1 nonaka . = ALIGN(4096); 19 1.1 nonaka .eh_frame : 20 1.1 nonaka { 21 1.1 nonaka *(.eh_frame) 22 1.1 nonaka } 23 1.1 nonaka . = ALIGN(4096); 24 1.1 nonaka .text : 25 1.1 nonaka { 26 1.1 nonaka *(.text) 27 1.1 nonaka *(.text.*) 28 1.1 nonaka *(.gnu.linkonce.t.*) 29 1.2 christos } :text 30 1.1 nonaka . = ALIGN(4096); 31 1.1 nonaka .reloc : 32 1.1 nonaka { 33 1.1 nonaka *(.reloc) 34 1.1 nonaka } 35 1.1 nonaka . = ALIGN(4096); 36 1.1 nonaka .data : 37 1.1 nonaka { 38 1.1 nonaka *(.rodata*) 39 1.1 nonaka *(.got.plt) 40 1.1 nonaka *(.got) 41 1.1 nonaka *(.data*) 42 1.1 nonaka *(.sdata) 43 1.1 nonaka /* the EFI loader doesn't seem to like a .bss section, so we stick 44 1.1 nonaka it all into .data: */ 45 1.1 nonaka *(.sbss) 46 1.1 nonaka *(.scommon) 47 1.1 nonaka *(.dynbss) 48 1.1 nonaka *(.bss) 49 1.1 nonaka *(COMMON) 50 1.1 nonaka *(.rel.local) 51 1.1 nonaka } 52 1.1 nonaka . = ALIGN(4096); 53 1.1 nonaka .dynamic : { *(.dynamic) } 54 1.1 nonaka . = ALIGN(4096); 55 1.1 nonaka .rela : 56 1.1 nonaka { 57 1.1 nonaka *(.rela.data*) 58 1.1 nonaka *(.rela.got) 59 1.1 nonaka *(.rela.stab) 60 1.1 nonaka } 61 1.1 nonaka . = ALIGN(4096); 62 1.1 nonaka .dynsym : { *(.dynsym) } 63 1.1 nonaka . = ALIGN(4096); 64 1.1 nonaka .dynstr : { *(.dynstr) } 65 1.1 nonaka . = ALIGN(4096); 66 1.1 nonaka .ignored.reloc : 67 1.1 nonaka { 68 1.1 nonaka *(.rela.reloc) 69 1.1 nonaka *(.eh_frame) 70 1.1 nonaka *(.note.GNU-stack) 71 1.1 nonaka } 72 1.1 nonaka .comment 0 : { *(.comment) } 73 1.1 nonaka } 74