source ${srcdir}/emulparams/plt_unwind.sh source ${srcdir}/emulparams/extern_protected_data.sh source ${srcdir}/emulparams/call_nop.sh setvar SCRIPT_NAME = 'elf' setvar ELFSIZE = '64' setvar OUTPUT_FORMAT = ""elf64-x86-64"" setvar NO_REL_RELOCS = 'yes' setvar TEXT_START_ADDR = '0x400000' setvar MAXPAGESIZE = ""CONSTANT (MAXPAGESIZE)"" setvar COMMONPAGESIZE = ""CONSTANT (COMMONPAGESIZE)"" setvar ARCH = ""i386:x86-64"" setvar MACHINE = '' setvar TEMPLATE_NAME = 'elf32' setvar GENERATE_SHLIB_SCRIPT = 'yes' setvar GENERATE_PIE_SCRIPT = 'yes' setvar NO_SMALL_DATA = 'yes' setvar LARGE_SECTIONS = 'yes' setvar LARGE_BSS_AFTER_BSS = '' setvar SEPARATE_GOTPLT = ""SIZEOF (.got.plt) >= 24 ? 24 : 0"" setvar IREL_IN_PLT = '' # Reuse TINY_READONLY_SECTION which is placed right after .plt section. setvar TINY_READONLY_SECTION = "" .plt.got ${RELOCATING-0} : { *(.plt.got) } .plt.bnd ${RELOCATING-0} : { *(.plt.bnd) } "" if test "x${host}" = "x${target}" { case{ *" ${EMULATION_NAME} "* { setvar NATIVE = 'yes' } } } # Linux/Solaris modify the default library search path to first include # a 64-bit specific directory. case (target) { x86_64*-linux*|i[3-7]86-*-linux-* { case (EMULATION_NAME) { *64* { setvar LIBPATH_SUFFIX = '64' setvar PARSE_AND_LIST_OPTIONS_BNDPLT = '' fprintf (file, _("\ -z bndplt Always generate BND prefix in PLT entries\n")); '' setvar PARSE_AND_LIST_ARGS_CASE_Z_BNDPLT = '' else if (strcmp (optarg, "bndplt") == 0) link_info.bndplt = TRUE; '' setvar PARSE_AND_LIST_OPTIONS = ""$PARSE_AND_LIST_OPTIONS $PARSE_AND_LIST_OPTIONS_BNDPLT"" setvar PARSE_AND_LIST_ARGS_CASE_Z = ""$PARSE_AND_LIST_ARGS_CASE_Z $PARSE_AND_LIST_ARGS_CASE_Z_BNDPLT"" } } } *-*-solaris2* { setvar LIBPATH_SUFFIX = '/amd64' setvar ELF_INTERPRETER_NAME = "'"'/lib/amd64/ld.so.1'"'" } }