]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blob - ld/emulparams/elf32_x86_64.sh
ld: Initial DT_RELR support
[thirdparty/binutils-gdb.git] / ld / emulparams / elf32_x86_64.sh
1 source_sh ${srcdir}/emulparams/plt_unwind.sh
2 source_sh ${srcdir}/emulparams/extern_protected_data.sh
3 source_sh ${srcdir}/emulparams/dynamic_undefined_weak.sh
4 source_sh ${srcdir}/emulparams/reloc_overflow.sh
5 source_sh ${srcdir}/emulparams/call_nop.sh
6 source_sh ${srcdir}/emulparams/cet.sh
7 source_sh ${srcdir}/emulparams/x86-report-relative.sh
8 source_sh ${srcdir}/emulparams/x86-64-level.sh
9 source_sh ${srcdir}/emulparams/static.sh
10 source_sh ${srcdir}/emulparams/dt-relr.sh
11 SCRIPT_NAME=elf
12 ELFSIZE=32
13 OUTPUT_FORMAT="elf32-x86-64"
14 NO_REL_RELOCS=yes
15 TEXT_START_ADDR=0x400000
16 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
17 COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)"
18 ARCH="i386:x64-32"
19 MACHINE=
20 TEMPLATE_NAME=elf
21 EXTRA_EM_FILE="elf-x86"
22 GENERATE_SHLIB_SCRIPT=yes
23 GENERATE_PIE_SCRIPT=yes
24 NO_SMALL_DATA=yes
25 LARGE_SECTIONS=yes
26 LARGE_BSS_AFTER_BSS=
27 SEPARATE_GOTPLT="SIZEOF (.got.plt) >= 24 ? 24 : 0"
28 IREL_IN_PLT=
29 # These sections are placed right after .plt section.
30 OTHER_PLT_SECTIONS="
31 .plt.got ${RELOCATING-0} : { *(.plt.got) }
32 .plt.sec ${RELOCATING-0} : { *(.plt.sec) }
33 "
34
35 if [ "x${host}" = "x${target}" ]; then
36 case " $EMULATION_LIBPATH " in
37 *" ${EMULATION_NAME} "*)
38 NATIVE=yes
39 esac
40 fi
41
42 # Linux modifies the default library search path to first include
43 # a 32-bit specific directory.
44 case "$target" in
45 x86_64*-linux*|i[3-7]86-*-linux-*)
46 case "$EMULATION_NAME" in
47 *32*)
48 LIBPATH_SUFFIX=x32
49 LIBPATH_SUFFIX_SKIP=64
50 ;;
51 *64*)
52 LIBPATH_SUFFIX=64
53 ;;
54 esac
55 ;;
56 esac