binutils-gdb/bfd
Richard Sandiford 34e77a920a include/elf/
* arm.h (R_ARM_IRELATIVE): New relocation.

bfd/
	* reloc.c (BFD_RELOC_ARM_IRELATIVE): New relocation.
	* bfd-in2.h: Regenerate.
	* elf32-arm.c (elf32_arm_howto_table_2): Rename existing definition
	to elf32_arm_howto_table_3 and replace with a single R_ARM_IRELATIVE
	entry.
	(elf32_arm_howto_from_type): Update accordingly.
	(elf32_arm_reloc_map): Map BFD_RELOC_ARM_IRELATIVE to R_ARM_IRELATIVE.
	(elf32_arm_reloc_name_lookup): Handle elf32_arm_howto_table_3.
	(arm_plt_info): New structure, split out from elf32_arm_link_hash_entry
	with an extra noncall_refcount field.
	(arm_local_iplt_info): New structure.
	(elf_arm_obj_tdata): Add local_iplt.
	(elf32_arm_local_iplt): New accessor macro.
	(elf32_arm_link_hash_entry): Replace plt_thumb_refcount,
	plt_maybe_thumb_refcount and plt_got_offset with an arm_plt_info.
	Change tls_type to a bitfield and add is_iplt.
	(elf32_arm_link_hash_newfunc): Update accordingly.
	(elf32_arm_allocate_local_sym_info): New function.
	(elf32_arm_create_local_iplt): Likewise.
	(elf32_arm_get_plt_info): Likewise.
	(elf32_arm_plt_needs_thumb_stub_p): Likewise.
	(elf32_arm_get_local_dynreloc_list): Likewise.
	(create_ifunc_sections): Likewise.
	(elf32_arm_copy_indirect_symbol): Update after the changes to
	elf32_arm_link_hash_entry.  Assert the is_iplt has not yet been set.
	(arm_type_of_stub): Add an st_type argument.  Use elf32_arm_get_plt_info
	to get PLT information.  Assert that all STT_GNU_IFUNC references
	are turned into PLT references.
	(arm_build_one_stub): Pass the symbol type to
	elf32_arm_final_link_relocate.
	(elf32_arm_size_stubs): Pass the symbol type to arm_type_of_stub.
	(elf32_arm_allocate_irelocs): New function.
	(elf32_arm_add_dynreloc): In static objects, use .rel.iplt for
	all R_ARM_IRELATIVE.
	(elf32_arm_allocate_plt_entry): New function.
	(elf32_arm_populate_plt_entry): Likewise.
	(elf32_arm_final_link_relocate): Add an st_type parameter.
	Set srelgot to null for static objects.  Use separate variables
	to record which st_value and st_type should be used when generating
	a dynamic relocation.  Use elf32_arm_get_plt_info to find the
	symbol's PLT information, setting has_iplt_entry, splt,
	plt_offset and gotplt_offset accordingly.  Check whether
	STT_GNU_IFUNC symbols should resolve to an .iplt entry, and change
	the relocation target accordingly.  Broaden assert to include
	.iplts.  Don't set sreloc for static relocations.  Assert that
	we only generate dynamic R_ARM_RELATIVE relocations for R_ARM_ABS32
	and R_ARM_ABS32_NOI.  Generate R_ARM_IRELATIVE relocations instead
	of R_ARM_RELATIVE relocations if the target is an STT_GNU_IFUNC
	symbol.  Pass the symbol type to arm_type_of_stub.  Conditionally
	resolve GOT references to the .igot.plt entry.
	(elf32_arm_relocate_section): Update the call to
	elf32_arm_final_link_relocate.
	(elf32_arm_gc_sweep_hook): Use elf32_arm_get_plt_info to get PLT
	information.  Treat R_ARM_REL32 and R_ARM_REL32_NOI as call
	relocations in shared libraries and relocatable executables.
	Count non-call PLT references.  Use elf32_arm_get_local_dynreloc_list
	to get the list of dynamic relocations for a local symbol.
	(elf32_arm_check_relocs): Always create ifunc sections.  Set isym
	at the same time as setting h.  Use elf32_arm_allocate_local_sym_info
	to allocate local symbol information.  Treat R_ARM_REL32 and
	R_ARM_REL32_NOI as call relocations in shared libraries and
	relocatable executables.  Record PLT information for local
	STT_GNU_IFUNC functions as well as global functions.   Count
	non-call PLT references.  Use elf32_arm_get_local_dynreloc_list
	to get the list of dynamic relocations for a local symbol.
	(elf32_arm_adjust_dynamic_symbol): Handle STT_GNU_IFUNC symbols.
	Don't remove STT_GNU_IFUNC PLTs unless all references have been
	removed.  Update after the changes to elf32_arm_link_hash_entry.
	(allocate_dynrelocs_for_symbol): Decide whether STT_GNU_IFUNC PLT
	entries should live in .plt or .iplt.  Check whether the .igot.plt
	and .got entries can be combined.  Use elf32_arm_allocate_plt_entry
	to allocate .plt and .(i)got.plt entries.  Detect which .got
	entries will need R_ARM_IRELATIVE relocations and use
	elf32_arm_allocate_irelocs to allocate them.  Likewise other
	non-.got dynamic relocations.
	(elf32_arm_size_dynamic_sections): Allocate .iplt, .igot.plt
	and dynamic relocations for local STT_GNU_IFUNC symbols.
	Check whether the .igot.plt and .got entries can be combined.
	Detect which .got entries will need R_ARM_IRELATIVE relocations
	and use elf32_arm_allocate_irelocs to allocate them.  Use stashed
	section pointers intead of strcmp checks.  Handle iplt and igotplt.
	(elf32_arm_finish_dynamic_symbol): Use elf32_arm_populate_plt_entry
	to fill in .plt, .got.plt and .rel(a).plt entries.  Point
	STT_GNU_IFUNC symbols at an .iplt entry if non-call relocations
	resolve to it.
	(elf32_arm_output_plt_map_1): New function, split out from
	elf32_arm_output_plt_map.  Handle .iplt entries.  Use
	elf32_arm_plt_needs_thumb_stub_p.
	(elf32_arm_output_plt_map): Call it.
	(elf32_arm_output_arch_local_syms): Add mapping symbols for
	local .iplt entries.
	(elf32_arm_swap_symbol_in): Handle Thumb STT_GNU_IFUNC symbols.
	(elf32_arm_swap_symbol_out): Likewise.
	(elf32_arm_add_symbol_hook): New function.
	(elf_backend_add_symbol_hook): Define for all targets.

