binutils-gdb/bfd
Alan Modra 7af5d5c4dd PR23980, assertion fail
All of the backend relocate_section functions that interpret reloc
numbers assuming the input file is of the expected type (ie. same as
output or very similar) really ought to be checking input file type.
Not many do, and those that do currently just assert.  This patch
replaces the assertion with a more graceful exit.

	PR 23980
	* elf32-i386.c (elf_i386_relocate_section): Exit with wrong format
	error rather than asserting input file is as expected.
	* elf32-s390.c (elf_s390_relocate_section): Likewise.
	* elf32-sh.c (sh_elf_relocate_section): Likewise.
	* elf32-xtensa.c (elf_xtensa_relocate_section): Likewise.
	* elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
	* elf64-s390.c (elf_s390_relocate_section): Likewise.
	* elf64-x86-64.c (elf_x86_64_relocate_section): Likewise.
	* elf32-ppc.c (ppc_elf_relocate_section): Exit with wrong format
	error if input file is not ppc32 ELF.
2018-12-18 10:47:02 +10:30
..
doc Fix use of "command line X" in binutils doc 2018-07-02 11:18:24 +01:00
hosts
po Add updated French and Portuguese translations. 2018-11-07 16:09:27 +00:00
.gitignore
acinclude.m4
aclocal.m4 Bump to autoconf 2.69 and automake 1.15.1 2018-06-19 16:55:06 -04:00
aix5ppc-core.c
aix386-core.c
aout32.c
aout64.c
aout-cris.c
aout-ns32k.c
aout-target.h ld: Hide symbols defined by HIDDEN/PROVIDE_HIDDEN 2018-05-21 20:39:30 -07:00
aout-tic30.c ld: Hide symbols defined by HIDDEN/PROVIDE_HIDDEN 2018-05-21 20:39:30 -07:00
aoutx.h PR23994, libbfd integer overflow 2018-12-17 12:49:38 +10:30
arc-got.h [ARC] More fixes for TLS. 2018-11-09 15:34:37 +00:00
arc-plt.def
arc-plt.h
archive64.c
archive.c Allow BFD to recognize macOS universal libraries 2018-07-02 08:24:32 -06:00
archures.c Allow an IR object with unknown architecture 2018-08-31 19:57:38 -07:00
bfd-in2.h Handle ELF compressed header alignment correctly by setting up the section alignment correctly for the Elf32_Chdr or Elf64_Chdr type and respect the ch_addralign field when decompressing the section data. 2018-11-27 11:59:10 +00:00
bfd-in.h Pack reloc_howto_struct 2018-08-21 14:59:53 +09:30
bfd.c Handle ELF compressed header alignment correctly by setting up the section alignment correctly for the Elf32_Chdr or Elf64_Chdr type and respect the ch_addralign field when decompressing the section data. 2018-11-27 11:59:10 +00:00
bfd.m4
bfdio.c PR23282, Reinstate seek optimization 2018-06-14 11:32:01 +09:30
bfdwin.c
binary.c ld: Hide symbols defined by HIDDEN/PROVIDE_HIDDEN 2018-05-21 20:39:30 -07:00
cache.c Tidy bfdio to consistenly use containing archive 2018-06-05 22:39:12 +09:30
cf-i386lynx.c
ChangeLog PR23980, assertion fail 2018-12-18 10:47:02 +10:30
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
ChangeLog-2016
ChangeLog-2017
ChangeLog-9193
ChangeLog-9495
ChangeLog-9697
ChangeLog-9899
cisco-core.c
coff64-rs6000.c Pack reloc_howto_struct 2018-08-21 14:59:53 +09:30
coff-alpha.c ld: Hide symbols defined by HIDDEN/PROVIDE_HIDDEN 2018-05-21 20:39:30 -07:00
coff-arm.c Delete NEWHOWTO and tidy some uses of reloc_howto_struct 2018-08-21 14:59:53 +09:30
coff-bfd.c
coff-bfd.h
coff-go32.c
coff-i386.c
coff-ia64.c
coff-mcore.c
coff-mips.c ld: Hide symbols defined by HIDDEN/PROVIDE_HIDDEN 2018-05-21 20:39:30 -07:00
coff-ppc.c
coff-rs6000.c Pack reloc_howto_struct 2018-08-21 14:59:53 +09:30
coff-sh.c
coff-stgo32.c
coff-tic4x.c
coff-tic30.c
coff-tic54x.c
coff-tic80.c
coff-x86_64.c
coff-z8k.c
coff-z80.c
coffcode.h Tidy bfdio to consistenly use containing archive 2018-06-05 22:39:12 +09:30
coffgen.c Prevent illegal memory access when processing COFF auxillary symbol information. 2018-08-23 11:45:38 +01:00
cofflink.c _bfd_clear_contents bounds checking 2018-10-13 23:54:33 +10:30
coffswap.h
compress.c Initialize *uncompressed_align_pow_p to 0 2018-11-27 06:02:36 -08:00
config.bfd rx: Add target rx-*-linux. 2018-11-07 17:18:05 +09:00
config.in elf32-nds32: Don't define fls if it is provided by the system 2018-09-21 10:27:30 -04:00
configure Regen bfd/configure 2018-11-07 21:55:06 +10:30
configure.ac rx: Add target rx-*-linux. 2018-11-07 17:18:05 +09:00
configure.com
configure.host
COPYING
corefile.c
cpu-aarch64.c
cpu-alpha.c
cpu-arc.c
cpu-arm.c [ARM] Update knowledge of bfd architectures 2018-11-27 18:28:35 +00:00
cpu-avr.c
cpu-bfin.c
cpu-cr16.c
cpu-cr16c.c
cpu-cris.c
cpu-crx.c
cpu-csky.c Add support for the C_SKY series of processors. 2018-07-30 12:24:14 +01:00
cpu-d10v.c
cpu-d30v.c
cpu-dlx.c
cpu-epiphany.c
cpu-fr30.c
cpu-frv.c
cpu-ft32.c
cpu-h8300.c
cpu-hppa.c
cpu-i386.c
cpu-ia64-opc.c
cpu-ia64.c
cpu-iamcu.c
cpu-ip2k.c
cpu-iq2000.c
cpu-k1om.c
cpu-l1om.c
cpu-lm32.c
cpu-m9s12x.c
cpu-m9s12xg.c
cpu-m32c.c
cpu-m32r.c
cpu-m68hc11.c
cpu-m68hc12.c
cpu-m68k.c
cpu-m10200.c
cpu-m10300.c
cpu-mcore.c
cpu-mep.c
cpu-metag.c
cpu-microblaze.c
cpu-mips.c [MIPS] Add Loongson 2K1000 proccessor support. 2018-08-29 20:55:25 +08:00
cpu-mmix.c
cpu-moxie.c
cpu-msp430.c
cpu-mt.c
cpu-nds32.c
cpu-nfp.c
cpu-nios2.c
cpu-ns32k.c Pack reloc_howto_struct 2018-08-21 14:59:53 +09:30
cpu-or1k.c
cpu-pdp11.c
cpu-pj.c
cpu-plugin.c
cpu-powerpc.c
cpu-pru.c
cpu-riscv.c
cpu-rl78.c
cpu-rs6000.c
cpu-rx.c
cpu-s12z.c
cpu-s390.c
cpu-score.c
cpu-sh.c
cpu-sparc.c
cpu-spu.c
cpu-tic4x.c
cpu-tic6x.c
cpu-tic30.c
cpu-tic54x.c
cpu-tic80.c
cpu-tilegx.c
cpu-tilepro.c
cpu-v850_rh850.c
cpu-v850.c
cpu-vax.c
cpu-visium.c
cpu-wasm32.c
cpu-xc16x.c
cpu-xgate.c
cpu-xstormy16.c
cpu-xtensa.c
cpu-z8k.c
cpu-z80.c
dep-in.sed
development.sh bfd/development.sh: Add experimental 2018-08-22 10:32:23 -07:00
dwarf1.c
dwarf2.c Fix the handling of inlined frames in DWARF debug info. 2018-10-03 12:06:09 +01:00
ecoff.c
ecofflink.c
ecoffswap.h
elf32-am33lin.c
elf32-arc.c Fixed warning from previous patch. Added Changelog. 2018-11-09 15:53:30 +00:00
elf32-arm.c cmse_scan segfault 2018-10-24 23:38:52 +10:30
elf32-avr.c PR23570, AVR .noinit section defaults to PROGBITS 2018-09-06 14:13:00 +09:30
elf32-avr.h
elf32-bfin.c
elf32-cr16.c
elf32-cr16c.c
elf32-cris.c
elf32-crx.c
elf32-csky.c csky: Support PC relative diff relocation 2018-09-14 21:04:47 +08:00
elf32-d10v.c
elf32-d30v.c
elf32-dlx.c
elf32-dlx.h
elf32-epiphany.c
elf32-fr30.c
elf32-frv.c
elf32-ft32.c
elf32-gen.c
elf32-h8300.c
elf32-hppa.c PR23207, hppa ld SIGSEGVs on invalid object files 2018-05-22 19:37:06 +09:30
elf32-hppa.h
elf32-i386.c PR23980, assertion fail 2018-12-18 10:47:02 +10:30
elf32-ip2k.c
elf32-iq2000.c
elf32-lm32.c
elf32-m32c.c
elf32-m32r.c
elf32-m68hc1x.c m68hc1* fixes 2018-07-09 17:27:35 +09:30
elf32-m68hc1x.h
elf32-m68hc11.c
elf32-m68hc12.c
elf32-m68k.c ld: Unify STT_GNU_IFUNC handling 2018-05-28 08:15:21 -07:00
elf32-mcore.c
elf32-mep.c Delete NEWHOWTO and tidy some uses of reloc_howto_struct 2018-08-21 14:59:53 +09:30
elf32-metag.c _bfd_clear_contents bounds checking 2018-10-13 23:54:33 +10:30
elf32-metag.h
elf32-microblaze.c
elf32-mips.c PR ld/21375: MIPS: Fix non-zero run-time value for undefined weaks 2018-09-14 20:22:56 +01:00
elf32-moxie.c
elf32-msp430.c Fix linking MSP430 files created by gcc's LTO optimizer. 2018-11-21 16:21:25 +00:00
elf32-mt.c
elf32-nds32.c _bfd_clear_contents bounds checking 2018-10-13 23:54:33 +10:30
elf32-nds32.h Andes Technology has good news for you, we plan to update the nds32 port of binutils on upstream! 2018-09-20 13:32:58 +01:00
elf32-nios2.c
elf32-nios2.h
elf32-or1k.c gdb/or1k: Add linux debugging support 2018-12-08 07:07:36 +09:00
elf32-pj.c
elf32-ppc.c PR23980, assertion fail 2018-12-18 10:47:02 +10:30
elf32-ppc.h
elf32-pru.c
elf32-rl78.c
elf32-rx.c rx: Add target rx-*-linux. 2018-11-07 17:18:05 +09:00
elf32-rx.h
elf32-s12z.c S12Z: New 32 bit Reloc. 2018-10-23 16:09:30 +02:00
elf32-s390.c PR23980, assertion fail 2018-12-18 10:47:02 +10:30
elf32-score7.c
elf32-score.c
elf32-score.h
elf32-sh-relocs.h
elf32-sh.c PR23980, assertion fail 2018-12-18 10:47:02 +10:30
elf32-sparc.c ld: Unify STT_GNU_IFUNC handling 2018-05-28 08:15:21 -07:00
elf32-spu.c SPU overlay headers 2018-10-08 20:26:08 +10:30
elf32-spu.h
elf32-tic6x.c TIC6X __c6xabi_DSBT_BASE 2018-06-07 09:07:32 +09:30
elf32-tic6x.h
elf32-tilegx.c
elf32-tilegx.h
elf32-tilepro.c
elf32-tilepro.h
elf32-v850.c
elf32-vax.c
elf32-visium.c _bfd_clear_contents bounds checking 2018-10-13 23:54:33 +10:30
elf32-wasm32.c
elf32-xc16x.c xc16x: Add elf32_xc16x_rtype_to_howto 2018-12-11 06:01:46 -08:00
elf32-xgate.c xgate cleanup 2018-07-10 23:59:07 +09:30
elf32-xstormy16.c
elf32-xtensa.c PR23980, assertion fail 2018-12-18 10:47:02 +10:30
elf32.c
elf64-alpha.c
elf64-gen.c
elf64-hppa.c Replace unworkable code in HPPA relocs handelr with an assertion. 2018-08-23 13:34:14 +01:00
elf64-hppa.h
elf64-ia64-vms.c
elf64-mips.c PR ld/21375: MIPS: Fix non-zero run-time value for undefined weaks 2018-09-14 20:22:56 +01:00
elf64-mmix.c
elf64-nfp.c
elf64-ppc.c PR23980, assertion fail 2018-12-18 10:47:02 +10:30
elf64-ppc.h
elf64-s390.c PR23980, assertion fail 2018-12-18 10:47:02 +10:30
elf64-sparc.c bfd,sparc: fix the .dynsym sh_index when stripping all symbols in ld 2018-10-04 11:58:39 +02:00
elf64-tilegx.c
elf64-tilegx.h
elf64-x86-64.c PR23980, assertion fail 2018-12-18 10:47:02 +10:30
elf64.c
elf-attrs.c GNU attribute output on errors 2018-07-03 16:46:54 +09:30
elf-bfd.h _bfd_clear_contents bounds checking 2018-10-13 23:54:33 +10:30
elf-eh-frame.c [aarch64] Add support for pointer authentication B key 2018-12-05 18:30:08 +00:00
elf-hppa.h Use the correct constants when setting the section type of HPPA unwind sections. 2018-08-22 10:32:53 +01:00
elf-ifunc.c
elf-linux-core.h
elf-m10200.c
elf-m10300.c
elf-nacl.c Separate header PT_LOAD for -z separate-code 2018-10-08 20:26:08 +10:30
elf-nacl.h
elf-properties.c elf: Report property change when merging properties 2018-12-07 08:30:43 -08:00
elf-s390-common.c S/390: Improve partial relro support for 64 bit 2018-07-18 13:20:06 +02:00
elf-s390.h
elf-strtab.c
elf-vxworks.c
elf-vxworks.h
elf.c PR23994, libbfd integer overflow 2018-12-17 12:49:38 +10:30
elfcode.h Fix a memory exhaustion bug when attempting to allocate room for an impossible number of program headers. 2018-11-30 11:45:33 +00:00
elfcore.h
elflink.c Override the previous definition from IR object 2018-12-07 15:40:02 -08:00
elfn32-mips.c PR ld/21375: MIPS: Fix non-zero run-time value for undefined weaks 2018-09-14 20:22:56 +01:00
elfnn-aarch64.c AArch64: Fix regression in Cortex A53 erratum when PIE. (PR ld/23904) 2018-11-27 12:42:22 +00:00
elfnn-ia64.c
elfnn-riscv.c RISC-V: Improve linker error for FP mismatch. 2018-11-13 15:56:29 -08:00
elfxx-aarch64.c Suppress string diagnostics for pre-release GCC 2018-07-25 11:50:51 +09:30
elfxx-aarch64.h ld: Unify STT_GNU_IFUNC handling 2018-05-28 08:15:21 -07:00
elfxx-ia64.c
elfxx-ia64.h
elfxx-mips.c MIPS/LD: Accept high-part relocations in PIC code with absolute symbols 2018-11-27 16:34:03 +00:00
elfxx-mips.h PR ld/21375: MIPS: Fix non-zero run-time value for undefined weaks 2018-09-14 20:22:56 +01:00
elfxx-riscv.c RISC-V: Accept version, supervisor ext and more than one NSE for -march. 2018-12-03 14:05:17 -08:00
elfxx-riscv.h RISC-V: Accept version, supervisor ext and more than one NSE for -march. 2018-12-03 14:05:17 -08:00
elfxx-sparc.c bfd,sparc: fix the .dynsym sh_index when stripping all symbols in ld 2018-10-04 11:58:39 +02:00
elfxx-sparc.h
elfxx-target.h x86: Remove empty X86_FEATURE_1_AND property 2018-08-17 03:54:16 -07:00
elfxx-tilegx.c
elfxx-tilegx.h
elfxx-x86.c elf: Add PT_GNU_PROPERTY segment type 2018-12-14 04:55:34 -08:00
elfxx-x86.h x86: Delay setting the iplt section alignment 2018-12-01 06:35:03 -08:00
format.c
gen-aout.c
genlink.h
go32stub.h
hash.c
host-aout.c
hppabsd-core.c
hpux-core.c
i386aout.c
i386bsd.c
i386lynx.c
i386msdos.c ld: Hide symbols defined by HIDDEN/PROVIDE_HIDDEN 2018-05-21 20:39:30 -07:00
ihex.c Stop corruption of ihex output shen addresses are sign extended. 2018-11-09 14:09:44 +00:00
init.c Re: BFD_INIT_MAGIC 2018-10-16 09:03:41 +10:30
irix-core.c
libaout.h
libbfd-in.h _bfd_clear_contents bounds checking 2018-10-13 23:54:33 +10:30
libbfd.c Add functions and macros to read and write 24 bit values. 2018-07-27 11:28:59 +09:30
libbfd.h _bfd_clear_contents bounds checking 2018-10-13 23:54:33 +10:30
libcoff-in.h
libcoff.h
libecoff.h
libhppa.h
libpei.h
libxcoff.h
linker.c LD: Export relative-from-absolute symbol marking to BFD 2018-07-17 20:04:53 +01:00
lynx-core.c
mach-o-aarch64.c
mach-o-arm.c
mach-o-i386.c
mach-o-target.c Stop objcopy from corrupting mach-o files. 2018-06-20 10:43:00 +01:00
mach-o-x86-64.c Add support for the TLV relocation generated by LLVM for x86_64 MACH-O targets. 2018-06-18 12:56:44 +01:00
mach-o.c Add support for new load commands added by Apple to the MACH-O file format. 2018-11-07 15:20:22 +00:00
mach-o.h Add support for new load commands added by Apple to the MACH-O file format. 2018-11-07 15:20:22 +00:00
MAINTAINERS
Makefile.am bfd: Move elf-properties.lo to BFD32_LIBS 2018-08-13 07:24:44 -07:00
Makefile.in bfd: Move elf-properties.lo to BFD32_LIBS 2018-08-13 07:24:44 -07:00
makefile.vms
mep-relocs.pl
merge.c PR23806, NULL pointer dereference in merge_strings 2018-10-23 21:09:09 +10:30
mmo.c Don't init array at run time 2018-08-20 09:54:20 +09:30
netbsd-core.c
netbsd.h
ns32k.h
ns32knetbsd.c Delete NEWHOWTO and tidy some uses of reloc_howto_struct 2018-08-21 14:59:53 +09:30
opncls.c Fix potential illegal memroy access when using a build-id note with a negative size. 2018-06-20 16:30:05 +01:00
osf-core.c
pc532-mach.c
pdp11.c
pe-arm-wince.c
pe-arm.c
pe-i386.c
pe-mcore.c
pe-ppc.c
pe-sh.c
pe-x86_64.c
pef-traceback.h
pef.c ld: Hide symbols defined by HIDDEN/PROVIDE_HIDDEN 2018-05-21 20:39:30 -07:00
pef.h
pei-arm-wince.c
pei-arm.c
pei-i386.c
pei-ia64.c
pei-mcore.c
pei-ppc.c
pei-sh.c
pei-x86_64.c
peicode.h
peXXigen.c Correct comment concerning PE timestamp insertion. 2018-11-09 16:06:48 +00:00
plugin.c Avoid problems with plugins being loaded multiple times. 2018-08-23 16:22:56 +01:00
plugin.h
PORTING
ppcboot.c ld: Hide symbols defined by HIDDEN/PROVIDE_HIDDEN 2018-05-21 20:39:30 -07:00
ptrace-core.c
README
reloc16.c
reloc.c _bfd_clear_contents bounds checking 2018-10-13 23:54:33 +10:30
rs6000-core.c Balance parentheses in expression 2018-08-20 09:45:02 +09:30
sco5-core.c
section.c Fix the handling of inlined frames in DWARF debug info. 2018-10-03 12:06:09 +01:00
simple.c
som.c ld: Hide symbols defined by HIDDEN/PROVIDE_HIDDEN 2018-05-21 20:39:30 -07:00
som.h
srec.c ld: Hide symbols defined by HIDDEN/PROVIDE_HIDDEN 2018-05-21 20:39:30 -07:00
stab-syms.c
stabs.c
stamp-h.in
syms.c PR23952, memory leak in _bfd_generic_read_minisymbols 2018-12-08 00:11:16 +10:30
sysdep.h PR23254, ld.bfd mishandles file pointers while scanning archive 2018-06-05 22:39:11 +09:30
targets.c rx: Add target rx-*-linux. 2018-11-07 17:18:05 +09:00
targmatch.sed
tekhex.c ld: Hide symbols defined by HIDDEN/PROVIDE_HIDDEN 2018-05-21 20:39:30 -07:00
TODO
trad-core.c
vax1knetbsd.c
vaxnetbsd.c
verilog.c
version.h Automatic date update in version.in 2018-12-18 00:00:16 +00:00
version.m4 Update version number on development (aka HEAD) branch. 2018-06-24 18:46:33 +01:00
vms-alpha.c Pack reloc_howto_struct 2018-08-21 14:59:53 +09:30
vms-lib.c
vms-misc.c
vms.h
warning.m4
wasm-module.c
wasm-module.h
xcofflink.c BFD/XCOFF: Fix storage class setting for weak defined symbols 2018-07-18 17:51:54 +01:00
xsym.c ld: Hide symbols defined by HIDDEN/PROVIDE_HIDDEN 2018-05-21 20:39:30 -07:00
xsym.h
xtensa-isa.c
xtensa-modules.c

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-2018 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.