binutils-gdb/include
Maciej W. Rozycki d6f1659387 bfd/:
2005-02-15  Nigel Stephens  <nigel@mips.com>
            Maciej W. Rozycki  <macro@mips.com>

	* elf32-mips.c (elf_mips16_howto_table_rel): New array for MIPS16
	reloc howtos.  Add R_MIPS16_HI16 and R_MIPS16_LO16 relocs and
	R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders.
	(elf_mips16_jump_howto): Move into elf_mips16_howto_table_rel.
	(elf_mips16_gprel_howto): Likewise.  Redefine src_mask and
	dst_mask.
	(mips16_gprel_reloc): Remove bit shuffling; call
	_bfd_mips16_elf_reloc_unshuffle(), _bfd_mips_elf_gprel16_with_gp()
	and _bfd_mips16_elf_reloc_shuffle() instead.
	(mips16_reloc_map): New reloc map for MIPS16 relocs.
	(bfd_elf32_bfd_reloc_type_lookup): Use mips16_reloc_map for MIPS16
	relocs.
	(mips_elf32_rtype_to_howto): Fetch MIPS16 howtos from
	elf_mips16_howto_table_rel.
	* elf64-mips.c (mips16_elf64_howto_table_rel): New array for
	MIPS16 REL reloc howtos.  Add R_MIPS16_HI16 and R_MIPS16_LO16
	relocs and R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders.
	(elf_mips16_jump_howto): Move into mips16_elf64_howto_table_rel.
	(elf_mips16_gprel_howto): Likewise.  Redefine src_mask and
	dst_mask.
	(mips16_elf64_howto_table_rela): New array for MIPS16 RELA
	reloc howtos.  Add R_MIPS16_26, R_MIPS16_GPREL, R_MIPS16_HI16 and
	R_MIPS16_LO16 relocs and R_MIPS16_GOT16 and R_MIPS16_CALL16
	placeholders.
	(mips16_gprel_reloc): Remove bit shuffling; call
	_bfd_mips16_elf_reloc_unshuffle(), _bfd_mips_elf_gprel16_with_gp()
	and _bfd_mips16_elf_reloc_shuffle() instead.
	(mips16_reloc_map): New reloc map for MIPS16 relocs.
	(bfd_elf64_bfd_reloc_type_lookup): Use mips16_reloc_map for MIPS16
	relocs.
	(mips_elf64_rtype_to_howto): Fetch MIPS16 howtos from
	mips16_elf64_howto_table_rela or mips16_elf64_howto_table_rel.
	* elfn32-mips.c (elf_mips16_howto_table_rel): New array for MIPS16
	REL reloc howtos.  Add R_MIPS16_HI16 and R_MIPS16_LO16 relocs and
	R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders.
	(elf_mips16_jump_howto): Move into elf_mips16_howto_table_rel.
	(elf_mips16_gprel_howto): Likewise.  Redefine src_mask and
	dst_mask.
	(mips16_gprel_reloc): Remove bit shuffling; call
	_bfd_mips16_elf_reloc_unshuffle(), _bfd_mips_elf_gprel16_with_gp()
	and _bfd_mips16_elf_reloc_shuffle() instead.
	(mips16_reloc_map): New reloc map for MIPS16 relocs.
	(bfd_elf32_bfd_reloc_type_lookup): Use mips16_reloc_map for MIPS16
	relocs.
	(mips_elf_n32_rtype_to_howto): Fetch MIPS16 howtos from
	elf_mips16_howto_table_rela or elf_mips16_howto_table_rel.
	* elfxx-mips.c (_bfd_mips16_elf_reloc_unshuffle): New function to
	handle bit shuffling for MIPS16 relocs.
	(_bfd_mips16_elf_reloc_shuffle): Likewise.
	(_bfd_mips_elf_lo16_reloc): Use _bfd_mips16_elf_reloc_unshuffle()
	and _bfd_mips16_elf_reloc_shuffle().
	(_bfd_mips_elf_generic_reloc): Likewise.
	(mips_elf_calculate_relocation): Likewise.  Handle R_MIPS16_HI16
	and R_MIPS16_LO16.
	(mips_elf_obtain_contents): Remove bit shuffling.
	(mips_elf_perform_relocation): Likewise; call
	_bfd_mips16_elf_reloc_unshuffle() and _bfd_mips16_elf_reloc_shuffle()
	instead.
	(_bfd_mips_elf_relocate_section): Likewise.  Handle R_MIPS16_HI16
	and R_MIPS16_LO16.
	* elfxx-mips.h (_bfd_mips16_elf_reloc_unshuffle): Declare.
	(_bfd_mips16_elf_reloc_shuffle): Likewise.
	* reloc.c (BFD_RELOC_MIPS16_HI16): New reloc.
	(BFD_RELOC_MIPS16_HI16_S): Likewise.
	(BFD_RELOC_MIPS16_LO16): Likewise.
	* bfd-in2.h: Regenerate.
	* libbfd.h: Regenerate.