opcodes/
	* arm-dis.c (get_sym_code_type): Treat STT_GNU_IFUNCs as code.

gas/
	* config/tc-arm.c (md_pcrel_from_section): Use S_FORCE_RELOC to
	determine whether a relocation is needed.
	(md_apply_fix, arm_apply_sym_value): Likewise.

ld/testsuite/
	* ld-arm/ifunc-1.s, ld-arm/ifunc-1.dd, ld-arm/ifunc-1.gd,
	ld-arm/ifunc-1.rd, ld-arm/ifunc-2.s, ld-arm/ifunc-2.dd,
	ld-arm/ifunc-2.gd, ld-arm/ifunc-2.rd, ld-arm/ifunc-3.s,
	ld-arm/ifunc-3.dd, ld-arm/ifunc-3.gd, ld-arm/ifunc-3.rd,
	ld-arm/ifunc-4.s, ld-arm/ifunc-4.dd, ld-arm/ifunc-4.gd,
	ld-arm/ifunc-4.rd, ld-arm/ifunc-5.s, ld-arm/ifunc-5.dd,
	ld-arm/ifunc-5.gd, ld-arm/ifunc-5.rd, ld-arm/ifunc-6.s,
	ld-arm/ifunc-6.dd, ld-arm/ifunc-6.gd, ld-arm/ifunc-6.rd,
	ld-arm/ifunc-7.s, ld-arm/ifunc-7.dd, ld-arm/ifunc-7.gd,
	ld-arm/ifunc-7.rd, ld-arm/ifunc-8.s, ld-arm/ifunc-8.dd,
	ld-arm/ifunc-8.gd, ld-arm/ifunc-8.rd, ld-arm/ifunc-9.s,
	ld-arm/ifunc-9.dd, ld-arm/ifunc-9.gd, ld-arm/ifunc-9.rd,
	ld-arm/ifunc-10.s, ld-arm/ifunc-10.dd, ld-arm/ifunc-10.gd,
	ld-arm/ifunc-10.rd, ld-arm/ifunc-11.s, ld-arm/ifunc-11.dd,
	ld-arm/ifunc-11.gd, ld-arm/ifunc-11.rd, ld-arm/ifunc-12.s,
	ld-arm/ifunc-12.dd, ld-arm/ifunc-12.gd, ld-arm/ifunc-12.rd,
	ld-arm/ifunc-13.s, ld-arm/ifunc-13.dd, ld-arm/ifunc-13.gd,
	ld-arm/ifunc-13.rd, ld-arm/ifunc-14.s, ld-arm/ifunc-14.dd,
	ld-arm/ifunc-14.gd, ld-arm/ifunc-14.rd, ld-arm/ifunc-15.s,
	ld-arm/ifunc-15.dd, ld-arm/ifunc-15.gd, ld-arm/ifunc-15.rd,
	ld-arm/ifunc-16.s, ld-arm/ifunc-16.dd, ld-arm/ifunc-16.gd,
	ld-arm/ifunc-16.rd, ld-arm/ifunc-dynamic.ld,
	ld-arm/ifunc-static.ld: New tests.
	* ld-arm/farcall-group.d, ld-arm/farcall-group-size2.d,
	ld-arm/farcall-mixed-lib-v4t.d, ld-arm/farcall-mixed-lib.d: Update
	for new stub hashes.
	* ld-arm/arm-elf.exp: Run them.
