binutils-gdb/ld/emulparams
H.J. Lu 832ca732b8 x86-64: Add -z mark-plt and -z nomark-plt
The PLT entry in executables and shared libraries contains an indirect
branch, like

 	jmp *foo@GOTPCREL(%rip)
	push $index_foo
	jmp .PLT0

or

	endbr64
 	jmp *foo@GOTPCREL(%rip)
 	NOP padding

which is used to branch to the function, foo, defined in another object.
Each R_X86_64_JUMP_SLOT relocation has a corresponding PLT entry.

The dynamic tags have been added to the x86-64 psABI to mark such PLT
entries:

6d824a52a4

Add an x86-64 linker option, -z mark-plt, to mark PLT entries with

 #define DT_X86_64_PLT     (DT_LOPROC + 0)
 #define DT_X86_64_PLTSZ   (DT_LOPROC + 1)
 #define DT_X86_64_PLTENT  (DT_LOPROC + 3)

1. DT_X86_64_PLT: The address of the procedure linkage table.
2. DT_X86_64_PLTSZ: The total size, in bytes, of the procedure linkage
table.
3. DT_X86_64_PLTENT: The size, in bytes, of a procedure linkage table
entry.

and set the r_addend field of the R_X86_64_JUMP_SLOT relocation to the
memory offset of the indirect branch instruction.  The dynamic linker
can use these tags to update the PLT section to direct branch.

bfd/

	* elf-linker-x86.h (elf_linker_x86_params): Add mark_plt.
	* elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Set the
	r_addend of R_X86_64_JUMP_SLOT to the indirect branch offset
	in PLT entry for -z mark-plt.
	* elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Add
	DT_X86_64_PLT, DT_X86_64_PLTSZ and DT_X86_64_PLTENT for
	-z mark-plt.
	(_bfd_x86_elf_finish_dynamic_sections): Set DT_X86_64_PLT,
	DT_X86_64_PLTSZ and DT_X86_64_PLTENT.
	(_bfd_x86_elf_get_synthetic_symtab): Ignore addend for
	JUMP_SLOT relocation.
	(_bfd_x86_elf_link_setup_gnu_properties): Set
	plt_indirect_branch_offset.
	* elfxx-x86.h (elf_x86_plt_layout): Add plt_indirect_branch_offset.

binutils/

	* readelf.c (get_x86_64_dynamic_type): New function.
	(get_dynamic_type): Call get_x86_64_dynamic_type.

include/

	* elf/x86-64.h (DT_X86_64_PLT): New.
	(DT_X86_64_PLTSZ): Likewise.
	(DT_X86_64_PLTENT): Likewise.

ld/

	* ld.texi: Document -z mark-plt and -z nomark-plt.
	* emulparams/elf32_x86_64.sh: Source x86-64-plt.sh.
	* emulparams/elf_x86_64.sh: Likewise.
	* emulparams/x86-64-plt.sh: New file.
	* testsuite/ld-x86-64/mark-plt-1.s: Likewise.
	* testsuite/ld-x86-64/mark-plt-1a-x32.d: Likewise.
	* testsuite/ld-x86-64/mark-plt-1a.d: Likewise.
	* testsuite/ld-x86-64/mark-plt-1b-x32.d: Likewise.
	* testsuite/ld-x86-64/mark-plt-1b.d: Likewise.
	* testsuite/ld-x86-64/mark-plt-1c-x32.d: Likewise.
	* testsuite/ld-x86-64/mark-plt-1c.d: Likewise.
	* testsuite/ld-x86-64/mark-plt-1d-x32.d: Likewise.
	* testsuite/ld-x86-64/mark-plt-1d.d: Likewise.
	* testsuite/ld-x86-64/x86-64.exp: Run -z mark-plt tests.
