1# Linker script for Alpha systems. 2# Ian Lance Taylor <ian@cygnus.com>. 3# These variables may be overridden by the emulation file. The 4# defaults are appropriate for an Alpha running OSF/1. 5test -z "$ENTRY" && ENTRY=__start 6test -z "$TEXT_START_ADDR" && TEXT_START_ADDR="0x120000000 + SIZEOF_HEADERS" 7if test "x$LD_FLAG" = "xn" -o "x$LD_FLAG" = "xN"; then 8 DATA_ADDR=. 9else 10 test -z "$DATA_ADDR" && DATA_ADDR=0x140000000 11fi 12cat <<EOF 13OUTPUT_FORMAT("${OUTPUT_FORMAT}") 14${LIB_SEARCH_DIRS} 15 16ENTRY(${ENTRY}) 17 18SECTIONS 19{ 20 ${RELOCATING+. = ${TEXT_START_ADDR};} 21 .text : { 22 ${RELOCATING+ _ftext = . }; 23 ${RELOCATING+ __istart = . }; 24 ${RELOCATING+ *(.init) } 25 ${RELOCATING+ LONG (0x6bfa8001)} 26 ${RELOCATING+ eprol = .}; 27 *(.text) 28 ${RELOCATING+ __fstart = . }; 29 ${RELOCATING+ *(.fini)} 30 ${RELOCATING+ LONG (0x6bfa8001)} 31 ${RELOCATING+ _etext = .}; 32 } 33 .rdata : { 34 *(.rdata) 35 } 36 .rconst : { 37 *(.rconst) 38 } 39 .pdata : { 40 ${RELOCATING+ _fpdata = .;} 41 *(.pdata) 42 } 43 ${RELOCATING+. = ${DATA_ADDR};} 44 .data : { 45 ${RELOCATING+ _fdata = .;} 46 *(.data) 47 ${CONSTRUCTING+CONSTRUCTORS} 48 } 49 .xdata : { 50 *(.xdata) 51 } 52 ${RELOCATING+ _gp = ALIGN (16) + 0x8000;} 53 .lit8 : { 54 *(.lit8) 55 } 56 .lita : { 57 *(.lita) 58 } 59 .sdata : { 60 *(.sdata) 61 } 62 ${RELOCATING+ _EDATA = .;} 63 ${RELOCATING+ _FBSS = .;} 64 .sbss : { 65 *(.sbss) 66 *(.scommon) 67 } 68 .bss : { 69 *(.bss) 70 *(COMMON) 71 } 72 ${RELOCATING+ _end = .;} 73} 74EOF 75