freebsd-skq/contrib/binutils/bfd
jhibbits 96e9baf741 Add new PowerPC relocations to binutils
Summary:
LLVM/Clang generates relocations that our binutils doesn't understand, but newer
binutils does.  I got permission from the author of a series of patches to
relicense them as GPLv2 for use in FreeBSD.  The upstream git hashes are:

ac2df442ac7901f00af15b272fc48b594b433713
2b95367962dc14f69d3c338c4d54195266e2e169
102890f04c44b64cf5cef4588267dd9f24086ac7
b7fcf6f6bb53b5027e111107f5416769cb9a5798
1d483afedd5a628dc84fb58d1d570f79fdfbfa7b
90aecf7a80c1cefeb45fc10a6cd02c8338e34b4c
3a71aa26df2a372a58e9c11ef9ba51fd0e83320a
727fc41e077139570ea8b8ddfd6c546b2a55627c

With the import of clang 3.5, and a few backported patches, we should be able to
move powerpc and powerpc64 to clang-as-cc soon.

Test Plan: Passes make tinderbox, so no regressions.  Binaries built with clang
run on powerpc64.

Reviewers: #committers, dim

Reviewed By: dim

Differential Revision: https://reviews.freebsd.org/D1297

Obtained from:	Alan Modra, upstream binutils-gdb git
MFC after:	3 weeks
Relnotes:	yes
2014-12-12 03:58:51 +00:00
..
doc
hosts
po Let GNU ld be less obscure about missing symbols and DSOs. If the BFD 2014-12-02 01:30:53 +00:00
acinclude.m4
aclocal.m4
aout0.c
aout32.c
aout64.c
aout-arm.c
aout-sparcle.c
aout-target.h
aoutf1.h
aoutx.h
archive64.c
archive.c
archures.c
armnetbsd.c
bfd-in2.h Add new PowerPC relocations to binutils 2014-12-12 03:58:51 +00:00
bfd-in.h
bfd.c
bfdio.c
bfdwin.c
binary.c
bout.c
cache.c
ChangeLog Add new PowerPC relocations to binutils 2014-12-12 03:58:51 +00:00
ChangeLog-0001 Import of Binutils from the FSF 2.15 branch (just post-.0 release). 2004-06-16 05:45:41 +00:00
ChangeLog-0203
ChangeLog-2006
ChangeLog-9193
ChangeLog-9495
ChangeLog-9697
ChangeLog-9899
coff64-rs6000.c
coff-alpha.c
coff-arm.c
coff-aux.c
coff-i386.c
coff-ia64.c
coff-mips.c
coff-ppc.c
coff-rs6000.c
coff-sparc.c
coff-x86_64.c
coffcode.h
coffgen.c
cofflink.c
coffswap.h
config.bfd
config.in
configure
configure.host
configure.in
corefile.c
cpu-alpha.c
cpu-arc.c
cpu-arm.c
cpu-cr16.c
cpu-i386.c
cpu-ia64-opc.c
cpu-ia64.c
cpu-mep.c
cpu-mips.c
cpu-powerpc.c
cpu-rs6000.c
cpu-s390.c
cpu-score.c
cpu-sparc.c
cpu-spu.c
demo64.c
dep-in.sed
dwarf1.c
dwarf2.c
ecoff.c Add new PowerPC relocations to binutils 2014-12-12 03:58:51 +00:00
ecofflink.c
ecoffswap.h
efi-app-ia32.c
efi-app-ia64.c
efi-app-x86_64.c
elf32-arc.c
elf32-arm.c Use llabs when getting the absolute value of a long long. 2014-11-30 17:27:24 +00:00
elf32-avr.h
elf32-cr16.c
elf32-gen.c
elf32-i386-fbsd.c
elf32-i386.c
elf32-mep.c
elf32-mips.c
elf32-ppc.c Add new PowerPC relocations to binutils 2014-12-12 03:58:51 +00:00
elf32-ppc.h
elf32-s390.c
elf32-score.c
elf32-sh-relocs.h
elf32-sparc.c
elf32-spu.c
elf32-spu.h
elf32.c
elf64-alpha-fbsd.c
elf64-alpha.c
elf64-gen.c
elf64-mips.c
elf64-ppc.c Add new PowerPC relocations to binutils 2014-12-12 03:58:51 +00:00
elf64-ppc.h
elf64-s390.c
elf64-sparc.c
elf64-x86-64.c
elf64.c
elf-attrs.c
elf-bfd.h
elf-eh-frame.c
elf-strtab.c
elf-vxworks.c
elf-vxworks.h
elf.c
elfcode.h
elfcore.h
elflink.c Let GNU ld be less obscure about missing symbols and DSOs. If the BFD 2014-12-02 01:30:53 +00:00
elfn32-mips.c
elfxx-ia64.c
elfxx-mips.c
elfxx-mips.h
elfxx-sparc.c
elfxx-sparc.h
elfxx-target.h
format.c
freebsd.h
gen-aout.c
genlink.h
hash.c
host-aout.c
i386aout.c
i386bsd.c
i386freebsd.c
i386linux.c
i386netbsd.c
ieee.c
ihex.c
init.c
libaout.h
libbfd-in.h
libbfd.c
libbfd.h Add new PowerPC relocations to binutils 2014-12-12 03:58:51 +00:00
libcoff-in.h
libcoff.h
libecoff.h
libieee.h
libpei.h
libxcoff.h
linker.c
MAINTAINERS
Makefile.am
Makefile.in
mep-relocs.pl
merge.c
mipsbsd.c
netbsd-core.c
netbsd.h
opncls.c
osf-core.c
pe-arm-wince.c
pe-arm.c
pe-i386.c
pe-mips.c
pe-ppc.c
pe-x86_64.c
pei-arm-wince.c
pei-mips.c
pei-x86_64.c
peicode.h
peXXigen.c
PORTING
ppcboot.c
ptrace-core.c
README
reloc16.c
reloc.c Add new PowerPC relocations to binutils 2014-12-12 03:58:51 +00:00
rs6000-core.c
sco5-core.c
section.c Add new PowerPC relocations to binutils 2014-12-12 03:58:51 +00:00
simple.c
sparclinux.c
sparcnetbsd.c
srec.c
stab-syms.c
stabs.c
stamp-h.in
sunos.c
syms.c
sysdep.h
targets.c
targmatch.sed
tekhex.c
TODO
trad-core.c
version.h
xcoff-target.h
xcofflink.c

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.