gas/:
2005-02-15  Nigel Stephens  <nigel@mips.com>
            Maciej W. Rozycki  <macro@mips.com>

	* config/tc-mips.c (reloc_needs_lo_p): Handle
	BFD_RELOC_MIPS16_HI16_S.
	(fixup_has_matching_lo_p): Handle BFD_RELOC_MIPS16_LO16.
	(append_insn): Add BFD_RELOC_MIPS16_GPREL, BFD_RELOC_MIPS16_HI16_S
	and BFD_RELOC_MIPS16_LO16 to relocs to suppress overflow
	complaints on.
	(mips16_ip): Resolve BFD_RELOC_MIPS16_HI16_S,
	BFD_RELOC_MIPS16_HI16 and BFD_RELOC_MIPS16_LO16 for constants.
	Call my_getSmallExpression() to parse percent operators.
	(percent_op_match, mips_percent_op): Separate definitions.
	(mips16_percent_op): Define percent operators for the MIPS16 mode.
	(parse_relocation): Handle the MIPS16 mode using
	mips16_percent_op.
	(md_apply_fix3): Handle BFD_RELOC_MIPS16_HI16,
	BFD_RELOC_MIPS16_HI16_S and BFD_RELOC_MIPS16_LO16.

gas/testsuite/:
2005-02-15  Nigel Stephens  <nigel@mips.com>
            Maciej W. Rozycki  <macro@mips.com>

	* gas/mips/mips16-hilo.d: New test for the R_MIPS16_HI16 and
	R_MIPS16_LO16 relocs.
	* gas/mips/mips16-hilo-n32.d: Likewise, for the n32 ABI.
	* gas/mips/mips16-hilo.s: Source for the new tests.
	* gas/mips/mips.exp: Run the new tests.

include/:
2005-02-15  Nigel Stephens  <nigel@mips.com>
            Maciej W. Rozycki  <macro@mips.com>

	* elf/mips.h (R_MIPS16_GOT16): New reloc code.
	(R_MIPS16_CALL16): Likewise.
	(R_MIPS16_HI16): Likewise.
	(R_MIPS16_LO16): Likewise.
	(R_MIPS16_min): New fake reloc code.
	(R_MIPS16_max): Likewise.

ld/testsuite/:
2005-02-15  Nigel Stephens  <nigel@mips.com>
            Maciej W. Rozycki  <macro@mips.com>

	* ld-mips-elf/mips16-hilo.d: New test for the R_MIPS16_HI16 and
	R_MIPS16_LO16 relocs.
	* ld-mips-elf/mips16-hilo-n32.d: Likewise, for the n32 ABI.
	* ld-mips-elf/mips16-hilo.s: Auxiliary source for the new tests.
	* ld-mips-elf/mips-elf.exp: Run the new tests.
