2002-09-27  Alan Modra  <amodra@bigpond.net.au>

	* config/tc-avr.c (md_apply_fix3): Reinstate code handling pcrel
	fixups to current or absolute section.

2002-09-26  Jim Wilson  <wilson@redhat.com>

	* config/tc-v850.c (v850_offset): Use frag_var instead of frag_now_fix
	and frag_more.

2002-09-26  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* config/tc-mips.c (CPU_HAS_MIPS16): Add mips-lsi-elf as MIPS16
	capable configuration.
	(macro_build): Check for MIPS16 capability, not for actual MIPS16 code
	generation.
	(mips_ip): Likewise.

2002-09-26  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* config/tc-mips.c (append_insn): Fix jump overflow check.

2002-09-24  Alan Modra  <amodra@bigpond.net.au>

	* config/tc-i386.c (process_operands): Warn about "lea" segment
	overrides.

2002-09-22  Mark Elbrecht  <snowball3@softhome.net>

	* write.c: Delete set_segment_vma and prototype. Update all callers.

2002-09-21  Alan Modra  <amodra@bigpond.net.au>

	* config/tc-i386.c (md_apply_fix3): Replace S_IS_EXTERNAL,
	S_IS_WEAK etc. with S_FORCE_RELOC call.  Correct comment.
	Rename "fseg" to "sym_seg".
	* Makefile.am: Run "make dep-am".
	* Makefile.in: Regenerate.
	* doc/Makefile.in: Regenerate.

2002-09-20  Nick Clifton  <nickc@redhat.com>

	* symbols.c (colon): Do not allow symbols to be created in the
	absolute section if WORKING_DOT_WORD is not defined and
	new_broken_words would require a new frag to be created.

2002-09-20  Alan Modra  <amodra@bigpond.net.au>

	* expr.c (expr): Simplify foo-foo here.
	(clean_up_expression): Remove O_subtract code.

	* write.h (struct fix): Add fx_dot_value.
	(dot_value): Declare.
	* write.c (dot_value): New var.
	(fix_new_internal): Save dot_value as fx_dot_value.
	(fixup_segment): Adjust fx_offset using fx_dot_value.
	* expr.c (expr): Update dot_value.

2002-09-19  Jakub Jelinek  <jakub@redhat.com>

	* config/tc-i386.c (tc_i386_fix_adjustable): Handle
	BFD_RELOC_386_TLS_IE and BFD_RELOC_386_TLS_GOTIE.
	(BFD_RELOC_386_TLS_IE, BFD_RELOC_386_TLS_GOTIE): Define to 0
	if not defined.
	(lex_got): Handle @GOTNTPOFF and @INDNTPOFF.
	(md_apply_fix3, tc_gen_reloc): Handle BFD_RELOC_386_TLS_IE and
	BFD_RELOC_386_TLS_GOTIE.

2002-09-19  Richard Henderson  <rth@redhat.com>

	* config/tc-alpha.c (md_pcrel_from): Only adjust special for
	branch type relocs.
	(alpha_force_relocation): Don't special-case branch type relocs.

2002-09-19  Nick Clifton  <nickc@redhat.com>

	* config/tc-m68k.c (select_control_regs): Handle situation where
	architecture has not yet been selected.

2002-09-18  Chris Demetriou  <cgd@broadcom.com>

	* config/tc-mips.c (IS_SEXT_32BIT_NUM): Move closer to top of file.
	(IS_SEXT_16BIT_NUM): New macro.
	(macro_build_ldst_constoffset): New function, to build a set of
	instructions to do a load or store from a constant offset relative
	to a given register.
	(macro, s_cprestore): Use macro_build_ldst_constoffset to implement
	.cprestore pseudo-op.

2002-09-18  Chris Demetriou  <cgd@broadcom.com>

	* config/tc-mips.c (md_apply_fix3): Just return for BFD_RELOC_8.

2002-09-18  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* config/tc-mips.c (s_change_section): Fix parsing. Code cleanup.

2002-09-17  Stan Cox  <scox@redhat.com>

	* tc-mips.c (load_address): Use BFD_RELOC_MIPS_GOT_DISP for newabi.
	(macro): Likewise for la.  Likewise for ld.
	(mips_after_parse_args): Make -xgot optional, not the default.
	(md_apply_fix3): Allow composite relocation to set up gp.
	(tc_gen_reloc): Allow relaxing for newabi.
	Relax R_MIPS_CALL16 to R_MIPS_GOT_PAGE/R_MIPS_GOT_OFST if local.
	Relax R_MIPS_GOT16/R_MIPS_LO16 to R_MIPS_GOT_DISP if local.

2002-09-17  Nick Clifton  <nickc@redhat.com>

	* config/tc-arm.c (md_apply_fix3): Note that an implemented
	BFD_RELOC_ARM_IMMEDIATE has been done.
	(tc_gen_reloc): Do not issue reloc number of unimplemented
	BFD_RELOC_ARM_IMMEDIATE and BFD_RELOC_ARM_OFFSET_IMM relocs -
	their name is already in the error message - plus remove them
	from the default case.

	* config/tc-arm.c (do_ldmstm): Warn about unpredictable
	behavior of instructions.

2002-09-17  Svein E. Seldal  <Svein.Seldal@solidas.com>

	* config/tc-tic4x.c: Add function declarations and ATTRIBUTE_UNUSED.
	Convert functions to K&R format.

2002-09-17  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* config/tc-mips.c (pdr_seg): Define only for ELF.
	(s_change_section): Remove unused variable. Don't use for nonELF.

2002-09-17  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* config/obj-elf.c (obj_elf_change_section): Move prototype to
	obj-elf.h
	* config/obj-elf.h (obj_elf_change_section): Likewise.

2002-09-16  Elias Athanasopoulos  <eathan@otenet.gr>

	* dwarf2dbg.c (out_debug_abbrev): Add support for the DW_AT_name field.
	(out_debug_info): Likewise.

2002-09-16  Bruno Haible  <bruno@clisp.org>

	* config/tc-i386.h (ELF_TARGET_FORMAT): New macro.
	(TARGET_FORMAT): Use ELF_TARGET_FORMAT instead of "elf32-i386".
	* config/tc-i386.c (i386_target_format): Likewise.
	* config/tc-alpha.h (ELF_TARGET_FORMAT): New macro.
	(TARGET_FORMAT): Use ELF_TARGET_FORMAT instead of "elf64-alpha".

2002-09-13  Nick Clifton  <nickc@redhat.com>

	* config/tc-ppc.c (md_assemble): Do not count FAKE operands
	when deciding if any operands have been skipped.

2002-09-11  Nick Clifton  <nickc@redhat.com>

	* NEWS: New TI port supports both C4x and C3x series of DSPs.

	* po/tr.po: Updated Turkish translation.

2002-09-11  Jakub Jelinek  <jakub@redhat.com>

	* config/tc-i386.c (md_apply_fix3): Allow addend for
	BFD_RELOC_386_TLS_LDO_32, BFD_RELOC_386_TLS_LE and
	BFD_RELOC_386_TLS_LE_32.

2002-09-05  Jeff Law  <law@redhat.com>

	* config/tc-hppa.c (md_apply_fix3): Don't set fx_done for
	marker relocations such as ENTRY/EXIT.
	* config/tc-hppa.h (MD_APPLY_SYM_VALUE): Definition applies
	to both OBJ_ELF and OBJ_SOM.

