12159047fSniklas# Linker script for Alpha systems. 22159047fSniklas# Ian Lance Taylor <ian@cygnus.com>. 32159047fSniklas# These variables may be overridden by the emulation file. The 42159047fSniklas# defaults are appropriate for an Alpha running OSF/1. 52159047fSniklastest -z "$ENTRY" && ENTRY=__start 62159047fSniklastest -z "$TEXT_START_ADDR" && TEXT_START_ADDR="0x120000000 + SIZEOF_HEADERS" 72159047fSniklasif test "x$LD_FLAG" = "xn" -o "x$LD_FLAG" = "xN"; then 82159047fSniklas DATA_ADDR=. 92159047fSniklaselse 102159047fSniklas test -z "$DATA_ADDR" && DATA_ADDR=0x140000000 112159047fSniklasfi 122159047fSniklascat <<EOF 132159047fSniklasOUTPUT_FORMAT("${OUTPUT_FORMAT}") 142159047fSniklas${LIB_SEARCH_DIRS} 152159047fSniklas 162159047fSniklasENTRY(${ENTRY}) 172159047fSniklas 182159047fSniklasSECTIONS 192159047fSniklas{ 202159047fSniklas ${RELOCATING+. = ${TEXT_START_ADDR};} 212159047fSniklas .text : { 222159047fSniklas ${RELOCATING+ _ftext = . }; 232159047fSniklas ${RELOCATING+ __istart = . }; 242159047fSniklas ${RELOCATING+ *(.init) } 252159047fSniklas ${RELOCATING+ LONG (0x6bfa8001)} 262159047fSniklas ${RELOCATING+ eprol = .}; 272159047fSniklas *(.text) 282159047fSniklas ${RELOCATING+ __fstart = . }; 292159047fSniklas ${RELOCATING+ *(.fini)} 302159047fSniklas ${RELOCATING+ LONG (0x6bfa8001)} 312159047fSniklas ${RELOCATING+ _etext = .}; 322159047fSniklas } 332159047fSniklas .rdata : { 342159047fSniklas *(.rdata) 352159047fSniklas } 36*191aa565Sniklas .rconst : { 37*191aa565Sniklas *(.rconst) 38*191aa565Sniklas } 392159047fSniklas .pdata : { 402159047fSniklas ${RELOCATING+ _fpdata = .;} 412159047fSniklas *(.pdata) 422159047fSniklas } 432159047fSniklas ${RELOCATING+. = ${DATA_ADDR};} 442159047fSniklas .data : { 452159047fSniklas ${RELOCATING+ _fdata = .;} 462159047fSniklas *(.data) 472159047fSniklas ${CONSTRUCTING+CONSTRUCTORS} 482159047fSniklas } 492159047fSniklas .xdata : { 502159047fSniklas *(.xdata) 512159047fSniklas } 522159047fSniklas ${RELOCATING+ _gp = ALIGN (16) + 0x8000;} 532159047fSniklas .lit8 : { 542159047fSniklas *(.lit8) 552159047fSniklas } 562159047fSniklas .lita : { 572159047fSniklas *(.lita) 582159047fSniklas } 592159047fSniklas .sdata : { 602159047fSniklas *(.sdata) 612159047fSniklas } 622159047fSniklas ${RELOCATING+ _EDATA = .;} 632159047fSniklas ${RELOCATING+ _FBSS = .;} 642159047fSniklas .sbss : { 652159047fSniklas *(.sbss) 662159047fSniklas *(.scommon) 672159047fSniklas } 682159047fSniklas .bss : { 692159047fSniklas *(.bss) 702159047fSniklas *(COMMON) 712159047fSniklas } 722159047fSniklas ${RELOCATING+ _end = .;} 732159047fSniklas} 742159047fSniklasEOF 75