2023-09-29 07:58:53 -07:00
..
aarch64cloudabi.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
aarch64cloudabib.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
aarch64elf.sh Revert "GENERATE_SHLIB_SCRIPT vs. EMBEDDED." 2019-11-08 21:07:43 +10:30
aarch64elf32.sh Revert "GENERATE_SHLIB_SCRIPT vs. EMBEDDED." 2019-11-08 21:07:43 +10:30
aarch64elf32b.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
aarch64elfb.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
aarch64fbsd.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
aarch64fbsdb.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
aarch64haiku.sh Fix haiku ld dependencies 2022-12-14 21:45:04 +10:30
aarch64linux.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
aarch64linux32.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
aarch64linux32b.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
aarch64linuxb.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
aarch64nto.sh ld: add support of QNX stack arguments for aarch64nto 2023-03-16 15:01:05 +01:00
aarch64pe.sh aarch64-pe support for LD, GAS and BFD 2022-10-19 10:57:12 +02:00
aix5ppc.sh
aix5rs6.sh
aixppc.sh
aixrs6.sh
alpha.sh
alphavms.sh PR27226, ld.bfd contains huge .rodata section 2021-01-26 20:54:43 +10:30
arc-endianness.sh ld whitespace fixes 2017-10-12 23:30:43 +10:30
arc-nps.sh ELF ld -r scripts 2018-10-13 20:33:23 +10:30
arcelf.sh Revert "GENERATE_SHLIB_SCRIPT vs. EMBEDDED." 2019-11-08 21:07:43 +10:30
arclinux.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
arclinux_nps.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
arcv2elf.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
arcv2elfx.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
arm64pe.sh Add an extra emulation called arm64pe to the aarch64pe emulation. 2023-01-05 11:00:35 +00:00
arm_wince_pe.sh
armelf.sh Add support for the .gnu.sgstubs section to the linker for ARM/ELF based targets. 2023-04-17 15:48:45 +01:00
armelf_fbsd.sh Revert "GENERATE_SHLIB_SCRIPT vs. EMBEDDED." 2019-11-08 21:07:43 +10:30
armelf_fuchsia.sh PR25243, static linking with exceptions and iostream is broken on ARM 2019-12-05 17:35:13 +10:30
armelf_haiku.sh Fix haiku ld dependencies 2022-12-14 21:45:04 +10:30
armelf_linux.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
armelf_linux_eabi.sh PR25243, static linking with exceptions and iostream is broken on ARM 2019-12-05 17:35:13 +10:30
armelf_linux_fdpiceabi.sh PR25243, static linking with exceptions and iostream is broken on ARM 2019-12-05 17:35:13 +10:30
armelf_nacl.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
armelf_nbsd.sh Revert "GENERATE_SHLIB_SCRIPT vs. EMBEDDED." 2019-11-08 21:07:43 +10:30
armelf_phoenix.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
armelf_vxworks.sh Revert "GENERATE_SHLIB_SCRIPT vs. EMBEDDED." 2019-11-08 21:07:43 +10:30
armelfb.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
armelfb_fbsd.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
armelfb_fuchsia.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
armelfb_linux.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
armelfb_linux_eabi.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
armelfb_linux_fdpiceabi.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
armelfb_nacl.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
armelfb_nbsd.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
armnto.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
armpe.sh
avr1.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
avr2.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
avr3.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
avr4.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
avr5.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
avr6.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
avr25.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
avr31.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
avr35.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
avr51.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
avrtiny.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
avrxmega1.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
avrxmega2.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
avrxmega3.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
avrxmega4.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
avrxmega5.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
avrxmega6.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
avrxmega7.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
call_nop.sh Use bool in ld 2021-03-31 10:49:23 +10:30
cet.sh Use bool in ld 2021-03-31 10:49:23 +10:30
crisaout.sh
criself.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
crislinux.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
cskyelf.sh CSKY: Change default linker script for elf toolchain. 2020-10-26 17:13:21 +08:00
cskyelf_linux.sh CSKY: Change default linker script for elf toolchain. 2020-10-26 17:13:21 +08:00
d10velf.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
d30v_e.sh
d30v_o.sh
d30velf.sh
dt-relr.sh ld: Initial DT_RELR support 2022-01-12 06:04:29 -08:00
dynamic_undefined_weak.sh Use bool in ld 2021-03-31 10:49:23 +10:30
elf32_dlx.sh
elf32_sparc.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf32_sparc_sol2.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32_sparc_vxworks.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32_spu.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf32_tic6x_be.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32_tic6x_elf_be.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32_tic6x_elf_le.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32_tic6x_le.sh PR25243, static linking with exceptions and iostream is broken on ARM 2019-12-05 17:35:13 +10:30
elf32_tic6x_linux_be.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32_tic6x_linux_le.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32_x86_64.sh x86-64: Add -z mark-plt and -z nomark-plt 2023-09-29 07:58:53 -07:00
elf32am33lin.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf32b4300.sh Use bool in ld 2021-03-31 10:49:23 +10:30
elf32bfin.sh Revert "GENERATE_SHLIB_SCRIPT vs. EMBEDDED." 2019-11-08 21:07:43 +10:30
elf32bfinfd.sh Unset EMBEDDED rather than assigning as empty 2019-11-05 13:58:01 +10:30
elf32bmip.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf32bmipn32-defs.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf32bmipn32.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32briscv.sh RISC-V: Implement support for big endian targets. 2021-01-06 17:57:52 +08:00
elf32briscv_ilp32.sh RISC-V: Implement support for big endian targets. 2021-01-06 17:57:52 +08:00
elf32briscv_ilp32f.sh RISC-V: Implement support for big endian targets. 2021-01-06 17:57:52 +08:00
elf32bsmip.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32btsmip.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32btsmip_fbsd.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32btsmipn32.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32btsmipn32_fbsd.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32cr16.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf32crx.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf32ebmip.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32ebmipvxworks.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32elmip.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32elmipvxworks.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32epiphany.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf32epiphany_4x4.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf32fr30.sh
elf32frv.sh Define various symbols conditionally in shared libraries 2018-06-08 20:17:34 +09:30
elf32frvfd.sh Unset EMBEDDED rather than assigning as empty 2019-11-05 13:58:01 +10:30
elf32ft32.sh
elf32ip2k.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf32iq10.sh
elf32iq2000.sh
elf32kvx.sh kvx: New port. 2023-08-16 14:22:54 +01:00
elf32l4300.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32lm32.sh Use bool in ld 2021-03-31 10:49:23 +10:30
elf32lm32fd.sh Unset EMBEDDED rather than assigning as empty 2019-11-05 13:58:01 +10:30
elf32lmip.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32loongarch-defs.sh LoongArch ld support 2021-10-24 21:36:32 +10:30
elf32loongarch.sh LoongArch ld support 2021-10-24 21:36:32 +10:30
elf32lppc.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32lppclinux.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32lppcnto.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32lppcsim.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32lr5900.sh Use bool in ld 2021-03-31 10:49:23 +10:30
elf32lr5900n32.sh Use bool in ld 2021-03-31 10:49:23 +10:30
elf32lriscv-defs.sh RISC-V: Protect .got with relro 2023-09-25 12:36:58 +02:00
elf32lriscv.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32lriscv_ilp32.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32lriscv_ilp32f.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32lsmip.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32ltsmip.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32ltsmip_fbsd.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32ltsmipn32.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32ltsmipn32_fbsd.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32m32c.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf32mb_linux.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf32mbel_linux.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf32mcore.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf32mep.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf32metag.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf32microblaze.sh Revert "GENERATE_SHLIB_SCRIPT vs. EMBEDDED." 2019-11-08 21:07:43 +10:30
elf32microblazeel.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32mipswindiss.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf32moxie.sh 2019-12-18 Anthony Green <green@moxielogic.com> 2019-12-18 14:55:35 -05:00
elf32mt.sh Move .stack before debug sections 2017-02-20 19:33:28 +10:30
elf32or1k.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf32or1k_linux.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32ppc.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32ppc_fbsd.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32ppccommon.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf32ppchaiku.sh Fix haiku ld dependencies 2022-12-14 21:45:04 +10:30
elf32ppclinux.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32ppcnto.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32ppcsim.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32ppcvxworks.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32ppcwindiss.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32rl78.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf32rx.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf32rx_linux.sh ld: Add rx-linux emulation. gas: Change ELF flags initial value in rx-linux 2020-04-30 13:35:37 +01:00
elf32tilegx.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf32tilegx_be.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf32tilepro.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf32vax.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf32visium.sh Use bool in ld 2021-03-31 10:49:23 +10:30
elf32xstormy16.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf32xtensa.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf32z80.sh Add support for the GBZ80 and Z80N variants of the Z80 architecture, and add DWARF debug info support to the Z80 assembler. 2020-02-07 14:53:46 +00:00
elf64_aix.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf64_ia64.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf64_ia64_fbsd.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf64_ia64_vms.sh PR27226, ld.bfd contains huge .rodata section 2021-01-26 20:54:43 +10:30
elf64_s390.sh Revert "2.41 Release sources" 2023-08-02 12:06:23 +01:00
elf64_sparc.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf64_sparc_fbsd.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf64_sparc_sol2.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf64alpha.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf64alpha_fbsd.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf64alpha_nbsd.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf64bmip-defs.sh MIPS/LD: Include n64 `.interp' with INITIAL_READONLY_SECTIONS 2023-07-28 06:00:36 +01:00
elf64bmip.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf64bpf.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf64briscv.sh RISC-V: Implement support for big endian targets. 2021-01-06 17:57:52 +08:00
elf64briscv_lp64.sh RISC-V: Implement support for big endian targets. 2021-01-06 17:57:52 +08:00
elf64briscv_lp64f.sh RISC-V: Implement support for big endian targets. 2021-01-06 17:57:52 +08:00
elf64btsmip.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf64btsmip_fbsd.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf64hppa.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf64kvx.sh kvx: New port. 2023-08-16 14:22:54 +01:00
elf64kvx_linux.sh kvx: New port. 2023-08-16 14:22:54 +01:00
elf64loongarch-defs.sh LoongArch ld support 2021-10-24 21:36:32 +10:30
elf64loongarch.sh LoongArch ld support 2021-10-24 21:36:32 +10:30
elf64lppc.sh PR13616, linker should pad executable sections with nops, not zeros 2019-10-16 23:07:27 +10:30
elf64lppc_fbsd.sh PR26667, Add powerpc64le-*-freebsd* support 2020-10-06 17:09:27 +10:30
elf64lriscv-defs.sh RISC-V: Protect .got with relro 2023-09-25 12:36:58 +02:00
elf64lriscv.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf64lriscv_lp64.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf64lriscv_lp64f.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf64ltsmip.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf64ltsmip_fbsd.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf64mmix.sh PR27226, ld.bfd contains huge .rodata section 2021-01-26 20:54:43 +10:30
elf64ppc.sh Re: PowerPC64 .branch_lt address 2022-07-25 09:49:41 +09:30
elf64ppc_fbsd.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf64rdos.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf64tilegx.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf64tilegx_be.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf_fbsd.sh
elf_haiku.sh Add support for the haiku operating system. These are the os support patches we have been grooming and maintaining for quite a few years over on git.haiku-os.org. All of these architectures are working and most have been stable for quite some time. 2021-09-02 12:19:14 +01:00
elf_i386.sh ld: Initial DT_RELR support 2022-01-12 06:04:29 -08:00
elf_i386_be.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf_i386_fbsd.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf_i386_haiku.sh Add support for the haiku operating system. These are the os support patches we have been grooming and maintaining for quite a few years over on git.haiku-os.org. All of these architectures are working and most have been stable for quite some time. 2021-09-02 12:19:14 +01:00
elf_i386_ldso.sh ld: Set COMMONPAGESIZE for i386 Solaris 2020-03-28 05:06:58 -07:00
elf_i386_sol2.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf_i386_vxworks.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
elf_iamcu.sh PR27226, ld.bfd contains huge .rodata section 2021-01-26 20:54:43 +10:30
elf_mipsel_haiku.sh Fix haiku ld dependencies 2022-12-14 21:45:04 +10:30
elf_nacl.sh
elf_s390.sh Revert "2.41 Release sources" 2023-08-02 12:06:23 +01:00
elf_x86_64.sh x86-64: Add -z mark-plt and -z nomark-plt 2023-09-29 07:58:53 -07:00
elf_x86_64_cloudabi.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf_x86_64_fbsd.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
elf_x86_64_haiku.sh Fix haiku ld dependencies 2022-12-14 21:45:04 +10:30
elf_x86_64_sol2.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
extern_protected_data.sh elf: Add GNU_PROPERTY_1_NEEDED check 2021-07-08 18:14:31 -07:00
h8300elf.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
h8300elf_linux.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
h8300helf.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
h8300helf_linux.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
h8300hnelf.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
h8300self.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
h8300self_linux.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
h8300snelf.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
h8300sxelf.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
h8300sxelf_linux.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
h8300sxnelf.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
hppa64linux.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
hppaelf.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
hppalinux.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
hppanbsd.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
hppaobsd.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
i386aout.sh
i386beos.sh
i386bsd.sh
i386go32.sh
i386lynx.sh Unset EMBEDDED rather than assigning as empty 2019-11-05 13:58:01 +10:30
i386moss.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
i386msdos.sh
i386nto.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
i386pe.sh
i386pe_posix.sh
i386pep.sh
m9s12zelf.sh s12z genelf.em 2019-05-30 01:01:42 +09:30
m32relf.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
m32relf_linux.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
m32rlelf.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
m32rlelf_linux.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
m68hc11elf.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
m68hc11elfb.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
m68hc12elf.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
m68hc12elfb.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
m68kelf.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
m68kelfnbsd.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
mcorepe.sh
mmo.sh PR27226, ld.bfd contains huge .rodata section 2021-01-26 20:54:43 +10:30
mn10200.sh
mn10300.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
moxiebox.sh
msp430elf.sh
msp430X.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
nds32belf.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
nds32belf16m.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
nds32belf_linux.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
nds32elf.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
nds32elf16m.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
nds32elf_linux.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
nios2elf.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
nios2linux.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
ns32knbsd.sh
pc532macha.sh
pdp11.sh PR27226, ld.bfd contains huge .rodata section 2021-01-26 20:54:43 +10:30
pjelf.sh
pjlelf.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
plt_unwind.sh Use bool in ld 2021-03-31 10:49:23 +10:30
ppcmacos.sh
pruelf.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
README Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
reloc_overflow.sh Use bool in ld 2021-03-31 10:49:23 +10:30
score3_elf.sh Revert "GENERATE_SHLIB_SCRIPT vs. EMBEDDED." 2019-11-08 21:07:43 +10:30
score7_elf.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
sh.sh
shelf.sh Revert "GENERATE_SHLIB_SCRIPT vs. EMBEDDED." 2019-11-08 21:07:43 +10:30
shelf_fd.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
shelf_linux.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
shelf_nbsd.sh Revert "GENERATE_SHLIB_SCRIPT vs. EMBEDDED." 2019-11-08 21:07:43 +10:30
shelf_nto.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
shelf_uclinux.sh Revert "GENERATE_SHLIB_SCRIPT vs. EMBEDDED." 2019-11-08 21:07:43 +10:30
shelf_vxworks.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
shl.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
shlelf.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
shlelf_fd.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
shlelf_linux.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
shlelf_nbsd.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
shlelf_nto.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
shlelf_vxworks.sh Automatic makefile dependencies for generated ld/e*.c 2019-04-13 12:13:22 +09:30
shpe.sh
solaris2.sh
static.sh Use bool in ld 2021-03-31 10:49:23 +10:30
tic3xcoff.sh
tic3xcoff_onchip.sh
tic4xcoff.sh
tic30coff.sh
tic54xcoff.sh
v850.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
v850_rh850.sh Rename elf32.em to elf.em 2019-09-11 13:45:18 +09:30
vanilla.sh
vaxnbsd.sh
vxworks.sh ld whitespace fixes 2017-10-12 23:30:43 +10:30
x86-64-lam.sh Use bool in ld 2021-03-31 10:49:23 +10:30
x86-64-level.sh Fix compile time warning 2020-11-03 08:56:27 +00:00
x86-64-plt.sh x86-64: Add -z mark-plt and -z nomark-plt 2023-09-29 07:58:53 -07:00
x86-report-relative.sh ld/x86: Add -z report-relative-reloc 2021-01-15 18:07:07 -08:00
xgateelf.sh xgate cleanup 2018-07-10 23:59:07 +09:30
z80.sh
z8001.sh
z8002.sh

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

The files in this directory are read by genscripts.sh as shell commands.
They set parameters for the emulations.

Copyright (C) 2012-2023 Free Software Foundation, Inc.

Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.