2002-09-05  Alan Modra  <amodra@bigpond.net.au>

	* doc/internals.texi (md_apply_fix3): Expand.
	(TC_VALIDATE_FIX, TC_FORCE_RELOCATION, TC_FORCE_RELOCATION_ABS,
	TC_FORCE_RELOCATION_LOCAL, TC_FORCE_RELOCATION_SUB_SAME,
	TC_FORCE_RELOCATION_SUB_ABS, TC_FORCE_RELOCATION_SUB_LOCAL,
	TC_VALIDATE_FIX_SUB, MD_APPLY_SYM_VALUE, S_FORCE_RELOC,
	EXTERN_FORCE_RELOC): Document.
	(TC_HANDLES_FX_DONE, obj_fix_adjustable): Remove.
	* as.h: Don't include struc-symbol.h for arc.
	(IS_ELF): Define.
	* cgen.c (gas_cgen_md_apply_fix3): Remove *valP fudges and code to
	subtract absolute symbol.
	* obj.h (struct format_ops): Add frob_file_before_fix.
	* subsegs.c (section_symbol): Set BSF_SECTION_SYM flag.
	* symbols.c (S_FORCE_RELOC): New function.
	* symbols.h (S_FORCE_RELOC): Declare.
	* write.c (TC_FORCE_RELOCATION): Change default.
	(TC_FORCE_RELOCATION_ABS): Define.
	(TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
	(TC_FORCE_RELOCATION_LOCAL): Define this instead.
	(TC_FORCE_RELOCATION_SECTION): Don't define.
	(TC_FORCE_RELOCATION_SUB_SAME): Define this instead.
	(TC_FORCE_RELOCATION_SUB_ABS): Define.
	(TC_FORCE_RELOCATION_SUB_LOCAL): Define.
	(TC_VALIDATE_FIX_SUB): Define.
	(TC_FIX_ADJUSTABLE): Don't define.
	(MD_APPLY_SYM_VALUE): Define this instead.
	(abs_section_sym): New variable.
	(adjust_reloc_syms): Use S_FORCE_RELOC.  Remove obj_fix_adjustable
	call.  Don't symbol_mark_used_in_reloc here.  Simplify link_once tests.
	Don't put the absolute section sym on fixups here.
	(fix_segment): New function.
	(write_relocs): Don't call fixup_segment from here.
	(write_object_file): Instead call tc_frob_file_before_fix,
	obj_frob_file_before_fix, and fix_segment prior to symbol table code.
	Don't output the absolute section symbol.
	(fixup_segment): Rewrite.
	* write.h (abs_section_sym): Declare.
	* config/obj-aout.c (obj_aout_frob_file_before_fix): Rename from
	obj_aout_frob_file.
	(aout_format_ops): Adjust to suit.
	* config/obj-aout.h (obj_frob_file): Don't define.
	(obj_frob_file_before_fix): Define.
	(obj_aout_frob_file_before_fix): Rename from obj_aout_frob_file.
	(S_FORCE_RELOC): Define.
	* config/obj-bout.h (S_FORCE_RELOC): Define.
	* config/obj-coff.c (coff_format_ops): Init new field.
	* config/obj-coff.h: Formatting fixes.
	(obj_sec_sym_ok_for_reloc): Define.
	(S_FORCE_RELOC): Define.
	* config/obj-ecoff.c (ecoff_frob_file_before_fix): Split out ..
	(ecoff_frob_file): .. from here.
	(ecoff_format_ops): Add new function.
	* config/obj-ecoff.h (ecoff_frob_file_before_fix): Declare.
	(obj_frob_file_before_fix): Define.
	* config/obj-elf.c (elf_format_ops): Init new field.
	* config/obj-elf.h (obj_sec_sym_ok_for_reloc): Expand comment.
	* config/obj-ieee.h: Formatting fixes.
	(S_FORCE_RELOC): Define.
	* config/obj-multi.h (obj_frob_file_before_fix): Define.
	* config/obj-vms.h (S_FORCE_RELOC): Define.
	* config/tc-alpha.c (md_apply_fix3): Correct GPDISP comment.
	(alpha_force_relocation): Use S_FORCE_RELOC, and don't return 0
	for BFD_RELOC_32 and BFD_RELOC_64.
	(alpha_fix_adjustable): Remove extern and weak tests.
	(alpha_before_fix): Rename from alpha_adjust_symtab.
	(alpha_adjust_relocs): Rename from alpha_adjust_symtab_relocs.
	* config/tc-alpha.h (struct fix, struct alpha_reloc_tag): Declare.
	(TC_VALIDATE_FIX): Tweak param name.
	(TC_FORCE_RELOCATION, tc_fix_adjustable): Likewise.
	(TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
	(TC_FORCE_RELOCATION_LOCAL): Define this instead.
	(MD_APPLY_SYM_VALUE): Define.
	(tc_adjust_symtab): Don't define.
	(alpha_adjust_symtab): Don't declare.
	(tc_frob_file_before_fix): Define.
	(alpha_before_fix): Declare.
	(TC_INIT_FIX_DATA): Tweak param names.
	* config/tc-arc.c: Include "struc-symbol.h".
	(md_pcrel_from): Remove undefined sym fudge.
	(md_apply_fix3): Remove *valP fudges and code to subtract abs sym.
	Don't set fx_addnumber.
	(tc_gen_reloc): Remove spurious fx_addnumber comment.
	* config/tc-arc.h (MD_APPLY_SYM_VALUE): Define.
	(EXTERN_FORCE_RELOC): Define.
	* config/tc-arm.c (md_apply_fix3 <case BFD_RELOC_ARM_GOTPC>): Remove.
	(tc_gen_reloc): Fudge ARM_GOTPC addend.
	(arm_validate_fix): Return void.
	(arm_fix_adjustable <elf version>): Remove extern and weak tests.
	Add plt and got reloc tests.
	(arm_force_relocation): Call S_FORCE_RELOC.
	* config/tc-arm.h (struct fix): Forward declare.
	(TC_VALIDATE_FIX): No longer set add_symbolP.
	(arm_validate_fix): Adjust declaration.
	(TC_FORCE_RELOCATION <pe version): Call S_FORCE_RELOC.
	(TC_FORCE_RELOCATION): Tweak param name.
	(TC_INIT_FIX_DATA): Likewise.
	(obj_fix_adjustable): Don't define.
	(tc_fix_adjustable): Call arm_fix_adjustable.
	(TC_FIX_ADJUSTABLE): Don't define.
	(MD_APPLY_SYM_VALUE): Define.
	(EXTERN_FORCE_RELOC): Define.
	(TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
	(TC_FORCE_RELOCATION_LOCAL): Define this instead.
	* config/tc-avr.c (md_apply_fix3): Don't cast valP pointer type.
	Remove *valP fudges and code to subtract abs sym.  Don't set
	fx_addnumber.
	* config/tc-avr.h: Formatting.
	(EXTERN_FORCE_RELOC): Define.
	(MD_APPLY_SYM_VALUE): Define.
	* config/tc-cris.c (tc_gen_reloc): Don't use fx_addnumber.
	(md_apply_fix3): Remove code to subtract abs sym.
	(md_cris_force_relocation): Update comment.  Call S_FORCE_RELOC.
	* config/tc-cris.h (TC_FORCE_RELOCATION): Tweak param name.
	(IS_CRIS_PIC_RELOC, tc_fix_adjustable): Likewise.
	(TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
	(TC_FORCE_RELOCATION_LOCAL): Define this instead.
	(tc_fix_adjustable): Remove extern, weak tests.
	* config/tc-d10v.c (tc_gen_reloc): Don't fiddle address of
	BFD_RELOC_VTABLE_INHERIT relocs.  Don't use fx_addnumber.
	(md_apply_fix3): Don't cast valP pointer type.  Remove *valP fudges
	and code to subtract abs sym.
	(d10v_fix_adjustable): Remove extern, weak, SEC_MERGE tests.
	(d10v_force_relocation): Call S_FORCE_RELOC.
	* config/tc-d10v.h: Don't include write.h.
	(struct fix): Instead, forward declare.
	(MD_PCREL_FROM_SECTION): Tweak param names.
	(md_pcrel_from_section): Use "struct fix" instead of "fixS".
	(d10v_fix_adjustable): Likewise.
	(obj_fix_adjustable): Don't define.
	(tc_fix_adjustable): Define.
	(TC_FORCE_RELOCATION): Tweak param name.
	(MD_APPLY_SYM_VALUE): Define.
	(EXTERN_FORCE_RELOC): Define.
	* config/tc-d30v.c (tc_gen_reloc): Don't use fx_addnumber.
	(md_apply_fix3): Don't cast valP pointer type.  Remove *valP fudges
	and code to subtract abs sym.
	* config/tc-d30v.h: Don't include write.h.
	(struct fix): Instead, forward declare.
	(MD_PCREL_FROM_SECTION): Tweak param names.
	(md_pcrel_from_section): Use "struct fix" instead of "fixS".
	(MD_APPLY_SYM_VALUE): Define.
	(EXTERN_FORCE_RELOC): Define.
	* config/tc-dlx.c (md_dlx_force_relocation): Call S_FORCE_RELOC.
	(md_dlx_fix_adjustable): Don't test for NULL fx_addsy.
	(md_apply_fix3): No need to test fx_pcrel before setting fx_done.
	(tc_gen_reloc): Don't fiddle with BFD_RELOC_VTABLE_INHERIT relocs.
	Adjust the address for BFD_RELOC_VTABLE_ENTRY, not the addend.
	Don't use fx_addnumber.
	* config/tc-dlx.h: Don't include write.h.
	(md_convert_frag): We're not alpha twice over.
	(EXTERN_FORCE_RELOC): Define.
	(obj_fix_adjustable): Don't define.
	(tc_fix_adjustable): Define.
	(TC_FIX_ADJUSTABLE): Don't define.
	(MD_APPLY_SYM_VALUE): Define.
	(LOCAL_LABELS_DOLLAR): Undef always.
	* config/tc-fr30.c (fr30_force_relocation): Call S_FORCE_RELOC.
	(fr30_fix_adjustable): Remove extern, weak tests.
	* config/tc-fr30.h (MD_APPLY_SYM_VALUE): Define.
	(obj_fix_adjustable): Don't define.
	(tc_fix_adjustable): Define.
	(struct fix): Forward declare.
	(MD_PCREL_FROM_SECTION): Tweak param name.  Remove duplicate.
	* config/tc-frv.c (frv_force_relocation): Call S_FORCE_RELOC.
	(frv_fix_adjustable): Don't do extern, weak tests.
	* config/tc-frv.h (MD_APPLY_SYM_VALUE): Define.
	(TC_FIX_ADJUSTABLE): Don't define.
	(obj_fix_adjustable): Don't define.
	(tc_fix_adjustable): Define.
	(struct fix): Forward declare.
	(MD_PCREL_FROM_SECTION): Tweak param name.  Remove duplicate.\
	* config/tc-h8300.c (md_apply_fix3): Don't cast valP pointer type.
	* config/tc-h8300.h (struct fix): Forward declare.
	(EXTERN_FORCE_RELOC): Define.
	* config/tc-hppa.c (md_apply_fix3): Remove subtraction of sym value.
	(hppa_fix_adjustable): Don't test extern or weak.  Don't
	symbol_mark_used_in_reloc.
	(hppa_force_relocation): Use S_FORCE_RELOC instead of S_IS_EXTERNAL
	and S_IS_WEAK.
	* config/tc-hppa.h (EXTERN_FORCE_RELOC): Define
	(TC_FORCE_RELOCATION, TC_INIT_FIX_DATA): Tweak param name.
	(TC_FORCE_RELOCATION_SECTION): Don't define.
	(MD_APPLY_SYM_VALUE): Define.
	* config/tc-i370.c (md_apply_fix3): Remove *valP fudges and code
	to subtract abs sym.
	* config/tc-i370.h: Remove ifdef OBJ_ELF tests.
	(MD_APPLY_SYM_VALUE): Define.
	(MD_PCREL_FROM_SECTION): Tweak param name.
	* config/tc-i386.c (tc_i386_fix_adjustable): Remove weak, extern tests.
	(md_apply_fix3): Test fx_addsy, not fx_pcrel.
	(i386_force_relocation): New function.
	* config/tc-i386.h (TC_COFF_FIX2RTYPE): Tweak param name.
	(TC_VALIDATE_FIX): Likewise.
	(TC_FIX_ADJUSTABLE): Don't define.
	(MD_APPLY_SYM_VALUE): Define.
	(TC_FORCE_RELOCATION <elf version>): Call i386_force_relocation.
	(i386_force_relocation): Declare.
	(TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
	(TC_FORCE_RELOCATION_LOCAL): Define this instead.
	(TC_FORCE_RELOCATION <coff version>): Call S_FORCE_RELOC.
	* config/tc-i860.c (md_apply_fix3): Don't cast valP pointer type.
	* config/tc-i860.h (MD_APPLY_SYM_VALUE): Define.
	(EXTERN_FORCE_RELOC): Define.
	* config/tc-i960.c (reloc_callj): Remove declaration.  Return false.
	(md_apply_fix3): Don't cast valP pointer type.  Move code here from
	old fixup_segment.  No need to test fx_pcrel before setting fx_done.
	(i960_validate_fix): Remove add_symbolPP arg and add_symbolP macro.
	Use fx_addsy instead of add_symbolP, as_bad_where instead of as_bad.
	Remove #if 0 code.  Invert return boolean.
	* config/tc-i960.h (TC_COUNT_RELOC): Tweak param name.
	(TC_COFF_FIX2RTYPE, TC_ADJUST_RELOC_COUNT, TC_VALIDATE_FIX): Likewise.
	(tc_headers_hook, tc_coff_fix2rtype): Remove declaration.
	(tc_coff_sizemachdep): Prototype.
	(i960_handle_align): Likewise.
	(i960_validate_fix): Adjust declaration.
	(reloc_callj): Likewise.
	(EXTERN_FORCE_RELOC): Define.
	(TC_FORCE_RELOCATION_SUB_SAME): Define.
	(TC_FORCE_RELOCATION_ABS): Define.
	(TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
	(TC_FORCE_RELOCATION_LOCAL): Define this instead.
	(TC_FIX_ADJUSTABLE): Don't define.
	(MD_APPLY_SYM_VALUE): Define.
	* config/tc-ia64.c (ia64_force_relocation): Call S_FORCE_RELOC.
	* config/tc-ia64.h (MD_APPLY_SYM_VALUE): Define.
	(TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
	(TC_FORCE_RELOCATION_LOCAL): Define this instead.
	* config/tc-ip2k.c (ip2k_force_relocation): Call S_FORCE_RELOC.
	* config/tc-ip2k.h (MD_APPLY_FIX3): Don't define.
	(MD_APPLY_SYM_VALUE): Define.
	(EXTERN_FORCE_RELOC): Define.
	(TC_FORCE_RELOCATION): Tweak param name.
	* config/tc-m32r.c (m32r_force_relocation): Call S_FORCE_RELOC.
	(m32r_fix_adjustable): Don't test extern, weak.
	* config/tc-m32r.h (MD_PCREL_FROM_SECTION): Tweak param name.
	(MD_APPLY_SYM_VALUE): Define.
	(obj_fix_adjustable): Don't define.
	(tc_fix_adjustable): Define.
	(tc_frob_file): Don't define.
	(tc_frob_file_before_fix): Define.
	(EXTERN_FORCE_RELOC): Define.
	* config/tc-m68hc11.c (tc_gen_reloc): Set addend to zero.  Adjust
	BFD_RELOC_VTABLE_ENTRY address.
	(tc_m68hc11_force_relocation): Call S_FORCE_RELOC.
	(tc_m68hc11_fix_adjustable): Don't test relaxable_symbol.
	(md_apply_fix3): Remove *valP fudges and code to subtract abs sym.
	Remove duplicated fx_done code.
	* config/tc-m68hc11.h (MD_APPLY_SYM_VALUE): Define.
	(EXTERN_FORCE_RELOC): Define.
	* config/tc-m68k.c (tc_m68k_fix_adjustable): Don't test
	relaxable_symbol.
	* config/tc-m68k.h (TC_COFF_FIX2RTYPE): Tweak param name.
	(TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
	(TC_FIX_ADJUSTABLE): Don't define.
	(EXTERN_FORCE_RELOC): Define.
	(MD_APPLY_SYM_VALUE): Define.
	(TC_FORCE_RELOCATION): Call S_FORCE_RELOC.
	* config/tc-mcore.c (md_apply_fix3): Don't cast valP pointer type.
	Remove fx_addsy tests.
	(mcore_force_relocation): Call S_FORCE_RELOC.
	(mcore_fix_adjustable): Don't test fx_addsy.
	* config/tc-mcore.h (MD_PCREL_FROM_SECTION): Tweak param name.
	(EXTERN_FORCE_RELOC): Define.
	(obj_fix_adjustable): Don't define.
	(tc_fix_adjustable): Define.
	(MD_APPLY_SYM_VALUE): Define.
	* config/tc-mips.c (enum mips_pic_level): Move to tc-mips.h.
	(mips_pic): No longer static.
	(mips_force_relocation): Call S_FORCE_RELOC.
	(mips_fix_adjustable): Remove extern, weak tests.
	* config/tc-mips.h (enum mips_pic_level): Declare.
	(mips_pic): Declare.
	(tc_frob_file): Don't define.
	(tc_frob_file_before_fix): Define this instead.
	(EXTERN_FORCE_RELOC): Define.
	* config/tc-mmix.c (md_apply_fix3): Replace real_reg_section tests
	with reg_section tests.  Set fx_done instead of calling
	symbol_clear_used_in_reloc on bad relocs.
	(tc_gen_reloc): Zero fx_addsy on bad relocs.
	(mmix_force_relocation): Remove weak sym test.  Call S_FORCE_RELOC.
	(mmix_adjust_symtab): Simplify list handling.  Abort on any
	nonsense.
	* config/tc-mmix.h (tc_fix_adjustable): Remove weak tests.  Check
	BFD_RELOC_MMIX_LOCAL.
	(tc_frob_symbol): Keep user defined syms in reg_section.  Don't punt.
	(EXTERN_FORCE_RELOC): Define.
	(MD_PCREL_FROM_SECTION): Tweak param name.
	(tc_frob_file): Don't define.
	(tc_frob_file_before_fix): Define this instead.
	* config/tc-mn10300.c (mn10300_force_relocation): Call S_FORCE_RELOC.
	Remove SEC_CODE checks.
	(mn10300_fix_adjustable): Remove extern and weak tests.
	* config/tc-mn10300.h (EXTERN_FORCE_RELOC): Define.
	(TC_FORCE_RELOCATION): Tweak param name.
	(obj_fix_adjustable): Don't define.
	(TC_FORCE_RELOCATION_SUB_SAME): Define to handle SEC_CODE.
	* config/tc-ns32k.h (TC_FIX_DATA_PRINT): Tweak param name.
	* config/tc-openrisc.c (openrisc_force_relocation): Call S_FORCE_RELOC.
	(openrisc_fix_adjustable): Don't test fx_addsy.
	* config/tc-openrisc.h (MD_APPLY_SYM_VALUE): Define.
	(obj_fix_adjustable): Don't define.
	(tc_fix_adjustable): Define this instead.
	(MD_PCREL_FROM_SECTION): Remove duplicate. Tweak param name.
	* config/tc-or32.c (md_apply_fix3): Don't cast valP pointer type.
	(tc_gen_reloc): Don't fiddle with BFD_RELOC_VTABLE_INHERIT relocs.
	Adjust the address for BFD_RELOC_VTABLE_ENTRY, not the addend.
	* config/tc-or32.h (EXTERN_FORCE_RELOC): Define.
	(MD_APPLY_SYM_VALUE): Define.
	* config/tc-pj.c (md_apply_fix3): Don't cast valP pointer type.
	Don't subtract symbol value.
	* config/tc-pj.h (md_pcrel_from): Tweak param name.
	(EXTERN_FORCE_RELOC): Define.
	(TC_FORCE_RELOCATION): Call S_FORCE_RELOC.
	(MD_APPLY_SYM_VALUE): Define.
	(obj_fix_adjustable): Don't define.
	(tc_fix_adjustable): Define this instead.
	* config/tc-ppc.c (ppc_frob_symbol <coff version>): Ignore absolute
	section sym.
	(ppc_force_relocation <coff version>): Call S_FORCE_RELOC.
	(ppc_force_relocation <elf version>): New.
	(ppc_fix_adjustable <elf version>): Remove extern and weak tests.
	(md_apply_fix3): Don't subtract symbol values for ELF.  Update
	comments.  Don't subtract fx_subsy as that is already done.
	* config/tc-ppc.h (tc_fix_adjustable): Tweak param name.
	(MD_PCREL_FROM_SECTION): Likewise.
	(TC_FORCE_RELOCATION): Define for both ELF and XCOFF as calling
	ppc_force_relocation.
	(TC_FORCE_RELOCATION_SECTION): Delete.
	(TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
	(TC_FORCE_RELOCATION_LOCAL): Define this instead.
	(MD_APPLY_SYM_VALUE): Define.
	* config/tc-s390.c: #include "dwarf2dbg.h".
	(s390_insn): Remove excess parens.
	(tc_s390_fix_adjustable): Remove extern, weak, SEC_MERGE tests.
	(tc_s390_force_relocation): Call S_FORCE_RELOC.
	(md_apply_fix3): Add ATTRIBUTE_UNUSED on "seg".  Abort when fx_subsy
	non-NULL.  Don't subtract off fx_addsy value.
	* config/tc-s390.h (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
	(TC_FORCE_RELOCATION, MD_PCREL_FROM_SECTION): Tweak param name.
	(TC_FIX_ADJUSTABLE): Don't define.
	(MD_APPLY_SYM_VALUE): Define.
	* config/tc-sh.c (SWITCH_TABLE_CONS): Move to tc-sh.h.
	(SWITCH_TABLE): Likewise.
	(sh_force_relocation): Call S_FORCE_RELOC.
	(sh_fix_adjustable): Remove "return 1" cases handled by the default.
	Replace TC_RELOC_RTSYM_LOC_FIXUP with reloc type tests.
	(md_apply_fix3 <case BFD_RELOC_32_PLT_PCREL>): Simplify,
	fx_addnumber is zero on entry.  Save val in fx_addnumber.
	(tc_gen_reloc): Don't subtract fx_subsy.
	* config/tc-sh.h (struct fix): Move.
	(obj_fix_adjustable): Don't define.
	(tc_fix_adjustable): Define this instead.
	(TC_FIX_ADJUSTABLE): Don't define.
	(MD_APPLY_SYM_VALUE): Define.
	(SWITCH_TABLE_CONS): Define.
	(SWITCH_TABLE): Define.
	(TC_FORCE_RELOCATION_SUB_SAME): Define.
	(TC_VALIDATE_FIX_SUB): Define.
	(MD_PCREL_FROM_SECTION): Tweak param name.
	(TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
	(TC_FORCE_RELOCATION_LOCAL): Define this instead.
	(TC_FORCE_RELOCATION_SUB_ABS): Define.
	* config/tc-sh64.h (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
	(TC_FORCE_RELOCATION_LOCAL): Define this instead.
	(TC_FORCE_RELOCATION_SUB_SAME): Define.
	(TC_VALIDATE_FIX_SUB): Define.
	(MD_PCREL_FROM_SECTION): Tweak param name.
	* config/tc-sparc.c (md_apply_fix3): Don't subtract off symbol value.
	(tc_gen_reloc): Use S_FORCE_RELOC.
	(elf32_sparc_force_relocation): Call S_FORCE_RELOC.
	* config/tc-sparc.h (TC_FORCE_RELOCATION <coff version>): Remove.
	(TC_FORCE_RELOCATION_ABS): Define this instead.
	(TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
	(TC_FORCE_RELOCATION_LOCAL): Define this instead.
	(tc_fix_adjustable): Remove extern and weak tests.  Use S_FORCE_RELOC.
	(MD_APPLY_SYM_VALUE): Define.
	(TC_FIX_DATA_PRINT): Tweak param name.
	* config/tc-tic30.c (USE_STDOUT): Don't define.
	(md_parse_option): Remove stupid debug code.
	(tc_gen_reloc): Don't use fx_addnumber.
	* config/tc-v850.c (v850_fix_adjustable): Remove extern and weak tests.
	(v850_force_relocation): Remove weak test.  Call S_FORCE_RELOC.
	* config/tc-v850.h (obj_fix_adjustable): Don't define.
	(tc_fix_adjustable): Define this instead.
	(TC_FIX_ADJUSTABLE): Don't define.
	(MD_APPLY_SYM_VALUE): Define this instead.
	(TC_FORCE_RELOCATION, MD_PCREL_FROM_SECTION): Tweak param name.
	* config/tc-vax.h (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
	(TC_FIX_ADJUSTABLE): Don't define.
	(MD_APPLY_SYM_VALUE): Define this instead.
	(tc_fix_adjustable): Remove extern and weak tests.
	* config/tc-w65.h (struct fix): Forward declare.
	* config/tc-xstormy16.c (xstormy16_force_relocation): Call
	S_FORCE_RELOC.
	(xstormy16_fix_adjustable): Remove extern and weak tests.  Don't
	call xstormy16_force_relocation;  Instead test for FPTR16 reloc.
	(xstormy16_md_apply_fix3): Remove *valP fudges and code to subtract
	absolute symbol.
	* config/tc-xstormy16.h (MD_APPLY_FIX3): Don't define.
	(MD_APPLY_SYM_VALUE): Define.
	(obj_fix_adjustable): Don't define.
	(tc_fix_adjustable): Define this instead.
	(MD_PCREL_FROM_SECTION): Remove duplicate.  Tweak param name.

2002-09-04  Alan Modra  <amodra@bigpond.net.au>

	* config/tc-ppc.c (ppc_frob_symbol): Formatting, warning fix.
	(ppc_fix_adjustable <coff version>): Cleanup.

	* config/tc-ppc.c (PPC_HIGHER, PPC_HIGHEST): Fix warning.
	(md_parse_option): No -a64 without BFD64.
	(ppc_set_cpu): Select appropriate cpu when ppc_obj64.
	(ppc_arch): Use bfd_mach_rs6k for bfd_arch_rs6000.

2002-09-04  Nick Clifton  <nickc@redhat.com>

	* config/tc-ppc.c (md_begin): Do not insert non-BookE32
	instructions into the hash table if the target cpu is the BookE32.

2002-08-31  Hans-Peter Nilsson  <hp@bitrange.com>

	* read.c (do_align): Use ATTRIBUTE_UNUSED_LABEL for label, not
	ATTRIBUTE_UNUSED.

2000-08-28  Catherine Moore  <clm@redhat.com>

	* tc-v850.c (v850_relax): Declare.
	(v850_longcode): New routine.
	(v850_handle_align): New routine.
	(md_pseudo_table):  Add longcall and longjump.
	(md_parse_option): Check for relax option.
	(tc_gen_reloc):  Handle BFD_RELOC_V850_LONGCALL,
	BFD_RELOC_V850_LONGJUMP, and BFD_RELOC_V850_ALIGN.
	(md_apply_fix3): Likewise.
	(v850_force_relocation): Likewise.
	(v850_comm): Change the current section.
	(md_assemble):  Ensure that the correct value is put in the
	fixup.
	(v850_sdata, v850_tdata, v850_zdata, v850_sbss, v850_tbss,
	v850_zbss, v850_rosdata, v850_rozdata): Fix section book keeping.
	Remove redundant v850ea support.
	* tc-v850.h (HANDLE_ALIGN): Define.
	(v850_handle_align): Declare.
	* doc/c-v850.c: Document -mrelax, .longcall and .longjump.

2002-08-28  Svein E. Seldal  <Svein.Seldal@solidas.com>

	* configure.in: Add tic4x-coff* and c4x-coff*-coff-coff targets.
	* configure: Regenerate.
	* NEWS: Mention new port.

2002-08-28  Michael Hayes <m.hayes@elec.canterbury.ac.nz>

	* config/obj-coff.c: Add sdef definition.
	* config/obj-coff.h: Add tic4x include file and set
	target format.
	* config/tc-tic4x.c: New file.
	* config/tc-tic4x.h: New file.

2002-08-28  Alan Modra  <amodra@bigpond.net.au>

	* write.c (BFD_FAST_SECTION_FILL): Remove unused macro.
	(TC_ADJUST_RELOC_COUNT): Tweak param name.
	(TC_FORCE_RELOCATION, TC_FORCE_RELOCATION_SECTION): Likewise.
	(TC_FIX_ADJUSTABLE, MD_PCREL_FROM_SECTION): Likewise.
	(RELOC_ENUM): Define.
	(fix_new_internal): Use RELOC_ENUM.
	(fix_new, fix_new_exp): Likewise.
	(adjust_reloc_syms): Comment.  Remove unnecessary tests on sym != NULL.
	Replace gotos with continue.
	(write_relocs): Formatting.  Avoid symbol loops in
	RELOC_EXPANSION_POSSIBLE case too.  Report bfd_reloc_outofrange
	errors, and error number in other cases.
	(fixup_segment): Remove param names from prototype.  Rename
	"this_segment_type" to "this_segment".  Update linkrelax comment.
	Remove "size, "place" and "where" local vars.  Formatting.  Update
	"no symbol" comment.  Remove #if 0 and #if 1.

	* app.c (do_scrub_chars): Don't test IGNORE_NONSTANDARD_ESCAPES.  Tidy.

2002-08-27  Alan Modra  <amodra@bigpond.net.au>

	* dwarf2dbg.c: Always include dwarf2dbg.h.
	(dwarf2_directive_file): Adjust dummy version args.
	* ecoff.c (ecoff_directive_weakext): Add ATTRIBUTE_UNUSED.
	* expr.c (clean_up_expression <O_subtract>): Allow subtraction
	when symbol values differ.
	* read.c (do_align): Add ATTRIBUTE_UNUSED to label.
	(pseudo_set <O_subtract>): Remove unnecessary segment test.
	* config/obj-bout.c (obj_pseudo_table): Warning fix.

2002-08-26  Alan Modra  <amodra@bigpond.net.au>

	* config/tc-w65.c (md_section_align): Fix typo.
	(md_parse_option): Return 0, not 1.

2002-08-22  Nick Clifton  <nickc@redhat.com>

	* doc/as.texinfo (Section): Note that if '@' is a comment
	character then another symbol is used to prefix the section's
	type.

2002-08-22  Christian Groessler <chris@groessler.org>

	* config/tc-z8k.c (get_operands): Adjust ptr variable also in
	"case 0" case.

2002-08-12  Graeme Peterson  <gp@qnx.com>

	* configure.in: Add support for sh-**-nto* target.
	* configure: Regenerate.

2002-08-21  Nitin  Gupta  <niting@noida.hcltech.com>

	* config/tc-h8300.h (TC_LINKRELAX_FIXUP): Define.

2002-08-21  Elena Zannoni  <ezannoni@redhat.com>

	* config/tc-ppc.c (ppc_cleanup): Do something only if format
	is ELF.
	(ppc_apuinfo_section_add): Define only if format is ELF.
	(md_assemble): Emit APUinfo section only if format is ELF.
	Fix formatting.

2002-08-21  Alan Modra  <amodra@bigpond.net.au>

	* config/tc-arc.c (md_pseudo_table <dwarf2_directive_file>): Cast.
	* config/tc-frv.c: Likewise.
	* config/tc-hppa.c: Likewise.
	* config/tc-ia64.c: Likewise.
	* config/tc-ip2k.c: Likewise.
	* config/tc-m68hc11.c: Likewise.
	* config/tc-m68k.c: Likewise.
	* config/tc-mmix.c: Likewise.
	* config/tc-mn10300.c: Likewise.
	* config/tc-sh.c: Likewise.
	* config/tc-sparc.c: Likewise.
	* config/tc-v850.c: Likewise.

2002-08-20  Richard Sandiford  <rsandifo@redhat.com>

	* config/tc-mips.c (macro2): Implement rotates by zero using shifts
	by zero.

2002-08-19  Elena Zannoni  <ezannoni@redhat.com>

	From matthew green  <mrg@redhat.com>

	* config/tc-ppc.c (PPC_OPCODE_CLASSIC): Enable this everywhere
	PPC_OPCODE_PPC is, except for BookE architectures.
	(md_parse_option): Add support for -mspe.
	(md_show_usage): Add -mspe.
	(md_parse_option): Add support for -me500 and
	-me500x2 to generate code for Motorola e500 core complex.
	(md_show_usage): Add -me500 and -me500x2.

	(PPC_APUINFO_ISEL, PPC_APUINFO_PMR, PPC_APUINFO_RFMCI,
	PPC_APUINFO_CACHELCK, PPC_APUINFO_SPE, PPC_APUINFO_EFS,
	PPC_APUINFO_BRLOCK): New macros.

	(ppc_cleanup): New function.
	(ppc_apuinfo_section_add): New function.
	(APUID): New macro.
	(md_assemble): Collect info and write the APUinfo section.

	* config/tc-ppc.h (md_cleanup): Define.
	(ppc_cleanup): Export.
	(ELF_TC_SPECIAL_SECTIONS): Add .PPC.EMB.apuinfo section.

2002-08-17  Stan Cox  <scox@redhat.com>

	* config/obj-elf.c (obj_elf_change_section): Make non-static.
	config/tc-mips.c (s_change_section): New function to support
	IRIX .section pseudo-op.

2002-08-16  Nick Clifton  <nickc@redhat.com>

	* config/tc-v850.c (md_assemble): Fix assembling of "callt 0x3f".

2002-08-15  Alexandre Oliva  <aoliva@redhat.com>

	* config/tc-mips.c (macro_build_jalr): Make sure we generate
	the fix-up against on the right frag.
	(s_cpsetup): Likewise.  Parse third argument as expression, to
	handle global symbols and forward/backward labels correctly.

2002-08-14  Nick Clifton  <nickc@redhat.com>

	* read.c (stringer): Catch attempts to create strings in the abs
	section.

	* config/tc-alpha.c: Fix compiling for COFF targets.
	Some minor formatting tidyups.

2002-08-13  Stephane Carrez  <stcarrez@nerim.fr>

	* config/tc-m68hc11.h (MD_PCREL_FROM_SECTION): Remove.
	(TC_HANDLES_FX_DONE): Define to let md_apply_fix3 set fx_done flag
	according to the reloc.
	(tc_fix_adjustable, tc_m68hc11_fix_adjustable): Define.
	(TC_FORCE_RELOCATION): Define.
	(tc_m68hc11_force_relocation): Declare.

	* config/tc-m68hc11.c (md_pseudo_table): Add relax command.
	(s_m68hc11_relax): New function for relax group.
	(build_insn, build_jump_insn): Emit a M68HC11_RL_JUMP reloc at
	beginning of jump instruction.
	(md_pcrel_from): Rename from md_pcrel_from_section and fix
	address computation.
	(tc-gen_reloc): Update.
	(md_estimate_size_before_relax): Create the BFD_RELOC_16_PCREL as
	PC-relative fixup.
	(tc_m68hc11_force_relocation): New function, handle new relocs.
	(tc_m68hc11_fix_adjustable): New to make sure there are enough
	reloc for the linker relax pass.
	(md_apply_fix3): Handle M68HC11_RL_JUMP, M68HC11_RL_GROUP
	and VTABLE relocs.

2002-08-13  Stephane Carrez  <stcarrez@nerim.fr>

	* config/tc-m68hc11.c (m68hc11_elf_final_processing): New function.
	(md_pseudo_table): Add .mode, .far and .interrupt pseudo op.
	(s_m68hc11_mode): New function for .mode pseudo op.
	(s_m68hc11_mark_symbol): New function for .far and .interrupt
	pseudo op.
	* config/tc-m68hc11.h (elf_tc_final_processing): Define.
	(m68hc11_elf_final_processing): Declare.

2002-08-13  Stephane Carrez  <stcarrez@nerim.fr>

	* config/tc-m68hc11.c (md_begin): Take into account additional
	page operand for call instruction.
	(print_opcode_format): Likewise.
	(check_range): Likewise for page range checking.
	(get_operand): Don't skip a possible comma in operands.
	(fixup8): Generate BFD_RELOC_M68HC11_PAGE reloc.
	(fixup16): Likwise with BFD_RELOC_M68HC11_LO16.
	(fixup24): New to handle call reloc.
	(build_insn): Handle missing page operand for call instruction.
	(find): Likewise.
	(md_apply_fix3): Take into account new relocs.
	(get_operand): Fix the mode for indexed indirect addressing.
	(build_indexed_byte): Fix post index byte for indexed indirect mode.

2002-08-12  Richard Sandiford  <rsandifo@redhat.com>

	* config/tc-mips.c (mips_ip): Don't work out the value of
	constant %hi()s here.

2002-08-10  Alan Modra  <amodra@bigpond.net.au>

	* config/tc-i386.c (tc_i386_fix_adjustable): Test OUTPUT_FLAVOR
	for ELF, and don't bother checking ELF relocs when non-ELF.
	(i386_immediate): Allow absolute_section expressions for aout.
	(i386_displacement): Likewise.  Also test bfd_is_com_section.
	(md_estimate_size_before_relax): Test OUTPUT_FLAVOR for ELF.
	(md_apply_fix3): Hack for bfd_install_relocation when fx_pcrel,
	not when fx_addsy.  Remove dead code.

2002-08-09  Graeme Peterson  <gp@qnx.com>

	* configure.in: Add support for ppc-*-nto* target.
	* configure: Regenerate.

2002-08-09  Alan Modra  <amodra@bigpond.net.au>

	* config/tc-i386.h: Reorganize.

2002-08-09  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>

	* config/tc-mips.c (macro): Handle a register plus a 16-bit
	immediate offset in "dla" and "la" expansions.

2002-08-09  Alan Modra  <amodra@bigpond.net.au>

	* configure.in: bfd_gas=yes for all i386 targets.  Formatting.
	Remove "bfd_gas=yes" from target table when covered later.
	Consolidate some entries.
	* configure: Regenerate

2002-08-09  Jakub Jelinek  <jakub@redhat.com>

	* config/tc-i386.c (output_insn): Save frag_now and frag_now_fix ()
	at start of insn, pass it to output_disp and output_imm.
	(output_disp): Added arguments.  If _GLOBAL_OFFSET_TABLE_ is seen
	in displacement for R_386_32 reloc, use R_386_GOTPC and compute
	properly addend.
	(output_imm): Added arguments.  Compute properly addend for
	R_386_GOTPC.
	(md_apply_fix3): Remove R_386_GOTPC handling.
	* testsuite/gas/i386/gotpc.s: New.
	* testsuite/gas/i386/gotpc.d: New.
	* testsuite/gas/i386/i386.exp: Add gotpc test.

2002-08-06  George France <france@handhelds.org>

	* config/tc-alpha.c (cpu_types): Enabled ev67, ev68,  -m21264a
	and m21264b processor names and cpu types.
	* doc/c-alpha.texi: Documented new types.

2002-08-06  Alan Modra  <amodra@bigpond.net.au>

	* config/tc-ppc.c (md_apply_fix3): Adjust 16 bit XCOFF reloc offset.

2002-08-01  Richard Sandiford  <rsandifo@redhat.com>

	* config/tc-mips.c (tc_gen_reloc): Extend GP-relative addend
	handling to BFD_RELOC_MIPS16_GPREL.

2002-08-01  Nick Clifton  <nickc@redhat.com>

	* config/tc-arm.c (add_to_lit_pool): Ensure that offset to literal
	pool is computed using signed arithmetic so that proper sign
	extension is performed if X_add_number is a 64-bit integer.

2002-08-01  H.J. Lu  <hjl@gnu.org>
	    Daniel Jacobowitz  <drow@mvista.com>

	* dwarf2dbg.c (dwarf2_finish): Don't emit unreferenced
	.debug_line section unless it has line information.

2002-07-31  Ian Dall  <ian@sibyl.beware.dropbear.id.au>

	* config/tc-ns32k.h (md_pcrel_adjust): Supply prototype.
	* config/tc-ns32k.c (convert_iif, md_parse_option, md_show_usage):
	Allow default displacement size to be an option	"--disp-size-default".
	(md_number_to_disp): Make error messages include value. Use %d to
	print integers, not %s.
	(fix_new_ns32k): Conditionally set fx_no_overflow so we don't
	get duplicate messages sometimes.
	(convert_iif): Grow frag to max possible instruction size. Avoid
	creating unnecessary fixes.
	(md_number_to_field) Add prototype.
	(encode_operand, parse, convert_iif, md_fix_pcrel_adjust): Add
	prototypes and make static.
	(struct addr_mode): Make mode and scaled_mode explicitly signed.
	(evaluate_expr): Use resultP argument instead of exprP global.
	(get_addr_mode): Quiten compiler warnings.
	(encode_operand): eliminate unused variables. Quiten compiler
	warnings. Eliminate nul character in format strings.
	(parse): argc is unsigned.
	(reloc): Type cast index to quieten compiler.
	(md_pcrel_adjust, md_apply_fix3): Remove unused variable.
	(md_convert_frag): Note unused parameters. Remove unused
	variables.
	(md_create_long_jump, md_create_short_jump,
	md_undefined_symbol_name, md_section_align, tc_gen_reloc): Note
	unused parameters.

2002-07-31  Nick Clifton  <nickc@redhat.com>

	* NEWS: Retroactively add entry for Lars Brinkhoff's contribution
	of the PDP-11 and 2.11BSD a.out support.

2002-07-31  Momchil Velikov  <velco@fadata.bg>

	* config/tc-v850.c (md_assemble): Fix range check for immediate
	operand.

2002-07-30  Chris Demetriou  <cgd@broadcom.com>

	* config/tc-mips.c (mips_cpu_info_table): Clean up entries related
	to Broadcom SB-1 core support.

2002-07-31  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* config/tc-mips.c (mips_target_format): Fix formatting.
	Add recognition of n32 ABI formats.

2002-07-30  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>

	* tc-mips.c (load_address): Don't clobber $at when loading a
	64-bit address in non-PIC code if noat is in effect.
	(macro): Likewise.

2002-07-30  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>

	* config/tc-mips.c (macro): Use codes 6 and 7 in trap instructions
	used in division/multiply macro expansions similarly to how they
	are used in the variants with break instructions.
	(macro2): Likewise.

2002-07-30  Graeme Peterson  <gp@qnx.com>

	* configure.in: Add support for arm-*-nto target.
	* configure: Regenerate.

2002-07-30  Nick Clifton  <nickc@redhat.com>

	* config/tc-arm.c (struct literal_pool): Add fields to allow
	multiple literal pools to be maintained.
	(find_literal_pool): New function.
	(find_or_make_literal_pool): New function.
	(add_to_literal_pool): Use find_or_make_literal_pool.
	(arm_s_text, arm_s_data, arm_s_section): Remove - no longer
	needed.
	(s_ltorg): Use find_literal_pool.
	(arm_cleanup): Dump all literal pools.
	* doc/c-arm.texi: Document new behaviour of only dumping literal
	pools upon request.

2002-07-26  Alan Modra  <amodra@bigpond.net.au>

	* config/tc-ppc.c (ppc_set_cpu): Use PPC_OPCODE_64 as the default
	rather than PPC_OPCODE_32 for powerpc64*.

2002-07-25  Nick Clifton  <nickc@redhat.com>

	* po/es.po: Updated Spanish translation.
	* po/fr.po: Updated French translation.

2002-07-25  Richard Sandiford  <rsandifo@redhat.com>

	* doc/c-mips.texi: Remove -mcpu.  Document -mabi.
	* configure.in (MIPS_CPU_STRING_DEFAULT): New configuration macro.
	(USE_E_MIPS_ABI_O32, MIPS_DEFAULT_64BIT): New configuration macros.
	* configure, config.in: Regenerate.
	* config/tc-mips.c (file_mips_abi): Rename to mips_abi.
	(mips_set_options): Remove "abi" field.
	(mips_opts): Update accordingly.  Replace all uses of mips_opts.abi
	with mips_abi.
	(mips_cpu): Remove.
	(mips_arch_string, mips_arch_info): New vars.
	(mips_tune_string, mips_tune_info): New vars.
	(ABI_NEEDS_32BIT_REGS, ABI_NEEDS_64BIT_REGS): New macros.
	(HAVE_32BIT_GPRS, HAVE_32BIT_FPRS): Don't check the ABI.
	(mips_isa_to_str, mips_cpu_to_str): Remove.
	(mips_ip): If the selected architecture is a generic ISA rather
	than a processor, only mention the ISA level in error messages.
	(OPTION_MCPU): Remove.
	(OPTION_FP64): New.
	(md_longopts): Add -mfp64, remove -mcpu.
	(mips_set_option_string): New fn.
	(md_parse_option): Make -mipsN update file_mips_isa rather than
	mips_opts.isa.  Use mips_set_option_string to set -march or -mtune.
	Don't let -mgp32 and -mfp32 change the ABI.
	(show): Move to end of file.  Constify string argument.
	(md_show_usage): Move to the end of the file.  Read available
	architectures from mips_cpu_info_table.
	(mips_set_architecture): New fn.
	(mips_after_parse_args): Rework.  Remove -mcpu handling.  -mipsN
	is an alias for -march=mipsN.  Don't change the ABI based on other
	flags.  Infer the register size from the ABI as	well as the
	architecture.  Complain about more conflicting arguments.
	Unify logic with GCC.
	(s_mipsset): Don't change the ABI.
	(mips_elf_final_processing): Check USE_E_MIPS_ABI_O32.
	(mips_cpu_info_table): Remove Generic-MIPS* entries, keeping just
	"mipsN"-type entries.  Remove entries that vary only in the
	manufacturer's prefix, or that have "000" replaced by "k".
	Remove TARGET_CPU entries.  Make r2000 entry use CPU_R3000.
	(mips_strict_matching_cpu_name_p, mips_matching_cpu_name_p): New fns.
	(mips_parse_cpu): New fn.
	(mips_cpu_info_from_name, mips_cpu_info_from_cpu): Remove.
	(mips_cpu_info_from_isa): Minor formatting tweak.

2002-07-24  Nick Clifton  <nickc@redhat.com>

	* po/sv.po: Updated Swedish translation.
	* po/es.po: Updated Spanish translation.

2002-07-23  Alan Modra  <amodra@bigpond.net.au>

	* Makefile.am: Run "make dep-am".
	* Makefile.in: Regenerate.
	* doc/Makefile.in: Regenerate.
	* config.in: Regenerate.
	* po/POTFILES.in: Regenerate.

2002-07-23  Nick Clifton  <nickc@redhat.com>

	* po/fr.po: Updated French translation.

2002-07-23  Nick Clifton  <nickc@redhat.com>

	* CONTRIBUTORS: Ken Raeburn is no longer the maintainer for
	GAS.

2002-07-19  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* config/tc-mips.c (mips_need_elf_addend_fixup): Use S_IS_EXTERNAL
	instead of S_IS_EXTERN.
	(md_estimate_size_before_relax): Likewise.
	(mips_fix_adjustable): Likewise.

2002-07-19  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* config/tc-mips.c (mips_pic_level): Remove IRIX4_PIC.

2002-07-19  Miroslav Tichy <tichm9am@ss1000.ms.mff.cuni.cz>
	    Nick Clifton  <nickc@redhat.com>

	* cond.c (s_ifdef): Treat a referenced but not yet defined
	symbol as if it were undefined, in exactly the same way as
	.equiv.

	* doc/as.texinfo: Document that .ifdef, .ifndef and .equiv
	consider referenced bug not yet defined symbols to be
	undefined.

2002-07-18  Denis Chertykov  <denisc@overta.ru>
	    Frank Ch. Eigler  <fche@redhat.com>
	    Alan Lehotsky  <alehotsky@cygnus.com>
	    John Healy  <jhealy@redhat.com>
	    Jeff Johnston  <jjohnstn@redhat.com>

	* configure.in: Add ip2k configuraton.
	* configure: Regenerate.
	* Makefile.am: Add ip2k configuraton.
	* Makefile.in: Regenerate.
	* configure: Regenerate.
	* Makefile.in: Regenerate.
	* config/tc-ip2k.c: New file.
	* config/tc-ip2k.h: New files.
	* NEWS: Mention new support.
	* doc/Makefile.am (CPU_DOCS): Add c-ip2k.texi.
	* doc/Makefile.in: Regenerate.
	* doc/all.texi: Set IP2K
	* doc/as.texinfo: Add IP2K description.
	* doc/c-ip2k.texi: New file.

2002-07-19  Nick Clifton  <nickc@cambridge.redhat.com>

	* NEWS: Reformat to match style of other NEWS files.

2002-07-17  Jan Hubicka  <jh@suse.cz>

	* tc-i386.c (i386_align_code): Implement x86_64 neutral code fillers.

2002-07-16  Moritz Jodeit  <moritz@jodeit.org>

	* config/tc-z8k.c (build_bytes): Correct order of memset args.

2002-07-16  Nick Clifton  <nickc@cambridge.redhat.com>

	* NEWS: Add 'Changes in 2.13'.

2002-07-15  Matt Fredette  <fredette@netbsd.org>

	* config/tc-hppa.h (LABELS_WITHOUT_COLONS): Define if TE_NetBSD.

2002-07-12  Alan Modra  <amodra@bigpond.net.au>

	* config/tc-i386.c (process_suffix): Merge CODE_64BIT JumpByte
	case with non CODE_64BIT case.  Don't warn on "qword ptr" if
	not CODE_64BIT.

2002-07-11  Alan Modra  <amodra@bigpond.net.au>

	* config/tc-ppc.c (ppc_elf_frob_symbol): Delete.
	(ppc_frob_file_before_adjust): New function.
	* config/tc-ppc.h (tc_frob_symbol): Don't define.
	(ppc_elf_frob_symbol): Don't declare.
	(tc_frob_file_before_adjust): Define.
	(ppc_frob_file_before_adjust): Declare.

	* config/tc-ppc.c (md_pseudo_table): Warning fix.
	(ppc_cpu): Make it unsigned long to agree with struct powerpc_opcode
	flags.
	(ppc_size): Delete.
	(ppc_xcoff64): Rename to ppc_obj64.
	(md_parse_option <m>): Encode old ppc_size value in ppc_cpu.
	(ppc_set_cpu): Set PPC_OPCODE_32 too.
	(ppc_arch): Use ppc_obj64 instead of ppc_size to select bfd_mach_ppc64
	or bfd_mach_ppc.
	(ppc_target_format): Use ppc_obj64 to select format.
	(md_begin): Adjust for PPC_OPCODE_32/64 in ppc_cpu.
	(ppc_insert_operand): Use ppc_obj64 instead of ppc_size.
	(ppc_elf_suffix): Likewise.  Don't depend on BFD_DEFAULT_TARGET_SIZE.
	(tc_frob_symbol): Likewise.
	(md_assemble): Use ppc_obj64 instead of ppc_size.  Don't depend on
	BFD_DEFAULT_TARGET_SIZE.
	(ppc_tc): Likewise.
	(ppc_is_toc_sym): Likewise.
	(md_apply_fix3): Likewise.
	* config/tc-ppc.h (TC_FORCE_RELOCATION): Don't depend on
	BFD_DEFAULT_TARGET_SIZE.
	(ELF_TC_SPECIAL_SECTIONS): Likewise.
	(tc_frob_symbol): Likewise.

2002-07-09  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* config/tc-mips.c (macro_build): Handle MIPS16 insns.
	(mips_ip): Likewise.

2002-07-09  Alan Modra  <amodra@bigpond.net.au>

	* config/tc-i386.c (md_pseudo_table <file>): Warning fix.
	(BFD_RELOC_8, BFD_RELOC_8_PCREL): Define for non-BFD.
	(md_apply_fix3): Formatting.  Remove redundant test.
	(tc_gen_reloc): Remove redundant code.
	(tc_i386_force_relocation): Delete.  Movy body of function to..
	* config/tc-i386.h (TC_FORCE_RELOCATION): .. here.

2002-07-09  Federico G. Schwindt <fgsch@olimpo.com.br>

	* configure.in: Add hppa-*-openbsd* target, change
	alpha*-*-openbsd* format to elf, and use elf for sparc-*-openbsd*
	with sparc64 cpu.
	* configure: Regenerate.

2002-07-08  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>

	* config/tc-mips.c (macro): Shift the 32-bit address range
	accessible with a lone "lui" down by 32768.

2002-07-08  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>

	* config/tc-mips.c (load_address): Use non-trapping "daddu"
	instead of "dadd" in address calculations.
	(macro): Likewise.

2002-07-08  Alan Modra  <amodra@bigpond.net.au>

	* config/tc-i386.c (process_suffix): Remove intel mode movsx and
	movzx fudges.
	(md_assemble): Instead, zap the suffix here.

2002-07-03  Nick Clifton  <nickc@cambridge.redhat.com>

	* NEWS: Remove next release number until the release is actually
	upon us.

2002-07-03  Alan Modra  <amodra@bigpond.net.au>

	* Makefile.am (check-DEJAGNU): Revert 2002-06-25 change.
	Run "make dep-am".
	* Makefile.in: Regenerate.

2002-07-02  Martin Schwidefsky  <schwidefsky@de.ibm.com>

	* config/tc-s390.c (tc_s390_fix_adjustable): Prevent any adjustment
	to symbols in merge sections, even non pc-relative ones.

2002-06-29  Stephane Carrez  <stcarrez@nerim.fr>

	* config/tc-m68hc11.h (m68hc11_listing_header): Fix warning.

2002-06-29  Stephane Carrez  <stcarrez@nerim.fr>

	* config/tc-m68hc11.h (ELF_TC_SPECIAL_SECTIONS): New sections
	.softregs and .eeprom.

2002-06-28  David O'Brien  <obrien@FreeBSD.org>

	* NEWS: Note the next release is 2.13.

2002-06-26  Nick Clifton  <nickc@cambridge.redhat.com>

	* po/tr.po: New translation imported.

2002-06-26  Elias Athanasopoulos  <eathan@otenet.gr>

	* ecoff.c: (get_tag): Replace strcpy with xstrdup.
	(ecoff_directive_def): Likewise.
	(ecoff_directive_tag): Likewise.
	* listing.c (file_info): Likewise.
	* hash.c (what): Likewise.

2002-06-25  H.J. Lu <hjl@gnu.org>

	* Makefile.am (check-DEJAGNU): Set LC_ALL=C and export it.
	* Makefile.in: Regenerated.

2002-06-19  Dhananjay R. Deshpande <dhananjayd@kpit.com>

	* config/tc-sh.c (get_specific): Revert 2002-05-01 change.
	(assemble_ppi): Generate warning if the same register is used
	twice as destination in the same padd / pmuls instruction.

2002-06-18  Dave Brolley  <brolley@redhat.com>

	From Catherine Moore, Michael Meissner, Richard Sandiford, Dave Brolley
	* po/POTFILES.in: Add tc-frv.c, tc-frv.h.
	* configure.in: Support frv-*-*.
	* Makefile.am (CPU_TYPES): Add frv.
	(TARGET_CPU_CFILES): Add tc-frv.c.
	(TARGET_CPU_HFILES): Add tc-frv.h.
	(DEPTC_frv_coff): New variable.
	(DEPTC_frv_elf): New variable.
	(DEPOBJ_frv_coff): New variable.
	(DEPOBJ_frv_elf): New variable.
	(DEP_frv_coff): New variable.
	(DEP_frv_elf): New variable.
	* tc-frv.c: New file.
	* tc-frv.h: New file.

2002-06-17  Catherine Moore <clm@redhat.com>

	* config/obj-elf.h (TARGET_SYMBOL_FIELDS): Conditionally define.

2002-06-17  J"orn Rennecke <joern.rennecke@superh.com>

	* config/tc-sh.c (assemble_ppi): Initialize reg_n.

2002-06-17  Tom Rix <trix@redhat.com>

	* config/tc-i370.h (tc_comment_chars): Define for i370-elf.

2002-06-14  H.J. Lu  <hjl@gnu.org>
	    Daniel Jacobowitz  <drow@mvista.com>

	* dwarf2dbg.h (dwarf2_directive_file): Return char *.
	* dwarf2dbg.c (dwarf2_directive_file): Return filename.
	* config/tc-mips.c (s_mips_file): Call s_app_file_string
	and new_logical_line for the first .file directive.
	* read.c (s_app_file_string): New function.
	(s_app_file): Call it.
	* read.h (s_app_file_string): Add declaration.

2002-06-14  Daniel Jacobowitz  <drow@mvista.com>

	* configure.in: Remove MIPS_STABS_ELF.
	* configure: Regenerated.
	* config.in: Regenerated.
	* config/obj-elf.h (ECOFF_DEBUGGING): Define to mips_flag_mdebug
	for MIPS targets.
	* config/tc-mips.c (mips_pseudo_table): Remove #ifdef around
	".extern".
	(pdr_seg): Declare unconditionally.
	(md_begin): Always generate .pdr unless ECOFF_DEBUGGING or not ELF.
	(s_mips_end): Likewise.  Generate stabs function markers.
	(s_mips_ent): Generate stabs function markers.
	(s_mips_frame): Always generate .pdr unless ECOFF_DEBUGGING or not
	ELF.
	(s_mips_mask): Likewise.
	(mips_flag_mdebug): New.
	(md_longopts): Add "mdebug" and "no-mdebug".
	(md_parse_options): Add OPTION_MDEBUG and OPTION_NO_MDEBUG.
	(mips_after_parse_args): Set mips_flag_mdebug.
	* doc/as.texinfo: Add "-mdebug" and "-no-mdebug" for MIPS.

2002-06-13  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>

	* config/tc-mips.c (md_apply_fix3): Don't subtract the symbol's
	value twice for RELA relocations.

2002-06-12  Ben Elliston  <bje@redhat.com>

	* symbols.c (resolve_symbol_value): Initialise final_val.

	* subsegs.c (subsegs_print_statistics): Cast frchp to void *.

2002-06-11  Tom Rix  <trix@redhat.com>

	* config/tc-ppc.c (ppc_subseg_align): Delete.
	(ppc_change_csect): Default csect align is 2.
	* config/tc-ppc.h (SUB_SEGMENT_ALIGN): Delete

2002-06-09  Marek Michalkiewicz  <marekm@amelek.gda.pl>

	* config/tc-avr.c (mcu_types): Update.

2002-06-08  Matt Thomas  <matt@3am-software.com>

	* configure.in (vax-*-netbsdelf*, vax-*-netbsdaout*)
	(vax-*-netbsd*): New targets.
	* configure: Regenerate.
	* config/aout_gnu.h (enum machine_type): Add M_VAX4K_NETBSD.
	* config/tc-vax.c: Add support for ELF and PIC.
	(flag_want_pic): New flag.
	(float_cons): Fix prototype.
	(md_apply_fix3): Adjust for BFD_ASSEMBLER.
	(md_assemble): Introduce a new is_absolute local, and use it
	rather than repeating the test.  Make fatal errors actually
	fatal by using as_fatal as appropriate.  Adjust for BFD_ASSEMBLER.
	Add support for ELF.  Add support for PIC.
	(md_convert_frag): Adjust for BFD_ASSEMBLER.
	(tc_aout_fix_to_chars): Only include if OBJ_AOUT and not
	BFD_ASSEMBLER.
	(vax_reg_parse): Make the % register prefix mandatory for ELF,
	optional for a.out, and not allowed for VMS.  Adjust all callers.
	(md_create_short_jump): Add ATTRIBUTE_UNUSED to unused arguments.
	(md_create_long_jump): Likewise.
	(md_undefined_symbol): Likewise.
	(md_section_align): Likewise.
	(md_shortopts): Allow -k and -K for ELF.
	(md_parse_option): Set flag_want_pic if -k or -K.
	(tc_headers_hook): New function if OBJ_AOUT and not BFD_ASSEMBLER.
	(tc_gen_reloc): New function if BFD_ASSEMBLER.
	* config/tc-vax.h (tc_headers_hook): Remove.
	(TARGET_FORMAT): Set according to object format and target
	environment.
	(BFD_ARCH, TARGET_ARCH): Define.
	(NO_RELOC): Adjust for BFD_ASSEMBLER.
	(TC_RELOC_RTSYM_LOC_FIXUP, TC_FIX_ADJUSTABLE)
	(tc_fix_adjustable): Define if BFD_ASSEMBLER.
	* config/vax-inst.h (VAX_JSB, VAX_CALLS, VAX_CALLG): Define.

2002-06-08  Alan Modra  <amodra@bigpond.net.au>

	* Makefile.am: Run "make dep-am".
	* Makefile.in: Regenerate.

	* as.c: Replace CONST with const.
	* write.c: Likewise.
	* config/obj-coff.c: Likewise.
	* config/tc-a29k.c: Likewise.
	* config/tc-arm.c: Likewise.
	* config/tc-dlx.c: Likewise.
	* config/tc-h8300.c: Likewise.
	* config/tc-h8500.c: Likewise.
	* config/tc-i370.c: Likewise.
	* config/tc-i860.c: Likewise.
	* config/tc-i960.c: Likewise.
	* config/tc-m68hc11.c: Likewise.
	* config/tc-m68k.c: Likewise.
	* config/tc-m88k.c: Likewise.
	* config/tc-mcore.c: Likewise.
	* config/tc-mips.c: Likewise.
	* config/tc-ns32k.c: Likewise.
	* config/tc-pdp11.c: Likewise.
	* config/tc-pj.c: Likewise.
	* config/tc-s390.c: Likewise.
	* config/tc-sh.c: Likewise.
	* config/tc-sparc.c: Likewise.
	* config/tc-tahoe.c: Likewise.
	* config/tc-tic80.c: Likewise.
	* config/tc-v850.c: Likewise.
	* config/tc-vax.c: Likewise.
	* config/tc-w65.c: Likewise.
	* config/tc-z8k.c: Likewise.

2002-06-08  Daniel Jacobowitz  <drow@mvista.com>

	Based on patch from Matt Green:
	* config/obj-elf.h (ECOFF_DEBUGGING): Make configurable.
	* config/tc-mips.c (s_mips_file): Renamed from s_file.
	(s_mips_loc): New function.
	(mips_nonecoff_pseudo_table): Call them.
	(append_insn): Call dwarf2_emit_insn.

2002-06-08  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* config/tc-mips.c (mips_opts): Fix comment, all ASE fields are set
	to -1.
	(file_ase_mips16): New veriable.
	(mips_eabi64): Remove.
	(CPU_HAS_MIPS16): New define.
	(CPU_HAS_MDMX): Fix data type.
	(md_begin): Code cleanup. Use file_ase_mips16.
	(mips_elf_final_processing): Handle mips16 header flag.
	Handle EABI flag without intermediate variable.

2002-06-08  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* doc/as.texinfo: Update MIPS documentation.

2002-06-08  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* config/tc-mips.c: Add define for $zero register.
	(md_begin): Add $zero as alias name for $0.
	(insn_uses_reg): Use ZERO define.
	(mips_ip): Add $zero as alias name for $0.
	(mips16_ip): Likewise.
	(s_cplocal): Demand empty rest of input line.
	(tc_get_register): Likewise. Add support for $kt0, kt1 register
	names. Use ZERO define. Fix input_line_pointer progress.

2002-06-07  Alan Modra  <amodra@bigpond.net.au>

	* symbols.c: Replace CONST by const throughout.
	(symbol_find_exact): Split out from..
	(symbol_find_base): ..here.
	* symbols.h: Replace CONST by const throughout.
	(symbol_find_exact): Declare.
	* config/obj-elf.c: #include "struc-symbol.h".
	(elf_frob_file): If group name matches an exported symbol, use that
	symbol for the signature and ".group" as the section name.

2002-06-06  J"orn Rennecke <joern.rennecke@superh.com>

	* config/tc-sh.c (parse_at): @(symbol,pc) is A_DISP_PC again,
	but warn about it.
	* testsuite/gas/sh/pcrel.s: Also test @(symbol,pc).
	* testsuite/gas/sh/pcrel.d: Update.
	* testsuite/gas/sh/pcrel.l: New file.

2002-06-06  Daniel Jacobowitz  <drow@mvista.com>

	* tc-mips.c (mips_after_parse_args): Always set mips_opts.ase_mips3d
	and mips_opts.ase_mdmx if they are uninitialized.

2002-06-06  John David Anglin  <dave@hiauly1.hia.nrc.ca>

	* gas/config/tc-hppa.c (pa_ip): Replace "L$0\001" with FAKE_LABEL_NAME.
	(hppa_force_relocation): Check if a stub just before the start symbol
	of the last call_info is reachable before forcing relocation.  Fix
	typo.

2002-06-04  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>

	* config/tc-mips.c (mips_after_parse_args): New function.
	(md_begin): Move processing of defaults to mips_after_parse_args.
	config/tc-mips.h (md_after_parse_args): Define.

2002-06-04  Jason Thorpe  <thorpej@wasabisystems.com>

	* configure.in (sh5*): Set cpu_type to sh64 and endian to big.
	(sh5le*, sh64le*): Set cpu_type to sh64 and endian to little.
	(sh5*-*-netbsd*, sh64*-*-netbsd*): New targets.
	* configure: Regenerate.
	* config/tc-sh64.c (sh64_target_format): Add support for NetBSD
	environment.

2002-06-04  Jason Thorpe  <thorpej@wasabisystems.com>

	* config/tc-sh64.h (MD_PCREL_FROM_SECTION): Undef before redefining.

2002-06-04  Alan Modra  <amodra@bigpond.net.au>

	* config/obj-elf.c (obj_elf_change_section): Set and check elf
	linkonce flag.  Print all warnings.
	(obj_elf_section): Parse ",comdat" for groups.
	(elf_frob_file): Set SEC_LINK_ONCE on COMDAT groups.  Check
	consistency of comdat flag.

2002-06-02  Richard Henderson  <rth@redhat.com>

	* config/tc-alpha.c (alpha_adjust_symtab_relocs): Fix thinko
	with LITERALs without sequence numbers.

2002-06-01  Richard Henderson  <rth@redhat.com>

	* config/tc-alpha.c: Move LITUSE constants to "elf/alpha.h".
	Rename them LITUSE_ALPHA_*.

2002-05-31  Shrinivas Atre <ShrinivasA@kpit.com>

	* config/tc-h8300.c (get_operand): Allow stm.l and ldm.l insns to
	accept parentheses enclosed register lists.

2002-05-31  Alan Modra  <amodra@bigpond.net.au>

	* Makefile.am: Run "make dep-am".
	* Makefile.in: Regenerate.
	* po/POTFILES.in: Regenerate.

2002-05-31  Graeme Peterson  <gp@qnx.com>

	* configure.in: Add i386-*-nto-qnx*.
	* configure: Regenerate.

2002-05-31  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* config/tc-mips.c (mips_ip): Use unsigned long values for
	warning output.

2002-05-31  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* config/tc-mips.c (s_cpsetup): Fix initialization of
	mips_cpreturn_register and mips_cpreturn_offset.

2002-05-31  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* config/tc-mips.c (s_cpsetup): Fix comment.

2002-05-31  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* config/tc-mips.c (md_begin): Add $ra as alias name for $31.
	(mips_ip): Likewise.
	(mips16_ip): Likewise.
	(tc_get_register): Likewise.

2002-05-30  Chris G. Demetriou  <cgd@broadcom.com>
	    Ed Satterthwaite  <ehs@broadcom.com>

	* config/tc-mips.c (mips_set_options): New "ase_mdmx" member.
	(mips_opts): Initialize "ase_mdmx" member.
	(file_ase_mdmx): New variable.
	(CPU_HAS_MDMX): New macro.
	(md_begin): Initialize mips_opts.ase_mdmx and file_ase_mdmx
	based on command line options and configuration defaults.
	(macro_build): Note in comment that use of MDMX in macros is
	not currently allowed.
	(validate_mips_insn): Add support for the "O", "Q", "X", "Y", and
	"Z" MDMX operand types.
	(mips_ip): Accept MDMX instructions if mips_opts.ase_mdmx is set,
	and add support for the "O", "Q", "X", "Y", and "Z" MDMX operand
	types.
	(OPTION_MDMX, OPTION_NO_MDMX, md_longopts, md_parse_option):
	Add support for "-mdmx" and "-no-mdmx" options.
	(OPTION_ELF_BASE): Move to accomodate new options.
	(s_mipsset): Support ".set mdmx" and ".set nomdmx".
	(mips_elf_final_processing): Set MDMX ASE ELF header flag if
	file_ase_mdmx was set.
	* doc/as.texinfo: Document -mdmx and -no-mdmx options.
	* doc/c-mips.texi: Likewise, and document ".set mdmx" and ".set
	nomdmx" directives.

2002-05-31  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* config/tc-mips.c (OPTION_NO_M7000_HILO_FIX): Rename to
	OPTION_MNO_7000_HILO_FIX. Add alternate "mno-fix7000"
	command line switch conforming to gcc conventions.
	* doc/c-mips.texi: Document -mno-fix7000 instead of no-mfix-7000.

2002-05-31  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* config/tc-mips.c (macro_build_jalr): New Function.
	(md_begin): NewABI uses big GOTs.
	(macro_build): Recognize BFD_RELOC_MIPS_GOT_DISP,
	BFD_RELOC_MIPS_GOT_PAGE, BFD_RELOC_MIPS_GOT_OFST as valid.
	(load_address): Add some NewABI PIC support.
	(macro): Likewise.
	(md_apply_fix): Special handling for BFD_RELOC_MIPS_JALR.
	(tc_gen_reloc): Don't encode NewABI vtables in REL relocations.

2002-05-31  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* config/tc-mips.c (load_address): Use mips_gp_register instead
	of hardcoded value. Remove dbl parameter, use HAVE_32BIT_ADDRESSES
	instead.
	(macro): Use mips_gp_register instead of hardcoded value.

2002-05-30  Richard Henderson  <rth@redhat.com>

	* expr.h (operatorT): Add O_md17..O_md32.
	* config/tc-alpha.c (O_lituse_tlsgd, O_lituse_tlsldm, O_tlsgd,
	O_tlsldm, O_gotdtprel, O_dtprelhi, O_dtprello, O_dtprel, O_gottprel,
	O_tprelhi, O_tprello, O_tprel): New.
	(USER_RELOC_P, alpha_reloc_op_tag, debug_exp): Include them.
	(DUMMY_RELOC_LITUSE_TLSGD, DUMMY_RELOC_LITUSE_TLSLDM): New.
	(LITUSE_TLSGD, LITUSE_TLSLDM): New.
	(struct alpha_reloc_tag): Add master, saw_tlsgd, saw_tlsld,
	saw_lu_tlsgd, saw_lu_tlsldm.  Make multi_section_p a bit field.
	(md_apply_fix3): Handle TLS relocations.
	(alpha_force_relocation, alpha_fix_adjustable): Likewise.
	(alpha_adjust_symtab_relocs): Sort LITERAL relocs after the
	associated TLS reloc.  Check lituse_tls relocs match up.
	(emit_insn): Handle TLS relocations.
	(ldX_op): Remove.

	* doc/c-alpha.texi: Add docs for tls relocations.

2002-05-30  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* config/tc-mips.c (mips_gprel_offset): New variable.
	(s_gpvalue): Use it.

2002-05-30  Diego Novillo  <dnovillo@redhat.com>

	* gas/config/tc-d10v.c (check_resource_conflict): Only check
	write-write conflicts.
	(md_assemble): Reformat introductory comment.
	(parallel_ok): Prevent packing only if the first
	instruction cannot be packed.

2002-05-30  Jason Eckhardt <jle@redhat.com>
	    Tom Rix <trix@redhat.com>

	* config/tc-d10v.c (build_insn): Check for immediates.

2002-05-28  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* config/tc-mips.c: Replace GP in comments by $gp.
	(mips_big_got): Initialize.
	(mips_trap): Initialize.
	(load_address): Use mips_gp_register instead of hardcoded value.
	Remove dbl parameter, use HAVE_32BIT_ADDRESSES instead.
	(macro): Use mips_gp_register instead of hardcoded value.
	(macro2): Change load_address calls.
	(md_pcrel_from): Comment formatting.
	(s_cpload): Use mips_gp_register instead of hardcoded value.
	(s_cprestore): Likewise. Comment formatting.
	(s_gpword): Fix data type.
	(s_cpadd): Use mips_gp_register instead of hardcoded value.
	(nopic_need_relax): Replace GP in comments by $gp.
	(mips_elf_final_processing): Better comment.

2002-05-28  Kuang Hwa Lin <kuang@sbcglobal.net>

	* configure.in: Add DLX configuraton
	* Makefile.am: Add DLX configuraton
	* configure: Regenerate.
	* Makefile.in: Regenerate.
	* config/tc-dlx.c: New file.
	* config/tc-dlx.h: New files.
	* NEWS: Mention new support.

2002-05-27  Nick Clifton  <nickc@cambridge.redhat.com>

	* config/obj-coff.c (write_object_file): Add missing semicolon.

2002-05-26  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* config/tc-mips.c (mips_emit_delays): Replace magic constant for RA
	by the define. Remove superfluous check of mips_opts.mips16.
	(append_insn): Likewise. Canonicalize variable increments.
	(macro_build): Canonicalize variable increments.
	(macro_build_lui): Likewise.
	(load_register): Likewise.
	(load_address): Move pointer initialization.
	(macro): Move pointer to a more local scope. Canonicalize variable
	increments. Better comments. Replace magic constant for RA by the
	define.
	(macro2): Replace magic constant for RA by the define. Canonicalize
	variable increments.
	(mips_ip): Canonicalize variable increments.
	(mips16_ip): Replace magic constant for RA by the define.
	(my_getSmallParser): Canonicalize variable increments/decrements.
	(my_getPercentOp): Likewise.
	(my_getSmallExpression): Likewise.
	(s_align): Likewise.
	(s_mipsset): Likewise.
	(s_cpsetup): Likewise.
	(s_insn): Remove superfluous check of mips_opts.mips16.
	(s_mips_stab): Likewise.
	(mips_handle_align): Canonicalize variable increments.
	(s_mips_ent): Likewise.
	(s_mips_end): Add comment.

2002-05-26  Jason Thorpe  <thorpej@wasabisystems.com>

	* configure.in: Use ns32k-*-netbsd* instead of ns32k-pc532-netbsd*.
	* configure: Regenerate.

2002-05-25  Alan Modra  <amodra@bigpond.net.au>

	* Makefile.am (OBJS): Depend on ansidecl.h and fopen-same.h.
	* Makefile.in: Regenerate.
	* dep-in.sed: Reorder to match OBJS in Makefile.am.
	* configure.in (ALL_OBJ_DEPS): Add symcat.h when need_bfd.
	* configure: Regenerate.
	* as.h: Use #include "" instead of <> for local header files.
	* flonum-konst.c: Likewise.
	* flonum-mult.c: Likewise.
	* gasp.c: Likewise.
	* listing.c: Likewise.
	* config/tc-ia64.h: Likewise.
	* config/tc-v850.h: Likewise.

2002-05-24  TAMURA Kent <kent@netbsd.org>

	* configure.in: Add a target for i386-netbsdpe.
	* configure: Regenerate.

2002-05-23  Jakub Jelinek  <jakub@redhat.com>

	* config/obj-elf.c (elf_common): Renamed from obj_elf_common.
	(obj_elf_common): Call elf_common.
	(obj_elf_tls_common): New function.
	(elf_pseudo_tab): Support .tls_common.
	(special_sections): Add .tdata and .tbss.
	(obj_elf_change_section): Set SEC_THREAD_LOCAL for SHF_TLS
	sections.
	(obj_elf_parse_section_letters): Support T in section flags (SHF_TLS).
	(obj_elf_parse_section_letters): Include T in error message.
	* config/tc-ppc.c (ppc_section_letter): Likewise.
	* config/tc-alpha.c (alpha_elf_section_letter): Likewise.
	(tc_gen_reloc): Handle SEC_THREAD_LOCAL the same way as
	SEC_MERGE.
	* config/tc-sparc.c (md_apply_fix3): Likewise.
	* config/tc-i386.c (tc_i386_fix_adjustable): Add TLS relocs.
	Define them if not BFD_ASSEMBLER.
	(lex_got): Support @TLSGD, @TLSLDM, @GOTTPOFF, @TPOFF, @DTPOFF
	and @NTPOFF.
	(md_apply_fix3): Add TLS relocs.
	* config/tc-ia64.c (enum reloc_func): Add FUNC_DTP_MODULE,
	FUNC_DTP_RELATIVE, FUNC_TP_RELATIVE, FUNC_LT_DTP_MODULE,
	FUNC_LT_DTP_RELATIVE, FUNC_LT_TP_RELATIVE.
	(pseudo_func): Support @dtpmod(), @dtprel() and @tprel().
	(ia64_elf_section_letter): Include T in error message.
	(md_begin): Support TLS operators.
	(md_operand): Likewise.
	(ia64_gen_real_reloc_type): Support TLS relocs.
	* testsuite/gas/i386/tlspic.s: New file.
	* testsuite/gas/i386/tlsd.s: New file.
	* testsuite/gas/i386/tlsnopic.s: New file.
	* testsuite/gas/i386/tlsd.d: New file.
	* testsuite/gas/i386/tlsnopic.d: New file.
	* testsuite/gas/i386/tlspic.d: New file.
	* testsuite/gas/i386/i386.exp: Add tlsd, tlsnopic and tlspic tests.
	* testsuite/gas/ia64/tls.s: New file.
	* testsuite/gas/ia64/tls.d: New file.
	* testsuite/gas/ia64/ia64.exp: Add tls test.
	* write.c (adjust_reloc_syms): Don't change symbols in
	SEC_THREAD_LOCAL sections to STT_SECTION + addend.

2002-05-23  Nick Clifton  <nickc@cambridge.redhat.com>

	* config/tc-arm.c (md_apply_fix3): For the Thumb BLX reloc
	round the relocation up rather than down.

2002-05-23  Nick Clifton  <nickc@cambridge.redhat.com>

	* config/obj-coff.c (obj_coff_section): Silently ignore an 'a'
	flag.
	* doc/as.texinfo: Document that the COFF version of .section
	ignores the 'a' flag.

2002-05-23  Alan Modra  <amodra@bigpond.net.au>

	* config/tc-alpha.c (assemble_tokens): Protect use of
	ALPHA_RELOC_TABLE with #ifdef RELOC_OP_P.

	* write.c (size_seg): Check adjustment to last frag.
	(SUB_SEGMENT_ALIGN): If HANDLE_ALIGN defined, pad out last frag to
	section alignment.
	* config/obj-coff.c (SUB_SEGMENT_ALIGN): Likewise.
	* config/obj-ieee.c (SUB_SEGMENT_ALIGN): Likewise.
	(write_object_file): Invoke md_do_align if available, and use
	frag_align_code on text sections.
	* config/obj-vms.h (SUB_SEGMENT_ALIGN): Now two args.
	* config/tc-m88k.h (SUB_SEGMENT_ALIGN): Likewise.
	* config/tc-ppc.h (SUB_SEGMENT_ALIGN): Likewise.
	* config/tc-sh.h (SUB_SEGMENT_ALIGN): Likewise.
	* config/tc-i386.h (SUB_SEGMENT_ALIGN): Likewise.  Define for
	BFD_ASSEMBLER too.

2002-05-22  H.J. Lu <hjl@gnu.org>

	* dwarf2dbg.c (dwarf2_directive_loc): Call listing_source_file
	for source file.

2002-05-22  Nick Clifton  <nickc@cambridge.redhat.com>

	* config/tc-arm.c (arm_s_section): Enable for COFF builds as well
	as ELF builds.

2002-05-22  H.J. Lu <hjl@gnu.org>

	* dwarf2dbg.c (dwarf2_emit_insn): Emit only one line symbol
	for one .loc for compiler.

2002-05-22  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* config/tc-mips.c (macro): Relax warning, it's toot strict for
	embedded-PIC.

2002-05-22  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* config/tc-mips.c (macro2): Add 64 bit drol, dror macros.
	Optimize the rotate by zero case.

2002-05-21  Nick Clifton  <nickc@cambridge.redhat.com>

	* configure.in: Remove accidental enabling of bfd_gas=yes for
	sh-coff targets.
	* configure: Regenerate.

2002-05-18  Kazu Hirata  <kazu@cs.umass.edu>

	* app.c: Fix formatting.
	* as.c: Likewise.
	* ehopt.c: Likewise.
	* expr.c: Likewise.
	* input-file.c: Likewise.
	* listing.c: Likewise.
	* macro.h: Likewise.
	* stabs.c: Likewise.
	* symbols.c: Likewise.

2002-05-17  Alan Modra  <amodra@bigpond.net.au>

	* config/obj-generic.c: Delete file.
	* config/obj-generic.h: Likewise.

2002-05-16  Marek Michalkiewicz  <marekm@amelek.gda.pl>

	* config/tc-avr.c (mcu_types): Update for new devices.

2002-05-15  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* config/tc-mips.c (macro): Warn about wrong la/dla use.

2002-05-15  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* config/tc_mips.c (s_cpsetup): Fix completely bogus code which had
	worked sometimes by accident. Fix copy&paste comment.

2002-05-15  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* config/tc-mips.c (md_begin): Fix .reginfo and .MIPS.option section
	alignment for NewABI. Let n32 use .reginfo. Remove useless casts.
	(mips_elf_final_processing): Let n32 use .reginfo.

2002-05-15  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* config/tc-mips.c (append_insn): Fix too small range of variable.

2002-05-14  Nick Clifton  <nickc@cambridge.redhat.com>

	* config/tc-arm.c (arm_cleanup): Remove redundant call to
	listing_prev_line().

2002-05-13  Nick Clifton  <nickc@cambridge.redhat.com>

	* config/tc-arm.c (md_assemble): Remove redundant call to
	listing_prev().

	* dwarf2dbg.c (dwarf2_emit_insn): Do not reset
	loc_directive_seen.

	* stabs.c (s_stab_generic): Fix grammatical error in warning
	message.

2002-05-13  Alan Modra  <amodra@bigpond.net.au>

	* write.c (subsegs_finish): Don't specially align last subseg.

2002-05-11  Nick Clifton  <nickc@cambridge.redhat.com>

	* stabs.c (s_stab_generic): Warn about a description field that is
	too big.

	* config/obj-coff.c: Fix compile time warnings when compiling
	without BFD_ASSEMBLER defined.
	Fix formatting.

	* config/tc-sh.c (md_pcrel_from): Define for use with sh-hms
	target.
	(md_pcrel_from_section): Use md_pcrel_from().

2002-05-11  Bruno Haible  <bruno@clisp.org>

	* dwarf2dbg.c (dwarf2_emit_insn): Use the 'current' struct filled
	by dwarf2_directive_loc, instead of calling dwarf2_where.

2002-05-11  Kazu Hirata  <kazu@cs.umass.edu>

	* config/obj-coff.h: Fix formatting.
	* config/tc-mcore.c: Likewise.
	* config/tc-mn10300.c: Likewise.
	* config/tc-openrisc.c: Likewise.
	* config/tc-or32.c: Likewise.
	* config/tc-pdp11.c: Likewise.
	* config/tc-ppc.c: Likewise.
	* config/tc-ppc.h: Likewise.
	* config/tc-sh64.c: Likewise.
	* config/tc-sh.c: Likewise.
	* config/tc-tic54x.c: Likewise.
	* config/tc-xstormy16.c: Likewise.
	* config/tc-xstormy16.h: Likewise.

2002-05-09  Kazu Hirata  <kazu@cs.umass.edu>

	* config/obj-coff.c: Fix formatting.
	* config/obj-elf.c: Likewise.
	* config/tc-alpha.c: Likewise.
	* config/tc-arm.c: Likewise.
	* config/tc-d10v.c: Likewise.
	* config/tc-d30v.c: Likewise.
	* config/tc-h8300.c: Likewise.
	* config/tc-hppa.c: Likewise.

2002-05-09  Alan Modra  <amodra@bigpond.net.au>

	* config/tc-i386.c (md_estimate_size_before_relax) Don't lose
	reloc when no_cond_jump_promotion.

2002-05-08  Jim Wilson  <wilson@redhat.com>

	* config/tc-i960.c (md_estimate_size_before_relax): Return size of
	current variable part of frag.

2002-05-08  Kazu Hirata  <kazu@cs.umass.edu>

	* config/tc-mmix.c: Fix formatting.
	* config/tc-mmix.h: Likewise.

2002-05-08  Alan Modra  <amodra@bigpond.net.au>

	* configure: Regenerate.

2002-05-07  Kazu Hirata  <kazu@cs.umass.edu>

	* config/tc-m68k.c: Fix formatting.

2002-05-07  Federico G. Schwindt <fgsch@olimpo.com.br>

	* Makefile.am: Honour DESTDIR.
	* Makefile.in: Regenerate.

2002-05-06  Kazu Hirata  <kazu@cs.umass.edu>

	* config/tc-ia64.c: Fix formatting.
	* config/tc-ia64.h: Likewise.

2002-05-04  Kazu Hirata  <kazu@cs.umass.edu>

	* config/tc-mips.c: Fix formatting.
	* config/tc-s390.c: Likewise.
	* config/tc-s390.h: Likewise.

2002-05-03  Alexandre Oliva  <aoliva@redhat.com>

	* config/tc-s390.c (md_gather_operands): Emit dwarf2 line-number
	information for instructions.

2002-05-02  Kazu Hirata  <kazu@cs.umass.edu>

	* as.h: Fix formatting.
	* cgen.c: Likewise.
	* cgen.h: Likewise.
	* dwarf2dbg.c: Likewise.
	* frags.h: Likewise.
	* gasp.c: Likewise.
	* macro.c: Likewise.
	* read.c: Likewise.
	* stabs.c: Likewise.
	* symbols.c: Likewise.

2002-05-02  Alan Modra  <amodra@bigpond.net.au>

	* app.c (mri_pseudo): Only declare for TC_M68K.

	* config/tc-ppc.c (mapping): Map sectoff to BFD_RELOC_16_BASEREL.
	(ppc_elf_validate_fix): Replace BFD_RELOC_32_BASEREL with
	BFD_RELOC_16_BASEREL.
	(md_assemble): Likewise.
	(md_apply_fix3): Likewise.

2002-05-02  Nick Clifton  <nickc@cambridge.redhat.com>

	* config/tc-arm.c (thumb_add_sub): Do not convert a subtract of
	zero into an add of zero - it is not the same.

2002-05-01  Arati Dikey <aratid@kpit.com>

	* tc-sh.c (get_specific): Generate warning if the same
	destination register is used in parallel instructions.

2002-05-01  Andrew Macleod  <amacleod@cygnus.com>

	* config/tc-i386.c (extra_symbol_chars): Add '[' to the list.

2002-05-01  Alan Modra  <amodra@bigpond.net.au>

	* write.c (cvt_frag_to_fill): Set fr_offset to zero on .org
	backwards to prevent cascading errors.

2002-04-30  Mark Mitchell  <mark@codesourcery.com>

	* configure.in: Add support for powerpc-*-windiss.
	* configure: Regenerated.

2002-04-28  Alan Modra  <amodra@bigpond.net.au>

	* config/tc-s390.c (md_parse_option): Formatting.

	* config/tc-i386.c: Formatting fixes, add missing space in error
	message.

2002-04-24  Christian Groessler <chris@groessler.org>

	* config/tc-z8k.c (build_bytes): Add support for new cases:
	CLASS_IGNORE and ARG_NIM4.
	(md_assemble): Prevent destruction of input_line_pointer if
	get_operands returns failure.

2002-04-24  Chris G. Demetriou  <cgd@broadcom.com>

	* config/tc-mips.c (macro_build): Do _not_ allow MIPS-3D
	instructions to be generated by macros.

2002-04-24  Andreas Schwab  <schwab@suse.de>

	* config/tc-i386.c (output_jump, output_disp)
	(md_estimate_size_before_relax): Don't set fx_pcrel_adjust any
	more.
	(md_apply_fix3): Remember addend value for rela relocations.
	(tc_gen_reloc): Correctly compute pc-relative relocation addend.

2002-04-22  Chris Demetriou  <cgd@broadcom.com>

	* config/tc-mips.c (macro_build): Add close-parenthesis missing
	from previous change.

2002-04-22  Eric Christopher  <echristo@redhat.com>

	* config/tc-mips.c (macro_build): Add warning if macro instructions
	are expanded into a branch delay slot.

2002-04-17  Geoffrey Keating  <geoffk@redhat.com>

	* dwarf2dbg.c (dwarf2_gen_line_info): Do emit duplicate line
	numbers, gdb relies on them to detect the start of the prologue.

2002-04-17  Martin Schwidefsky  <schwidefsky@de.ibm.com>

	* config/tc-s390.c (tc_s390_fix_adjustable): Prevent adjustments to
	symbols in merge sections.

2002-04-16  Alan Modra  <amodra@bigpond.net.au>

	* as.c (main): Don't reference _bfd_chunksize.

2002-04-15  Tom Rix  <trix@redhat.com>

	* config/tc-d10v.c (d10v_fix_adjustable): Prevent adjustments to
	symbols in merge sections.

2002-04-11  Richard Sandiford  <rsandifo@redhat.com>

	* doc/invoke.texi (TC_LARGEST_EXPONENT_IS_NORMAL): Document.
	* config/atof-ieee.c (TC_LARGEST_EXPONENT_IS_NORMAL): Add an
	argument for the precision.
	(gen_to_words): Update accordingly.

2002-04-10  Alan Modra  <amodra@bigpond.net.au>

	* as.c (parse_args <OPTION_VERSION>): Use VERSION is
	BFD_VERSION_STRING unavailable.
	* config/tc-i386.c (INLINE): Define (for non-BFD assembler).

2002-04-09  J"orn Rennecke <joern.rennecke@superh.com>

	* config/tc-sh.h (TC_FIX_ADJUSTABLE): Disable adjusting if
	symbol_used_in_reloc_p is true.

	* config/tc-sh.c (md_apply_fix3): Don't zero relocations on big
	endian hosts.

2002-04-04  Alan Modra  <amodra@bigpond.net.au>

	* dep-in.sed: Cope with absolute paths.
	* Makefile.am (dep.sed): Subst TOPDIR.
	Run "make dep-am".
	* Makefile.in: Regenerate.

2002-04-04  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* config/tc-mips.c (mips16_macro_build): Cast type mismatch.
	(mips_ip): Remove unused variable.
	(md_apply_fix3): Cast signed/unsignes mismatches. Replace
	unsigned char with bfd_byte.
	(s_file): Remove unused variable.
	(s_mips_ent): Likewise.

2002-04-03  Tom Rix  <trix@redhat.com>

	* config/tc-d10v.c (d10v_insert_operand): Fix warning in as_bad_where.
	(build_insn): Same.
	(find_opcode): Fix warning in as_warn.
	* config/tc-d10v.h: Update Copyright.

2002-04-03  Alan Matsuoka <alanm@redhat.com>
	    Tom Rix  <trix@redhat.com>

	From Jeff Knaggs <jknaggs@redhat.com>
	* config/tc-d10v.c (check_resource_conflict): New function to
	check for resource conflicts.

	From Jason Eckhardt  <jle@redhat.com>
	* config/tc-d10v.c (build_insn): Check for unresolved imm4 or
	imm3 fields.
	* config/tc-d10v.c (find_opcode): Emit a warning if one of the
	reserved control registers is used.
	* config/tc-d10v.c (build_insn): Check for unresolved imm4 or
	imm3 fields.

	From 2001-03-28  Diego Novillo  <dnovillo@redhat.com>
	* tc-d10v.c (parallel_ok): Prevent packing only if the first
	instruction cannot be packed.

	From 2001-03-30  Diego Novillo  <dnovillo@redhat.com>
	* gas/config/tc-d10v.c (check_resource_conflict): Only check
	write-write conflicts.
	(md_assemble): Reformat introductory comment.
	* opcodes/d10v-opc.c (d10v_opcodes): `btsti' does not modify its
	arguments.

2002-04-03  Alan Modra  <amodra@bigpond.net.au>

	* symbols.c (resolve_symbol_value <O_uminus, O_bit_not,
	O_logical_not>): Derive final_seg from add_symbol.
	<O_multiply..O_logical_or>: More final_seg twiddles.

2002-04-01  Jessica Han  <jessica@cup.hp.com>

	* config/tc-ia64.c (ia64_cons_fix_new): Handle 8 byte iplt reloc
	in 32-bit mode.

2002-03-27  Andreas Schwab  <schwab@suse.de>

	* config/tc-i386.c (output_jump): Set fx_pcrel_adjust to size of
	field for pc-relative fixups.
	(output_disp): Likewise.
	(md_estimate_size_before_relax): Likewise.
	(tc_gen_reloc): Subtract fx_pcrel_adjust instead of fx_size for
	pc-relative fixups in 64bit mode.

2002-03-22  Alan Modra  <amodra@bigpond.net.au>

	* config/te-aix5.h: Typo fix.

2002-03-21  Alan Modra  <amodra@bigpond.net.au>

	* Makefile.am: Run "make dep-am".
	* Makefile.in: Regenerate.
	* doc/Makefile.in: Regenerate.

2002-03-20  Albert Chin-A-Young  <china@thewrittenword.com>

	* config/tc-arm.c (vfp_dp_reg_required_here): Fix typo
	(vfp_sp_reg_pos -> vfp_dp_reg_pos).

2002-03-18  Alexandre Oliva  <aoliva@redhat.com>

	* config/tc-mips.c (md_estimate_size_before_relax): Do not modify
	the EXTENDED bit here; report the estimate according to the
	current size.

2002-03-18  Tom Rix  <trix@redhat.com>

	* configure.in: Add AIX 5 support.
	* config/tc-ppc.c (ppc_target_format): Add AIX 5 64 bit target.
	* config/te-aix5.h: New file. AIX 5 support.
	* configure: Regenerate.

2002-03-18  Nick Clifton  <nickc@cambridge.redhat.com>

	* po/fr.po: Updated version.

2002-03-16  Andreas Jaeger  <aj@suse.de>

	* doc/c-mips.texi (Machine Dependencies): Add new node.

2002-03-15  Chris G. Demetriou  <cgd@broadcom.com>

	* config/tc-mips.c (mips_set_options): New "ase_mips3d" member.
	(mips_opts): Initialize "ase_mips3d" member.
	(file_ase_mips3d): New variable.
	(CPU_HAS_MIPS3D): New macro.
	(md_begin): Initialize mips_opts.ase_mips3d and file_ase_mips3d
	based on command line options and configuration defaults.
	(macro_build, mips_ip): Accept MIPS-3D instructions if
	mips_opts.ase_mips3d is set.
	(OPTION_MIPS3D, OPTION_NO_MIPS3D, md_longopts, md_parse_option):
	Add support for "-mips3d" and "-no-mips3d" options.
	(OPTION_ELF_BASE): Move to accomodate new options.
	(s_mipsset): Support ".set mips3d" and ".set nomips3d".
	(mips_elf_final_processing): Add a comment indicating that a
	MIPS-3D ASE ELF header flag should be set, when one exists.
	* doc/as.texinfo: Document -mips3d and -no-mips3d options.
	* doc/c-mips.texi: Likewise, and document ".set mips3d" and ".set
	nomips3d" directives.

2002-03-14  Hans-Peter Nilsson  <hp@bitrange.com>

	* config/tc-mmix.c (md_estimate_size_before_relax): Don't consider
	a weak symbol in same section to be within reach.

2002-03-13  Nick Clifton  <nickc@cambridge.redhat.com>

	* po/fr.po: Updated version.

2002-03-12  Andreas Schwab  <schwab@suse.de>

	* config/tc-ia64.c (fixup_unw_records): Clear region when seeing a
	body record so that an error is given for misplaced .save
	pseudo-ops.

2002-03-09  Alan Modra  <amodra@bigpond.net.au>

	* config/tc-i386.h (REX_OPCODE): Define.
	(REX_MODE64, REX_EXTX, REX_EXTY, REX_EXTZ): Define.
	(rex_byte): typedef to int.
	* config/tc-i386.c: Group prototypes and vars together.
	Formatting fixes.  Remove occurrences of "register" keyword.
	(true): Delete.
	(false): Delete.
	(mode_from_disp_size): Add INLINE keyword to prototype.
	(fits_in_signed_byte): Likewise.
	(fits_in_unsigned_byte): Likewise.
	(fits_in_unsigned_word): Likewise.
	(fits_in_signed_word): Likewise.
	(fits_in_unsigned_long): Likewise.
	(fits_in_signed_long): Likewise.
	(type_names): Constify.
	(intel_float_operand): Constify param.
	(add_prefix): Use REX_OPCODE.
	(md_assemble): Likewise.  Modify for changed rex_byte.
	(parse_insn): Split out of md_assemble.
	(parse_operands): Likewise.
	(swap_operands): Likewise.
	(optimize_imm): Likewise.
	(optimize_disp): Likewise.
	(match_template): Likewise.
	(check_string): Likewise.
	(process_suffix): Likewise.
	(check_byte_reg): Likewise.
	(check_long_reg): Likewise.
	(check_qword_reg): Likewise.
	(check_word_reg): Likewise.
	(finalize_imm): Likewise.
	(process_operands): Likewise.
	(build_modrm_byte): Likewise.
	(output_insn): Likewise.
	(output_branch): Likewise.
	(output_jump): Likewise.
	(output_interseg_jump): Likewise.
	(output_disp): Likewise.
	(output_imm): Likewise.

2002-03-07  Daniel Jacobowitz  <drow@mvista.com>

	* doc/as.texinfo: Wrap @menu in @ifnottex, not @ifinfo.

2002-03-06  Alan Modra  <amodra@bigpond.net.au>

	* config/tc-i386.c (tc_gen_reloc): Don't attempt to handle 8 byte
	relocs except when BFD64.

	* write.c (number_to_chars_bigendian): Don't abort when N is
	larger than sizeof (VAL).
	(number_to_chars_littleendian): Likewise.

2002-03-05  John David Anglin  <dave@hiauly1.hia.nrc.ca>

	* config/tc-hppa.c (md_apply_fix3): Add cast.
	(hppa_fix_adjustable): Adjust list of selectors using e_lrsel and
	e_rrsel.

2002-03-05  Paul Koning  <pkoning@equallogic.com>

	* tc-pdp11.c: Use VAX float format support for PDP-11 target.
	(parse_ac5): New function for parsing float regs in float operand.
	(parse_expression): Remove attempt to make literals be octal.
	(parse_op_no_deferred): Support float literals.
	(parse_op): Reject attempts to refer to float regs.
	(parse_fop): New function, like parse_op but for float operand.
	(md_assemble): Add cases to parse float operands.  Also fix
	IMM3, IMM6, IMM8 cases to pick up the operand from the right spot.

2002-03-04  H.J. Lu <hjl@gnu.org>

	* config/obj-elf.c (special_section): Add .init_array,
	.fini_array and .preinit_array.

	* config/tc-ia64.h (ELF_TC_SPECIAL_SECTIONS): Remove
	.init_array and .fini_array.

2002-03-01  Jakub Jelinek  <jakub@redhat.com>

	* config/obj-elf.c (elf_copy_symbol_attributes): Don't copy
	visibility.
	(obj_frob_symbol): Copy visibility.

2002-02-28  Jakub Jelinek  <jakub@redhat.com>

	* config/tc-alpha.c (s_alpha_text): Use obj_elf_text for OBJ_ELF, not
	s_text.
	(s_alpha_data): Use obj_elf_data for OBJ_ELF, not s_data.

2002-02-27  Nick Clifton  <nickc@cambridge.redhat.com>

	* po/es.po: Updated.

2002-02-26  Chris Demetriou  <cgd@broadcom.com>

	* config/tc-mips.c (mips_need_elf_addend_fixup): For embedded-PIC
	only, undo the changes made on 2001-06-08, with the
	effect being that common or extern symbols are
	adjusted for embedded-PIC, but weak symbols are not.
	(md_estimate_size_before_relax: Likewise, with the effect
	that extern symbols are treated the same as weak symbols
	only if not embedded-PIC.
	(mips_fix_adjustable) Likewise, with the effect that
	weak or extern symbols are not adjusted for embedded-PIC.
	(md_apply_fix3): Tweak so that the case where value is zero
	is handled more correctly for embedded-PIC code.

2002-02-26  Nick Clifton  <nickc@cambridge.redhat.com>

	* doc/as.texinfo (Overview): Add missing @ifset IA64

	* configure.in (LINGUAS): Add es.po.
	* configure: Regenerate.
	* po/es.po: New file.

2002-02-25  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* config/tc-mips.c (set_at): Fix handling of 64bit register loads.
	(macro): Likewise. Fix la/dla address expansions for EMBEDDED_PIC
	and NO_PIC cases. Code cleanup.
	(macro2): Fix handling of 64bit register loads.

2002-02-25  David Mosberger  <davidm@hpl.hp.com>

	* doc/as.texinfo: Add entry for IA64.
	* doc/c-ia64.texi: New file.

2002-02-25  Alan Modra  <amodra@bigpond.net.au>

	* config/tc-hppa.c: Update copyright date.

	* doc/c-ppc.texi (PowerPC-Opts): Add -mpower4, -maltivec and -m7400
	Remove references to chip manufacturers.
	* config/tc-ppc.c (md_parse_option): Handle -mpower4 option.
	Correct comments.
	(md_show_usage): Remove references to chip manufacturers.  Mention
	-mpower4.
	(md_begin): Test power4 opcode flag bits.

2002-02-22  David Mosberger  <davidm@hpl.hp.com>

	* config/tc-ia64.c (dot_restore): Issue error message of epilogue
	count exceeds prologue count.
	(md_show_usage): Describe -mconstant-gp and -mauto-pic.
	(unwind.label_prologue_count): New member.

	Based on a patch by Hans Boehm <hboehm@hpl.hp.com>:

	(get_saved_prologue_count): New function.
	(save_prologue_count): New function.
	(free_saved_prologue_count): New function.
	(dot_label_state): Record state label by calling save_prologue_count().
	(dot_copy_state): Restore prologue count by calling
	get_saved_prologue_count().
	(generate_unwind_image): Free up list of saved prologue
	counts by calling free_saved_prologue_counts().

2002-02-22  Nick Clifton  <nickc@cambridge.redhat.com>

	* config/tc-tic54x.c: Add missing prototypes and remove ANSI style
	function declarations.

2002-02-21  Nick Clifton  <nickc@cambridge.redhat.com>

	* NEWS: Note that GASP is now deprecated.
	* Makefile.am: Do not build gasp-new by default.
	* Makefile.in: Regenerate.
	* doc/Makefile.am: Do not install gasp.info.
	* doc/Makefile.in: Regenerate.
	* gas/gasp.texi: Note that gasp is now deprecated.

2002-02-20  Nick Clifton  <nickc@cambridge.redhat.com>

	* NEWS: Mark 2.12 branch.

2002-02-19  Tom Tromey  <tromey@redhat.com>

	* config/tc-xstormy16.h (DWARF2_LINE_MIN_INSN_LENGTH): Define.

2002-02-19  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* config/tc-mips.c (md_parse_option): Complain about invalid -mabi
	option input.

2002-02-19  Martin Schwidefsky  <schwidefsky@de.ibm.com>

	* config/tc-s390.c (md_parse_option): Add switches -m31 and -m64.
	Make bit size independent of architecture switch.
	(md_begin): Add warning for -m64 with -Aesa.
	(s390_md_end): Use renamed architecture defines.

2002-02-18  Daniel Jacobowitz  <drow@mvista.com>

	* config/obj-coff.h: Check !target_big_endian, not shl, for coff-sh.

2002-02-16  Nick Clifton  <nickc@cambridge.redhat.com>

	* doc/as.texinfo (Machine Dependencies): Fix typo: MMIX used
	instead of CRIS.

2002-02-15  Chris Demetriou  <cgd@broadcom.com>

	* config/tc-mips.c (md_estimate_size_before_relax): Really
	make sure we treat weak like extern only for ELF.  (Fixes
	patch from 2001-07-25.)

2002-02-15  Ben Elliston  <bje@redhat.com>

	* doc/as.texinfo: Add duplicate directory entry so that "info gas"
	works as expected.

2002-02-15  Hans-Peter Nilsson  <hp@bitrange.com>

	* NEWS: Mention support for MMIX.

2002-02-13  Chris Demetriou  <cgd@broadcom.com>

	* config/tc-mips.c (mips_need_elf_addend_fixup): Restructure into
	a sequence of indpendent 'if' statements for easier debugging
	and future modification.

2002-02-13  Matt Fredette  <fredette@netbsd.org>

	* config/tc-m68k.c (md_show_usage): No longer display a
	hard-coded "68020" for the default CPU, instead display the
	canonical name of the true, configured default CPU.
	(m68k_elf_final_processing): Mark objects for sub-68020
	CPUs with the new EF_M68000 flag.

2002-02-13  Andreas Schwab  <schwab@suse.de>

	* config/tc-i386.c (tc_i386_fix_adjustable): Don't adjust
	pc-relative relocations to merge sections in 64-bit mode.

2002-02-13  Ben Elliston  <bje@redhat.com>

	* NEWS: Document floating point number handling in gasp.
	* gasp.c: Include <assert.h> and "xregex.h".
	(is_flonum): New function.
	(chew_flownum): Likewise.
	(change_base): Consume flonums from the input, where possible.
	* doc/gasp.texi (Constants): Document floating point numbers.

2002-02-12  John David Anglin  <dave@hiauly1.hia.nrc.ca>

	* config/tc-hppa.c (hppa_fix_adjustable): Don't adjust final types
	that implicitly use LR and RR selectors.

2002-02-12  Alexandre Oliva  <aoliva@redhat.com>

	* config/tc-mn10300.c (other_registers): Added `epsw'.  Mark `pc'
	and `epsw' as available on AM33 and above only.
	(other_register_name): Add logic to handle machine type encoded in
	reg_number.

2002-02-11  Tom Rix  <trix@redhat.com>

	* config/tc-ppc.c (md_apply_fix3): Check for insert fop invalid for
	xcoff64.

2002-06-11  Alexandre Oliva  <aoliva@redhat.com>

	* config/tc-sparc.c (U0x80000000, U0xffffffff): New constants.
	Use all over.

2002-02-11  Jan Hubicka  <jh@suse.cz>

	* i386.c (md_assemble): Support 32bit address prefix.
	(i386_displacement): Likewise.
	(i386_index_check): Accept 32bit addressing in 64bit mode.

2002-02-11  Alexandre Oliva  <aoliva@redhat.com>

	* config/tc-sh.c (dot): Removed unused function.

2002-02-11  Alan Modra  <amodra@bigpond.net.au>

	* Makefile.am: "make dep-am".
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* config.in: Regenerate.
	* configure: Regenerate.
	* doc/Makefile.in: Regenerate.

2002-02-10  Richard Henderson  <rth@redhat.com>

	* doc/c-alpha.texi: New file.
	* doc/Makefile.am (CPU_DOCS): Add it.
	* doc/all.texi, doc/as.texinfo: Add hooks for Alpha.

2002-02-09  Richard Henderson  <rth@redhat.com>

	* config/tc-alpha.c (O_samegp): New.
	(USER_RELOC_P): Include it.
	(alpha_reloc_op_tag, debug_exp, find_macro_match): Add it.
	(md_apply_fix3): Handle BFD_RELOC_ALPHA_BRSGP.
	(alpha_force_relocation, alpha_fix_adjustable): Likewise.
	(alpha_validate_fix): New.
	* config/tc-alpha.h (TC_VALIDATE_FIX): New.

2002-02-09  Hans-Peter Nilsson  <hp@axis.com>

	* doc/c-cris.texi: New.
	* doc/all.texi: @set CRIS.
	* doc/as.texinfo: Ditto.  Add CRIS gas manpage option overview.
	Include c-cris.texi.
	* doc/Makefile.am (CPU_DOCS): Add c-cris.texi
	* doc/Makefile.in: Regenerate.

2002-02-08  Chris Demetriou  <cgd@broadcom.com>

	* config/tc-mips.c (IS_SEXT_32BIT_NUM): New macro to
	determine if a number is a sign-extended 32-bit number.
	(load_register): Use IS_SEXT_32BIT_NUM.
	(macro): Check if load/store macro handling is using a
	constant 32-bit address on 64-bit address systems, and if
	so optimize the generation of that address.

2002-02-08  Richard Henderson  <rth@redhat.com>

	* config/tc-alpha.c (alpha_force_relocation): Don't assert that
	we've eliminated all foreign relocation types yet.
	(alpha_fix_adjustable): Likewise.

2002-02-08  Alexandre Oliva  <aoliva@redhat.com>

	Contribute sh64-elf.
	2002-02-08  Alexandre Oliva  <aoliva@redhat.com>
		    Stephen Clarke <Stephen.Clarke@st.com>
	* doc/c-sh64.texi: Fix citation of SH64 architecture manual.
	2002-01-31  Alexandre Oliva  <aoliva@redhat.com>
	* config/tc-sh.c (md_relax_table): Added default sizes for
	non-PC-relative UNDEF_MOVI, and relaxation sequences for
	MOVI_16, MOVI_32 and MOVI_48.
	* config/tc-sh64.c (shmedia_md_apply_fix3): Fix warning.
	(shmedia_md_convert_frag): Handle non-PC-relative UNDEF_MOVI
	and MOVI_16.
	(shmedia_md_estimate_size_before_relax): Remove redundant
	blocks.  Set fragP->fr_var even if relaxation type unchanged.
	Retain UNDEF_MOVI until expression decays to number.
	2002-01-24  Alexandre Oliva  <aoliva@redhat.com>
	* config/tc-sh64.c (shmedia_init_reloc): Handle new SHmedia PIC
	relocation types.  Take fixP->fx_addnumber into account too.
	(shmedia_md_apply_fix): Likewise.
	(shmedia_md_convert_frag): Likewise.
	(shmedia_build_Mytes): Likewise.
	(sh64_consume_datalabel): Complain about nested datalabel.
	Support PIC relocs.  Call sh_parse_name.
	* config/tc-sh64.h (TC_RELOC_RTSYM_LOC_FIXUP): Extend definition
	in tc-sh.h to SHmedia reloc types.
	* config/tc-sh.c (SH64PCRELPLT, MOVI_PLT, MOVI_GOTOFF,
	MOVI_GOTPC): New relaxation constants.
	(md_relax_table): Introduce relaxation directives for PIC-related
	constants.
	(sh_PIC_related_p): Handle datalabel.
	(sh_check_fixup): Choose SH5 PIC relocations.
	(sh_cons_fix_new): Added BDF_RELOC_64.
	(md_apply_fix3, sh_parse_name): Handle GOTPLT.
	2002-01-18  Alexandre Oliva  <aoliva@redhat.com>
	* config/tc-sh64.c (sh64_max_mem_for_rs_align_code): If the
	current ISA is SHmedia, get 7 bytes.
	2001-11-28  Nick Clifton  <nickc@cambridge.redhat.com>
	* config/tc-sh.c (md_apply_fix3): Treat shmedia_md_apply_fix3 as a
	void function.
	* config/tc-sh64.c (shmedia_apply_fix): Rename to
	shmedia_apply_fix3 and make void.
	2001-05-17  Alexandre Oliva  <aoliva@redhat.com>
	* config/tc-sh64.c (s_sh64_abi): Remove unused arguments passed to
	as_bad.
	2001-04-12  Alexandre Oliva  <aoliva@redhat.com>
	* config/tc-sh64.h (md_parse_name): Take &c as argument.
	2001-03-14  DJ Delorie	<dj@redhat.com>
	* doc/Makefile.am (CPU_DOCS): Added c-sh64.texi
	* doc/Makefile.in(CPU_DOCS): Ditto.
	* doc/c-sh64.texi: New file.
	* doc/as.texinfo: Add SH64 support.
	2001-03-13  DJ Delorie	<dj@redhat.com>
	* config/tc-sh64.c (shmedia_get_operands): Rename A_RESV_Fx to
	A_REUSE_PREV so that its purpose is more obvious.
	(shmedia_build_Mytes): Ditto.
	2001-03-07  DJ Delorie	<dj@redhat.com>
	* config/tc-sh64.c (sh64_vtable_entry): New, strip datalabels
	before processing.
	(sh64_vtable_inherit): Ditto.
	(strip_datalabels): New, strip "datalabel" from given line.
	* config/tc-sh.c (md_pseudo_table): Add sh64-specific vtable
	pseudos.
	2001-03-06  Hans-Peter Nilsson	<hpn@cygnus.com>
	* config/tc-sh64.c (shmedia_md_assemble): Move dwarf2_emit_insn
	call ...
	(shmedia_build_Mytes): ... to here.
	2001-03-06  DJ Delorie	<dj@redhat.com>
	* config/tc-sh.c: Remove sh64-specific uaquad now that there
	is a generic one.
	2001-01-21  Hans-Peter Nilsson	<hpn@cygnus.com>
	* config/tc-sh64.h (DWARF2_LINE_MIN_INSN_LENGTH): Override.
	* config/tc-sh64.c (shmedia_md_assemble): Offset recorded insn
	address by one in call to dwarf2_emit_insn.
	2001-01-13  Hans-Peter Nilsson	<hpn@cygnus.com>
	Implement ".abi" pseudo and correct .cranges descriptors.  Correct
	alignment handling broken by imported changes.
	* config/tc-sh64.h (HANDLE_ALIGN): Override definition in tc-sh.h.
	(sh64_handle_align): Declare.
	(MAX_MEM_FOR_RS_ALIGN_CODE): Override definition in tc-sh.h.
	(sh64_max_mem_for_rs_align_code): Declare.
	(enum sh64_isa_values): Moved here from tc-sh64.c.
	(md_do_align): Define.
	(sh64_do_align): Declare.
	(struct sh64_tc_frag_data): New.
	(TC_FRAG_TYPE): Change to struct sh64_tc_frag_data.  Users
	changed.
	(TC_FRAG_INIT): Change to set new datatype.
	(struct sh64_segment_info_type): Rename member
	last_flushed_location to last_contents_mark.  All users changed.
	(md_elf_section_change_hook, TC_CONS_FIX_NEW): Do not define.
	(shmedia_elf_new_section, sh64_tc_cons_fix_new): Do not prototype.
	* config/tc-sh.c (md_pseudo_table): Add ".abi".
	(sh_elf_cons) [HAVE_SH64]: Call sh64_update_contents_mark instead
	of unsetting seen_insn.
	(md_assemble) [HAVE_SH64] <before new SHcompact sequence>: Also
	call sh64_update_contents_mark.
	(sh_handle_align): Remove HAVE_SH64-conditioned code.
	* config/tc-sh64.c (sh64_isa_mode): Correct type from boolean to
	enum sh64_isa_values.
	(sh64_set_contents_type): Drop segT parameter.	All callers changed.
	(emitting_crange): Boolean guard moved to file scope from function
	scope in sh64_set_contents_type.
	(s_sh64_abi): New.
	(sh64_update_contents_mark): New; most split out from
	sh64_flush_pending_output.
	(shmedia_md_end): Call sh64_update_contents_mark.  Set
	sh64_isa_mode to sh64_isa_sh5_guard unless sh64_isa_unspecified.
	(sh64_do_align): New function.
	(sh64_max_mem_for_rs_align_code): New function.
	(sh64_handle_align): Rename from shmedia_do_align.  Make
	non-static.  Add head comment.	Emit zero bytes for n bytes modulo
	four.  Change return-type to void.
	(shmedia_elf_new_section): Remove.
	(shmedia_md_assemble): Call sh64_update_contents_mark.
	(s_sh64_mode): Ditto.  Do not call md_flush_pending_output.  Make
	new frag.  Call sh64_update_contents_mark after making the new
	frag.
	(sh64_flush_pending_output): Just call sh64_update_contents_mark
	and sh_flush_pending_output.
	(sh64_flag_output): Also call md_flush_pending_output, but add
	condition on not emitting_crange.
	(sh64_tc_cons_fix_new): Remove.
	2001-01-12  Nick Clifton  <nickc@redhat.com>
	* config/tc-sh64.c (shmedia_do_align): Fix to work with new
	alignment handling scheme imported from sourceware.
	2001-01-12  Hans-Peter Nilsson	<hpn@cygnus.com>
	* config/tc-sh64.h (TARGET_FORMAT): Define.
	(sh64_target_format): Prototype.
	* config/tc-sh64.c (sh64_target_mach): New function.
	2001-01-07  Hans-Peter Nilsson	<hpn@cygnus.com>
	* config/tc-sh64.c (shmedia_md_end): When equating a symbol, use
	zero_address_frag instead of copying the frag of the symbol.
	(shmedia_frob_file_before_adjust): Ditto.
	(shmedia_md_apply_fix) <case BFD_RELOC_SH_IMM_MEDLOW16>: Cast mask
	to valueT to remove signedness.
	(shmedia_md_convert_frag): Add parameter final.  Rename parameter
	headers to output_bfd.	Do not evaluate symbols if final is false;
	do emit fixups.
	(shmedia_md_estimate_size_before_relax) <case C (MOVI_IMM_32,
	UNDEF_MOVI) et al>: If symbol cannot be modified to be PC-relative
	to the current frag, call shmedia_md_convert_frag to emit fixups
	and make frag_wane neutralize the frag.  Update comments.
	* config/tc-sh.c (md_convert_frag): Change caller of
	shmedia_md_convert_frag.
	2001-01-06  Hans-Peter Nilsson	<hpn@cygnus.com>
	* config/tc-sh64.h: Tweak comments and correct formatting.
	* config/tc-sh64.c: Ditto.
	(shmedia_md_convert_frag) <PT/PTA/PTB 32, 48 and 64 bit
	expansion, MOVI pcrel expansion>: Fix thinko calculating offset
	for the no-relocation case.
	(shmedia_check_limits): Fix range check being off-by-one for PTA.
	* config/tc-sh.c: Ditto.  Add proper comments to #ifdef/#ifndef
	wrappers.
	(SH64PCREL16_F): Increment for proper max-PTA handling.  Update
	comment.
	(SH64PCREL16_M, MOVI_16_M): Correct range thinko.
	(SH64PCREL48_M, MOVI_48_M): Similar; don't count in length of
	expansion.
	(SH64PCREL32_M, MOVI_32_M): Ditto; handle overflowing expression.
	Correct comment.
	2001-01-05  Hans-Peter Nilsson	<hpn@cygnus.com>
	* config/tc-sh64.c (shmedia_md_apply_fix) <second switch, case
	BFD_RELOC_SH_PT_16>: Set lowest bit in field to be relocated to 1.
	(shmedia_md_convert_frag) <case C (SH64PCREL16_32, SH64PCREL16) et
	al>: Set lowest bit of field to relocate to 1 and rest to empty,
	if reloc is emitted.
	2000-12-31  Hans-Peter Nilsson	<hpn@cygnus.com>
	New options plus bugfixes.
	* config/tc-sh.c (md_longopts): New options "-no-expand" and
	"-expand-pt32".
	(md_parse_option): Handle new options.
	(md_show_usage): Add blurb for new options.
	* config/tc-sh64.c (SHMEDIA_BFD_RELOC_PT): New macro.
	(sh64_expand, sh64_pt32): New variables.
	(shmedia_init_reloc): Handle BFD_RELOC_SH_PT_16.
	(shmedia_md_apply_fix): Hold original fixP->fx_r_type in
	orig_fx_r_type.  Change SHMEDIA_BFD_RELOC_PT into
	BFD_RELOC_SH_PT_16.  Handle BFD_RELOC_SH_PT_16 as pc-relative.
	<resolved previously-pc-relative relocs>: Handle
	SHMEDIA_BFD_RELOC_PT and BFD_RELOC_SH_PT_16.
	(shmedia_md_convert_frag) <case C (SH64PCREL16PT_64, SH64PCREL16),
	case C (SH64PCREL16PT_32, SH64PCREL16)>: Modify to PTB if operand
	points to SHcompact code.
	<case C (SH64PCREL16_32, SH64PCREL16), case C (SH64PCREL16_64,
	SH64PCREL16)>: Check that ISA of what operand points at and
	PTA/PTB matches, or emit error.
	(shmedia_check_limits): Handle BFD_RELOC_SH_PT_16 and
	SHMEDIA_BFD_RELOC_PT.
	(shmedia_immediate_op): If pcrel, emit fixup also for constant
	operand.
	(shmedia_build_Mytes) <case A_IMMS16>: Also check sh64_expand in
	condition for MOVI expansion.
	<case A_PCIMMS16BY4>: Handle expansion to 32 bits only, if
	sh64_pt32.  Emit only a BFD_RELOC_SH_PT_16 fixup if not
	sh64_expand.
	<case A_PCIMMS16BY4_PT>: Likewise, but emit a SHMEDIA_BFD_RELOC_PT
	fixup.
	(sh64_target_format): Error-check setting of sh64_pt32 and
	sh64_expand.  Fix typo in check for sh64_shcompact_const_crange.
	(shmedia_md_pcrel_from_section): Handle BFD_RELOC_SH_PT_16 and
	SHMEDIA_BFD_RELOC_PT as coming from SHmedia code.
	2000-12-31  Hans-Peter Nilsson	<hpn@cygnus.com>
	* config/tc-sh64.c: Improve comments.
	(shmedia_md_convert_frag): Remove inactive is_pt_variant code.	Do
	not say the linker will check correctness of PTA/PTB expansion.
	(shmedia_md_end): Make non-static.
	* config/tc-sh64.h (md_end): Define to shmedia_md_end.	Add
	prototype.
	* config/tc-sh.c (sh_finalize): Remove.
	* config/tc-sh.h (md_end): Do not define.
	Remove prototype for sh_finalize.
	2000-12-30  Hans-Peter Nilsson	<hpn@cygnus.com>
	* config/tc-sh64.c (shmedia_frob_section_type): Use a struct
	sh64_section_data container when storing section type in tdata
	field in elf_section_data.
	* config/tc-sh.c (sh_elf_final_processing): Change from EF_SH64 to
	EF_SH5.
	* Makefile.am: Update dependencies.
	* Makefile.in: Regenerate.
	2000-12-22  Hans-Peter Nilsson	<hpn@cygnus.com>
	* config/tc-sh64.c (shmedia_md_assemble): Don't protect
	dwarf2_emit_insn call with test on debug_type.
	2000-12-19  Hans-Peter Nilsson	<hpn@cygnus.com>
	* config/tc-sh64.c (sh64_set_contents_type): Make contents-type
	CRT_SH5_ISA32 sticky for 64-bit.
	2000-12-18  Hans-Peter Nilsson	<hpn@cygnus.com>
	Generate .crange sections when switching ISA mode or emitting
	constants in same section as code.
	* config/tc-sh64.c: Reformat structure definitions.
	(sh64_end_of_assembly, sh64_mix, sh64_shcompact_const_crange): New
	variables.
	(sh64_set_contents_type): Rename from sh64_init_section.  Rewrite
	to emit a .cranges descriptor when contents type changes.  Only
	emit error if changing contents type and -no-mix is in effect.
	(sh64_emit_crange, sh64_flush_last_crange, sh64_flag_output,
	sh64_flush_pending_output, sh64_tc_cons_fix_new): New functions.
	(shmedia_md_end): Set sh64_end_of_assembly.  Pass
	sh64_flush_last_crange over sections.
	When checking main symbol of datalabel symbol, check for
	STO_SH5_ISA32, not ISA type of section in definition.
	(shmedia_frob_file_before_adjust): Check main symbol for
	STO_SH5_ISA32; don't check ISA type of section in definition.
	(shmedia_frob_section_type): Adjust for .cranges; set section flag
	to SHF_SH5_ISA32_MIXED or SHF_SH5_ISA32 according to whether
	.cranges entries have been output.
	(shmedia_elf_new_section): Just call md_flush_pending_output.
	(shmedia_md_assemble): Do not emit a BFD_RELOC_SH_SHMEDIA_CODE
	fix.  Do not set tc_segment_info_data.in_code for section.  Call
	sh64_set_contents_type for SHmedia code.
	(s_sh64_mode): Do not call sh64_init_section or set seen_insn to
	false.	Call md_flush_pending_output.
	(sh64_target_format): Check that -no-mix and
	-shcompact-const-crange are used in sane combination with other
	options.
	(shmedia_md_pcrel_from_section): Check type of fix for how to
	adjust pc-relative.
	(sh64_consume_datalabel): Check symbol for having STO_SH5_ISA32,
	not ISA type of section in definition.
	* config/tc-sh64.h (struct sh64_segment_info_type): Rewrite to
	hold contents-type state.
	(md_flush_pending_output): Redefine to sh64_flush_pending_output.
	(sh64_flush_pending_output): Declare.
	(TC_CONS_FIX_NEW): Define to sh64_tc_cons_fix_new.
	(sh64_tc_cons_fix_new): Declare.
	* config/tc-sh.c (sh_elf_cons) [HAVE_SH64]: Unset seen_insn and
	call sh64_flag_output.
	(md_assemble) [HAVE_SH64]: Do not emit BFD_RELOC_SH_CODE.  Just
	call sh64_set_contents_type to mark SHcompact code and set
	seen_insn.
	(md_longopts): New options "-no-mix" and
	"-shcompact-const-crange".
	(md_parse_option): Handle new options.
	(md_show_usage): Add blurb for new options.
	(md_number_to_chars) [HAVE_SH64]: Call sh64_flag_output.
	2000-12-15  Hans-Peter Nilsson	<hpn@cygnus.com>
	* config/tc-sh64.c: Delete investigated and obsolete fixme:s.
	(sh64_last_insn_frag): New.
	(shmedia_md_convert_frag): Use tc_frag_data field of incoming frag
	to get frag for insn opcode for generating fixups; do not assume it
	is the same frag.
	(shmedia_build_Mytes): Set sh64_last_insn_frag after growing frag
	for new insn.
	* config/tc-sh64.h (ELF_TC_SPECIAL_SECTIONS): Define for .cranges
	section.
	(TC_FRAG_TYPE): Define as fragS *.
	(TC_FRAG_INIT): Define to set tc_frag_data to sh64_last_insn_frag.
	(sh64_last_insn_frag): Declare.
	(sh64_consume_datalabel): Fix typo; check for seginfo != NULL,
	not == NULL before dereferencing.
	2000-12-12  Hans-Peter Nilsson	<hpn@cygnus.com>
	Get rid of BFD section flag and EF_SH64_ABI64.
	* config/tc-sh64.c (shmedia_frob_section_type): Use
	elf_section_data (sec)->tdata, not a specific BFD section flag, to
	communicate the section as containing SHmedia code.  Describe why.
	* config/tc-sh.c (sh_elf_final_processing): Tweak comment.  Set
	EF_SH64 regardless of ABI.
	* config/tc-sh64.c (shmedia_md_apply_fix): Decapitalize "invalid"
	in error message.  Handle resolved expressions for
	BFD_RELOC_SH_IMMS10, BFD_RELOC_SH_IMMS10BY2,
	BFD_RELOC_SH_IMMS10BY4 and BFD_RELOC_64.
	(shmedia_check_limits): Handle BFD_RELOC_64.
	(sh64_adjust_symtab): Do not decrement the GAS symbol value for
	a STO_SH5_ISA32 symbol, only the BFD value.
	2000-12-11  Ben Elliston  <bje@redhat.com>
	* config/tc-sh64.c: Call dwarf2_emit_insn, not the defunct
	dwarf2_generate_asm_lineno.
	2000-12-11  Hans-Peter Nilsson	<hpn@cygnus.com>
	Handle PC-relative MOVI expansions with assembler relaxation.
	Generate PC-relative relocs from 16-bit PC-relative expressions.
	* config/tc-sh64.c (SHMEDIA_MD_PCREL_FROM_FIX): Break out from...
	(shmedia_md_pcrel_from_section): ...here.
	(shmedia_md_apply_fix): Handle fixups for 16-bit operands that has
	turned completely resolved.  Adjust relocation type for 16-bit
	immediate operands that has turned PC-relative.  Adjust back for
	MD_PCREL_FROM_SECTION being applied twice.
	(shmedia_md_convert_frag): Always emit reloc for expression with
	global or weak symbol.	Handle relaxation result for PC-relative
	expressions.
	(shmedia_md_estimate_size_before_relax): An expression with a weak
	or global symbol can not be relaxed.  Break out tests for
	relaxable symbol into variable sym_relaxable.
	<cases C (MOVI_IMM_64, UNDEF_MOVI) and C (MOVI_IMM_32,
	UNDEF_MOVI)>: Break out any PC-relative expression and change
	relaxation type.
	(shmedia_build_Mytes): CSE &operands->operands[j] into variable
	opjp.
	<case A_IMMS16>: Fix typo for initial minor relaxation type of
	MOVI expansion.  If X_op_symbol of the immediate expression is
	set, make an expression symbol for the argument to frag_var.
	* config/tc-sh.c (MOVI_IMM_32_PCREL, MOVI_IMM_64_PCREL): New
	relaxations.
	(END): Adjust for new relaxations.
	(md_relax_table): Add entries for new relaxations.
	2000-12-07  Ben Elliston  <bje@redhat.com>
	* config/tc-sh64.c (shmedia_parse_reg): Initialize variable len.
	2000-12-07  Hans-Peter Nilsson	<hpn@cygnus.com>
	* config/tc-sh64.c (shmedia_md_convert_frag): Correct all MOVI and
	SHORI operand offsets in PT/PTA/PTB expansions.
	2000-12-05  Hans-Peter Nilsson	<hpn@cygnus.com>
	Implement DataLabel semantics.
	* config/tc-sh.c (sh_frob_file) [HAVE_SH64]: Call
	shmedia_frob_file_before_adjust.
	* config/tc-sh64.c [! OBJ_ELF]: Emit #error.
	(DATALABEL_SUFFIX): Define.
	(shmedia_md_end) <before adjusting STO_SH5_ISA32 symbols>: Walk
	symbol list to update "datalabel" symbols to their main symbol
	counterparts.
	(shmedia_frob_file_before_adjust): New.
	(sh64_adjust_symtab): For remaining datalabel symbols, set to
	undefined and set STT_DATALABEL.
	(sh64_frob_label): Initialize TC symbol field.
	(sh64_consume_datalabel): Actually implement semantics.  New
	parameter operandf, call it instead of expression.
	(sh64_exclude_symbol): New.
	* config/tc-sh64.h (md_parse_name): Pass on the function operand
	to sh64_consume_datalabel.
	(tc_symbol_new_hook): Define to tc_frob_symbol.
	(TC_SYMFIELD_TYPE): Define to symbolS *.
	(tc_frob_symbol): Define to call sh64_exclude_symbol.
	2000-12-01  Hans-Peter Nilsson	<hpn@cygnus.com>
	* config/tc-sh64.c (shmedia_init_reloc): Tweak comment for default
	case.
	(shmedia_md_assemble): Call dwarf2_generate_asm_lineno if
	generating dwarf2 debug information.
	2000-11-30  Hans-Peter Nilsson	<hpn@cygnus.com>
	* config/tc-sh64.c (sh64_target_format): Use elf64-sh64l and
	elf64-sh64 for the 64-bit ABI.
	* config/tc-sh.c (md_show_usage): Tweak usage output for -abi=*
	option.
	2000-11-29  Hans-Peter Nilsson	<hpn@cygnus.com>
	* config/tc-sh.c: Remove conditionalizing on HAVE_SH64 for
	case-insensitivity.
	2000-11-27  Hans-Peter Nilsson	<hpn@cygnus.com>
	* config/tc-sh64.c: Tweak comments, formatting and error messages.
	(enum sh64_abi_values): New type.
	(enum sh64_isa_values): New type.
	(sh64_isa_mode): Replace shmedia_mode.	All referers changed.
	(seen_shcompact_mode, seen_shmedia_mode): Delete.
	(sh64_abi): Replace shmedia_64.
	(shmedia_md_convert_frag) <C (MOVI_IMM_64, MOVI_64),
	C (MOVI_IMM_32, MOVI_32)>: Correct register number handling.
	(s_sh64_mode): Check validity for this target.
	(sh64_target_format): Initialize defaults for ISA and ABI.
	Fallback to old object format if no SH64 ISA or ABI has been
	specified.
	* config/tc-sh.c (md_parse_option): Check combinations for errors.
	(sh_elf_final_processing): Change to have EF_SH64_ABI64 for 64-bit
	ABI and EF_SH64 for 32-bit ABI, if SH64 options are specified.
	* config/tc-sh64.h: Fix typo in comment.
	2000-11-25  Hans-Peter Nilsson	<hpn@cygnus.com>
	* config/tc-sh64.c (shmedia_md_estimate_size_before_relax)
	<PT fixups for absolute values>: Size will be longest, not
	shortest.
	(shmedia_md_convert_frag): Disable PTB-warning machinery.  Correct
	all MOVI and SHORI operand offsets in PT/PTA/PTB expansions.
	* config/tc-sh.c (parse_reg) [HAVE_SH64]: Add local variables l0
	and l1 to hold lowercase of two first characters.  Change all
	remaining TO_LOWER to tolower.
	* config/tc-sh64.c (TO_LOWER): Delete.
	(shmedia_find_cooked_opcode): Use tolower, not TO_LOWER.
	(md_parse_name): Define.
	(sh64_consume_datalabel): Declare.
	(DOLLAR_DOT): Define.
	* config/tc-sh64.c (shmedia_parse_exp): New.
	(sh64_consume_datalabel): New; just ignoring datalabel semantics.
	(shmedia_parse_reg): Remove const from src
	parameter.
	(shmedia_get_operands): Ditto for args parameter and ptr variable.
	(shmedia_md_assemble): Ditto for op_end variable.
	(shmedia_get_operand): Ditto for ptr parameter and src variable.
	Use shmedia_parse_exp, not parse_exp.
	* config/tc-sh64.c (shmedia_parse_reg): Add shmedia_arg_type
	parameter.  All callers changed.
	(shmedia_get_operand): Add shmedia_arg_type parameter.	All
	callers changed.
	(shmedia_parse_reg): Put first two character in local variables.
	Use tolower, not TO_LOWER.  If no register is found and argtype
	indicates a control register, scan shmedia_creg_table
	case-insensitive.
	2000-11-24  Hans-Peter Nilsson	<hpn@cygnus.com>
	* Makefile.am (CPU_TYPES): Add sh64.
	(TARGET_CPU_CFILES): Add config/tc-sh64.c.
	(TARGET_CPU_HFILES): Add config/tc-sh64.h.
	Regenerate dependencies.
	* Makefile.in: Regenerate.
	* configure.in: Add support for sh64-*-elf*.
	* configure: Regenerate.
	* config/tc-sh64.h: New.
	* config/tc-sh64.c: New.
	* config/tc-sh.c (md_pseudo_table) [HAVE_SH64]: New pseudos
	.mode, .isa and .uaquad.
	[HAVE_SH64] (SH64PCREL16_32, SH64PCREL16_64, SH64PCREL16PT_32,
	SH64PCREL16PT_64, MOVI_IMM_32, MOVI_IMM_64): Define.
	[HAVE_SH64] (END): Define as 10.
	[HAVE_SH64] (UNDEF_SH64PCREL, SH64PCREL16, SH64PCREL32,
	SH64PCREL48, SH64PCREL64, UNDEF_MOVI, MOVI_16, MOVI_32, MOVI_48,
	MOVI_64): Define.
	[HAVE_SH64] (SH64PCREL16_F, SH64PCREL16_M, SH64PCREL16_LENGTH,
	SH64PCREL32_F, SH64PCREL32_M, SH64PCREL32_LENGTH, SH64PCREL48_F,
	SH64PCREL48_M, SH64PCREL48_LENGTH, SH64PCREL64_LENGTH,
	MOVI_16_LENGTH, MOVI_32_LENGTH, MOVI_48_LENGTH, MOVI_64_LENGTH):
	Define.
	(md_relax_table) [HAVE_SH64]: Provide relaxations for SHmedia.
	(md_begin) [HAVE_SH64]: Call shmedia_md_begin.
	(parse_reg) [HAVE_SH64]: Parse register names case-insensitive.
	(md_assemble) [HAVE_SH64]: Call shmedia_md_assemble if assembling
	SHmedia instructions.  Handle state-change after switching to
	SHcompact.
	(md_longopts) [HAVE_SH64]: New options --isa=* and --abi=*.
	(md_parse_option) [HAVE_SH64]: Parse new options.
	(md_show_usage) [HAVE_SH64]: Show usage of new options.
	(md_convert_frag) [HAVE_SH64] <default>: Call
	shmedia_md_convert_frag instead of abort.
	(sh_force_relocation) [HAVE_SH64]: Also force relocation for
	BFD_RELOC_SH_SHMEDIA_CODE.
	(sh_elf_final_processing) [HAVE_SH64]: Set flags identifying
	SHcompact or SHmedia code.
	(md_apply_fix) [HAVE_SH64] <default>: Return result from calling
	shmedia_md_apply_fix instead of abort.
	(md_estimate_size_before_relax) [HAVE_SH64] <default>: Return
	result from calling shmedia_md_estimate_size_before_relax instead
	of calling abort.
	(sh_do_align) [HAVE_SH64]: If shmedia_mode, let shmedia_do_align
	do the work.
	(tc_gen_reloc) [HAVE_SH64]: For unrecognized relocs, call
	shmedia_init_reloc and do nothing more if it returns non-zero.
	(sh_finalize) [HAVE_SH64]: Call shmedia_md_end.
	* po/POTFILES.in: Regenerate.
	* po/gas.pot: Regenerate.

2002-02-06  Alexandre Oliva  <aoliva@redhat.com>

	* config/tc-sh.c (parse_at): Install the correct version of
	2002-02-04's patch.

	* config/tc-sh.c (md_apply_fix3) <BFD_RELOC_32_PLT_PCREL>: Don't
	assume fixP->fx_subsy is non-NULL.

2002-02-04  Alexandre Oliva  <aoliva@redhat.com>

	* config/tc-sh.c (parse_at): Set arg type of @(expr,pc) to
	A_DISP_PC_ABS, and adjust it by -4.
	(get_specific): Accept A_DISP_PC_ABS where A_DISP_PC is
	expected.
	(build_Mytes): Mark PCRELIMM fix-ups as pc-relative only if
	the operand type is not A_DISP_PC_ABS.

2002-02-04  Hans-Peter Nilsson  <hp@bitrange.com>

	* config/tc-mmix.c (tc_gen_reloc): Don't try and take the value of
	common and weak symbols.  Handle common and weak symbols as
	undefined symbols with regards to GREG handling and merging.
	(mmix_frob_file): Ditto.

2002-02-02  Jason Thorpe  <thorpej@wasabisystems.com>

	* configure.in (hppa-*-netbsd*): New target.
	* configure: Regenerate.
	* config/tc-hppa.h: Also define WARN_COMMENTS if TE_NetBSD.

2002-02-02  Alan Modra  <amodra@bigpond.net.au>

	* config/tc-v850.c: Add missing prototypes amd use old-style
	function definitions.
	(AREA_ZDA, AREA_SDA, AREA_TDA): Delete.
	(sdata_section tdata_section, zdata_section, sbss_section,
	tbss_section, zbss_section, rosdata_section, rozdata_section,
	scommon_section, tcommon_section, zcommon_section,
	call_table_data_section, call_table_text_section): Delete.
	(v850_sdata, v850_tdata, v850_zdata, v850_sbss, v850_tbss,
	v850_zbss, v850_bss, v850_rosdata, v850_rozdata,
	v850_call_table_data, v850_call_table_text): Delete.
	(struct v850_seg_entry): New.
	(v850_seg_table): New.
	(SDATA_SECTION TDATA_SECTION, ZDATA_SECTION, SBSS_SECTION,
	TBSS_SECTION, ZBSS_SECTION, BSS_SECTION, ROSDATA_SECTION,
	ROZDATA_SECTION, SCOMMON_SECTION, TCOMMON_SECTION, ZCOMMON_SECTION,
	CALL_TABLE_DATA_SECTION, CALL_TABLE_TEXT_SECTION): Define.
	(do_v850_seg): New.
	(v850_seg): New.
	(v850_comm): Use do_v850_seg and v850_seg_table.  Simplify
	recording of alignment.
	(md_pseudo_table): Use v850_seg.
	(md_begin): Don't init .call_table_data and .call_table_text here.
	Set v850_seg_table bss entry.

2002-02-01  Hans-Peter Nilsson  <hp@bitrange.com>

	Support on-demand global register allocation by passing on
	base-plus-offset relocs to the linker.
	* config/tc-mmix.c: Tweak and fix typos in comments.
	(allocate_undefined_gregs_in_linker): New variable.
	(OPTION_LINKER_ALLOCATED_GREGS): New option macro.
	(md_longopts): Add --linker-allocated-gregs.
	(md_parse_option) <case 'x'>: Imply --linker-allocated-gregs.
	<case OPTION_LINKER_ALLOCATED_GREGS>: New.
	(md_show_usage): Update text for -x.  Add text for
	--linker-allocated-gregs.
	(tc_gen_reloc): Derive default value for addend from val and
	baddsy.  Use addsec and bfd_is_abs_section in more places.  Don't
	emit error for BFD_RELOC_MMIX_BASE_PLUS_OFFSET without suitable
	GREG if allocate_undefined_gregs_in_linker.
	* doc/as.texinfo (Overview) <Target MMIX options>: Add
	--linker-allocated-gregs.
	* doc/c-mmix.texi (MMIX-Opts): Add blurb about
	--linker-allocated-gregs.  Mention that it's implied by -x.
	(MMIX-Pseudos) <GREG>: Mention when and how a GREG can be omitted.
	(MMIX-mmixal): Clarify dated comparison and location of MMIXware.

	* config/tc-mmix.h (md_parse_name): Use ISUPPER, not isupper.

2002-02-01  Alan Modra  <amodra@bigpond.net.au>

	* Makefile.am: Run "make dep-am"
	* Makefile.in: Regenerate.

2002-01-31  Ivan Guzvinec  <ivang@opencores.org>

	* config/tc-or32.c: New file.
	* config/tc-or32.h: New file.
	* configure.in: Add support for or32 targets.
	* configure: Regenerate.
	* config/obj-coff.c: Add support for or32 targets.
	* config/obj-coff.h: Add support for or32 targets.
	* Makefile.am: Add support for or32 targets.
	* Makefile.in: Regenerate.
	* NEWS: Mention support for OpenRISC.
	* doc/Makefile.in: Regenerate.
	* po/POTFILES.in: Regenerate.
	* po/gas.pot: Regenerate.

2002-01-30  Richard Sandiford  <rsandifo@redhat.com>

	* config/tc-sh.c (parse_reg): Fix end-of-word check for is, ix, iy
	and mod.

2002-01-29  Chris Demetriou  <cgd@broadcom.com>

	* config/tc-mips.c (tc_gen_reloc): Arrange for
	BFD_RELOC_PCREL_HI16_S relocations to be output relative to
	their LO16 parts, even for ELF.

2002-01-29  Daniel Jacobowitz  <drow@mvista.com>

	* config/tc-i386.c: Protect definitions of true and false
	from redefinition.

2002-01-28  Jakub Jelinek  <jakub@redhat.com>

	* config/obj-elf.c (elf_frob_file_before_adjust): Remove symbols
	made because of .weak, if they are neither defined nor used in any
	way.

2002-01-27  Daniel Jacobowitz  <drow@mvista.com>

	* configure: Regenerated.

2002-01-26  Hans-Peter Nilsson  <hp@bitrange.com>

	* doc/Makefile.am (install): Depend on install-info.
	* doc/Makefile.in: Regenerate.

2002-01-26  Nick Clifton <nick@redhat.com>

	* po/fr.po: Updated version

2002-01-24  Kazu Hirata  <kazu@hxi.com>

	* config/tc-h8300.c (check_operand): Don't print a warning
	when a valid 24-bit address is given to a 16-bit address
	operand.

2002-01-24  Alexandre Oliva  <aoliva@redhat.com>

	* config/tc-sh.c (sh_elf_suffix): Removed.
	(sh_PIC_related_p, sh_check_fixup, sh_cons_fix_new,
	sh_end_of_match, sh_parse_name): New functions.
	(sh_elf_cons): Simplify.
	(parse_exp): Reject misplaced PIC operands.
	(md_undefined_symbol): Simplify.
	(sh_fix_adjustable): Let @GOTOFF be adjusted.
	(md_apply_fix3): Write @PLT and @GOTOFF addends in place.
	(tc_gen_reloc): Move fixp subsy absolute value into addnumber.
	Complain if subsy remains at the end.
	* config/tc-sh.h (sh_parse_name, sh_cons_fix_new): Declare.
	(md_parse_name, TC_CONS_FIX_NEW, O_PIC_reloc): Define.

2002-01-22  Alexandre Oliva  <aoliva@redhat.com>

	* config/tc-mn10300.c (xr_registers): Move `pc'...
	(other_registers): ... here.

2002-01-22  Alan Modra  <amodra@bigpond.net.au>

	* Makefile.am: Run "make dep-am".
	* Makefile.in: Regenerate.
	* gas/po/POTFILES.in: Regenerate.

2002-01-21  DJ Delorie  <dj@redhat.com>

	* config/obj-coff.c (obj_coff_init_stab_section): Make the
	stabstr_name allocation permanent, as it will be referenced from
	the section hash.

2002-01-21  Jason Thorpe  <thorpej@wasabisystems.com>

	* configure.in (ia64-*-netbsd*): New target.
	* configure: Regenerate.

2002-01-21  Hans-Peter Nilsson  <hp@bitrange.com>

	* doc/as.texinfo (Overview) <Target ARM options>: Add missing {}
	to @dots call.
	<Detailed description, ARM options>: Ditto.
	* doc/c-arm.texi (ARM Options): Ditto.

2002-01-18  Richard Earnshaw  <rearnsha@arm.com>

	* tc-arm.c (do_xsc_mia, do_xsc_mar, do_xsc_mra): Renamed from
	do_mia, do_mar and do_mra respectively.
	(do_mav_*): Renamed from do_c_*.
	(mav_reg_required_here, mav_parse_offset): Renamed from
	cirrus_reg_required_here and cirrus_parse_offset respectively.
	(MAV_MODE?): Renamed from CIRRUS_MODE?.

2002-01-18  Richard Earnshaw  <rearnsha@arm.com>
	    Keith Walker  <keith.walker@arm.com>

	* tc-arm.c (ARM_EXT_V5J, ARM_ARCH_V5TEJ): Define.
	(insns): Add pattern for bxj instruction.
	(do_bxj): New function.
	(arm_cpus): Add arm926ej.
	(arm_archs): Add armv5tej.

2002-01-18  Richard Earnshaw  <rearnsha@arm.com>

	* doc/c-arm.texi: Add new fpe options to list of supported flags.

2002-01-19  Keith Walker  <keith.walker@arm.com>

	* tc-arm.c (arm_fpus): Add fpe2 and fpe3.

2002-01-18  Richard Earnshaw  <rearnsha@arm.com>

	* NEWS: Mention new ARM command-line options and VFP support.

	* config/tc-arm.c (ARM_CEXT_XSCALE): Replaces ARM_EXT_XSCALE.  All
	uses changed.
	(ARM_CEXT_MAVERICK): Similarly.
	(ARM_ANY): Now means any core instruction.
	(CPU_DEFAULT): Default to ARM_ANY.
	(uses_apcs_26, atcps, support_interwork, uses_apcs_float)
	(pic_code): Declare for all object types.  Make type int.
	(legacy_cpu, legacy_fpu, mcpu_cpu_opt, mcpu_fpu_opt, march_cpu_opt)
	(march_fpu_opt, mfpu_opt): Declare.
	(md_longopts): Tidy up conditional definitions.
	(arm_opts, arm_cpus, arm_archs, arm_fpus, arm_extensions)
	(arm_long_opts): New tables.
	(arm_parse_cpu, arm_parse_arch, arm_parse_fpu): New functions.
	(arm_parse_extension): New function.
	(md_parse_option): Rewrite using new table-driven system.
	(md_show_usage): Use new table-driven system.
	(md_begin): Calculate cpu_variant from command line option data.
	* doc/as.texinfo (ARM ISA options): Docuement new ARM-specific
	command-line options.
	* doc/c-arm.texi: Likewise.

2002-01-18  Andreas Jaeger  <aj@suse.de>

	* as.c (parse_args): Update year.

2002-01-17  Timothy Wall  <twall@alum.mit.edu>

	* config/tc-tic54x.c (encode_address): Add a more informative
	warning about incorrect syntax.

2002-01-17  Nick Clifton  <nickc@cambridge.redhat.com>

	* po/gas.pot: Regenerate.

2002-01-17  Nick Clifton  <nickc@cambridge.redhat.com>

	* macro.c (get_any_string): Add no-c-format comment to prevent
	confusion when translating string.
	* gasp.c (get_any_string): Add no-c-format comment to prevent
	confusion when translating string.

2002-01-16  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
	    Johannes Stezenbach <js@convergence.de>
	* config/tc-mips.c (percent_op): Ensure longer percent_op's are
	matched before the shorter ones.
	(my_getSmallParser): Fix handling of nested parentheses in
	percent_op's. Code cleanup.
	(my_getPercentOp): New function, code from my_getSmallParser.
	(my_getSmallExpression): Fix handling of closing parentheses.
	Code cleanup. Better comments.

2002-01-16  Nick Clifton <nickc@redhat.com>

	po/tr.po: New file: Turkish translation.
	configure.in (LINGUAS): Add "tr".
	configure: Regenerate.

2002-01-15  Richard Earnshaw  <rearnsha@arm.com>

	Support for VFP instructions
	* tc-arm.c (CP_WB_OK, CP_NO_WB): New defines.
	(cp_address_required_here): New argument wb_ok.  When false, do not
	accept write-back forms of addressing.  Change all callers.
	(FPU_VFP_EXT_NONE, FPU_VFP_EXT_V1xD, FPU_VFP_VFP_V1)
	(FPU_VFP_EXT_V2): Define.
	(FPU_ARCH_VFP, FPU_ARCH_VFP_V1xD, FPU_ARCH_VFP_V1, FPU_ARCH_VFP_V2):
	Define in terms of above.
	(vfp_dp_reg_pos, vfp_sp_reg_pos, vfp_ldstm_type): New enums.
	(vfp_reg): New struct.
	(vfp_regs): New array of registers.
	(insns): Add VFP instructions.
	(sn_table): New array of VFP single-precision register names.
	(dn_table): New array of VFP double-precision register names.
	(all_reg_maps): Add the new register tables.
	(arm_reg_type): Add new values for above.  Increase RET_TYPE_MAX.
	(vfp_sp_reg_required_here, vfp_dp_reg_required_here, do_vfp_sp_monadic)
	(do_vfp_dp_monadic, do_vfp_sp_dyadic, do_vfp_dp_dyadic)
	(do_vfp_reg_from_sp, do_vfp_sp_reg2, do_vfp_sp_from_reg)
	(do_vfp_reg_from_dp, do_vfp_reg2_from_dp, do_vfp_dp_from_reg)
	(do_vfp_dp_from_reg2, vfp_psr_parse, vfp_psr_required_here)
	(do_vfp_reg_from_ctrl, do_vfp_ctrl_from_reg, do_vfp_sp_ldst)
	(do_vfp_dp_ldst, vfp_sp_reg_list, vfp_dp_reg_list, vfp_sp_ldstm)
	(vfp_dp_ldstm, do_vfp_sp_ldstmia, do_vfp_sp_ldstmdb, do_vfp_ldstmia)
	(do_vfp_dp_ldstmdb, do_vfp_xp_ldstmia, do_vfp_xp_ldstmdb)
	(do_vfp_sp_compare_z, do_vfp_dp_compare_z, do_vfp_dp_sp_cvt)
	(do_vfp_sp_dp_cvt): New functions.
	(md_begin): Set soft-float flag for appropriate VFP work.
	(md_atof): Handle VFP-format doubles.
	(md_parse_option): Handle VFP command-line options.
	(md_show_usage): Display VFP command-line options.

2002-01-15  Richard Earnshaw  <rearnsha@arm.com>

	* tc-arm.c (md_parse_option): Tidy up setting of cpu_variant for
	various command line options.

2002-01-15  Nick Clifton  <nickc@cambridge.redhat.com>

	* config/tc-xstormy16.c: (xstormy16_fix_adjustable): Do not fix
	vtinherit relocs.
	(xstormy16_md_apply_fix3): Do not return a value.

2002-01-14  Richard Earnshaw  <rearnsha@arm.com>

	* tc-arm.c (md_longopts): On targets that aren't bi-endian, support
	the -EL/-EB option that matches the target's endianness.
	(md_parse_option): Likewise.

2002-01-14  Richard Earnshaw  <rearnsha@arm.com>

	* tc-arm.c (md_longopts): Fix misplaced #endif -- the -oabi option
	is not dependent on ARM_BI_ENDIAN.

2002-01-14  Richard Earnshaw  <rearnsha@arm.com>

	* tc-arm.c (all error messages): Normalize capitalization of messages.

	* tc-arm.h (md_operand): Delete define.
	* tc-arm.c (in_my_get_expression): New static variable.
	(my_get_expression): Set and clear it.
	(md_operand): New function.  If called from my_get_expression
	put the error in inst.error.
	(output_inst): Now takes argument of instruction being assembled.
	Print it out with any error message.
	(do_ldst, do_ldstv4, thumb_load_store): Fault attempt to use a store
	with '=' syntax.
	(end_of_line): Don't update inst.error if it is already set.

2002-01-11  Richard Earnshaw  <rearnsha@arm.com>

	* tc-arm.c (do_ldst): Fix handling an immediate expression pseudo
	op that can be translated into a mvn instruction.

2002-01-11  Steve Ellcey  <sje@cup.hp.com>

	* gas/config/tc-ia64.h (MD_FLAGS_DEFAULT): New Macro for
	setting default md.flags.
	(SHT_INIT_ARRAY): New elf special section used by HP-UX.
	(SHT_FINI_ARRAY): New elf special section used by HP-UX.
	* gas/config/tc-ia64.c (setup_unwind_header): Add support
	for 32 bit unwind info blocks.
	(generate_unwind_image): Add support for different types
	of unwind images (32 bits and/or big-endian).
	(ia64_init): Use MD_FLAGS_DEFAULT to set md.flags.
	(ia64_target_format): Add support for hpux target formats.
	(ia64_gen_real_reloc_type): Add support for FUNC_IPLT_RELOC.
	(ia64_elf_section_type): Add support for SHT_INIT_ARRAY and
	SHT_FINI_ARRAY elf section types.

2002-01-10  Richard Earnshaw  <rearnsha@arm.com>

	* tc-arm.c (struct reg_entry): Move before prototypes.
	(int_register, cp_register, fp_register): Delete.
	(reg_table): Delete.  Replaced with ...
	(rn_table, cp_table, cn_table, fn_table, mav_mvf_table)
	(mav_mvd_table, mav_mvfx_table, mav_mvdx_table, mav_mvax_table)
	(mav_dspsc_table): ... one table per register set.
	(arm_reg_hsh): Delete.
	(struct reg_map): New structure.
	(all_reg_maps): New array.
	(enum arm_reg_type): New enums.
	(build_reg_hsh): New function.
	(insert_reg_alias): Use hash table passed by caller.  Adjust all
	callers.
	(create_register_alias): New function, split out from ...
	(md_assemble): ... here.
	(md_begin): Build new register hash tables.
	(arm_reg_parse): New argument for the hash table to search.  Adjust all
	callers.
	(arm_reg_parse_any): New function.
	(co_proc_number): Look up the processor number in the processor hash
	table.
	(cirrus_regtype): Delete.
	(cirrus_register, cirrus_mvf_register, cirrus_mvd_register)
	(cirrus_mvfx_register, cirrus_mvdx_register, cirrus_mvax_register)
	(ARM_EXT_MAVERICKsc_register): Delete.
	(do_c_binops_1, do_c_binops_2, do_c_binops_3): Delete.
	(do_c_binops_1[a-o], do_c_binops_2[a-c], do_c_binops_3[a-d]): New
	functions.
	(do_c_triple_4, do_c_triple_5): Delete.
	(do_c_triple_4[ab], do_c_triple_5[a-h]): New functions.
	(do_c_quad_6): Delete.
	(do_c_quad_6[ab]): New functions.
	(do_c_binops, do_c_triple, do_c_quad, do_c_shift, do_c_ldst): Rework
	arguments to use new register parsing methods.
	(cirrus_reg_required_here): Likewise.
	(insns): Reclassify cirrus maverick worker functions.
	(cirrus_valid_reg): Delete.

2002-01-07  Jason Thorpe  <thorpej@wasabisystems.com>

	* configure.in (sh*le): Set cpu_type=sh and endian=little.
	(sh*-*-netbsdelf*): New target.
	* configure: Regenerate.
	* tc-sh.h: Update copyright years.
	(TARGET_FORMAT): Add version for TE_NetBSD.

2002-01-07  Nick Clifton  <nickc@cambridge.redhat.com>

	* read.c (emit_expr): Do not allow 'size' or 'nbytes' to go
	negative.

2002-01-06  Alan Modra  <amodra@bigpond.net.au>

	* config/tc-m68k.h (md_prepare_relax_scan): Rewrite.
	* config/tc-m68k.c (md_relax_table): Add md_prepare_relax_scan comment.

2002-01-05  Daniel Jacobowitz  <drow@mvista.com>

	* tc-mips.c (mips_cprestore_valid): New flag.
	(mips_frame_reg_valid): New flag.
	(macro) [M_JAL_2]: Check both flags.
	[M_JAL_A]: Likewise.
	(s_cprestore): Set mips_cprestore_valid.
	(tc_get_register): If setting mips_frame_reg, set
	mips_frame_reg_valid and clear mips_cprestore_valid.
	(s_mips_ent): Clear both flags.
	(s_mips_end): Clear both flags.

2002-01-05  Alan Modra  <amodra@bigpond.net.au>

	* write.c (write_object_file): Make use of bfd_section_list_remove.
	* config/obj-ecoff.c (ecoff_frob_file): Likewise.
	* config/tc-mmix.c (mmix_frob_file): Likewise.

2002-01-04  Jason Thorpe  <thorpej@wasabisystems.com>

	* configure.in (i386-*-netbsdelf*): Collapse target into...
	(i386-*-netbsd*): ...this.  Add support for x86-64.
	* configure: Regenerated.

2002-01-03  matthew green  <mrg@redhat.com>

	* config/tc-ppc.c (md_parse_option): BookE is not Motorola specific.

2002-01-02  Nick Clifton  <nickc@cambridge.redhat.com>

	* config/tc-m68k.c (md_estimate_size_before_relax): Test for a
	NULL frag link.

For older changes see ChangeLog-0001

Local Variables:
mode: change-log
left-margin: 8
fill-column: 74
version-control: never
End:
