184865Sobrien# See genscripts.sh and ../scripttempl/elf.sc for the meaning of these.
284865SobrienSCRIPT_NAME=elf
384865SobrienELFSIZE=64
484865SobrienTEMPLATE_NAME=elf32
5130561SobrienEXTRA_EM_FILE=ia64elf
684865SobrienOUTPUT_FORMAT="elf64-ia64-little"
784865SobrienARCH=ia64
884865SobrienMACHINE=
9218822SdimMAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
10130561Sobrien# FIXME: It interferes with linker relaxation. Disable it until it is
11130561Sobrien# fixed.
12130561Sobrienif test "0" = "1" -a -n "$CREATE_SHLIB"; then
13104834Sobrien  # Optimize shared libraries for 16K page size
14218822Sdim  COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)"
15104834Sobrienfi
1684865SobrienTEXT_START_ADDR="0x4000000000000000"
1784865SobrienDATA_ADDR="0x6000000000000000 + (. & (${MAXPAGESIZE} - 1))"
1884865SobrienGENERATE_SHLIB_SCRIPT=yes
19130561SobrienGENERATE_PIE_SCRIPT=yes
2084865SobrienNOP=0x00300000010070000002000001000400  # a bundle full of nops
2189857SobrienOTHER_GOT_SECTIONS="
2289857Sobrien  .IA_64.pltoff ${RELOCATING-0} : { *(.IA_64.pltoff) }"
2389857SobrienOTHER_PLT_RELOC_SECTIONS="
2489857Sobrien  .rela.IA_64.pltoff ${RELOCATING-0} : { *(.rela.IA_64.pltoff) }"
25130561SobrienOTHER_READONLY_SECTIONS=
26130561SobrienOTHER_READWRITE_SECTIONS=
27130561Sobrientest -z "$CREATE_PIE" && OTHER_READONLY_SECTIONS="
28130561Sobrien  .opd          ${RELOCATING-0} : { *(.opd) }"
29130561Sobrientest -n "$CREATE_PIE" && OTHER_READWRITE_SECTIONS="
30130561Sobrien  .opd          ${RELOCATING-0} : { *(.opd) }"
31130561Sobrientest -n "$CREATE_PIE" && OTHER_GOT_RELOC_SECTIONS="
32130561Sobrien  .rela.opd     ${RELOCATING-0} : { *(.rela.opd) }"
33130561SobrienOTHER_READONLY_SECTIONS="${OTHER_READONLY_SECTIONS}
3491041Sobrien  .IA_64.unwind_info ${RELOCATING-0} : { *(.IA_64.unwind_info${RELOCATING+* .gnu.linkonce.ia64unwi.*}) }
3591041Sobrien  .IA_64.unwind ${RELOCATING-0} : { *(.IA_64.unwind${RELOCATING+* .gnu.linkonce.ia64unw.*}) }"
36218822Sdim# Intel C++ compiler, prior to 9.0, puts small data in .ctors and
37218822Sdim# .dtors.  They have to be next to .sbss/.sbss2/.sdata/.sdata2.
38218822SdimSMALL_DATA_CTOR=" "
39218822SdimSMALL_DATA_DTOR=" "
40