binutils-gdb/ld/emulparams
Richard Sandiford 00a976722a bfd/
* configure.in (bfd_elf32_bigarm_vec): Include elf-vxworks.lo.
	(bfd_elf32_bigarm_symbian_vec): Likewise.
	(bfd_elf32_bigarm_vxworks_vec): Likewise.
	(bfd_elf32_littlearm_vec): Likewise.
	(bfd_elf32_littlearm_symbian_vec): Likewise.
	(bfd_elf32_littlearm_vxworks_vec): Likewise.
	* configure: Regenerate.
	* elf32-arm.c: Include libiberty.h and elf-vxworks.h.
	(RELOC_SECTION, RELOC_SIZE, SWAP_RELOC_IN, SWAP_RELOC_OUT): New macros.
	(elf32_arm_vxworks_bed): Add forward declaration.
	(elf32_arm_howto_table_1): Fix the masks for R_ASM_ABS12.
	(elf32_arm_vxworks_exec_plt0_entry): New table.
	(elf32_arm_vxworks_exec_plt_entry): Likewise.
	(elf32_arm_vxworks_shared_plt_entry): Likewise.
	(elf32_arm_link_hash_table): Add vxworks_p and srelplt2 fields.
	(reloc_section_p): New function.
	(create_got_section): Use RELOC_SECTION.
	(elf32_arm_create_dynamic_sections): Likewise.  Call
	elf_vxworks_create_dynamic_sections for VxWorks targets.
	Choose between the two possible values of plt_header_size
	and plt_entry_size.
	(elf32_arm_link_hash_table_create): Initialize vxworks_p and srelplt2.
	(elf32_arm_abs12_reloc): New function.
	(elf32_arm_final_link_relocate): Call it.  Allow the creation of
	dynamic R_ARM_ABS12 relocs on VxWorks.  Use reloc_section_p,
	RELOC_SIZE, SWAP_RELOC_OUT and RELOC_SECTION.  Initialize the
	r_addend fields of relocs.  On rela targets, skip any code that
	adjusts in-place addends.  When using _bfd_link_final_relocate
	to perform a final relocation, pass rel->r_addend as the addend
	argument.
	(elf32_arm_merge_private_bfd_data): If one of the bfds is a VxWorks
	object, ignore flags that are not standard on VxWorks.
	(elf32_arm_check_relocs): Allow the creation of dynamic R_ARM_ABS12
	relocs on VxWorks.  Use reloc_section_p.
	(elf32_arm_adjust_dynamic_symbol): Use RELOC_SECTION and RELOC_SIZE.
	(allocate_dynrelocs): Use RELOC_SIZE.  Account for the size of
	.rela.plt.unloaded relocs on VxWorks targets.
	(elf32_arm_size_dynamic_sections): Use RELOC_SIZE.  Check for
	.rela.plt.unloaded as well as .rel(a).plt.  Add DT_RELA* tags
	instead of DT_REL* tags on RELA targets.
	(elf32_arm_finish_dynamic_symbol): Use RELOC_SECTION, RELOC_SIZE
	and SWAP_RELOC_OUT.  Initialize r_addend fields.  Handle VxWorks
	PLT entries.  Do not make _GLOBAL_OFFSET_TABLE_ absolute on VxWorks.
	(elf32_arm_finish_dynamic_sections): Use RELOC_SECTION, RELOC_SIZE
	and SWAP_RELOC_OUT.  Initialize r_addend fields.  Handle DT_RELASZ
	like DT_RELSZ.  Handle the VxWorks form of initial PLT entry.
	Correct the .rela.plt.unreloaded symbol indexes.
	(elf32_arm_output_symbol_hook): Call the VxWorks version of this
	hook on VxWorks targets.
	(elf32_arm_vxworks_link_hash_table_create): Set vxworks_p to true.
	Minor formatting tweak.
	(elf32_arm_vxworks_final_write_processing): New function.
	(elf_backend_add_symbol_hook): Override for VxWorks and reset
	for Symbian.
	(elf_backend_final_write_processing): Likewise.
	(elf_backend_emit_relocs): Likewise.
	(elf_backend_want_plt_sym): Likewise.
	(ELF_MAXPAGESIZE): Likewise.
	(elf_backend_may_use_rel_p): Minor formatting tweak.
	(elf_backend_may_use_rela_p): Likewise.
	(elf_backend_default_use_rela_p): Likewise.
	(elf_backend_rela_normal): Likewise.
	* Makefile.in (elf32-arm.lo): Depend on elf-vxworks.h.

