No description
Find a file
Alan Modra 7619e7c7de * elf32-ppc.h: New file.
* elf32-ppc.c: Include elf32-ppc.h.
	(NOP, CROR_151515, CROR_313131, TP_OFFSET, DTP_OFFSET): Define.
	(struct ppc_elf_link_hash_entry): Rename "root" to "elf".  Adjust uses.
	Add "tls_mask" field.
	(TLS_GD, TLS_LD, TLS_TPREL, TLS_DTPREL, TLS_TLS, TLS_TPRELGD): Define.
	(struct ppc_elf_link_hash_table): Rename "root" to "elf".  Adjust uses.
	Add got, relgot, plt, relplt, dynbss, relbss, dynsbss, relsbss,
	sdata, sdata2, tls_sec, tls_get_addr, tlsld_got fields.
	Make use of htab shortcuts throughout file.
	(ppc_elf_link_hash_newfunc): Init tls_mask field.
	(ppc_elf_link_hash_table_create): Init new fields.
	(ppc_elf_copy_indirect_symbol): Copy tls_mask.
	(ppc_elf_howto_raw): Add tls relocs.
	(ppc_elf_reloc_type_lookup): Handle them.
	(ppc_elf_unhandled_reloc): New function.
	(ppc_elf_create_got): Stash got section pointer in hash table,
	return status.  Make .rela.got too.
	(ppc_elf_create_dynamic_sections): Stash section pointers in htab.
	(ppc_elf_adjust_dynamic_symbol): Only set up copy relocs when
	NON_GOT_REF set.  Don't allocate space in .plt here..
	(allocate_dynrelocs): ..do so here instead, properly ref-counting and
	not allocating plt entries unnecessarily.  Allocate got entries here.
	(WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define.
	(ppc_elf_size_dynamic_sections): Allocate local got entries.  Pass
	"info" during allocate_dynrelocs hash traversal.  Use htab section
	shortcuts rather than searching for named sections.  Get rid of
	"plt" and "strip" booleans.
	(update_local_sym_info, bad_shared_reloc): New functions.
	(ppc_elf_check_relocs): Handle TLS relocs.  Move .rela.got creation to
	ppc_elf_create_got.  Don't mark got or plt reloc syms dynamic, do so
	in allocate_dynreloc.  Use update_local_sym_info and bad_shared_reloc.
	Disallow R_PPC_EMB_RELSDA, R_PPC_EMB_NADDR32, R_PPC_EMB_NADDR16,
	R_PPC_EMB_NADDR16_LO, R_PPC_EMB_NADDR16_HI and R_PPC_EMB_NADDR16_HA
	in shared libs.  R_PPC_PLTREL32 is a plt reloc too.  Refcount all
	relocs that might use a plt entry.  Set NON_GOT_REF too.
	Enumerate all do-nothing relocs.
	(ppc_elf_gc_sweep_hook): Simplify removal of dynrelocs.  Handle
	tls relocs and all plt relocs.
	(ppc_elf_tls_setup, ppc_elf_tls_optimize): New functions.
	(ppc_elf_finish_dynamic_symbol): Don't build got entries here.
	(ppc_elf_finish_dynamic_sections): Rewrite tag code using htab
	shortcuts.
	(ppc_elf_relocate_section): Tidy.  Handle TLS relocs.  Use
	bfd_elf_local_sym_name.  Simplify unresolved reloc code.  Build got
	entries and got relocs here.  Warn on non-zero got reloc addend.
	Split out branch taken/not taken reloc code into a separate switch
	and correct offset calculation. Allow BRTAKEN/BRNTAKEN dynamic relocs.
	Split out HA reloc adjustments to separate switch statement.  Don't
	warn on reloc overflow if we've already warned about undefined.
	Don't rebuild sym name when reporting errors.  Report all possible
	errors from _bfd_final_link_relocate.
	(bfd_elf32_bfd_final_link): Don't define.
2003-02-18 06:06:17 +00:00
bfd * elf32-ppc.h: New file. 2003-02-18 06:06:17 +00:00
binutils For N_SLINE only include function_start_offset if the symbol is within a 2003-02-13 10:38:37 +00:00
config * acx.m4: Name cache variables properly. 2002-12-28 17:57:49 +00:00
contrib New directory. Created to contain a copy of the texi2pod.pl script so that 2002-07-03 11:20:13 +00:00
etc 2003-01-02 H.J. Lu <hjl@gnu.org> 2003-01-02 20:51:02 +00:00
gas * write.c (TC_FORCE_RELOCATION_SUB_SAME): Revert last change. 2003-02-12 23:21:08 +00:00
gdb *** empty log message *** 2003-02-18 00:00:32 +00:00
gprof oops - omitted from previous delta 2002-12-02 14:03:15 +00:00
include * ppc.h: Replace DTPMOD64, TPREL64, DTPREL64 with DTPMOD32 etc. 2003-02-18 06:03:41 +00:00
intl
ld * emultempl/ppc32elf.em: New file. 2003-02-18 06:05:07 +00:00
libiberty merge from gcc 2003-02-13 18:52:46 +00:00
mmalloc 2002-11-28 Elena Zannoni <ezannoni@redhat.com> 2002-11-28 16:46:31 +00:00
opcodes 003-02-12 Dave Brolley <brolley@redhat.com> 2003-02-12 22:33:59 +00:00
readline 2003-01-09 Michael Chastain <mec@shout.net> 2003-01-11 00:43:53 +00:00
sim Commit Sh2E addition 2003-02-06 10:42:33 +00:00
texinfo 2002-08-23 Andrew Cagney <ac131313@redhat.com> 2002-08-23 22:24:57 +00:00
.cvsignore
ChangeLog Re-generate using autoconf 000227. 2003-02-17 17:14:16 +00:00
config-ml.in * config-ml.in: Propogate DESTDIR also. 2002-05-31 19:30:32 +00:00
config.guess [ ChangeLog ] 2003-01-08 22:09:32 +00:00
config.if * config.if: Copy from GCC. 2003-01-30 11:59:17 +00:00
config.sub [ ChangeLog ] 2003-01-08 22:09:32 +00:00
configure Re-generate using autoconf 000227. 2003-02-17 17:14:16 +00:00
configure.in * configure.in (*-*-darwin*): Rename from powerpc*-*-darwin*, 2003-02-16 01:24:56 +00:00
COPYING
COPYING.LIB
COPYING.LIBGLOSS 2002-12-20 Jeff Johnston <jjohnstn@redhat.com> 2002-12-20 21:36:01 +00:00
COPYING.NEWLIB 2002-12-20 Jeff Johnston <jjohnstn@redhat.com> 2002-12-20 21:36:01 +00:00
djunpack.bat
gettext.m4
install-sh
libtool.m4
ltcf-c.sh 2002-12-01 Nathanael Nerode <neroden@gcc.gnu.org> 2002-12-01 12:01:26 +00:00
ltcf-cxx.sh * ltcf-cxx.sh (hpux*): Modify to support ia64-*-hpux*. 2002-07-04 22:51:16 +00:00
ltcf-gcj.sh 2002-12-01 Nathanael Nerode <neroden@gcc.gnu.org> 2002-12-01 12:01:26 +00:00
ltconfig
ltmain.sh
MAINTAINERS 2002-07-19 Chris Demetriou <cgd@broadcom.com> 2002-07-19 18:16:30 +00:00
Makefile.def Source Navigator is now on sourceforge... 2003-02-06 20:36:19 +00:00
Makefile.in * Makefile.tpl (RANLIB): Define. 2003-02-14 21:15:37 +00:00
Makefile.tpl * Makefile.tpl (RANLIB): Define. 2003-02-14 21:15:37 +00:00
makefile.vms
missing
mkdep
mkinstalldirs
move-if-change
mpw-build.in
mpw-config.in
mpw-configure
mpw-install
mpw-README
README
README-maintainer-mode
setup.com
src-release * src-release (ETC_SUPPORT): Add fdl.texi and texi2pod.pl. 2003-01-02 00:50:57 +00:00
symlink-tree
ylwrap

		   README for GNU development tools

This directory contains various GNU compilers, assemblers, linkers, 
debuggers, etc., plus their support routines, definitions, and documentation.

If you are receiving this as part of a GDB release, see the file gdb/README.
If with a binutils release, see binutils/README;  if with a libg++ release,
see libg++/README, etc.  That'll give you info about this
package -- supported targets, how to use it, how to report bugs, etc.

It is now possible to automatically configure and build a variety of
tools with one command.  To build all of the tools contained herein,
run the ``configure'' script here, e.g.:

	./configure 
	make

To install them (by default in /usr/local/bin, /usr/local/lib, etc),
then do:
	make install

(If the configure script can't determine your type of computer, give it
the name as an argument, for instance ``./configure sun4''.  You can
use the script ``config.sub'' to test whether a name is recognized; if
it is, config.sub translates it to a triplet specifying CPU, vendor,
and OS.)

If you have more than one compiler on your system, it is often best to
explicitly set CC in the environment before running configure, and to
also set CC when running make.  For example (assuming sh/bash/ksh):

	CC=gcc ./configure
	make

A similar example using csh:

	setenv CC gcc
	./configure
	make

Much of the code and documentation enclosed is copyright by
the Free Software Foundation, Inc.  See the file COPYING or
COPYING.LIB in the various directories, for a description of the
GNU General Public License terms under which you can copy the files.

REPORTING BUGS: Again, see gdb/README, binutils/README, etc., for info
on where and how to report problems.