2011-03-14 16:04:16 +00:00
..
doc Add directory section for info document. 2010-10-28 11:40:26 +00:00
hosts Undefine HAVE_PRPSINFO32_T/HAVE_PRSTATUS32_T before define. 2010-04-10 22:52:37 +00:00
po Update translations 2010-11-25 06:08:52 +00:00
.gitignore bfd/binutils/gas/gprof/ld/libiberty/opcodes: add .gitignore 2010-12-09 09:03:18 +00:00
COPYING
ChangeLog include/elf/ 2011-03-14 16:04:16 +00:00
ChangeLog-0001
ChangeLog-0203
ChangeLog-2004
ChangeLog-2005
ChangeLog-2006
ChangeLog-2007
ChangeLog-2008 bfd/ 2009-01-02 16:48:11 +00:00
ChangeLog-2009 Move 2009 binutils ChangeLog to ChangeLog-2009. 2010-01-01 18:06:10 +00:00
ChangeLog-2010 Rotate binutils ChangeLogs. 2011-01-01 16:43:53 +00:00
ChangeLog-9193
ChangeLog-9495
ChangeLog-9697
ChangeLog-9899
MAINTAINERS
Makefile.am bfd: install plugin-api.h as needed 2010-12-04 13:00:35 +00:00
Makefile.in bfd: install plugin-api.h as needed 2010-12-04 13:00:35 +00:00
PORTING
README
TODO
acinclude.m4 * acinclude.m4: Add include of ../config/zlib.m4. 2009-11-24 22:47:20 +00:00
aclocal.m4 bfd/ 2010-05-07 12:28:50 +00:00
aix5ppc-core.c
aix386-core.c 2010-08-18 Pedro Alves <pedro@codesourcery.com> 2010-08-18 12:24:13 +00:00
aout-adobe.c 2009-11-23 Paul Brook <paul@codesourcery.com> 2009-11-23 14:41:33 +00:00
aout-arm.c * aout-arm.c (MY(bfd_reloc_type_lookup)): Use bfd_arch_bits_per_address. 2010-08-25 07:02:40 +00:00
aout-cris.c include/aout/ 2009-10-02 14:40:41 +00:00
aout-ns32k.c * aout-arm.c (MY(bfd_reloc_type_lookup)): Use bfd_arch_bits_per_address. 2010-08-25 07:02:40 +00:00
aout-sparcle.c update copyright dates 2009-09-02 07:25:43 +00:00
aout-target.h 2010-08-18 Pedro Alves <pedro@codesourcery.com> 2010-08-18 12:24:13 +00:00
aout-tic30.c 2010-08-18 Pedro Alves <pedro@codesourcery.com> 2010-08-18 12:24:13 +00:00
aout0.c update copyright dates 2009-09-02 07:25:43 +00:00
aout32.c update copyright dates 2009-09-02 07:25:43 +00:00
aout64.c update copyright dates 2009-09-02 07:25:43 +00:00
aoutf1.h
aoutx.h 2011-03-03 Michael Snyder <msnyder@vmware.com> 2011-03-03 23:47:21 +00:00
archive.c * archive.c (bsd_write_armap): Don't call stat in deterministic 2011-03-04 01:43:24 +00:00
archive64.c * archive64.c (bfd_elf64_archive_write_armap): Fix buffer overrun 2010-06-23 10:21:16 +00:00
archures.c Add x86-64 ILP32 support. 2010-12-31 00:33:36 +00:00
armnetbsd.c
bfd-in.h bfd/ 2010-11-08 02:48:57 +00:00
bfd-in2.h include/elf/ 2011-03-14 16:04:16 +00:00
bfd.c * bfd.c (bfd_perror): Flush stdout before and stderr after printing 2011-01-14 12:35:56 +00:00
bfd.m4 2010-01-04 Daniel Gutson <dgutson@codesourcery.com> 2010-01-05 00:40:07 +00:00
bfdio.c 2010-06-09 Tristan Gingold <gingold@adacore.com> 2010-06-09 13:28:31 +00:00
bfdwin.c * aoutx.h (aout_get_external_symbols): Declare 'amt' locally. 2009-07-02 17:08:51 +00:00
binary.c 2009-11-23 Paul Brook <paul@codesourcery.com> 2009-11-23 14:41:33 +00:00
bout.c fix set but unused variable warnings 2010-06-27 04:07:55 +00:00
cache.c 2009-12-11 Tristan Gingold <gingold@adacore.com> 2009-12-11 15:42:38 +00:00
cf-i386lynx.c update copyright dates 2009-09-02 07:25:43 +00:00
cf-sparclynx.c update copyright dates 2009-09-02 07:25:43 +00:00
cisco-core.c * cisco-core.c (cisco_core_file_pid): Define. 2010-08-30 09:35:25 +00:00
coff-alpha.c 2010-05-25 Tristan Gingold <gingold@adacore.com> 2010-05-26 07:37:36 +00:00
coff-apollo.c update copyright dates 2009-09-02 07:25:43 +00:00
coff-arm.c * aout-arm.c (MY(bfd_reloc_type_lookup)): Use bfd_arch_bits_per_address. 2010-08-25 07:02:40 +00:00
coff-aux.c update copyright dates 2009-09-02 07:25:43 +00:00
coff-go32.c update copyright dates 2009-09-02 07:25:43 +00:00
coff-h8300.c
coff-h8500.c
coff-i386.c 2010-03-31 Kai Tietz <kai.tietz@onevision.com> 2010-03-31 16:32:02 +00:00
coff-i860.c * bfd.c (bfd_perror): Flush stdout before and stderr after printing 2011-01-14 12:35:56 +00:00
coff-i960.c * bfd/coff-arm.c (coff_arm_relocate_section) 2009-09-05 07:56:26 +00:00
coff-ia64.c update copyright dates 2009-09-02 07:25:43 +00:00
coff-m68k.c
coff-m88k.c update copyright dates 2009-09-02 07:25:43 +00:00
coff-mcore.c fix set but unused variable warnings 2010-06-27 04:07:55 +00:00
coff-mips.c update copyright dates 2009-09-02 07:25:43 +00:00
coff-or32.c update copyright dates 2009-09-02 07:25:43 +00:00
coff-pmac.c update copyright dates 2009-09-02 07:25:43 +00:00
coff-ppc.c * bfd.c (bfd_perror): Flush stdout before and stderr after printing 2011-01-14 12:35:56 +00:00
coff-rs6000.c 2010-08-18 Pedro Alves <pedro@codesourcery.com> 2010-08-18 12:24:13 +00:00
coff-sh.c * bfd.c (bfd_perror): Flush stdout before and stderr after printing 2011-01-14 12:35:56 +00:00
coff-sparc.c
coff-stgo32.c * bfd/coff-arm.c (coff_arm_relocate_section) 2009-09-05 07:56:26 +00:00
coff-svm68k.c update copyright dates 2009-09-02 07:25:43 +00:00
coff-tic4x.c
coff-tic30.c update copyright dates 2009-09-02 07:25:43 +00:00
coff-tic54x.c
coff-tic80.c
coff-u68k.c update copyright dates 2009-09-02 07:25:43 +00:00
coff-w65.c
coff-we32k.c update copyright dates 2009-09-02 07:25:43 +00:00
coff-x86_64.c 2011-03-03 Michael Snyder <msnyder@vmware.com> 2011-03-03 23:49:21 +00:00
coff-z8k.c
coff-z80.c * coff-z80.c (z80coff_vec): Allow sections to be of type SEC_CODE or SEC_DATA 2009-10-17 17:18:28 +00:00
coff64-rs6000.c 2010-08-18 Pedro Alves <pedro@codesourcery.com> 2010-08-18 12:24:13 +00:00
coffcode.h Fix compilation for mingw64. 2011-01-18 14:13:43 +00:00
coffgen.c PR binutils/11512 2010-04-27 14:42:50 +00:00
cofflink.c * aoutx.h (aout_link_check_ar_symbols): Formatting. 2010-12-13 01:06:16 +00:00
coffswap.h * bfd/coff-arm.c (coff_arm_relocate_section) 2009-09-05 07:56:26 +00:00
compress.c 2011-03-05 Michael Snyder <msnyder@vmware.com> 2011-03-06 18:37:07 +00:00
config.bfd bfd/ 2010-12-31 11:01:00 +00:00
config.in 2010-04-27 Kai Tietz <kai.tietz@onevision.com> 2010-04-27 17:26:09 +00:00
configure Remove freebsd1 from libtool.m4 macros and config.rpath. 2011-02-13 21:00:14 +00:00
configure.com 2009-09-30 Tristan Gingold <gingold@adacore.com> 2009-09-30 13:12:50 +00:00
configure.host bfd/ 2010-12-31 11:01:00 +00:00
configure.in bfd/ 2010-12-31 11:01:00 +00:00
corefile.c ChangeLog libiberty/ 2011-02-28 18:30:16 +00:00
cpu-alpha.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-arc.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-arm.c fix set but unused variable warnings 2010-06-27 04:07:55 +00:00
cpu-avr.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-bfin.c
cpu-cr16.c
cpu-cr16c.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-cris.c
cpu-crx.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-d10v.c * cpu-d10v.c: Make bits_per_address 18 for all arch_info entries. 2010-09-23 11:55:01 +00:00
cpu-d30v.c
cpu-dlx.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-fr30.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-frv.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-h8300.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-h8500.c
cpu-hppa.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-i370.c
cpu-i386.c Don't allow mixing x64_32 with x86_64. 2011-01-03 18:16:46 +00:00
cpu-i860.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-i960.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-ia64-opc.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-ia64.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-ip2k.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-iq2000.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-l1om.c 2009-07-25 H.J. Lu <hongjiu.lu@intel.com> 2009-07-25 15:50:20 +00:00
cpu-lm32.c Add LM32 port. 2008-12-23 19:10:25 +00:00
cpu-m32c.c * cpu-m32c.c (m32c_scan): New function. Ensures that a scan for 2010-01-13 14:34:13 +00:00
cpu-m32r.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-m68hc11.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-m68hc12.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-m68k.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-m88k.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-m10200.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-m10300.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-mcore.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-mep.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-microblaze.c Add support for Xilinx MicroBlaze processor. 2009-08-06 17:38:04 +00:00
cpu-mips.c oops - acccidentally omitted from loongson 3a check-in. 2010-11-17 09:32:42 +00:00
cpu-mmix.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-moxie.c Add new binutils target: moxie 2009-04-16 15:39:48 +00:00
cpu-msp430.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-mt.c
cpu-ns32k.c
cpu-openrisc.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-or32.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-pdp11.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-pj.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-plugin.c * Makefile.am: Run "make dep-am". 2009-05-26 14:12:03 +00:00
cpu-powerpc.c include/ 2010-02-08 01:59:38 +00:00
cpu-rs6000.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-rx.c bfd 2009-09-29 14:17:19 +00:00
cpu-s390.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-score.c Add support for Score7 architecture. 2009-03-02 10:33:08 +00:00
cpu-sh.c
cpu-sparc.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-spu.c
cpu-tic4x.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-tic6x.c bfd: 2010-03-25 21:12:36 +00:00
cpu-tic30.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-tic54x.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-tic80.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-v850.c Add support for v850E2 and v850E2V3 2010-07-23 14:52:54 +00:00
cpu-vax.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-w65.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-we32k.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-xc16x.c
cpu-xstormy16.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-xtensa.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-z8k.c update copyright dates 2009-09-02 07:25:43 +00:00
cpu-z80.c
demo64.c update copyright dates 2009-09-02 07:25:43 +00:00
dep-in.sed * dep-in.sed: Don't use \n in replacement part of s command. 2009-06-04 06:51:11 +00:00
dwarf1.c PR 11103 2010-01-11 09:53:27 +00:00
dwarf2.c 2011-03-03 Michael Snyder <msnyder@vmware.com> 2011-03-03 23:43:08 +00:00
ecoff.c * aoutx.h (aout_link_check_ar_symbols): Formatting. 2010-12-13 01:06:16 +00:00
ecofflink.c Update soruces to make alpha, arc and arm targets compile cleanly 2009-09-25 19:13:27 +00:00
ecoffswap.h
elf-attrs.c * elf-attrs.c (_bfd_elf_merge_unknown_attribute_low, 2010-11-05 13:02:09 +00:00
elf-bfd.h include/elf/ 2011-03-14 15:55:04 +00:00
elf-eh-frame.c PR ld/12253 2010-11-23 23:30:04 +00:00
elf-hppa.h * aout-arm.c (MY(bfd_reloc_type_lookup)): Use bfd_arch_bits_per_address. 2010-08-25 07:02:40 +00:00
elf-ifunc.c Optimize _bfd_elf_allocate_ifunc_dyn_relocs. 2011-01-07 03:34:23 +00:00
elf-m10200.c bfd/ 2010-10-25 15:54:16 +00:00
elf-m10300.c bfd/ 2010-10-25 15:54:16 +00:00
elf-strtab.c Updated soruces in bfd/* to compile cleanly with -Wc++-compat. 2009-09-09 21:38:59 +00:00
elf-vxworks.c update copyright dates 2009-09-02 07:25:43 +00:00
elf-vxworks.h update copyright dates 2009-09-02 07:25:43 +00:00
elf.c include/elf/ 2011-03-14 15:55:04 +00:00
elf32-am33lin.c 2010-08-18 Pedro Alves <pedro@codesourcery.com> 2010-08-18 12:24:13 +00:00
elf32-arc.c
elf32-arm.c include/elf/ 2011-03-14 16:04:16 +00:00
elf32-avr.c PR ld/12161 2010-11-17 10:56:42 +00:00
elf32-avr.h
elf32-bfin.c ChangeLog libiberty/ 2011-02-28 18:30:16 +00:00
elf32-cr16.c bfd/ 2010-10-25 15:54:16 +00:00
elf32-cr16c.c bfd/ 2010-10-25 15:54:16 +00:00
elf32-cris.c bfd/ 2010-10-25 15:54:16 +00:00
elf32-crx.c bfd/ 2010-10-25 15:54:16 +00:00
elf32-d10v.c bfd/ 2010-10-25 15:54:16 +00:00
elf32-d30v.c
elf32-dlx.c * bfd.c (bfd_perror): Flush stdout before and stderr after printing 2011-01-14 12:35:56 +00:00
elf32-fr30.c bfd/ 2010-10-25 15:54:16 +00:00
elf32-frv.c ChangeLog libiberty/ 2011-02-28 18:30:16 +00:00
elf32-gen.c
elf32-h8300.c bfd/ 2010-10-25 15:54:16 +00:00
elf32-hppa.c bfd/ 2010-10-25 15:54:16 +00:00
elf32-hppa.h update copyright dates 2009-09-02 07:25:43 +00:00
elf32-i370.c include/elf/ 2011-03-14 15:55:04 +00:00
elf32-i386.c 2011-03-06 Michael Snyder <msnyder@vmware.com> 2011-03-06 18:22:36 +00:00
elf32-i860.c bfd/ 2010-10-25 15:54:16 +00:00
elf32-i960.c
elf32-ip2k.c bfd/ 2010-10-25 15:54:16 +00:00
elf32-iq2000.c bfd/ 2010-10-25 15:54:16 +00:00
elf32-lm32.c bfd/ 2010-10-25 15:54:16 +00:00
elf32-m32c.c bfd/ 2010-10-25 15:54:16 +00:00
elf32-m32r.c bfd/ 2010-10-25 15:54:16 +00:00
elf32-m68hc1x.c bfd/ 2010-10-25 15:54:16 +00:00
elf32-m68hc1x.h * elf-bfd.h (emum elf_object_id): Rename to elf_target_id. Add 2010-02-04 09:16:43 +00:00
elf32-m68hc11.c Add target_id to elf_backend_data. 2010-08-25 14:53:45 +00:00
elf32-m68hc12.c Add target_id to elf_backend_data. 2010-08-25 14:53:45 +00:00
elf32-m68k.c * elf32-m68k.c (elf_m68k_finish_dynamic_symbol): For a TLS_GD 2011-02-22 15:46:13 +00:00
elf32-m88k.c update copyright dates 2009-09-02 07:25:43 +00:00
elf32-mcore.c bfd/ 2010-10-25 15:54:16 +00:00
elf32-mep.c * bfd.c (bfd_perror): Flush stdout before and stderr after printing 2011-01-14 12:35:56 +00:00
elf32-microblaze.c bfd/ 2010-10-04 14:13:10 +00:00
elf32-mips.c bfd/ 2010-12-31 11:01:00 +00:00
elf32-moxie.c bfd/ 2010-10-25 15:54:16 +00:00
elf32-msp430.c bfd/ 2010-10-25 15:54:16 +00:00
elf32-mt.c bfd/ 2010-10-25 15:54:16 +00:00
elf32-openrisc.c bfd/ 2010-10-25 15:54:16 +00:00
elf32-or32.c
elf32-pj.c
elf32-ppc.c * elf32-ppc.c (ppc_elf_link_hash_newfunc): Initialize has_sda_refs 2011-01-29 00:12:52 +00:00
elf32-ppc.h include/elf/ 2009-09-21 11:51:02 +00:00
elf32-rx.c Fix compilation for mingw64. 2011-01-18 14:13:43 +00:00
elf32-s390.c bfd/ 2010-10-25 15:54:16 +00:00
elf32-score.c bfd/ 2010-10-25 15:54:16 +00:00
elf32-score.h * elf-bfd.h (struct elf_backend_data 2009-05-21 14:15:50 +00:00
elf32-score7.c bfd/ 2010-10-25 15:54:16 +00:00
elf32-sh-relocs.h 2010-05-21 Daniel Jacobowitz <dan@codesourcery.com> 2010-05-25 14:12:43 +00:00
elf32-sh-symbian.c include/elf/ 2011-03-14 15:55:04 +00:00
elf32-sh.c bfd/ 2010-10-25 15:54:16 +00:00
elf32-sh64-com.c update copyright dates 2009-09-02 07:25:43 +00:00
elf32-sh64.c fix set but unused variable warnings 2010-06-27 04:07:55 +00:00
elf32-sh64.h update copyright dates 2009-09-02 07:25:43 +00:00
elf32-sparc.c ld: 2010-10-22 12:08:32 +00:00
elf32-spu.c ChangeLog libiberty/ 2011-02-28 18:30:16 +00:00
elf32-spu.h bfd/ 2009-08-05 20:40:34 +00:00
elf32-tic6x.c bfd: 2010-11-05 13:04:07 +00:00
elf32-tic6x.h bfd: 2010-06-16 00:36:04 +00:00
elf32-v850.c * bfd.c (bfd_perror): Flush stdout before and stderr after printing 2011-01-14 12:35:56 +00:00
elf32-vax.c bfd/ 2010-10-25 15:54:16 +00:00
elf32-xc16x.c bfd/ 2010-10-25 15:54:16 +00:00
elf32-xstormy16.c bfd/ 2010-10-25 15:54:16 +00:00
elf32-xtensa.c bfd/ 2010-10-25 15:54:16 +00:00
elf32.c update copyright dates 2009-09-02 07:25:43 +00:00
elf64-alpha.c bfd/ 2010-10-25 15:54:16 +00:00
elf64-gen.c
elf64-hppa.c bfd/ 2010-11-08 02:48:57 +00:00
elf64-hppa.h update copyright dates 2009-09-02 07:25:43 +00:00
elf64-mips.c bfd/ 2010-12-31 11:01:00 +00:00
elf64-mmix.c bfd/ 2010-10-25 15:54:16 +00:00
elf64-ppc.c * elf64-ppc.c (ppc64_elf_relocate_section): Provide section/offset 2011-03-10 09:26:18 +00:00
elf64-ppc.h * elf64-ppc.c (ppc64_elf_has_small_toc_reloc): New function. 2010-03-15 01:59:57 +00:00
elf64-s390.c bfd/ 2010-10-25 15:54:16 +00:00
elf64-sh64.c bfd/ 2010-10-25 15:54:16 +00:00
elf64-sparc.c include/elf/ 2011-03-14 15:55:04 +00:00
elf64-x86-64.c Support TLS x32 GD->IE, GD->LE and LD->LE transitions. 2011-03-12 14:38:31 +00:00
elf64.c update copyright dates 2009-09-02 07:25:43 +00:00
elfcode.h include/elf/ 2011-03-14 15:55:04 +00:00
elfcore.h 2010-08-18 Pedro Alves <pedro@codesourcery.com> 2010-08-18 12:24:13 +00:00
elflink.c include/elf/ 2011-03-14 15:55:04 +00:00
elfn32-mips.c bfd/ 2010-12-31 11:01:00 +00:00
elfxx-ia64.c Fix compilation for mingw64. 2011-01-18 14:13:43 +00:00
elfxx-mips.c bfd/ 2011-01-22 10:16:29 +00:00
elfxx-mips.h Add target_id to elf_backend_data. 2010-08-25 14:53:45 +00:00
elfxx-sparc.c include/elf/ 2011-03-14 15:55:04 +00:00
elfxx-sparc.h include/ 2010-02-08 20:28:43 +00:00
elfxx-target.h * elf-attrs.c (_bfd_elf_merge_unknown_attribute_low, 2010-11-04 11:35:01 +00:00
epoc-pe-arm.c update copyright dates 2009-09-02 07:25:43 +00:00
epoc-pei-arm.c update copyright dates 2009-09-02 07:25:43 +00:00
format.c Updated soruces in bfd/* to compile cleanly with -Wc++-compat. 2009-09-09 21:38:59 +00:00
freebsd.h
gen-aout.c update copyright dates 2009-09-02 07:25:43 +00:00
genlink.h
go32stub.h
hash.c bfd/ 2010-11-08 02:48:57 +00:00
host-aout.c update copyright dates 2009-09-02 07:25:43 +00:00
hp300bsd.c include/aout/ 2009-10-02 14:40:41 +00:00
hp300hpux.c fix set but unused variable warnings 2010-06-27 04:07:55 +00:00
hppabsd-core.c 2010-08-18 Pedro Alves <pedro@codesourcery.com> 2010-08-18 12:24:13 +00:00
hpux-core.c 2010-08-18 Pedro Alves <pedro@codesourcery.com> 2010-08-18 12:24:13 +00:00
i386aout.c
i386bsd.c include/aout/ 2009-10-02 14:40:41 +00:00
i386dynix.c update copyright dates 2009-09-02 07:25:43 +00:00
i386freebsd.c update copyright dates 2009-09-02 07:25:43 +00:00
i386linux.c include/aout/ 2009-10-02 14:40:41 +00:00
i386lynx.c fix set but unused variable warnings 2010-06-27 04:07:55 +00:00
i386mach3.c update copyright dates 2009-09-02 07:25:43 +00:00
i386msdos.c 2009-11-23 Paul Brook <paul@codesourcery.com> 2009-11-23 14:41:33 +00:00
i386netbsd.c update copyright dates 2009-09-02 07:25:43 +00:00
i386os9k.c 2009-11-23 Paul Brook <paul@codesourcery.com> 2009-11-23 14:41:33 +00:00
ieee.c fix set but unused variable warnings 2010-06-27 04:07:55 +00:00
ihex.c 2009-11-23 Paul Brook <paul@codesourcery.com> 2009-11-23 14:41:33 +00:00
init.c update copyright dates 2009-09-02 07:25:43 +00:00
irix-core.c 2010-08-18 Pedro Alves <pedro@codesourcery.com> 2010-08-18 12:24:13 +00:00
libaout.h Updated soruces in bfd/* to compile cleanly with -Wc++-compat. 2009-09-09 21:38:59 +00:00
libbfd-in.h Add compressed debug section support to binutils and ld. 2010-10-29 12:10:39 +00:00
libbfd.c * bfd.c (bfd_perror): Flush stdout before and stderr after printing 2011-01-14 12:35:56 +00:00
libbfd.h bfd/ 2011-01-10 08:40:19 +00:00
libcoff-in.h Don't add IMAGE_FILE_RELOCS_STRIPPED for PIE. 2010-03-18 12:27:15 +00:00
libcoff.h Don't add IMAGE_FILE_RELOCS_STRIPPED for PIE. 2010-03-18 12:27:15 +00:00
libecoff.h Update copyright year. 2010-03-24 15:41:59 +00:00
libhppa.h update copyright dates 2009-09-02 07:25:43 +00:00
libieee.h update copyright dates 2009-09-02 07:25:43 +00:00
libnlm.h
liboasys.h update copyright dates 2009-09-02 07:25:43 +00:00
libpei.h update copyright dates 2009-09-02 07:25:43 +00:00
libxcoff.h update copyright dates 2009-09-02 07:25:43 +00:00
linker.c * aoutx.h (aout_link_check_ar_symbols): Formatting. 2010-12-13 01:06:16 +00:00
lynx-core.c 2010-08-18 Pedro Alves <pedro@codesourcery.com> 2010-08-18 12:24:13 +00:00
m68k4knetbsd.c update copyright dates 2009-09-02 07:25:43 +00:00
m68klinux.c include/aout/ 2009-10-02 14:40:41 +00:00
m68knetbsd.c update copyright dates 2009-09-02 07:25:43 +00:00
m88kmach3.c include/aout/ 2009-10-02 14:40:41 +00:00
m88kopenbsd.c update copyright dates 2009-09-02 07:25:43 +00:00
mach-o-i386.c 2010-01-11 Tristan Gingold <gingold@adacore.com> 2010-01-11 15:39:41 +00:00
mach-o-target.c 2010-08-18 Pedro Alves <pedro@codesourcery.com> 2010-08-18 12:24:13 +00:00
mach-o-x86-64.c 2010-01-13 Tristan Gingold <gingold@adacore.com> 2010-01-13 11:49:36 +00:00
mach-o.c * bfd.c (bfd_perror): Flush stdout before and stderr after printing 2011-01-14 12:35:56 +00:00
mach-o.h 2010-01-11 Tristan Gingold <gingold@adacore.com> 2010-01-11 15:57:59 +00:00
makefile.vms 2010-11-04 Tristan Gingold <gingold@adacore.com> 2010-11-04 13:51:37 +00:00
mep-relocs.pl
merge.c Add compressed debug section support to binutils and ld. 2010-10-29 12:10:39 +00:00
mipsbsd.c include/aout/ 2009-10-02 14:40:41 +00:00
mmo.c fix set but unused variable warnings 2010-06-27 04:07:55 +00:00
netbsd-core.c * netbsd-core.c (netbsd_core_core_file_pid): Renamed to ... 2010-09-01 13:51:35 +00:00
netbsd.h
newsos3.c include/aout/ 2009-10-02 14:40:41 +00:00
nlm-target.h 2009-11-23 Paul Brook <paul@codesourcery.com> 2009-11-23 14:41:33 +00:00
nlm.c update copyright dates 2009-09-02 07:25:43 +00:00
nlm32-alpha.c
nlm32-i386.c
nlm32-ppc.c
nlm32-sparc.c fix set but unused variable warnings 2010-06-27 04:07:55 +00:00
nlm32.c update copyright dates 2009-09-02 07:25:43 +00:00
nlm64.c update copyright dates 2009-09-02 07:25:43 +00:00
nlmcode.h
nlmswap.h
ns32k.h
ns32knetbsd.c
oasys.c Update copyright year. 2010-03-24 15:41:59 +00:00
opncls.c * opncls.c (bfd_alloc, bfd_zalloc): Don't mark internal. 2010-10-25 07:02:19 +00:00
osf-core.c 2010-08-18 Pedro Alves <pedro@codesourcery.com> 2010-08-18 12:24:13 +00:00
pc532-mach.c include/aout/ 2009-10-02 14:40:41 +00:00
pdp11.c * aoutx.h (aout_link_check_ar_symbols): Formatting. 2010-12-13 01:06:16 +00:00
pe-arm-wince.c * coff-sh.c (bfd_pe_print_pdata): Define to NULL for non 2008-07-21 14:09:57 +00:00
pe-arm.c update copyright dates 2009-09-02 07:25:43 +00:00
pe-i386.c update copyright dates 2009-09-02 07:25:43 +00:00
pe-mcore.c update copyright dates 2009-09-02 07:25:43 +00:00
pe-mips.c fix set but unused variable warnings 2010-06-27 04:07:55 +00:00
pe-ppc.c update copyright dates 2009-09-02 07:25:43 +00:00
pe-sh.c update copyright dates 2009-09-02 07:25:43 +00:00
pe-x86_64.c 2010-09-14 Kai Tietz <kai.tietz@onevision.com> 2010-09-14 20:40:39 +00:00
peXXigen.c 2010-12-21 Kai Tietz <kai.tietz@onevision.com> 2010-12-21 15:24:39 +00:00
pef-traceback.h
pef.c * bfd.c (bfd_perror): Flush stdout before and stderr after printing 2011-01-14 12:35:56 +00:00
pef.h * bfd/coff-arm.c (coff_arm_relocate_section) 2009-09-05 07:56:26 +00:00
pei-arm-wince.c
pei-arm.c update copyright dates 2009-09-02 07:25:43 +00:00
pei-i386.c update copyright dates 2009-09-02 07:25:43 +00:00
pei-ia64.c 2009-04-21 H.J. Lu <hongjiu.lu@intel.com> 2009-04-21 17:08:20 +00:00
pei-mcore.c update copyright dates 2009-09-02 07:25:43 +00:00
pei-mips.c update copyright dates 2009-09-02 07:25:43 +00:00
pei-ppc.c update copyright dates 2009-09-02 07:25:43 +00:00
pei-sh.c update copyright dates 2009-09-02 07:25:43 +00:00
pei-x86_64.c 2010-10-08 Kai Tietz <kai.tietz@onevision.com> 2010-10-08 15:54:18 +00:00
peicode.h 2010-05-25 Tristan Gingold <gingold@adacore.com> 2010-05-26 07:37:36 +00:00
plugin.c 2011-02-25 Rafael Ávila de Espíndola <respindola@mozilla.com> 2011-02-26 00:03:09 +00:00
plugin.h 2009-05-28 Nick Clifton <nickc@redhat.com> 2009-05-28 11:30:49 +00:00
ppcboot.c 2009-11-23 Paul Brook <paul@codesourcery.com> 2009-11-23 14:41:33 +00:00
ptrace-core.c 2010-08-18 Pedro Alves <pedro@codesourcery.com> 2010-08-18 12:24:13 +00:00
reloc.c include/elf/ 2011-03-14 16:04:16 +00:00
reloc16.c update copyright dates 2009-09-02 07:25:43 +00:00
riscix.c * aout-arm.c (MY(bfd_reloc_type_lookup)): Use bfd_arch_bits_per_address. 2010-08-25 07:02:40 +00:00
rs6000-core.c * rs6000-core.c (read_hdr): Fix typo in recent C++ compatibility 2009-09-11 08:08:11 +00:00
sco5-core.c 2010-08-18 Pedro Alves <pedro@codesourcery.com> 2010-08-18 12:24:13 +00:00
section.c bfd/ 2010-11-08 02:48:57 +00:00
simple.c Add compressed debug section support to binutils and ld. 2010-10-29 12:10:39 +00:00
som.c * bfd.c (bfd_perror): Flush stdout before and stderr after printing 2011-01-14 12:35:56 +00:00
som.h bfd/ 2010-06-10 08:51:46 +00:00
sparclinux.c include/aout/ 2009-10-02 14:40:41 +00:00
sparclynx.c
sparcnetbsd.c update copyright dates 2009-09-02 07:25:43 +00:00
srec.c 2009-11-23 Paul Brook <paul@codesourcery.com> 2009-11-23 14:41:33 +00:00
stab-syms.c update copyright dates 2009-09-02 07:25:43 +00:00
stabs.c Updated soruces in bfd/* to compile cleanly with -Wc++-compat. 2009-09-09 21:38:59 +00:00
stamp-h.in
sunos.c
syms.c ChangeLog libiberty/ 2011-02-28 18:30:16 +00:00
sysdep.h update copyright dates 2009-09-02 07:25:43 +00:00
targets.c bfd/ 2010-12-31 11:01:00 +00:00
targmatch.sed
tekhex.c 2009-12-15 H.J. Lu <hongjiu.lu@intel.com> 2009-12-15 16:59:20 +00:00
ticoff.h update copyright dates 2009-09-02 07:25:43 +00:00
trad-core.c 2010-08-18 Pedro Alves <pedro@codesourcery.com> 2010-08-18 12:24:13 +00:00
vax1knetbsd.c update copyright dates 2009-09-02 07:25:43 +00:00
vaxbsd.c include/aout/ 2009-10-02 14:40:41 +00:00
vaxnetbsd.c update copyright dates 2009-09-02 07:25:43 +00:00
verilog.c bfd/ChangeLog 2010-04-09 14:40:18 +00:00
versados.c fix set but unused variable warnings 2010-06-27 04:07:55 +00:00
version.h daily update 2011-03-13 23:00:05 +00:00
vms-alpha.c 2011-02-15 Tristan Gingold <gingold@adacore.com> 2011-02-15 09:35:42 +00:00
vms-lib.c 2010-11-17 Tristan Gingold <gingold@adacore.com> 2010-11-17 11:32:53 +00:00
vms-misc.c 2010-08-03 Tristan Gingold <gingold@adacore.com> 2010-08-03 15:18:51 +00:00
vms.h 2010-06-11 Tristan Gingold <gingold@adacore.com> 2010-06-11 15:13:32 +00:00
warning.m4 * warning.m4 (GCC_WARN_CFLAGS): Only add -Wshadow for gcc-4 and above. 2010-04-07 07:19:02 +00:00
xcoff-target.h 2010-08-18 Pedro Alves <pedro@codesourcery.com> 2010-08-18 12:24:13 +00:00
xcofflink.c ChangeLog libiberty/ 2011-02-28 18:30:16 +00:00
xsym.c fix set but unused variable warnings 2010-06-27 04:07:55 +00:00
xsym.h
xtensa-isa.c ChangeLog libiberty/ 2011-02-28 18:30:16 +00:00
xtensa-modules.c 2010-05-28 Sterling Augustine <sterling@tensilica.com> 2010-05-28 18:10:45 +00:00

README

BFD is an object file library.  It permits applications to use the
same routines to process object files regardless of their format.

BFD is used by the GNU debugger, assembler, linker, and the binary
utilities.

The documentation on using BFD is scanty and may be occasionally
incorrect.  Pointers to documentation problems, or an entirely
rewritten manual, would be appreciated.

There is some BFD internals documentation in doc/bfdint.texi which may
help programmers who want to modify BFD.

BFD is normally built as part of another package.  See the build
instructions for that package, probably in a README file in the
appropriate directory.

BFD supports the following configure options:

  --target=TARGET
	The default target for which to build the library.  TARGET is
	a configuration target triplet, such as sparc-sun-solaris.
  --enable-targets=TARGET,TARGET,TARGET...
	Additional targets the library should support.  To include
	support for all known targets, use --enable-targets=all.
  --enable-64-bit-bfd
	Include support for 64 bit targets.  This is automatically
	turned on if you explicitly request a 64 bit target, but not
	for --enable-targets=all.  This requires a compiler with a 64
	bit integer type, such as gcc.
  --enable-shared
	Build BFD as a shared library.
  --with-mmap
	Use mmap when accessing files.  This is faster on some hosts,
	but slower on others.  It may not work on all hosts.

Report bugs with BFD to bug-binutils@gnu.org.

Patches are encouraged.  When sending patches, always send the output
of diff -u or diff -c from the original file to the new file.  Do not
send default diff output.  Do not make the diff from the new file to
the original file.  Remember that any patch must not break other
systems.  Remember that BFD must support cross compilation from any
host to any target, so patches which use ``#ifdef HOST'' are not
acceptable.  Please also read the ``Reporting Bugs'' section of the
gcc manual.

Bug reports without patches will be remembered, but they may never get
fixed until somebody volunteers to fix them.