old-cross-binutils/ld/scripttempl/ia64vms.sc
Thomas Schwinge d061dfac16 ld/
* scripttempl/armbpabi.sc: Replace "source" usage with ".".
	* scripttempl/avr.sc: Likewise.
	* scripttempl/elf.sc: Likewise.
	* scripttempl/elf32cr16.sc: Likewise.
	* scripttempl/elf32crx.sc: Likewise.
	* scripttempl/elf32msp430.sc: Likewise.
	* scripttempl/elf32msp430_3.sc: Likewise.
	* scripttempl/elf32sh-symbian.sc: Likewise.
	* scripttempl/elf64hppa.sc: Likewise.
	* scripttempl/elf_chaos.sc: Likewise.
	* scripttempl/elfd10v.sc: Likewise.
	* scripttempl/elfd30v.sc: Likewise.
	* scripttempl/elfi370.sc: Likewise.
	* scripttempl/elfm68hc11.sc: Likewise.
	* scripttempl/elfm68hc12.sc: Likewise.
	* scripttempl/elfxgate.sc: Likewise.
	* scripttempl/elfxtensa.sc: Likewise.
	* scripttempl/epiphany_4x4.sc: Likewise.
	* scripttempl/i386beos.sc: Likewise.
	* scripttempl/i386go32.sc: Likewise.
	* scripttempl/ia64vms.sc: Likewise.
	* scripttempl/ip2k.sc: Likewise.
	* scripttempl/iq2000.sc: Likewise.
	* scripttempl/mep.sc: Likewise.
	* scripttempl/mmo.sc: Likewise.
	* scripttempl/v850.sc: Likewise.
	* scripttempl/v850_rh850.sc: Likewise.
	* scripttempl/xstormy16.sc: Likewise.
2013-04-28 14:52:55 +00:00

116 lines
2.2 KiB
Scala

# Linker script for Itanium VMS systems.
# Tristan Gingold <gingold@adacore.com>.
PAGESIZE=0x10000
BLOCKSIZE=0x200
cat <<EOF
OUTPUT_FORMAT("${OUTPUT_FORMAT}")
${LIB_SEARCH_DIRS}
ENTRY(__entry)
SECTIONS
{
/* RW segment. */
${RELOCATING+. = ${PAGESIZE};}
\$DATA\$ ALIGN (${BLOCKSIZE}) : {
*(\$DATA\$ .data .data.*)
*(\$BSS\$ .bss)
}
/* Code segment. Note: name must be \$CODE\$ */
${RELOCATING+. = ALIGN (${PAGESIZE});}
\$CODE\$ ALIGN (${BLOCKSIZE}) : {
*(\$CODE\$ .text)
}
.plt ALIGN (8) : {
*(.plt)
}
/* RO segment. */
${RELOCATING+. = ALIGN (${PAGESIZE});}
/* RO initialized data. */
\$LITERAL\$ ALIGN (${BLOCKSIZE}) : {
*(\$LITERAL\$)
*(\$READONLY\$ .rodata)
*(.jcr)
*(.ctors)
*(.dtors)
*(.opd)
*(.gcc_except_table)
/* LIB$INITIALIZE stuff. */
*(LIB\$INITIALIZDZ) /* Start marker. */
*(LIB\$INITIALIZD_) /* Hi priority. */
*(LIB\$INITIALIZE) /* User. */
*(LIB\$INITIALIZE$) /* End marker. */
}
/* Short segment. */
${RELOCATING+. = ALIGN (${PAGESIZE});}
.srodata : {
*(.srodata)
}
.got ALIGN (8) : {
*(.got)
}
.IA_64.pltoff ALIGN (16) : {
*(.IA_64.pltoff)
}
\$TFR\$ ALIGN (16) : {
/* Tranfer vector. */
__entry = .;
*(.transfer)
}
${RELOCATING+. = ALIGN (${PAGESIZE});}
\$RW_SHORT\$ ALIGN (${BLOCKSIZE}) : {
*(.sdata .sdata.*)
*(.sbss)
}
${RELOCATING+. = ALIGN (${PAGESIZE});}
.IA_64.unwind ALIGN (${BLOCKSIZE}) : {
*(.IA_64.unwind .IA_64.unwind.*)
}
.IA_64.unwind_info ALIGN (8) : {
*(.IA_64.unwind_info .IA_64.unwind_info.*)
}
${RELOCATING+. = ALIGN (${PAGESIZE});}
.dynamic /* \$DYNAMIC\$ */ ALIGN (${BLOCKSIZE}) : {
*(.dynamic)
*(.vmsdynstr)
*(.fixups)
}
${RELOCATING+. = ALIGN (${PAGESIZE});}
.dynstr : { *(.dynstr) }
.dynsym ${RELOCATING-0} : { *(.dynsym) }
.rela.got : { *(.rela.got) }
.got.plt : { *(.got.plt) }
.gnu.version_d : { *(.gnu.version_d) }
.gnu.version : { *(.gnu.version) }
.gnu.version_r : { *(.gnu.version_r) }
.rela.IA_64.pltoff : { *(.rela.IA_64.pltoff) }
EOF
. $srcdir/scripttempl/DWARF.sc
cat <<EOF
.note : { *(.vms.note) }
/DISCARD/ : { *(.note) }
}
EOF