gas/
	* config/tc-arm.c (md_apply_fix): Install a value of zero into a
	BFD_RELOC_ARM_OFFSET_IMM field if we're going to generate a RELA
	R_ARM_ABS12 reloc.
	(tc_gen_reloc): Keep the original fx_offset for RELA pc-relative
	relocs, but adjust by md_pcrel_from_section.  Create R_ARM_ABS12
	relocations for BFD_RELOC_ARM_OFFSET_IMM on RELA targets.

gas/testsuite/
	* gas/arm/abs12.s, gas/arm/abs12.d: New test.
	* gas/arm/pic.d: Skip for *-*-vxworks*...
	* gas/arm/pic_vxworks.d: ...use this version instead.
	* gas/arm/unwind_vxworks.d: Fix expected output.

ld/
	* emulparams/armelf_vxworks.sh: Include vxworks.sh.
	(MAXPAGESIZE): Define.
	* emulparams/vxworks.sh: Undefine.
	* Makefile.am (earmelf_vxworks.c): Depend on vxworks.sh and vxworks.em.
	* Makefile.in: Regenerate.

ld/testsuite/
	* ld-arm/vxworks1.dd, ld-arm/vxworks1.ld, ld-arm/vxworks1-lib.dd,
	* ld-arm/vxworks1-lib.nd, ld-arm/vxworks1-lib.rd,
	* ld-arm/vxworks1-lib.s, ld-arm/vxworks1.rd, ld-arm/vxworks1.s,
	* ld-arm/vxworks1-static.d, ld-arm/vxworks2.s, ld-arm/vxworks2.sd,
	* ld-arm/vxworks2-static.sd: New tests.
	* ld-arm/arm-elf.exp: Run them.