2005-02-15 19:57:54 +00:00
..
aout Add N_PATCH to DO definition. 2004-01-06 17:05:11 +00:00
coff Add support for maxq10 and maxq20 machine values 2005-01-10 16:33:51 +00:00
elf bfd/: 2005-02-15 19:57:54 +00:00
gdb * callback.h (struct host_callback_struct): New members pipe, 2005-01-28 03:39:28 +00:00
nlm Convert to C90. 2003-08-07 02:25:50 +00:00
opcode gas/testsuite/ 2005-02-09 08:05:43 +00:00
alloca-conf.h Add alloca-conf.h from libiberty. 2000-09-28 08:00:54 +00:00
ansidecl.h merge from gcc 2005-02-14 12:10:25 +00:00
bfdlink.h include/ 2005-02-03 03:30:49 +00:00
bin-bugs.h 2004-07-23 H.J. Lu <hongjiu.lu@intel.com> 2004-07-23 15:40:19 +00:00
bout.h Fix typos in ChangeLogs; add coff/external.h; fix copyright dates 2001-03-14 02:27:44 +00:00
ChangeLog merge from gcc 2005-02-14 12:10:25 +00:00
ChangeLog-9103 Split ChangeLog files. 2004-01-02 11:16:21 +00:00
COPYING * COPYING: Update to current 2000-12-19 22:01:20 +00:00
demangle.h merge from gcc 2004-05-04 20:06:15 +00:00
dis-asm.h binutils/: 2005-01-10 09:54:50 +00:00
dyn-string.h merge from gcc 2004-02-25 02:04:37 +00:00
fibheap.h merge from gcc 2004-12-10 22:04:41 +00:00
filenames.h * filenames.h: Add cygwin to the list of dosish style path systems. 2001-10-16 12:47:31 +00:00
floatformat.h 2003-09-22 Andrew Cagney <cagney@redhat.com> 2003-09-22 17:41:02 +00:00
fnmatch.h Fix typos in ChangeLogs; add coff/external.h; fix copyright dates 2001-03-14 02:27:44 +00:00
fopen-bin.h 19990502 sourceware import 1999-05-03 07:29:11 +00:00
fopen-same.h 19990502 sourceware import 1999-05-03 07:29:11 +00:00
fopen-vms.h 19990502 sourceware import 1999-05-03 07:29:11 +00:00
gdbm.h 19990502 sourceware import 1999-05-03 07:29:11 +00:00
getopt.h merge from gcc 2002-10-27 01:02:05 +00:00
hashtab.h merge from gcc 2004-04-22 18:39:03 +00:00
hp-symtab.h Fix 'the the' typo 2003-11-06 11:58:58 +00:00
ieee.h Fix typos in ChangeLogs; add coff/external.h; fix copyright dates 2001-03-14 02:27:44 +00:00
libiberty.h merge from gcc 2004-09-14 01:16:22 +00:00
MAINTAINERS add MAINTAINERS files 2000-07-05 19:28:06 +00:00
md5.h Fix typos in ChangeLogs; add coff/external.h; fix copyright dates 2001-03-14 02:27:44 +00:00
oasys.h Fix typos in ChangeLogs; add coff/external.h; fix copyright dates 2001-03-14 02:27:44 +00:00
objalloc.h * objalloc.h (OBJALLOC_ALIGN): Define using offsetof. 2001-09-18 09:59:28 +00:00
obstack.h merge from gcc 2004-07-13 21:10:23 +00:00
os9k.h Fix typos in ChangeLogs; add coff/external.h; fix copyright dates 2001-03-14 02:27:44 +00:00
partition.h merge from gcc 2002-10-27 01:02:05 +00:00
progress.h Fix typos in ChangeLogs; add coff/external.h; fix copyright dates 2001-03-14 02:27:44 +00:00
safe-ctype.h merge from gcc 2003-06-22 16:35:53 +00:00
sort.h merge from gcc 2002-06-25 01:03:52 +00:00
splay-tree.h merge from gcc 2004-03-30 20:03:09 +00:00
symcat.h Synchronise with copyright dates on FSF GCC versions of these files 2001-03-14 19:45:29 +00:00
ternary.h merge from gcc 2001-05-08 14:35:18 +00:00
xregex2.h merge from gcc 2002-04-17 01:03:04 +00:00
xregex.h merge from gcc 2001-08-02 23:27:47 +00:00
xtensa-config.h bfd ChangeLog 2004-10-08 00:22:15 +00:00
xtensa-isa-internal.h 2004-11-12 Bob Wilson <bob.wilson@acm.org> 2004-11-12 21:59:13 +00:00
xtensa-isa.h 2004-11-12 Bob Wilson <bob.wilson@acm.org> 2004-11-12 21:59:13 +00:00