1OUTPUT_FORMAT("elf64-x86-64-freebsd", "elf64-x86-64-freebsd", "elf64-x86-64-freebsd") 2OUTPUT_ARCH(i386:x86-64) 3ENTRY(_start) 4SECTIONS 5{ 6 /* Read-only sections, merged into text segment: */ 7 . = 0; 8 ImageBase = .; 9 .hash : { *(.hash) } /* this MUST come first! */ 10 . = ALIGN(4096); 11 .eh_frame : 12 { 13 *(.eh_frame) 14 } 15 . = ALIGN(4096); 16 .text : { 17 *(.text .stub .text.* .gnu.linkonce.t.*) 18 /* .gnu.warning sections are handled specially by elf32.em. */ 19 *(.gnu.warning) 20 *(.plt) 21 } =0xCCCCCCCC 22 . = ALIGN(4096); 23 .data : { 24 *(.rodata .rodata.* .gnu.linkonce.r.*) 25 *(.rodata1) 26 *(.sdata2 .sdata2.* .gnu.linkonce.s2.*) 27 *(.sbss2 .sbss2.* .gnu.linkonce.sb2.*) 28 *(.opd) 29 *(.data .data.* .gnu.linkonce.d.*) 30 *(.data1) 31 *(.plabel) 32 *(.dynbss) 33 *(.bss .bss.* .gnu.linkonce.b.*) 34 *(COMMON) 35 } 36 . = ALIGN(4096); 37 __gp = .; 38 .sdata : { 39 *(.got.plt .got) 40 *(.sdata .sdata.* .gnu.linkonce.s.*) 41 *(dynsbss) 42 *(.sbss .sbss.* .gnu.linkonce.sb.*) 43 *(.scommon) 44 } 45 . = ALIGN(4096); 46 .dynamic : { *(.dynamic) } 47 . = ALIGN(4096); 48 .rela.dyn : { 49 *(.rela.data*) 50 *(.rela.got) 51 *(.rela.stab) 52 *(.relaset_*) 53 } 54 . = ALIGN(4096); 55 .reloc : { *(.reloc) } 56 . = ALIGN(4096); 57 .dynsym : { *(.dynsym) } 58 . = ALIGN(4096); 59 .dynstr : { *(.dynstr) } 60} 61