2006-03-07 08:39:21 +00:00
..
README
aix5ppc.sh
aix5rs6.sh
aixppc.sh
aixrs6.sh
alpha.sh
arcelf.sh
arm_epoc_pe.sh * emulparams/arm_epoc_pe.sh, emulparams/armpe.sh, emulparams/i386pe.sh, 2004-09-28 19:14:29 +00:00
armaoutb.sh
armaoutl.sh
armcoff.sh
armelf.sh 2005-10-19 Paul Brook <paul@codesourcery.com> 2005-10-19 14:43:21 +00:00
armelf_fbsd.sh bfd/ 2004-09-17 12:18:19 +00:00
armelf_linux.sh * emulparams/armelf.sh (OTHER_BSS_END_SYMBOLS): Split out from 2005-08-05 04:29:57 +00:00
armelf_linux_eabi.sh * Makefile.am (ALL_EMULATIONS): Add earmelf_linux_eabi.o. 2004-11-19 19:28:40 +00:00
armelf_nbsd.sh bfd/ 2004-09-17 12:18:19 +00:00
armelf_vxworks.sh bfd/ 2006-03-07 08:39:21 +00:00
armelfb.sh
armelfb_linux.sh
armelfb_linux_eabi.sh * emulparams/armelfb_linux_eabi.sh: New file. 2005-01-22 01:50:35 +00:00
armelfb_nbsd.sh
armnbsd.sh
armnto.sh * emulparams/armelf.sh (OTHER_BSS_END_SYMBOLS): Split out from 2005-08-05 04:29:57 +00:00
armpe.sh * emulparams/arm_epoc_pe.sh, emulparams/armpe.sh, emulparams/i386pe.sh, 2004-09-28 19:14:29 +00:00
armsymbian.sh * elf32-arm.c (elf_backend_default_use_rela_p): Define to zero for 2005-01-26 06:10:45 +00:00
avr1.sh
avr2.sh
avr3.sh
avr4.sh
avr5.sh
bfin.sh * emulparams/bfin.sh: Define DATA_END_SYMBOLS and END_SYMBOLS. 2005-12-28 06:01:48 +00:00
coff_i860.sh 2003-08-04 Christian Groessler <chris@groessler.org> 2003-08-06 02:19:05 +00:00
coff_sparc.sh
crisaout.sh
criself.sh * emulparams/armelf.sh (OTHER_BSS_END_SYMBOLS): Split out from 2005-08-05 04:29:57 +00:00
crislinux.sh * emulparams/armelf.sh (OTHER_BSS_END_SYMBOLS): Split out from 2005-08-05 04:29:57 +00:00
d10velf.sh
d30v_e.sh
d30v_o.sh
d30velf.sh
delta68.sh
elf32_dlx.sh
elf32_i860.sh * emulparams/elf32_i860.sh (TEXT_START_ADDR): Define. 2003-11-04 23:08:03 +00:00
elf32_i960.sh
elf32_sparc.sh bfd/ 2003-05-30 15:50:12 +00:00
elf32am33lin.sh 2001-08-22 Alexandre Oliva <aoliva@redhat.com> 2003-07-10 04:45:16 +00:00
elf32b4300.sh
elf32bmip.sh (GENERATE_PIE_SCRIPT): Define as "yes". 2005-07-05 12:17:55 +00:00
elf32bmipn32-defs.sh (GENERATE_PIE_SCRIPT): Define as "yes". 2005-07-05 12:17:55 +00:00
elf32bmipn32.sh * emulparams/elf32bsmip.sh (EXTRA_EM_FILE): Define to irix. 2004-04-08 14:52:44 +00:00
elf32bsmip.sh * emulparams/elf32bsmip.sh (EXTRA_EM_FILE): Define to irix. 2004-04-08 14:52:44 +00:00
elf32btsmip.sh * emulparams/elf32btsmip.sh: Unset DATA_ADDR. 2005-06-01 19:26:25 +00:00
elf32btsmipn32.sh * emulparams/armelf_linux.sh (COMMONPAGESIZE): Set to 4KB. 2004-02-09 17:54:25 +00:00
elf32cr16c.sh Add (linker) support for CR16C processor 2004-03-30 14:04:32 +00:00
elf32crx.sh Add new port: crx-elf 2004-07-07 17:28:53 +00:00
elf32ebmip.sh
elf32elmip.sh
elf32fr30.sh * emulparams/armelf.sh (OTHER_BSS_END_SYMBOLS): Split out from 2005-08-05 04:29:57 +00:00
elf32frv.sh * ldlang.c (exp_init_os): Handle etree_provide. 2005-08-03 05:09:49 +00:00
elf32frvfd.sh bfd/ChangeLog: 2004-06-21 14:45:42 +00:00
elf32i370.sh
elf32ip2k.sh * emulparams/elf32ip2k.sh (TEMPLATE_NAME): Define. 2003-08-29 00:34:27 +00:00
elf32iq10.sh
elf32iq2000.sh
elf32l4300.sh
elf32lmip.sh
elf32lppc.sh
elf32lppcnto.sh
elf32lppcsim.sh
elf32lsmip.sh
elf32ltsmip.sh
elf32ltsmipn32.sh
elf32m32c.sh * emulparams/elf32m32c.sh (TEMPLATE_NAME): New. 2005-07-20 19:33:18 +00:00
elf32mcore.sh * emulparams/armelf.sh (OTHER_BSS_END_SYMBOLS): Split out from 2005-08-05 04:29:57 +00:00
elf32mipswindiss.sh Switch to ELF targeted VxWorks targets 2003-10-30 09:47:15 +00:00
elf32mt.sh Second part of ms1 to mt renaming. 2005-12-16 10:23:12 +00:00
elf32openrisc.sh
elf32ppc.sh bfd/ 2006-03-02 08:50:04 +00:00
elf32ppc_fbsd.sh
elf32ppccommon.sh bfd/ 2006-03-02 08:50:04 +00:00
elf32ppclinux.sh * ldlang.c (exp_init_os): Handle etree_provide. 2005-08-03 05:09:49 +00:00
elf32ppcnto.sh
elf32ppcsim.sh
elf32ppcvxworks.sh bfd/ 2006-03-02 08:50:04 +00:00
elf32ppcwindiss.sh
elf32vax.sh
elf32xc16x.sh Add support for the Infineon XC16X. 2006-02-17 14:36:28 +00:00
elf32xc16xl.sh Add support for the Infineon XC16X. 2006-02-17 14:36:28 +00:00
elf32xc16xs.sh Add support for the Infineon XC16X. 2006-02-17 14:36:28 +00:00
elf32xstormy16.sh
elf32xtensa.sh * scripttempl/elfxtensa.sc: Sync up with elf.sc. 2005-05-12 00:31:22 +00:00
elf64_aix.sh
elf64_ia64.sh 2004-10-14 H.J. Lu <hongjiu.lu@intel.com> 2004-10-14 17:00:16 +00:00
elf64_ia64_fbsd.sh 2004-10-14 H.J. Lu <hongjiu.lu@intel.com> 2004-10-14 17:00:16 +00:00
elf64_s390.sh bfd/ 2004-05-11 17:08:38 +00:00
elf64_sparc.sh bfd/ 2003-05-30 15:50:12 +00:00
elf64_sparc_fbsd.sh
elf64alpha.sh * emulparams/elf64alpha.sh (PLT): New. 2005-05-29 23:16:09 +00:00
elf64alpha_fbsd.sh
elf64alpha_nbsd.sh
elf64bmip.sh * emulparams/elf32bsmip.sh (EXTRA_EM_FILE): Define to irix. 2004-04-08 14:52:44 +00:00
elf64btsmip.sh * emulparams/elf32bmipn32-defs.sh (INITIAL_READONLY_SECTIONS): Move 2003-10-13 19:48:39 +00:00
elf64hppa.sh
elf64lppc.sh
elf64ltsmip.sh
elf64mmix.sh * emulparams/armelf.sh (OTHER_BSS_END_SYMBOLS): Split out from 2005-08-05 04:29:57 +00:00
elf64ppc.sh * emulparams/elf64ppc.sh (.tocbss): Use new section alignment scheme. 2005-11-18 04:26:29 +00:00
elf_fbsd.sh
elf_i386.sh bfd/ 2004-05-11 17:08:38 +00:00
elf_i386_be.sh
elf_i386_chaos.sh
elf_i386_fbsd.sh
elf_i386_ldso.sh
elf_i386_vxworks.sh 2005-05-05 Paul Brook <paul@codesourcery.com> 2005-05-05 14:37:27 +00:00
elf_s390.sh bfd/ 2004-05-11 17:08:38 +00:00
elf_x86_64.sh * emulparams/elf_x86_64.sh: Revert last change. 2005-08-05 13:42:22 +00:00
elf_x86_64_fbsd.sh
gld960.sh * Makefile.am (GENSCRIPTS_EXTRA, GEN_EXTRA_DEPENDS): Remove. Use 2003-10-16 08:46:35 +00:00
gld960coff.sh * Makefile.am (GENSCRIPTS_EXTRA, GEN_EXTRA_DEPENDS): Remove. Use 2003-10-16 08:46:35 +00:00
h8300.sh Add TINY_READONLY_SECTION, TINY_DATA_SECTION, TINY_BSS_SECTION. 2005-12-22 17:43:34 +00:00
h8300elf.sh Add TINY_READONLY_SECTION, TINY_DATA_SECTION, TINY_BSS_SECTION. 2005-12-22 17:43:34 +00:00
h8300h.sh
h8300helf.sh
h8300hn.sh
h8300hnelf.sh
h8300s.sh
h8300self.sh
h8300sn.sh
h8300snelf.sh
h8300sx.sh 2003-06-03 Michael Snyder <msnyder@redhat.com> 2003-06-03 21:43:52 +00:00
h8300sxelf.sh Add TINY_READONLY_SECTION, TINY_DATA_SECTION, TINY_BSS_SECTION. 2005-12-22 17:43:34 +00:00
h8300sxn.sh include/elf/ 2003-06-10 07:09:31 +00:00
h8300sxnelf.sh include/elf/ 2003-06-10 07:09:31 +00:00
h8500.sh
h8500b.sh
h8500c.sh
h8500m.sh
h8500s.sh
hp3hpux.sh
hp300bsd.sh
hppa64linux.sh * emulparams/hppa64linux.sh (LARGE_SECTIONS): Remove .tbss. 2005-08-09 03:45:55 +00:00
hppaelf.sh
hppalinux.sh Fix typo 2005-07-04 14:36:02 +00:00
hppanbsd.sh bfd: 2004-07-27 22:30:25 +00:00
hppaobsd.sh Change target of hppa-netbsd port 2003-10-06 11:01:36 +00:00
i386aout.sh
i386beos.sh
i386bsd.sh
i386coff.sh
i386go32.sh
i386linux.sh
i386lynx.sh Add PowerPC LynxOS support 2004-05-17 19:50:16 +00:00
i386mach.sh
i386moss.sh
i386msdos.sh
i386nbsd.sh
i386nto.sh
i386nw.sh
i386pe.sh * emulparams/arm_epoc_pe.sh, emulparams/armpe.sh, emulparams/i386pe.sh, 2004-09-28 19:14:29 +00:00
i386pe_posix.sh * emulparams/arm_epoc_pe.sh, emulparams/armpe.sh, emulparams/i386pe.sh, 2004-09-28 19:14:29 +00:00
lnk960.sh * Makefile.am (GENSCRIPTS_EXTRA, GEN_EXTRA_DEPENDS): Remove. Use 2003-10-16 08:46:35 +00:00
m32relf.sh * emulparams/armelf.sh (OTHER_BSS_END_SYMBOLS): Split out from 2005-08-05 04:29:57 +00:00
m32relf_linux.sh m32r-linux-ld support for position independent executables 2005-07-04 13:54:36 +00:00
m32rlelf.sh Add support for m32r-linux target, including a RELA ABI and PIC. 2003-12-19 11:44:01 +00:00
m32rlelf_linux.sh Add support for m32r-linux target, including a RELA ABI and PIC. 2003-12-19 11:44:01 +00:00
m68hc11elf.sh
m68hc11elfb.sh
m68hc12elf.sh
m68hc12elfb.sh
m68k4knbsd.sh
m68kaout.sh
m68kaux.sh
m68kcoff.sh
m68kelf.sh
m68kelfnbsd.sh
m68klinux.sh
m68knbsd.sh
m68kpsos.sh
m88kbcs.sh * Makefile.am (GENSCRIPTS_EXTRA, GEN_EXTRA_DEPENDS): Remove. Use 2003-10-16 08:46:35 +00:00
maxqcoff.sh Add support fpr MAXQ processor 2004-11-08 13:17:43 +00:00
mcorepe.sh * emulparams/arm_epoc_pe.sh, emulparams/armpe.sh, emulparams/i386pe.sh, 2004-09-28 19:14:29 +00:00
mipsbig.sh
mipsbsd.sh
mipsidt.sh [ bfd/ChangeLog ] 2004-04-21 20:52:31 +00:00
mipsidtl.sh [ bfd/ChangeLog ] 2004-04-21 20:52:31 +00:00
mipslit.sh
mipslnews.sh
mipspe.sh * emulparams/arm_epoc_pe.sh, emulparams/armpe.sh, emulparams/i386pe.sh, 2004-09-28 19:14:29 +00:00
mmo.sh
mn10200.sh
mn10300.sh 2001-04-17 Alexandre Oliva <aoliva@redhat.com> 2003-07-10 03:20:26 +00:00
msp430all.sh Add support for msp430x21xx variants 2005-08-08 17:08:04 +00:00
news.sh
ns32knbsd.sh
or32.sh
or32elf.sh
pc532macha.sh
pdp11.sh
pjelf.sh
pjlelf.sh
ppclynx.sh Add PowerPC LynxOS support 2004-05-17 19:50:16 +00:00
ppcmacos.sh
ppcnw.sh
ppcpe.sh * emulparams/arm_epoc_pe.sh, emulparams/armpe.sh, emulparams/i386pe.sh, 2004-09-28 19:14:29 +00:00
riscix.sh
sh.sh
shelf.sh PR 600 2004-12-23 12:27:45 +00:00
shelf32.sh * emulparams/shelf.sh (OTHER_SECTIONS): Don't include .stack 2003-07-30 02:22:07 +00:00
shelf32_linux.sh
shelf32_nbsd.sh [ld] 2003-10-13 05:09:21 +00:00
shelf64.sh * emulparams/shelf.sh (OTHER_SECTIONS): Don't include .stack 2003-07-30 02:22:07 +00:00
shelf64_nbsd.sh
shelf_linux.sh
shelf_nbsd.sh
shelf_nto.sh
shl.sh
shlelf.sh
shlelf32.sh
shlelf32_linux.sh * emulparams/shlelf32_linux.sh (COMMONPAGESIZE): Set to 4KB. 2004-07-02 11:25:54 +00:00
shlelf32_nbsd.sh
shlelf64.sh
shlelf64_nbsd.sh
shlelf_linux.sh * emulparams/armelf_linux.sh (COMMONPAGESIZE): Set to 4KB. 2004-02-09 17:54:25 +00:00
shlelf_nbsd.sh
shlelf_nto.sh
shlsymbian.sh Add support for sh-symbian-elf target 2004-07-06 16:58:43 +00:00
shpe.sh * emulparams/arm_epoc_pe.sh, emulparams/armpe.sh, emulparams/i386pe.sh, 2004-09-28 19:14:29 +00:00
sparcaout.sh
sparclinux.sh
sparcnbsd.sh
st2000.sh
sun3.sh
sun4.sh
tic3xcoff.sh
tic3xcoff_onchip.sh
tic4xcoff.sh
tic30aout.sh
tic30coff.sh
tic54xcoff.sh
tic80coff.sh
v850.sh
vanilla.sh * Makefile.am (GENSCRIPTS_EXTRA, GEN_EXTRA_DEPENDS): Remove. Use 2003-10-16 08:46:35 +00:00
vax.sh
vaxnbsd.sh
vsta.sh
vxworks.sh bfd/ 2006-03-07 08:39:21 +00:00
w65.sh
xtensa-config.sh
z80.sh Add support for the Z80 processor family 2005-10-25 17:40:19 +00:00
z8001.sh
z8002.sh

README

The files in this directory are read by genscripts.sh as shell commands.
They set parameters for the emulations.