binutils-gdb/bfd
Joseph Myers 64bfc2584c Fix BFD format matching for x86_64-w64-mingw32 -m32 LTO.
In <https://sourceware.org/ml/binutils/2015-12/msg00190.html> (commit
4a07dc8135), Kwok fixed a problem with
the template used for a dummy BFD for an IR file for LTO on MinGW,
where the input and output formats are not the same.

A problem, however, remains in the case of linking for
x86_64-w64-mingw32 -m32, where LTO linking reports an ambiguity
between the pe-i386 and pei-i386 formats.  An object (pe-i386) with
plugin data is being tested by the linker to see what formats match.
The default format initially set by the linker when
bfd_check_format_matches is called is pei-i386 (as that's the output
format from the linker script), which does not match, so the function
goes on to the loop over possible BFD vectors.  The pe-i386 vector
matches, as it should.  One other vector matches: the plugin vector.

bfd_check_format_matches tests a vector for matching by temporarily
modifying the BFD object to use that vector then using
_bfd_check_format on it.  So the BFD object is temporarily using
plugin_vec.  _bfd_check_format ends up using bfd_plugin_object_p which
uses plugin_object_p from ld which uses plugin_get_ir_dummy_bfd which
succeeds, having created a BFD based on link_info.output_bfd (because
srctemplate is the BFD temporarily using plugin_vec, even after Kwok's
patch link_info.output_bfd is all that's available to base the dummy
BFD on).  So we end up with a match from the plugin vector which uses
the pei-i386 vector even though the pei-i386 vector itself does not
match the input object.  (In the i686-mingw32 case, as opposed to this
multilib case, pe-i386 is the default BFD target, which would
short-circuit that logic.)

There are two cases of the linker handling inputs with a plugin: they
may be inputs that are also accepted by some non-plugin BFD format, as
here, or they may be a format that would not be recognized at all, as
with some tests in the ld testsuite.  In the former case, there is no
need for BFD to accept the objects using the plugin vector, as the
linker has its own logic to allow plugins to claim objects accepted by
some other BFD vector.  Thus, this patch arranges for the plugin
vector to have the lowest match priority, and for the priority from
that vector to be used in the relevant case (the attempted match to
the plugin vector results in TEMP pointing to the pei-i386 vector).

Tested for GCC and Binutils testsuites for x86_64-pc-linux-gnu, as
well as verifying that it fixes the observed LTO issue for
x86_64-w64-mingw32.

	* plugin.c (plugin_vec): Set match priority to 255.
	* format.c (bfd_check_format_matches) [BFD_SUPPORTS_PLUGINS]: When
	matching against the plugin vector, take priority from there not
	from TEMP.
