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