2016-02-16 00:27:11 +00:00
..
doc Copyright update for binutils 2016-01-01 23:00:01 +10:30
hosts Copyright update for binutils 2016-01-01 23:00:01 +10:30
po Rename elf-linux-psinfo.h to elf-linux-core.h 2016-01-21 19:59:33 +10:30
.gitignore
acinclude.m4 Copyright update for binutils 2016-01-01 23:00:01 +10:30
aclocal.m4
aix5ppc-core.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
aix386-core.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
aout0.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
aout32.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
aout64.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
aout-adobe.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
aout-arm.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
aout-cris.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
aout-ns32k.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
aout-sparcle.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
aout-target.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
aout-tic30.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
aoutf1.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
aoutx.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
arc-plt.def Add PIC and TLS support to the ARC target. 2016-01-19 15:25:58 +00:00
arc-plt.h Add PIC and TLS support to the ARC target. 2016-01-19 15:25:58 +00:00
archive64.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
archive.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
archures.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
armnetbsd.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
bfd-in2.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
bfd-in.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
bfd.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
bfd.m4 Copyright update for binutils 2016-01-01 23:00:01 +10:30
bfdio.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
bfdwin.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
binary.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
bout.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cache.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cf-i386lynx.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cf-sparclynx.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
ChangeLog Fix BFD format matching for x86_64-w64-mingw32 -m32 LTO. 2016-02-16 00:27:11 +00:00
ChangeLog-0001
ChangeLog-0203
ChangeLog-2004
ChangeLog-2005
ChangeLog-2006
ChangeLog-2007
ChangeLog-2008
ChangeLog-2009
ChangeLog-2010
ChangeLog-2011
ChangeLog-2012
ChangeLog-2013
ChangeLog-2014
ChangeLog-2015 binutils ChangeLog rotation 2016-01-01 22:59:17 +10:30
ChangeLog-9193
ChangeLog-9495
ChangeLog-9697
ChangeLog-9899
cisco-core.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff64-rs6000.c Use a 32-bit value to hold the section number in the internal COFF symbol structure. 2016-01-18 15:58:47 +00:00
coff-alpha.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-apollo.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-arm.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-aux.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-bfd.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-bfd.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-go32.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-h8300.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-h8500.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-i386.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-i860.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-i960.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-ia64.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-m68k.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-m88k.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-mcore.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-mips.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-ppc.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-rs6000.c Use a 32-bit value to hold the section number in the internal COFF symbol structure. 2016-01-18 15:58:47 +00:00
coff-sh.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-sparc.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-stgo32.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-svm68k.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-tic4x.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-tic30.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-tic54x.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-tic80.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-u68k.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-w65.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-we32k.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-x86_64.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-z8k.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coff-z80.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coffcode.h Use a 32-bit value to hold the section number in the internal COFF symbol structure. 2016-01-18 15:58:47 +00:00
coffgen.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cofflink.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
coffswap.h Use a 32-bit value to hold the section number in the internal COFF symbol structure. 2016-01-18 15:58:47 +00:00
compress.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
config.bfd Copyright update for binutils 2016-01-01 23:00:01 +10:30
config.in
configure bfd/configure reorganisation 2016-01-21 19:59:33 +10:30
configure.ac bfd/configure reorganisation 2016-01-21 19:59:33 +10:30
configure.com Copyright update for binutils 2016-01-01 23:00:01 +10:30
configure.host Copyright update for binutils 2016-01-01 23:00:01 +10:30
COPYING
corefile.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-aarch64.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-alpha.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-arc.c Change the default architecture value for ARC bfds so that they have the lowest possible value, and hence can be merged with other ARC binaries wihtout changing their architecture value. 2016-02-05 09:58:01 +00:00
cpu-arm.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-avr.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-bfin.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-cr16.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-cr16c.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-cris.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-crx.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-d10v.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-d30v.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-dlx.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-epiphany.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-fr30.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-frv.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-ft32.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-h8300.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-h8500.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-hppa.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-i370.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-i386.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-i860.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-i960.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-ia64-opc.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-ia64.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-iamcu.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-ip2k.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-iq2000.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-k1om.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-l1om.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-lm32.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-m9s12x.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-m9s12xg.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-m32c.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-m32r.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-m68hc11.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-m68hc12.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-m68k.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-m88k.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-m10200.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-m10300.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-mcore.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-mep.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-metag.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-microblaze.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-mips.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-mmix.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-moxie.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-msp430.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-mt.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-nds32.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-nios2.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-ns32k.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-or1k.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-pdp11.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-pj.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-plugin.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-powerpc.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-rl78.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-rs6000.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-rx.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-s390.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-score.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-sh.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-sparc.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-spu.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-tic4x.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-tic6x.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-tic30.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-tic54x.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-tic80.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-tilegx.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-tilepro.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-v850_rh850.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-v850.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-vax.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-visium.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-w65.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-we32k.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-xc16x.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-xgate.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-xstormy16.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-xtensa.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-z8k.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
cpu-z80.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
demo64.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
dep-in.sed
development.sh Copyright update for binutils 2016-01-01 23:00:01 +10:30
dwarf1.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
dwarf2.c Set BFD_DECOMPRESS to decompress debug sections 2016-01-28 13:29:53 -08:00
ecoff.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
ecofflink.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
ecoffswap.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-am33lin.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-arc.c ARC/BFD: Fix a build error from `index' shadowing a global declaration 2016-01-25 16:06:46 +00:00
elf32-arm.c Fix unexpected failures in the linker testsuite for ARM VxWorks targets. 2016-01-21 10:51:25 +00:00
elf32-avr.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-avr.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-bfin.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-cr16.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-cr16c.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-cris.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-crx.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-d10v.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-d30v.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-dlx.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-epiphany.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-fr30.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-frv.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-ft32.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-gen.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-h8300.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-hppa.c Fix /usr/bin/ld: final link failed: File truncated error on hppa. 2016-01-31 11:52:24 -05:00
elf32-hppa.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-i370.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-i386.c Mask off the least significant bit in GOT offset 2016-02-10 19:33:52 -08:00
elf32-i860.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-i960.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-ip2k.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-iq2000.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-lm32.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-m32c.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-m32r.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-m68hc1x.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-m68hc1x.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-m68hc11.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-m68hc12.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-m68k.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-m88k.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-mcore.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-mep.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-metag.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-metag.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-microblaze.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-mips.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-moxie.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-msp430.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-mt.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-nds32.c Fix compile time warnings building the binutils with a gcc6 compiler. 2016-02-09 16:34:24 +00:00
elf32-nds32.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-nios2.c Correct assertion in NIOS2 linker to allow signed 16-buit immediate values. 2016-02-10 11:25:59 +00:00
elf32-nios2.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-or1k.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-pj.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-ppc.c Convert macros in elf-linux-core.h to inline functions 2016-01-21 19:59:33 +10:30
elf32-ppc.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-rl78.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-rx.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-rx.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-s390.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-score7.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-score.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-score.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-sh64-com.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-sh64.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-sh64.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-sh-relocs.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-sh-symbian.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-sh.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-sparc.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-spu.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-spu.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-tic6x.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-tic6x.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-tilegx.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-tilegx.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-tilepro.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-tilepro.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-v850.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-vax.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-visium.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-xc16x.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-xgate.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-xgate.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-xstormy16.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32-xtensa.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf32.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf64-alpha.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf64-gen.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf64-hppa.c Fix /usr/bin/ld: final link failed: File truncated error on hppa. 2016-01-31 11:52:24 -05:00
elf64-hppa.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf64-ia64-vms.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf64-mips.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf64-mmix.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf64-ppc.c Fix "PowerPC64 ELFv2 entry code" for big-endian 2016-02-04 00:31:14 +10:30
elf64-ppc.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf64-s390.c elf64-s390.c: Fix -Werror=misleading-indentation 2016-02-01 03:47:47 +01:00
elf64-sh64.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf64-sparc.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf64-tilegx.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf64-tilegx.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf64-x86-64.c Fix typos in bfd/ChangeLog and bfd/elf64-x86-64.c 2016-02-02 13:08:58 -08:00
elf64.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf-attrs.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf-bfd.h Enhance GAS's .section directive so that it can take numeric values for the flags and type fields. (ELF only) 2016-02-15 11:11:46 +00:00
elf-eh-frame.c Correct assertion in NIOS2 linker to allow signed 16-buit immediate values. 2016-02-10 11:25:59 +00:00
elf-hppa.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf-ifunc.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf-linux-core.h Convert macros in elf-linux-core.h to inline functions 2016-01-21 19:59:33 +10:30
elf-m10200.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf-m10300.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf-nacl.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf-nacl.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf-s390-common.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf-strtab.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf-vxworks.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf-vxworks.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
elf.c Clear HAS_RELOC if there are no relocations 2016-02-02 03:30:48 -08:00
elfcode.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
elfcore.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
elflink.c Don't add DT_NEEDED for unmatched symbol 2016-02-01 15:49:52 -08:00
elfn32-mips.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elfnn-aarch64.c Add a more helpful warning message to explain why some AArch64 relocations can overflow. 2016-02-09 10:47:54 +00:00
elfnn-ia64.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elfxx-aarch64.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elfxx-aarch64.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
elfxx-ia64.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elfxx-ia64.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
elfxx-mips.c MIPS/BFD: Simplify register index calculation in BZ16_REG_FIELD 2016-01-24 01:01:15 +00:00
elfxx-mips.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
elfxx-sparc.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elfxx-sparc.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
elfxx-target.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
elfxx-tilegx.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
elfxx-tilegx.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
epoc-pe-arm.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
epoc-pei-arm.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
format.c Fix BFD format matching for x86_64-w64-mingw32 -m32 LTO. 2016-02-16 00:27:11 +00:00
freebsd.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
gen-aout.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
genlink.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
go32stub.h
hash.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
host-aout.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
hp300bsd.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
hp300hpux.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
hppabsd-core.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
hpux-core.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
i386aout.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
i386bsd.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
i386dynix.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
i386freebsd.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
i386linux.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
i386lynx.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
i386mach3.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
i386msdos.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
i386netbsd.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
i386os9k.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
ieee.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
ihex.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
init.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
irix-core.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
libaout.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
libbfd-in.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
libbfd.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
libbfd.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
libcoff-in.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
libcoff.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
libecoff.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
libhppa.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
libieee.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
libnlm.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
liboasys.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
libpei.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
libxcoff.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
linker.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
lynx-core.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
m68k4knetbsd.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
m68klinux.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
m68knetbsd.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
m88kmach3.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
m88kopenbsd.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
mach-o-aarch64.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
mach-o-arm.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
mach-o-i386.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
mach-o-target.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
mach-o-x86-64.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
mach-o.c Add missing end-of-comment marker to previous delta. (Doh!) 2016-01-25 09:44:18 +00:00
mach-o.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
MAINTAINERS Copyright update for binutils 2016-01-01 23:00:01 +10:30
Makefile.am Fix NetBSD build with BSD and GNU make(1). 2016-02-01 10:35:38 +00:00
Makefile.in Fix NetBSD build with BSD and GNU make(1). 2016-02-01 10:35:38 +00:00
makefile.vms Copyright update for binutils 2016-01-01 23:00:01 +10:30
mep-relocs.pl Copyright update for binutils 2016-01-01 23:00:01 +10:30
merge.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
mipsbsd.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
mmo.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
netbsd-core.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
netbsd.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
newsos3.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
nlm32-alpha.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
nlm32-i386.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
nlm32-ppc.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
nlm32-sparc.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
nlm32.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
nlm64.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
nlm-target.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
nlm.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
nlmcode.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
nlmswap.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
ns32k.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
ns32knetbsd.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
oasys.c Fix compile time warnings building the binutils with a gcc6 compiler. 2016-02-09 16:34:24 +00:00
opncls.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
osf-core.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
pc532-mach.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
pdp11.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
pe-arm-wince.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
pe-arm.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
pe-i386.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
pe-mcore.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
pe-mips.c Fix formatting of pe-mips.c file. 2016-02-05 10:15:26 +00:00
pe-ppc.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
pe-sh.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
pe-x86_64.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
pef-traceback.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
pef.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
pef.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
pei-arm-wince.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
pei-arm.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
pei-i386.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
pei-ia64.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
pei-mcore.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
pei-mips.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
pei-ppc.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
pei-sh.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
pei-x86_64.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
peicode.h Add support for importing data from ILF images. 2016-02-01 13:44:15 +00:00
peXXigen.c Use a 32-bit value to hold the section number in the internal COFF symbol structure. 2016-01-18 15:58:47 +00:00
plugin.c Fix BFD format matching for x86_64-w64-mingw32 -m32 LTO. 2016-02-16 00:27:11 +00:00
plugin.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
PORTING Copyright update for binutils 2016-01-01 23:00:01 +10:30
ppcboot.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
ptrace-core.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
README Copyright update for binutils 2016-01-01 23:00:01 +10:30
reloc16.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
reloc.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
riscix.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
rs6000-core.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
sco5-core.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
section.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
simple.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
som.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
som.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
sparclinux.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
sparclynx.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
sparcnetbsd.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
srec.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
stab-syms.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
stabs.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
stamp-h.in
sunos.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
syms.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
sysdep.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
targets.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
targmatch.sed
tekhex.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
TODO Copyright update for binutils 2016-01-01 23:00:01 +10:30
trad-core.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
vax1knetbsd.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
vaxbsd.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
vaxnetbsd.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
verilog.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
versados.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
version.h Automatic date update in version.in 2016-02-16 00:00:20 +00:00
version.m4 Bump version to 2.26.51 2015-11-14 16:24:39 -08:00
vms-alpha.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
vms-lib.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
vms-misc.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
vms.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
warning.m4 Copyright update for binutils 2016-01-01 23:00:01 +10:30
xcofflink.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
xsym.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
xsym.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
xtensa-isa.c Copyright update for binutils 2016-01-01 23:00:01 +10:30
xtensa-modules.c Copyright update for binutils 2016-01-01 23:00:01 +10:30

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.

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.

Copyright (C) 2012-2016 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.