diff options
Diffstat (limited to 'gas/ChangeLog-0001')
-rw-r--r-- | gas/ChangeLog-0001 | 7703 |
1 files changed, 7703 insertions, 0 deletions
diff --git a/gas/ChangeLog-0001 b/gas/ChangeLog-0001 new file mode 100644 index 00000000000..9d8af6fbe89 --- /dev/null +++ b/gas/ChangeLog-0001 @@ -0,0 +1,7703 @@ +2001-12-31 Richard Henderson <rth@redhat.com> + + * config/tc-ia64.c (errata_nop_necessary_p): Prototype. + (make_unw_section_name): Constify local variables. + + * config/tc-ia64.c (has_suffix_p): New. + (note_register_values): Use it instead of strstr. + +2001-12-31 Jeffrey A Law (law@redhat.com) + + * config/tc-hppa.c (pa_ip): Handle new 'c' mode completers, + 'X', 'M', and 'A'. + +2001-12-21 Jakub Jelinek <jakub@redhat.com> + + * config/tc-sparc.h (TC_PARSE_CONS_EXPRESSION): Define. + (sparc_cons): Provide prototype. + * config/tc-sparc.c (tc_gen_reloc): Handle BFD_RELOC_*_PCREL and + BFD_RELOC_SPARC_PLT{32,64}. Enumerate for which relocs + reloc->addend = fixp->fx_addnumber shouldn't be done instead of + enumarating for which pc relative ones it should be done. + (sparc_cons_special_reloc): New variable. + (sparc_cons): New function. + (cons_fix_new_sparc): Use sparc_cons_special_reloc. + * testsuite/gas/sparc/pcrel.s: New test. + * testsuite/gas/sparc/pcrel.d: Expected output. + * testsuite/gas/sparc/pcrel64.s: New test. + * testsuite/gas/sparc/pcrel64.d: Expected output. + * testsuite/gas/sparc/plt.s: New test. + * testsuite/gas/sparc/plt.d: Expected output. + * testsuite/gas/sparc/plt64.s: New test. + * testsuite/gas/sparc/plt64.d: Expected output. + * testsuite/gas/sparc/sparc.exp: Add pcrel, pcrel64, plt and plt64 + tests. + +2001-12-20 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + Daniel Jacobowitz <drow@mvista.com> + + * config/tc-mips.c (file_mips_gp32): Initialize to invalid value. + (file_mips_fp32): Likewise. + (md_begin): Compatibility handling for -mipsN option. + +2001-12-20 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-sh.c (parse_at): Reject @(r0) and @(r0,). + +2001-12-20 matthew green <mrg@redhat.com> + + * config/tc-ppc.c (md_parse_option): Make -maltivec default + to generating PowerPC instructions. + +2001-12-20 Jason Thorpe <thorpej@wasabisystems.com> + + * configure.in (mips-dec-netbsd*): Delete. + * configure: Regenerate. + + * configure.in (arm-*-netbsdelf*): Add target. + * configure: Regenerate. + +2001-12-18 Nick Clifton <nickc@cambridge.redhat.com> + + * config/tc-mips.h (TC_HANDLE_FX_DONE): Remove redundant + definition. + +2001-12-18 Niibe Yutaka <gniibe@m17n.org> + + * configure.in (assign object format): Bug fix for setting + endian. + * configure: Regenerate. + +2001-12-18 matthew green <mrg@eterna.com.au> + + * configure.in (m68k-*-netbsdelf*): New target. + (m68k-*-netbsd*): Also include ELF support. + (m68k-*-netbsdaout*): New alias for m68*-*-netbsd*. + * configure: Regenerate. + +2001-12-18 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * gasp.c (main): Protoype. + +2001-12-17 Richard Henderson <rth@redhat.com> + + * config/tc-alpha.c (alpha_handle_align): Encode unop with RB as $sp. + +2001-12-17 Nick Clifton <nickc@cambridge.redhat.com> + + * cgen.c: Add prototype for queue_fixup. + (gas_cgen_parse_operand): Move initilisastion of errmsg to avoid + possible longjmp corruption. + * cgen.h: Add prototype for gas_cgen_md_operand. + +2001-12-15 Alan Modra <amodra@bigpond.net.au> + + * config/obj-elf.c (obj_elf_init_stab_section): References are + kept to section name strings. Don't alloca them! + +2001-12-12 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-d10v.c (get_operands): Mark OPERAND_PLUS after + OPERAND_ATSIGN as O_absent. + +2001-12-07 Geoffrey Keating <geoffk@redhat.com> + Richard Henderson <rth@redhat.com> + + * configure.in: Add support for xstormy16. + * configure: Regenerated. + * Makefile.am: Add support for xstormy16. + * Makefile.in: Regenerated. + * config/tc-xstormy16.c: New file. + * config/tc-xstormy16.h: New file. + +2001-12-06 Richard Earnshaw (rearnsha@arm.com) + + * tc-arm.c (do_arit, do_cmp, do_mov, do_ldst, do_ldstt, do_ldmstm) + (do_branch, do_swi, do_adr, do_adrl, do_empty, do_mul, do_mla) + (do_swap, do_msr, do_mrs, do_mull, do_ldstv4, do_bx, do_blx) + (do_bkpt, do_clz, do_lstc2, do_cdp2, do_co_reg2, do_smla, do_smlal) + (do_smul, do_qadd, do_pld, do_ldrd, do_co_reg2c, do_cdp, do_lstc) + (do_co_reg, do_fpa_ctrl, do_fpa_ldst, do_fpa_ldmstm, do_fpa_monadic) + (do_fpa_dyadic, do_fpa_cmp, do_fpa_from_reg, do_fpa_to_reg, do_mia) + (do_mar, do_mra, do_c_binops, do_c_binops_1, do_c_binops_2) + (do_c_binops_3, do_c_triple, do_c_triple_4, do_c_triple_5, do_c_quad) + (do_c_quad_6, do_c_dspsc, do_c_dspsc_1, do_c_dspsc_2, do_c_shift) + (do_c_shift_1, do_c_shift_2, do_c_ldst, do_c_ldst_1, do_c_ldst_2) + (do_c_ldst_3, do_c_ldst_4, do_branch25): Delete redundant argument, + FLAGS. + (struct asm_opcode): Adjust parms field accordingly. + (md_assemble): Don't pass dummy second argument when calling worker + functions. + (build_arm_ops_hsh): Add prototype + (BAD_FLAGS): Delete. + +2001-12-05 Richard Earnshaw <rearnsha@arm.com> + + * tc-arm.c (struct asm_opcode): Delete comp_suffix and flags. Add + cond_offset. Rename variants->variant. + (insns): Adjust for new format. Explicitly code each variant that + takes flags. Remove temporary instructions. + (struct arm_it): Remove redundant field suffix. + (s_flag, ldr_flags, str_flags, byte_flag, cmp_flags, ldm_flags) + (stm_flags, lfm_flags, sfm_flags, round_flags, fix_flags, except_flag) + (long_flag): Delete. + (struct asm_flg): Delete. + (LONGEST_INST): Delete. + (V4_STR_BIT): Define. + (struct thumb_opcode): Rename variants->variant. + (do_empty): Renamed from do_nop. + (ldst_extend): Delete argument hwse. Split code for half-word and + signed byte instructions to ... + (ldst_extend_v4): ... here. + (ld_mode_required_here): Use ldst_extend_v4. + (do_ldrd): Simplify now that this is only called for ldrd. No + need to test for XScale, which was wrong anyway. Don't reject r12 + as a target register. Add test that ldrd doesn't update an index + register. + (do_pld): Don't allow post-indexed or write-back addressing modes. + Adjust call to ldst_extend. + (do_adr): Split code for adrl to ... + (do_adrl): ... here. + (do_cmp): No need to fold in COND_BIT. + (do_ldst): Simplify. Split code for ldrt/strt into do_ldstt. Split + code to handle half-word and signed byte instructions to ... + (do_ldstv4): ... here. + (do_ldstt): New function. Handle load/store with translate. + (do_ldmstm): Write feature modification bits directly into + inst.instruction. + (do_fpa_ldst): Remove suffix handling code. + (do_fpa_dyadic, do_fpa_monadic, do_fpa_from_reg): Likewise. + (do_fpa_ldmstm): Type of access is now held in inst.instruction. + (build_arm_ops_hsh): New function. + (md_begin): Call it. Don't build the ARM opcode directly. + (md_assemble): Simplify ARM instruction handling. + +2001-12-05 Arati Dikey <aratid@kpit.com> + + * tc-sh.c (parse_at): Corrected incorrect op->type selection due + to missing 'else'. + +2001-12-04 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-d10v.c (write_2_short): Don't skip dummy fixups, so + that we can tell which operand refers to the insn put in the L + container and mark it as such, so that the relocation type can be + adjusted. + +2001-12-04 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (mips_cpreturn_offset): Better comment. + (load_register): Better error message. Cast away signedness + mismatches. Add casts needed for varargs. + (load_address): Replace checks of HAVE_64BIT_ADDRESS with dbl. + Remove superfluous casts. + (macro): Cast away signedness mismatches. Remove superfluous casts. + (s_cpload): Fix wrong comment. + (s_mips_weakext): Standardize output message. + (get_number): Likewise. + +2001-12-04 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (append_insn): Add jump address range overflow + check. + +2001-12-04 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (md_parse_option): Fix comment. Allow -mabi option + for ELF only. + (show): Document -mabi option. + +2001-12-03 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com> + + * config/tc-arm.c (md_parse_option): Only clear cpu part when + specifying 'xscale' cpu (don't change the fpu part). + +2001-12-04 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-d10v.c (find_opcode): Reject SP operand if + OPERAND_NOSP flag is present. + +2001-12-03 Eric Christopher <echristo@redhat.com> + + * config/tc-mips.c (tc_gen_reloc): One missed BFD_RELOC_MIPS_GPREL. + +2001-12-02 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (macro_build): Replace BFD_RELOC_MIPS_GPREL + by BFD_RELOC_GPREL16. + (load_address): Likewise. + (macro): Likewise. + (md_apply_fix): Likewise. Replace BFD_RELOC_MIPS_GPREL32 by + BFD_RELOC_GPREL32. + (s_gpword): Replace BFD_RELOC_MIPS_GPREL32 by BFD_RELOC_GPREL32. + (tc_gen_reloc): Replace BFD_RELOC_MIPS_GPREL by BFD_RELOC_GPREL16. + *config/tc-mips.h: Replace BFD_RELOC_MIPS_GPREL by BFD_RELOC_GPREL16. + +2001-11-29 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-d10v.c (get_operands): Emit OPERAND_PLUS for + prefix `+'. + + * config/tc-d10v.c (find_opcode): Reject non-SP operand if + flags requires SP. + +2001-11-29 Arati Dikey <aratid@kpit.com> + + * tc-sh.c (parse_at): Removed case-sensitivity of index register + R8, R9. + +2001-11-28 Jakub Jelinek <jakub@redhat.com> + + * write.c (adjust_reloc_syms): Mark SEC_MERGE symbols as used + in reloc if it has non-zero addend. + * config/tc-alpha.c (tc_gen_reloc): Reinstall SEC_MERGE check. + * config/tc-sparc.c (md_apply_fix3): Likewise. + +2001-11-28 Andreas Schwab <schwab@suse.de> + + * as.c (parse_args): Call md_after_parse_args if defined. + * config/tc-ia64.h (md_after_parse_args): Define. + * config/tc-ia64.c (ia64_after_parse_args): Reject --gstabs. + * doc/internals.texi (CPU backend): Document md_after_parse_args. + +2001-11-23 Jakub Jelinek <jakub@redhat.com> + + * config/tc-alpha.c (tc_gen_reloc): Remove SEC_MERGE test. + * write.c (adjust_reloc_syms): Don't handle relocs against + SEC_MERGE section symbols specially. + (fixup_segment): Likewise. + +2001-11-21 Richard Sandiford <rsandifo@redhat.com> + + * config/tc-mips.c (mips_need_elf_addend_fixup): New, extracted from... + (md_apply_fix3): ...here. Don't prevent the symbol value being + subtracted twice from GPREL addends. + (tc_gen_reloc): Add the symbol value to a GPREL addend if it was + subtracted by the previous function. + +2001-11-20 Nick Clifton <nickc@cambridge.redhat.com> + + * config/tc-avr.c (md_apply_fix3): Fix typo introduced by + md_apply_fix3 change. + +2001-11-20 Ben Elliston <bje@redhat.com> + + * config/tc-m88k.c (md_apply_fix3): Match local variable `val' to + usage after md_apply_fix3 cleanups. + +2001-11-19 Hans-Peter Nilsson <hp@bitrange.com> + + * doc/c-mmix.texi: Use texinfo 4 features. + (MMIX-mmixal): Fix typo. + +2001-11-17 Hans-Peter Nilsson <hp@axis.com> + + * config/tc-cris.c (md_apply_fix3): Cast value, not pointer, in + val assignment. + +2001-11-16 Michael Snyder <msnyder@redhat.com> + + * stabs.c (stabs_generate_asm_lineno): Remember file and line number + from one call to the next, and eliminate consecutive duplicates + (thereby emitting only one line symbol per source line). + * dwarf2dbg.c (dwarf2_gen_line_info): Ditto. + +2001-11-16 Alan Modra <amodra@bigpond.net.au> + + * config/tc-m68k.c (md_apply_fix3): Change val back to a signed type. + +2001-11-15 H.J. Lu <hjl@gnu.org> + + * config/tc-hppa.c (md_apply_fix3): Fix a typo. + +2001-11-15 H.J. Lu <hjl@gnu.org> + + * config/tc-alpha.c (md_apply_fix3): Fix a typo. + +2001-11-15 Nick Clifton <nickc@cambridge.redhat.com> + + * write.c (fixup_segment): Remove references to md_apply_fix and + TC_HANDLE_FX_DONE. + * cgen.c, config/obj-coff.c, config/tc-*.c: Update all occurances + of md_apply_fix to md_apply_fix3. + Make all md_apply_fix3 functions void. + * cgen.h, config/obj-coff.h, tc-*.h: Remove all definitions of + MD_APPLY_FIX3 and TC_HANDLE_FX_DONE. + * doc/internals.texi: Update references to md_apply_fix3. + * tc.h: Update prototype for md_apply_fix3. + +2001-11-15 Alan Modra <amodra@bigpond.net.au> + + * config/tc-i386.h (md_end): Define. + (i386_elf_emit_arch_note): Declare. + (CpuUnknown): Delete. + * config/tc-i386.c (default_arch): Constify. + (smallest_imm_type): Remove CpuUnknown test. + (md_assemble): Don't bother checking cpu_arch_flags non-zero. + (i386_elf_emit_arch_note): New function. + + * po/POTFILES.in: Regenerate. + +2001-11-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (mips_ip): Re-allow %hi() op for non-ELF assembler. + +2001-11-15 Alan Modra <amodra@bigpond.net.au> + + * frags.c (frag_grow): Revert last change. + + * dwarf2dbg.c (get_frag_fix): Align last frag size. + + * config/tc-ppc.c (ppc_insert_operand): Pass (ppc_cpu | ppc_size) + to operand->insert. + (md_assemble): Likewise. + +2001-11-12 Nick Clifton <nickc@cambridge.redhat.com> + + * frags.c (frag_grow): Use frag_make_room() to grow the + obstack. + +2001-11-14 Nick Clifton <nickc@cambridge.redhat.com> + + * config/tc-sparc.c (md_apply_fix3): Do not remove the symbol's + value from the addend for fixups against local symbols in + SEC_MERGE sections - it was not added in, in the first place. + +2001-11-11 Timothy Wall <twall@alum.mit.edu> + + * write.c (relax_segment): Convert symbol address into an octet + offset prior to adding to the frag address, which is an octet + offset. Add comments to that effect. + * config/tc-tic54x.c: Fix bugs causing tests to fail. + * config/tc-tic54x.h: Ditch PARAMS macro. + +2001-11-13 Alan Modra <amodra@bigpond.net.au> + + * config/obj-elf.c (obj_elf_version): Ensure terminating NUL is + put in note section. Use sizeof instead of hard-coded constants. + +2001-11-12 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (support_64bit_objects): Define for OBJ_ELF only. + (md_longopts): Allow OPTION_MABI for ELF compilation only. RE-allow + OPTION_GP32, OPTION_GP64, OPTION_FP32 for non-ELF compilation. + Sort options a bit more logical. + (md_parse_option): Allow OPTION_32, OPTION_N32, OPTION_N64, + OPTION_MABI only for elf targets. + +2001-11-12 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (set_at): Add cast needed for varargs. + (load_register): Likewise. + (macro): Likewise. Some code reformatting. + (macro2): Add cast needed for varargs. + (mips16_macro): Likewise. + +2001-11-12 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (md_assemble): Remove superflous casts. + (append_insn): Likewise. + (mips16_macro_build): Likewise. + (macro): Likewise. + (mips16_ip): Likewise. + (s_cpload): Likewise. + (mips_relax_frag): Likewise. + +2001-11-12 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (mips_abi_level): Move in front of + mips_set_options. + (mips_set_options): Add members gp32, fp32, abi. + (file_mips_gp32): New flag. + (file_mips_fp32): New flag. + (mips_opts): Initialize the new members. + (mips_gp32): Remove. + (mips_fp32): Remove. + (HAVE_32BIT_GPRS): Use the new values from mips_opts. + (HAVE_32BIT_FPRS): Likewise. + (HAVE_NEWABI): Likewise. + (HAVE_64BIT_OBJECTS): Likewise. + (md_begin): Likewise. Save default (file) values. + (md_parse_option): Use the new values from mips_opts. + (s_mipsset): Likewise. Fix logic to keep the ABI selection if + possible. Let .set mipsN work together with .set push/pop. + Enhance error messages. + (mips_elf_final_processing): Use file_mips_* for header processing. + +2001-11-09 Marek Michalkiewicz <marekm@amelek.gda.pl> + + * config/tc-avr.c (mcu_types): Update for new devices. + +2001-11-09 Stephane Carrez <Stephane.Carrez@worldnet.fr> + + * doc/Makefile.am (POD2MAN): Use 'GNU Development Tools' for + the page man title. + * doc/Makefile.in: Rebuild. + * doc/as.texinfo: Do not put man SEEALSO in document; + Use @command for commands, @option for options; Reorganize usage + to clearly identify target specific options. + +2001-11-08 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (mips_force_relocation): Remove duplicate code. + +2001-11-06 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (my_getSmallParser): Fix small parser bug. + +2001-11-05 Martin Schwidefsky <schwidefsky@de.ibm.com> + + * config/tc-s390.c (tc_s390_force_relocation): Force all relocations + that need the global offset table. + (md_apply_fix3): Add code to undo opertions done in fixup_segment + triggered by TC_FORCE_RELOCATION. + * config/tc-s390.h (TC_FORCE_RELOCATION): Replace macro code with + a call to function tc_s390_force_relocation. + (TC_FIX_ADJUSTABLE): Define. + +2001-11-04 Chris Demetriou <cgd@broadcom.com> + + * configure.in (mips-*-netbsd*): Add support for target. + * configure: Regenerate. + +2001-11-02 Nick Clifton <nickc@cambridge.redhat.com> + + * configure.in (ALL_LINGUAS): Add 'fr'. + * configure: Regernate. + * po/fr.po: New file. Obtained from the translation project web + site. + +2001-11-02 Richard Earnshaw <rearnsha@arm.com> + + * tc-arm.c: Re-arrange prototypes by architecture. + (insns): Re-arrange instructions by archtitecture. Pld instruction + is part of ARMv5E. + (tinsns): blx and bkpt are part of ARMv5T. + (do_fp_{ctrl,ldst,ldstm,dyadic,monadic,cmp,from_reg,to_reg}): Rename + to do_fpa_*. All callers changed. + + * tc-arm.c (insns): Add two temporary instructions to handle + ldrd/strd. + +2001-11-01 Stephane Carrez <Stephane.Carrez@worldnet.fr> + + * config/tc-m68hc11.c (build_jump_insn): Allocate worst case storage + for bra/bsr and use frag_variant(), this ensure that the possible + 16-bit BFD_RELOC_16 will be in the same frag. + +2001-10-31 Chris Demetriou <cgd@broadcom.com> + + * config/tc-mips.c (HAVE_32BIT_ADDRESSES): If compiling embedded + PIC code, assume pointers the same size as GPRs. + (macro): In M_LA_AB handling for embedded PIC code, support + "la $treg,foo-bar($breg)". In load/store handling + (label ld_st) support "<op> $treg,<sym>-<local_sym>($breg)" + which is used by the compiler for switch statements. + In load/store double multi-instruction macro handling + (label ldd_std) add a comment that no special handling + is currently done for embedded PIC. + (mips_ip): In 'o' (16-bit offset) case, only accept 16 + bit offsets. + +2001-10-31 Richard Earnshaw <rearnsha@arm.com> + + General cleanup of feature definitions. + * tc-arm.c (ARM_EXT_LONGMUL, ARM_EXT_HALFWORD, ARM_EXT_THUMB): Delete. + (ARM_2UP, ARM_ALL, ARM_3UP, ARM_6UP): Delete. + (FPU_CORE, FPU_FPA10, FPA_FPA11, FPU_ALL, FPA_MEMMULTI): Delete. + (ARM_EXT_V{1,2,2S,3,3M,4,4T,5T,5ExP}): New defines. + (ARM_EXT_V{5,5E}): Synchronize with above. + (ARM_ARCH_V*): Define a complete set in terms of above features. + (ARM_{1,2,3,250,6,7,8,9,STRONG}): Define in terms of architecture. + (FPU_FPA_EXT_V[12]): Define. + (FPU_ARCH_FPE, FPU_ARCH_FPA): Define in terms of above. + (FPU_ANY): Define. + (FPU_DEFAULT): Default to FPA. + (CPU_DEFAULT): For XScale, this is now just ARM_ARCH_XSCALE; for + Thumb, this is now ARM_ARCH_V5T. + (insns): Rework for new feature defines. + (tinsns): Likewise. + (opcode_select, do_ldst, md_begin, md_parse_option): Likewise. + +2001-10-31 NIIBE Yutaka <gniibe@m17n.org> + + * configure.in: Handle sh*eb-*-linux* and sh*-*-linux*. + * configure: Regenerate. + * Makefile.in: Regenerate. + * doc/c-sh.texi (SH Options): Added descriptions. + +2001-10-30 Hans-Peter Nilsson <hp@bitrange.com> + + * configure.in: Update for MMIX port. + * Makefile.am: Ditto. Regenerate dependencies. + * Makefile.in: Regenerate. + * configure: Regenerate. + * config/tc-mmix.h, config/tc-mmix.c: New files. + * doc/Makefile.am (CPU_DOCS): Add c-mmix.texi + * doc/Makefile.in: Regenerate. + * doc/all.texi: @set MMIX. + * doc/as.texinfo: Ditto. Add MMIX gas manpage option overview. + Include c-mmix.texi. + * doc/c-mmix.texi: New file. + +2001-10-24 Chris Demetriou <cgd@broadcom.com> + + * config/tc-mips.c (hilo_interlocks, cop_interlocks): Make + these evaluate to true if mips_arch indicates SB-1. + +2001-10-23 Alan Modra <amodra@bigpond.net.au> + + * as.c (parse_args): Print the date as well for --version. + +2001-10-20 Chris Demetriou <cgd@broadcom.com> + + * config/tc-mips.c (md_show_usage): Print "sb1" for Broadcom + SB-1 CPU for consistency. + (mips_cpu_info_table): Tweak comment about SB-1. + +2001-10-20 H.J. Lu <hjl@gnu.org> + + * config/tc-arm.c (do_c_shift): Use ISDIGIT instead of isdigit. + (cirrus_parse_offset): Likewise. + +2001-10-19 Nick Clifton <nickc@cambridge.redhat.com> + + * config/tc-arm.c: Restore line_comment_chars. + +2001-10-18 Nick Clifton <nickc@cambridge.redhat.com> + + * config/tc-arm.c (comment_chars): Remove semi-colon accidentally + added to the list. + +2001-10-18 Hans-Peter Nilsson <hp@bitrange.com> + + * write.c (fixup_segment): Handle fixups for SEC_MERGE sections as + for undefined symbols. + +2001-10-17 Chris Demetriou <cgd@broadcom.com> + + * doc/as.texinfo (MIPS ISA options): Added accidentally + omitted "-mips64" option to list of options. + +2001-10-17 matthew green <mrg@redhat.com> + + * config/tc-ppc.c (md_show_usage): Add missing -maltivec, -m7400, + -m7410, -m7450 and -m7455 options. + +2001-10-17 Alan Modra <amodra@bigpond.net.au> + + * config/tc-ppc.c (PPC_HA, PPC_HIGHERA, PPC_HIGHESTA): Simplify. + (ppc_size): Select PPC_OPCODE_64 if 64 bit. + (md_begin): Don't set ppc_size here. + (ppc_target_format): Test ppc_size as well as BFD_DEFAULT_TARGET_SIZE. + (md_shortopts): Constify. + (md_longopts): Likewise. + (md_longopts_size): Likewise. + (ppc_elf_suffix): Only allow 64-bit relocs when ppc_size specifies + 64-bit opcodes. + (ppc_machine): Explain why this function is a nop. + +2001-10-17 Alan Modra <amodra@bigpond.net.au> + + * bit_fix.h: Comment typo fix. + * config/tc-mips.c: Likewise. + * config/tc-sh.c: Likewise. + * config/tc-arc.c (arc_code_symbol): Remove unnecessary test. + + * configure.in (MIPS_STABS_ELF): AC_DEFINE in only one place so + that autoheader doesn't duplicate config.in entries. + (DEFAULT_ARCH): Ditto. + * configure: Regenerate. + * config.in: Regenerate. + +2001-10-16 Alan Modra <amodra@bigpond.net.au> + + From Andrew Pines <apines@cosmodog.com> + * config/tc-m68k.c (m68k_ip): Correct absolute jmp opcodes. + +2001-10-16 NIIBE Yutaka <gniibe@m17n.org>, + Hans-Peter Nilsson <hp@bitrange.com> + + * config/tc-sh.c (shl): Remove. + (big): New function. + (little): Remove shl handling. Emit error for endian mismatch. + (md_show_usage): Add description of -big. + (md_parse_option): Handle OPTION_BIG. Remove shl handling. + (OPTION_BIG): Add. + (md_pseudo_table): Add .big. + (md_longopts): Add -big. + (md_begin): Don't set target_big_endian here. + * config/tc-sh.h (TARGET_BYTES_BIG_ENDIAN): Remove. + (LISTING_HEADER, COFF_MAGIC, TARGET_FORMAT): Use target_big_endian. + (shl): Remove. + * configure.in (endian): Default is big. + (sh-*-pe*): Little endian. + (cpu_type): Set sh for target sh*. + * configure: Regenerate. + +2001-10-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (md_apply_fix): Preliminary handling of NewABI + relocations. + +2001-10-13 Nick Clifton <nickc@cambridge.redhat.com> + + * config/tc-arm.c: Replace CONST with const. + + * cgen.c: Tidy up formatting. + +2001-10-12 matthew green <mrg@redhat.com> + + * config/tc-ppc.c (md_parse_option): New -m7410, -m7450 and -m7455 + flags, equivalent to -m7400. New -maltivec to enable AltiVec + instructions. New -mbook64 and -mbooke/-mbooke32 flags to enable + 64-bit and 32-bit BookE support, respectively. Change -m403 and + -m405 to set PPC403 option. + (md_show_usage): Adjust for new options. + * doc/all.texi: Set PPC. + * doc/as.texinfo: Add PPC support and pull in c-ppc.texi. + * doc/c-ppc.texi: New file. + * doc/Makefile.am (CPU_DOCS): Add c-ppc.texi. + * doc/Makefile.in: Regenerate. + +2001-10-12 Nick Clifton <nickc@cambridge.redhat.com> + + * read.c (s_bad_endr): New function. Issues a warning message + about a bad use of the .rept pseudo op. + (po_table[]): Add .endr. + * read.h: Prototype s_bad_endr. + + * CONTRIBUTORS: Update contact email address. + +2001-10-11 Kazu Hirata <kazu@hxi.com> + + * config/tc-alpha.c: Fix comment typos. + * config/tc-cris.c: Likewise. + * config/tc-hppa.c: Likewise. + * config/tc-i370.c: Likewise. + * config/tc-mips.c: Likewise. + * config/tc-mn10200.c: Likewise. + * config/tc-mn10300.c: Likewise. + * config/tc-sh.c: Likewise. + * config/tc-tahoe.c: Likewise. + * config/tc-v850.c: Likewise. + +2001-10-11 Kazu Hirata <kazu@hxi.com> + + * app.c: Fix comment typos. + * bit_fix.h: Likewise. + * expr.c: Likewise. + * itbl-ops.c: Likewise. + +2001-10-11 Nick Clifton <nickc@cambridge.redhat.com> + + * input-file.c: Include safe-ctype.h. + (input_file_open): Use ISSPACE instead of isspace. + +2001-10-10 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (mips_cpreturn_offset): New variable. + (mips_cpreturn_register): Likewise. + (mips_gp_register): Likewise. + (s_cpsetup): New function prototype. + (s_cplocal): Likewise. + (s_cpreturn): Likewise. + (s_gpvalue): Likewise. + (mips_pseudo_table): Add .cpsetup, .cplocal, .cpreturn, .gpvalue + pseudo-ops. + (macro): Don't warn about .cprestore for NewABI. + (md_pcrel_from): Code cleanup. + (mips_force_relocation): Force output of some NewABI relocations even + without a defined symbol. + (s_cpload): Ignore .cpload for NewABI. + (s_cpsetup): Handle .cpsetup. + (s_cplocal): Handle .cplocal. + (s_cprestore): Ignore .cprestore for NewABI. + (s_cpreturn): Handle .cpreturn. + (s_gpvalue): Handle .gpvalue. + (s_cpadd): Ignore .cpadd for NewABI. + (nopic_need_relax): Take g_switch_value into account as gp + optimization. + (tc_gen_reloc): Don't handle BFD_RELOC_MIPS_{CALL,GOT}* for NewABI. + +2001-10-10 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (my_getSmallParser): New function prototype. + (small_ex_type): Named this enum, more return values for + my_getSmallExpression. + (mips_ip): Allow SPC and HT between arguments. Handle some NewABI + triple relocations. Protect some parts with ifdef OBJ_ELF. + (percent_op_match): New struct, lookup table for %some_reloc(). + (my_getSmallParser): New function, parses nested percent_ops also. + (my_getSmallExpression): Rewite to support nested percent_ops. + +2001-10-10 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c + (load_address): Support both 32- and 64-bit addresses. + (macro): Call load_register correctly. Expand 64-bit loads ans stores. + (macro2): Call load_address correctly. + +2001-10-09 Christian Groessler <cpg@aladdin.de> + + * config/tc-z8k.c: Include opcodes/z8k-opc.h after bfd.h + since z8k-opc.h now uses the PARAMS macro. + +2001-10-09 Aldy Hernandez <aldyh@redhat.com> + + * config/tc-arm.c: Change MAVERIK to MAVERICK. + +2001-10-09 Alan Modra <amodra@bigpond.net.au> + + * config/obj-elf.c: Make use of elf_group_name and elf_next_in_group + throughout file. + (obj_elf_change_section): Rename "group" to "group_name". + (obj_elf_section): Likewise. + (elf_frob_file): Don't use sec->lineno for SHT_GROUP section to store + first member section; Instead use elf_next_in_group. + +2001-10-09 Alan Modra <amodra@bigpond.net.au> + + * config/obj-elf.c: (obj_elf_change_section): Add "group" param. + Set elf_section_data group from it. Warn if group name changed. + (obj_elf_parse_section_letters): Parse 'G' too. + (obj_elf_section): Parse group name. + (struct group_list): New. + (build_group_lists): New function. + (elf_frob_file): Create SEC_GROUP section(s). + + * config/obj-elf.c: (elf_copy_symbol_attributes): Zap trailing + whitespace. + +2001-10-08 Aldy Hernandez <aldyh@redhat.com> + + * doc/arm/c-arm.texi (ARM Options): Add arm9e documentation. + + * config/tc-arm.c (ARM_EXT_MAVERIK): New macro. + (cirrus_regtype): New enum. + (LONGEST_INST): Change to 10. + (CIRRUS_MODE1): New. + (CIRRUS_MODE2): New. + (CIRRUS_MODE3): New. + (CIRRUS_MODE4): New. + (CIRRUS_MODE5): New. + (CIRRUS_MODE6): New. + (insns): Add cirrus dsp instructions. + (ARM_EXT_MAVERIKSC_REG): New. + (cirrus_register): New. + (cirrus_mvf_register): New. + (cirrus_mvd_register): New. + (cirrus_mvfx_register): New. + (cirrus_mvdx_register): New. + (cirrus_mvax_register): New. + (ARM_EXT_MAVERIKsc_register): New. + (reg_table): Add cirrus registers. + (cirrus_valid_reg): New. + (cirrus_reg_required_here): New. + (do_c_binops_1): New. + (do_c_binops_2): New. + (do_c_binops_3): New. + (do_c_triple_4): New. + (do_c_triple_5): New. + (do_c_quad_6): New. + (do_c_dspsc_1): New. + (do_c_dspsc_2): New. + (do_c_shift_1): New. + (do_c_shift_2): New. + (do_c_ldst_1): New. + (do_c_ldst_2): New. + (do_c_ldst_3): New. + (do_c_ldst_4): New. + (do_c_binops): New. + (do_c_triple): New. + (do_c_quad): New. + (do_c_dspsc): New. + (do_c_shift): New. + (cirrus_parse_offset): New. + (do_c_ldst): New. + (md_parse_option): Add arm9e. + (md_show_usage): Same. + +2001-10-08 Tom Rix <trix@redhat.com> + + * config/tc-ppc (ppc_bf, ppc_biei) : Set first .bi lineno value to + location of next .bf + * config/obj-coff.c (coff_frob_symbol) : XCOFF does not use endndx. + +2001-10-07 Alan Modra <amodra@bigpond.net.au> + + * config/obj-elf.c: Standardize error/warning messages - don't + capitalise, no final period or newline, don't say "ignoring" for + as_bad messages. In some cases, change the wording to that used + elsewhere for similar messages. + (obj_elf_section_name): New function, split out from .. + (obj_elf_section): .. here. Correctly mask off SHF_MERGE if + entsize not specified. + +2001-10-05 Jakub Jelinek <jakub@redhat.com> + + * doc/as.texinfo: Document M and S ELF section flags. + +2001-10-05 Alan Modra <amodra@bigpond.net.au> + + * subsegs.c (subseg_text_p): Return 0 for absolute section. + * read.c (do_align): If in absolute section, warn about and ignore + non-zero fill pattern. + +2001-10-05 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-mn10300.c (tc_gen_reloc): Don't free + reloc->sym_ptr_ptr if it's not allocated. + +2001-10-04 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (prev_insn_reloc_type): Make it an array to hold a + relocation triple. + (prev_insn_fixp): Likewise. + (append_insn): Changed prototype to accept a relocation pointer. + (imm_reloc): Make it an array. + (offset_reloc): Likewise. + (md_assemble): Handle triple relocations. + (append_insn): Likewise. Add handling for some NewABI relocations. + (mips_no_prev_insn): Handle triple relocations. + (macro_build): Likewise. Add handling for some NewABI relocations. + Move handling for the 'u' case to append_insn(). + (mips16_macro_build): Handle triple relocations. + (macro_build_lui): Likewise. Don't handle _gp_disp as special symbol + for NewABI. + (mips_ip): Handle triple relocations. + (mips16_ip): Likewise. + (mips_force_relocation): Force handling of triple relocations + without symbols for NewABI. + (md_apply_fix): Add handling for some NewABI relocations. + +2001-10-05 Alan Modra <amodra@bigpond.net.au> + + * config/tc-i386.c (parse_register): If not producing code for + x86_64, reject x86_64 register name matches. + (md_assemble): Remove now redundant check for x86_64 regs. + +2001-10-04 Alan Modra <amodra@bigpond.net.au> + + * config/tc-ppc.c (md_assemble <DS relocs>): Test ppc_size as well + as BFD_DEFAULT_TARGET_SIZE. + (ppc_tc): Likewise. + (ppc_is_toc_sym): Likewise. + (md_apply_fix3): Likewise. + +2001-10-03 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (mips_64): Remove. + (mips_target_format): Move downwards in file, use HAVE_64BIT_OBJECTS + in it. + (mips_abi_level, mips_abi): New enum. + (mips_32bit_abi): Remove. + (HAVE*PRS): Use mips_abi instead of mips_32bit_abi. + (HAVE_NEWABI): New define. + (HAVE_64BIT_OBJECTS): New define. + (HAVE_32BIT_ADDRESSES): Don't return true for 64bit objects. + (HAVE_64BIT_ADDRESSES): New define, inverse of HAVE_32BIT_ADDRESSES. + (support_64bit_objects): New prototype. + (md_begin): Use mips_abi instead of mips_32bit_abi. Don't write + .reginfo section for n32, use .MIPS.options instead. + (support_64bit_objects): New function, code from md_parse_option. + (md_longopts): Add -n32 option. + (md_parse_option): Use mips_abi instead of mips_32bit_abi/mips64. + Add -n32 option. Protect with OBJ_ELF. + (s_mipsset): Use mips_abi instead of mips_32bit_abi. + (mips_elf_final_processing): Likewise. Don't write .reginfo section + for n32, use .MIPS.options instead. + +2001-10-03 Alan Modra <amodra@bigpond.net.au> + + * po/POTFILES.in: Regenerate. + * configure: Regenerate. + +2001-10-02 Alan Modra <amodra@bigpond.net.au> + + * config/tc-ppc.c (md_apply_fix3 <BFD_RELOC_CTOR>): Make it 64 + bits if target is 64 bit. + + * doc/as.texinfo (listing): Fix typo. + + * as.c (print_version_id): Use BFD_VERSION_STRING in place of + BFD_VERSION. + * Makefile.am (Makefile): Depend on bfd/configure.in. + Run "make dep-am". + * Makefile.in: Regenerate. + +2001-09-30 H.J. Lu <hjl@gnu.org> + + * config/obj-elf.c (obj_elf_parse_section_letters): Accept "am" + and "ams" for compatibility. + +2001-09-30 Hans-Peter Nilsson <hp@bitrange.com> + + * config/tc-sh.c (md_pcrel_from_section): Transformed from + md_pcrel_from. Handle pc-relativeness against link-time + symbol. Handle relativeness to elsewhere than the fixup. + * config/tc-sh.h (MD_PCREL_FROM_SECTION): Define. + (md_pcrel_from_section): Prototype. + + * Makefile.am: Update dependencies with "make dep-am". + * Makefile.in: Regenerate. + +2001-09-30 Stephane Carrez <Stephane.Carrez@worldnet.fr> + + * config/tc-m68hc11.c (cmp_opcode): Define prototype. + (print_opcode_format, skip_whites): Likewise. + (convert_branch, m68hc11_new_insn): Likewise. + (build_dbranch_insn, build_indexed_byte): Likewise. + (build_reg_mode, find, find_opcode): Likewise. + (print_insn_format): Fix call to print_opcode_format. + (md_assemble): Fix call to build_dbranch_insn. + +2001-09-27 Nick Clifton <nickc@cambridge.redhat.com> + + * config/tc-arm.c: Add missing prototypes. + +2001-09-26 Jeff Johnston <jjohnstn@redhat.com> + + * input-file.c (input_file_open): When reading the + first line looking for #NO_APP, prepare for the possibility + of finding #APP instead. Also fix algorithm to allow + white-space to follow either #NO_APP or #APP directives. + +2001-09-25 Geoff Berry <geoff.berry@bops.com> + + * listing.c (buffer_line): Don't write past the end of `line' when + EOF is reached. + +2001-09-25 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-mn10300.c (tc_gen_reloc): Don't emit an *ABS* + relocation for differences between symbols in a section other + than the one in which the difference is to be placed; apply + the relocation instead. + +2001-09-24 Nick Clifton <nickc@cambridge.redhat.com> + + * config/tc-arc.c: Add missing prototype. + (md_atof): Change type to int. Add missing prototype. + * config/tc-arc.h: Prototype exported functions. + +2001-09-22 Nick Clifton <nickc@cambridge.redhat.com> + + * as.c: Add missing function prototype. + * config/obj-aout.c: Fix compile time warning. + +2001-09-21 Bruno Haible <haible@clisp.cons.org> + + * config/tc-openrisc.c: Don't include <ctype.h>. + +2001-09-19 Martin Schwidefsky <schwidefsky@de.ibm.com> + + * gas/config/tc-s390.c: Add option -mwarn-areg-zero. + +2001-09-19 Alan Modra <amodra@bigpond.net.au> + + * config/tc-i370.c: Fix typo in last change. + +2001-09-19 Nick Clifton <nickc@cambridge.redhat.com> + + * doc/as.texinfo (Symbol Names): Improve documentation on local + labels and add documenation about dollar labels. + +2001-09-18 Bruno Haible <haible@clisp.cons.org> + + * as.h: Don't include <ctype.h>. + * as.c (main): For gettext, also set the LC_CTYPE locate facet. + * atof-generic.c: Include "safe-ctype.h" instead of <ctype.h>. + (atof_generic): Use ISDIGIT instead of isdigit. + * config/m68k-parse.y: Include "safe-ctype.h". + (yylex): Use ISDIGIT/ISALNUM instead of isdigit/isalnum. + * config/obj-elf.c: Include "safe-ctype.h". + (obj_elf_vtable_inherit): Use ISSPACE instead of isspace. + * config/obj-vms.c: Include "safe-ctype.h". + (Write_VMS_MHD_Records): Use TOUPPER instead of islower/toupper. + (VMS_Case_Hack_Symbol): Use ISUPPER/ISLOWER/TOUPPER/TOLOWER + instead of isupper/islower/toupper/tolower. + * config/tc-a29k.c: Include "safe-ctype.h" instead of <ctype.h>. + (insert_sreg): Use TOUPPER instead of islower/toupper. + (machine_ip): Use ISALPHA/ISALNUM/ISUPPER/TOLOWER instead of + isalpha/isalnum/isupper/tolower. + (a29k_unrecognized_line, md_operand): Use ISDIGIT instead of + isdigit. + * config/tc-alpha.c: Include "safe-ctype.h" instead of <ctype.h>. + (md_undefined_symbol, s_alpha_ent): Use ISDIGIT instead of isdigit. + * config/tc-arc.c: Include "safe-ctype.h" instead of <ctype.h>. + (md_assemble): Use ISSPACE/ISALNUM instead of isspace/isalnum. + (arc_extoper): Use TOLOWER instead of isupper/tolower. + * config/tc-arm.c: Include "safe-ctype.h" instead of <ctype.h>. + (arm_psr_parse): Use ISALPHA instead of isalpha. + (accum0_required_here): Use ISALNUM instead of isalnum. + (do_ldrd): Use ISSPACE instead of isspace. + (decode_shift): Use ISALPHA instead of isalpha. + (insert_reg): Use TOUPPER instead of islower/toupper. + (arm_reg_parse): Use ISALPHA instead of isalpha. + (arm_parse_reloc): Use ISALNUM/ISPUNCT/TOLOWER instead of + isalnum/ispunct/tolower. + * config/tc-avr.c: Include "safe-ctype.h" instead of <ctype.h>. + (md_parse_option): Use TOLOWER instead of tolower. + (avr_operand): Use ISDIGIT/TOLOWER instead of isdigit/tolower. + * config/tc-cris.c: Include "safe-ctype.h" instead of <ctype.h>. + (cris_process_instruction): Use ISLOWER instead of islower. + (get_gen_reg): Use ISALNUM/ISDIGIT instead of isalnum/isdigit. + (get_spec_reg): Use TOLOWER/ISALNUM instead of isupper/tolower/isalnum. + (get_flags): Use ISSPACE instead of isspace. + * config/tc-d10v.c: Include "safe-ctype.h" instead of <ctype.h>. + (do_assemble): Use TOLOWER instead of tolower. + * config/tc-d30v.c: Include "safe-ctype.h" instead of <ctype.h>. + (do_assemble): Use TOLOWER instead of tolower. + (d30v_start_line): Use ISSPACE instead of isspace. + * config/tc-fr30.c: Include "safe-ctype.h" instead of <ctype.h>. + (fr30_is_colon_insn): Use TOLOWER instead of tolower. + * config/tc-h8300.c: Include "safe-ctype.h" instead of <ctype.h>. + (skip_colonthing, get_operand): Use ISDIGIT instead of isdigit. + * config/tc-h8500.c: Include "safe-ctype.h" instead of <ctype.h>. + (start_label): Use ISALPHA instead of isalpha. + * config/tc-hppa.c: Include "safe-ctype.h" instead of <ctype.h>. + (pa_ip): Use ISUPPER/ISLOWER/TOLOWER instead of + isupper/islower/tolower. + (pa_parse_number): Use ISDIGIT instead of isdigit. + (pa_chk_field_selector): Use TOLOWER instead of tolower. + (pa_stringer): Use ISDIGIT instead of isdigit. + * config/tc-i370.c: Include "safe-ctype.h" instead of <ctype.h>. + (register_name): Use ISALPHA instead of isalpha. + (i370_elf_suffix): Use ISALNUM/TOLOWER instead of + isalnum/islower/tolower. + (i370_addr_offset): Use ISDIGIT/ISALPHA instead of + isdigit/isalpha. + (i370_addr_cons): Use ISALPHA/ISXDIGIT instead of + isalpha/isxdigit. + (md_assemble): Use ISSPACE instead of isspace. + * config/tc-i386.c: Include "safe-ctype.h" instead of <ctype.h>. + (md_begin): Use ISDIGIT/ISLOWER/ISUPPER/TOLOWER/ISALPHA + instead of isdigit/islower/isupper/tolower/isalpha. + (output_invalid): Use ISPRINT instead of isprint. + * config/tc-i860.c: Include "safe-ctype.h" instead of <ctype.h>. + (i860_ip): Use ISLOWER/ISDIGIT instead of islower/isdigit. + * config/tc-i960.c: Include "safe-ctype.h" instead of <ctype.h>. + (get_args): Use ISALNUM instead of isalnum. + * config/tc-ia64.c: Include "safe-ctype.h". + (dot_pred_rel): Use TOUPPER/ISDIGIT instead of toupper/isdigit. + (ia64_unrecognized_line): Use ISDIGIT instead of isdigit. + (ia64_parse_name): Likewise. + * config/tc-m32r.c: Include "safe-ctype.h" instead of <ctype.h>. + (assemble_two_insns): Use ISSPACE/ISALNUM/ISUPPER/TOLOWER + instead of isspace/isalnum/isupper/tolower. + * config/tc-m68hc11.c: Include "safe-ctype.h" instead of <ctype.h>. + (md_assemble): Use TOLOWER/ISALNUM instead of tolower/isalnum. + * config/tc-m68k.c: Include "safe-ctype.h" instead of <ctype.h>. + (mklower_table): Remove variable. + (mklower): Remove macro. + (insert_reg): Use TOUPPER instead of islower/toupper. + (md_begin): Remove initialization of mklower_table. + (s_reg): Use ISALNUM instead of isalnum. + (mri_assemble): Use ISUPPER/TOLOWER instead of isupper/tolower. + (parse_mri_condition): Use TOLOWER instead of isupper/tolower. + (build_mri_control_operand): Use TOLOWER instead of tolower. + (s_mri_else, s_mri_break, s_mri_next, s_mri_for): Likewise. + * config/tc-m88k.c: Include "safe-ctype.h" instead of <ctype.h>. + (md_assemble): Use ISSPACE instead of isspace. + (get_imm16): Use ISALNUM instead of isalnum. + (get_cnd): Use ISDIGIT/ISUPPER/TOLOWER instead of + isdigit/isupper/tolower. + (get_bf_offset_expression): Use ISALPHA/ISUPPER/TOLOWER + instead of isalpha/isupper/tolower. + (hexval): Use ISDIGIT/ISLOWER/ISUPPER instead of + isdigit/islower/isupper. + * config/tc-mcore.c: Include "safe-ctype.h" instead of <ctype.h>. + (mcore_s_section): Use ISSPACE instead of isspace. + (parse_reg): Use ISSPACE/TOLOWER/ISALNUM instead of + isspace/tolower/isalnum. + (parse_creg): Use ISSPACE/TOLOWER instead of isspace/tolower. + (parse_psrmod): Use TOLOWER instead of isascii/tolower. + (parse_exp, parse_mem, md_assemble): Use ISSPACE instead of + isspace. + * config/tc-mips.c: Include "safe-ctype.h" instead of <ctype.h>. + (mips_ip): Use ISSPACE/ISDIGIT instead of isspace/isdigit. + (mips16_ip): Use ISLOWER/ISDIGIT instead of islower/isdigit. + (my_getSmallExpression): Use ISDIGIT/TOLOWER instead of + isdigit/tolower. + (tc_get_register): Likewise. + (get_number): Use ISDIGIT/ISXDIGIT instead of isdigit/isxdigit. + (s_mips_ent): Use ISDIGIT instead of isdigit. + * config/tc-mn10200.c: Include "safe-ctype.h" instead of <ctype.h>. + (md_assemble): Use ISSPACE instead of isspace. + * config/tc-mn10300.c: Include "safe-ctype.h" instead of <ctype.h>. + (md_assemble): Use ISSPACE instead of isspace. + * config/tc-ns32k.c: Don't include <ctype.h>. + * config/tc-pdp11.c: Include "safe-ctype.h". + (mklower): Remove function. + (parse_reg): Use TOLOWER instead of mklower. + * config/tc-pj.c: Include "safe-ctype.h". + (md_assemble): Use ISSPACE instead of isspace. + * config/tc-ppc.c: Include "safe-ctype.h" instead of <ctype.h>. + (register_name): Use ISALPHA instead of isalpha. + (ppc_elf_suffix): Use ISALNUM/TOLOWER instead of + isalnum/islower/tolower. + (md_assemble): Use ISSPACE instead of isspace. + (ppc_canonicalize_symbol_name): Use ISLOWER/TOUPPER instead of + islower/toupper. + * config/tc-s390.c: Include "safe-ctype.h" instead of <ctype.h>. + (register_name): Use ISALPHA instead of isalpha. + (s390_elf_suffix, s390_lit_suffix): Use ISALNUM instead of isalnum. + (md_gather_operands, md_assemble, s390_insn): Use ISSPACE instead of + isspace. + * config/tc-sh.c: Include "safe-ctype.h" instead of <ctype.h>. + (sh_elf_suffix): Use ISALNUM/TOLOWER instead of + isalnum/islower/tolower. + (IDENT_CHAR): Use ISALNUM instead of isalnum. + (parse_reg): Use TOLOWER instead of tolower. + (find_cooked_opcode): Use TOLOWER instead of isupper/tolower. + * config/tc-sparc.c: Include "safe-ctype.h" instead of <ctype.h>. + (sparc_ip): Use ISLOWER/ISDIGIT instead of islower/isdigit. + (parse_keyword_arg): Use ISALNUM instead of isalnum. + * config/tc-tahoe.c: Include "safe-ctype.h". + (tahoe_reg_parse): Use ISDIGIT instead of isdigit. + (tip_op): Use TOLOWER instead of isupper/tolower. + * config/tc-tic30.c: Include "safe-ctype.h". + (md_begin): Use ISLOWER/ISDIGIT/ISUPPER/TOLOWER/ISLOWER/ + ISALPHA instead of islower/isdigit/isupper/tolower/islower/isalpha. + (tic30_operand): Use TOLOWER instead of tolower. + (tic30_find_parallel_insn): Likewise. + (output_invalid): Use ISPRINT instead of isprint. + * config/tc-tic54x.c: Include "safe-ctype.h". + (tic54x_asg, tic54x_eval): Use ISALPHA instead of isalpha. + (lookup_version): Use TOUPPER instead of toupper. + (tic54x_var): Use ISALPHA instead of isalpha. + (tic54x_mlib): Use ISSPACE instead of isspace. + (subsym_iscons): Use TOUPPER instead of toupper. + (get_operands): Use ISSPACE instead of isspace. + (is_type): Use TOUPPER/ISDIGIT instead of toupper/isdigit. + (encode_indirect, encode_operand): Use TOUPPER instead of toupper. + (next_line_shows_parallel): Use ISSPACE instead of isspace. + (subsym_get_arg, subsym_substitute): Use ISDIGIT instead of isdigit. + (tic54x_start_line_hook, md_assemble, tic54x_start_label): Use + ISSPACE instead of isspace. + * config/tc-tic80.c: Include "safe-ctype.h". + (md_assemble): Use ISSPACE instead of isspace. + * config/tc-v850.c: Include "safe-ctype.h" instead of <ctype.h>. + (system_register_name): Use ISDIGIT instead of isdigit. + (md_assemble): Use ISSPACE instead of isspace. + * config/tc-vax.c: Include "safe-ctype.h" instead of <ctype.h>. + (vax_reg_parse): Use TOLOWER/ISDIGIT instead of + isupper/tolower/isdigit. + (vip_op): Use TOLOWER instead of isupper/tolower. + * config/tc-w65.c: Don't include <ctype.h>. + * config/tc-z8k.c: Include "safe-ctype.h" instead of <ctype.h>. + (tohex): Use ISDIGIT/ISLOWER instead of isdigit/islower. + (whatreg): Use ISDIGIT instead of isdigit. + * ecoff.c: Include "safe-ctype.h" instead of <ctype.h>. + (ecoff_directive_ent, ecoff_stab): Use ISDIGIT instead of isdigit. + * expr.c: Include "safe-ctype.h" instead of <ctype.h>. + (integer_constant): Use ISALNUM/TOUPPER instead of + isalnum/islower/toupper. + (operand): Use TOLOWER instead of isupper/tolower. + * gasp.c: Include "safe-ctype.h" instead of <ctype.h>. + (sb_strtol, level_0, change_base, doinstr): Use ISDIGIT instead + of isdigit. + (process_assigns, whatcond): Use TOUPPER instead of toupper. + (chartype_init): Use ISALPHA/ISDIGIT instead of isalpha/isdigit. + (main): For gettext, also set the LC_CTYPE locate facet. + * hash.c: Include "safe-ctype.h". + (main): Use TOLOWER instead of isupper/tolower. + * itbl-lex.l: Don't include <ctype.h>. + * listing.c: Include "safe-ctype.h" instead of <ctype.h>. + (listing_newline): Use ISCNTRL instead of isascii/iscntrl. Don't + omit non-ASCII characters. + (debugging_pseudo): Use ISSPACE instead of isspace. + * macro.c: Include "safe-ctype.h" instead of <ctype.h>. + (buffer_and_nest): Use ISALNUM instead of isalnum. + (get_token): Use ISALPHA/ISALNUM instead of isalpha/isalnum. + (define_macro): Use ISUPPER/TOLOWER instead of isupper/tolower. + (macro_expand_body): Use ISALNUM/ISDIGIT/ISUPPER/ISALPHA + instead of isalnum/isdigit/isupper/isalpha. + (check_macro): Use ISALPHA/ISALNUM/ISUPPER/TOLOWER instead + of isalpha/isalnum/isupper/tolower. + * read.c: Include "safe-ctype.h" instead of <ctype.h>. + (read_a_source_file): Use ISUPPER/TOLOWER/ISDIGIT instead of + isupper/tolower/isdigit. + (s_mri_common): Use ISDIGIT instead of isdigit. + (s_mri_sect): Use ISDIGIT/TOUPPER instead of isdigit/toupper. + (s_float_space): Use ISALPHA instead of isalpha. + (ignore_rest_of_line): Use ISPRINT instead of isprint. + (float_cons): Use ISALPHA instead of isalpha. + (next_char_of_string): Use ISDIGIT/ISXDIGIT instead of + isdigit/isxdigit. + * symbols.c: Include "safe-ctype.h" instead of <ctype.h>. + (save_symbol_name): Use ISLOWER/TOUPPER instead of + islower/toupper. + (symbol_find_base): Use TOUPPER instead of islower/toupper. + (decode_local_label_name): Use ISDIGIT instead of isdigit. + +2001-09-18 Martin Schwidefsky <schwidefsky@de.ibm.com> + + * tc-s390.c (s390_insn): Add code to cope with 6 byte O_constants + in 64 bit mode and make format "e" work. + +2001-09-18 Alan Modra <amodra@bigpond.net.au> + + * dwarf2dbg.c (dwarf2_directive_file): Avoid signed/unsigned warning. + + * write.c (set_symtab): Update bfd_alloc declaration. Use a temp + var to ensure bfd_alloc arg is the right type. + (write_object_file): Cast args of bfd_seek. Replace bfd_write with + bfd_bwrite. + + * config/obj-coff.c: Replace calls to bfd_write with calls to + bfd_bwrite. Cast args of bfd_seek. + + * config/obj-elf.c (obj_elf_change_section): Avoid signed/unsigned + warning. + + * config/tc-mn10300.c (set_arch_mach): Make param unsigned. + + * config/tc-tic54x.c (tic54x_mlib): Replace bfd_read call with + call to bfd_bread. + +2001-09-15 Hans-Peter Nilsson <hp@bitrange.com> + + * config/tc-sh.h (sh_force_relocation): Prototype. + (struct fix): Forward declare. + * config/tc-sh.c (type sh_operand_info): Move to top of file. + (cons, s_align_bytes): Remove old-type declarations. + (sh_elf_suffix, parse_reg, dot, parse_exp, parse_at, get_operand, + get_operands, get_specific, insert, build_relax, + insert_loop_bounds, build_Mytes): Prototype. + (little): Make static. Prototype. + (check, tc_Nout_fix_to_chars): Delete unused functions. + +2001-09-14 Eric Christopher <echristo@redhat.com> + + * config/tc-mips.c (md_parse_option): Remove setting mips_64 via + -mgp32/mgp64. + +2001-09-14 Kevin Lo <kevlo@openbsd.org> + + * configure.in: Add arm-openbsd target. + * configure: Regenerate. + +2001-09-14 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * configure.in: Change machine triplets from mips-*-linux-gnu* to + mips*-*-linux*. + +2001-09-12 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (append_insn): Don't rightshift BFD_RELOC_16_PCREL. + +2001-09-11 Richard Henderson <rth@redhat.com> + + * config/tc-alpha.c (alpha_elf_section_letter): New. + (alpha_elf_section_flags): New. + * config/tc-alpha.h (md_elf_section_letter): New. + (md_elf_section_flags): New. + * config/tc-ia64.c (ia64_elf_section_letter): New. + * config/tc-ia64.h (md_elf_section_letter): New. + +2001-09-11 Jakub Jelinek <jakub@redhat.com> + + * config/obj-elf.c (obj_elf_parse_section_letters): Use 'M' instead + of 'm', 'S' instead of 's'. Update bad_msg. + * config/tc-ppc.c (ppc_section_letter): Update bad_msg. + * config/tc-i370.c (i370_sectioN_letter): Update bad_msg. + +2001-09-09 Alan Modra <amodra@bigpond.net.au> + + * expr.c (expr): Move code setting "retval" to the end of the loop, + and rearrange for efficiency. For "PIC code" subtraction, use + "rightseg" rather than recalculating. For "symbol OP symbol" + subtract, set "retval" to absolute_section if symbols in same + section. + * symbols.c (resolve_symbol_value): Resolve "sym +/- expr" to an + O_symbol. Simplify a +/- b code. Allow equality and non-equality + comparisons on symbols from any section. Allow other comparison + operators as for subtraction. + (symbol_equated_reloc_p): New predicate function. + * symbols.h (symbol_equated_reloc_p): Declare. + * write.c (relax_segment <rs_machine_dependent>): Ensure segment + for expression syms is set correctly. + (adjust_reloc_syms): Use symbol_equated_reloc_p. + (write_relocs): Likewise. + (write_object_file): Likewise. + * config/tc-mips.c (md_estimate_size_before_relax): Likewise. + * config/tc-i386.c (md_assemble <Output jumps>): Don't lose part + of a complex expression when setting up frag_var. + +2001-09-07 Richard Henderson <rth@redhat.com> + + * config/tc-alpha.c (alpha_reloc_op_tag): Replace need_seq with + require_seq and allow_seq. Let !literal omit the sequence number. + (tokenize_arguments): Reject sequence numbers of !allow_seq. + +2001-09-08 Jakub Jelinek <jakub@redhat.com> + + * config/tc-sparc.c (md_apply_fix3): Handle relocs against SEC_MERGE + section symbols the same way as externs. + +2001-09-07 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (s_mipsset): Reallow unrestricted use of .set mipsX + pseudo-op. + +2001-09-07 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (append_insn): Handle BFD_RELOC_16_PCREL. + (macro_build): Use BFD_RELOC_16_PCREL_S2 only for embedded + PIC, BFD_RELOC_16_PCREL for the rest. + (mips_ip): Likewise. + (md_pcrel_from): return the right offset for the differently shifted + pcrel relocs. + (md_apply_fix): Handle BFD_RELOC_16_PCREL. + +2001-09-05 Richard Henderson <rth@redhat.com> + + * config/tc-ia64.c (FUNC_IPLT_RELOC): New. + (pseudo_func): Add @iplt. + (pseudo_opcode): Add data16 and data16.ua. + (md_begin): Set iplt pseudo. + (ia64_cons_fix_new): Handle 16 byte iplt reloc specially. + +2001-09-04 Richard Henderson <rth@redhat.com> + + * config/tc-alpha.c (struct alpha_insn): Make sequence scalar long. + (MACRO_LITERAL, MACRO_BASE, MACRO_BYTOFF, MACRO_JSR): Remove. + (alpha_macros): Remove occurrences of same. + (O_lituse_addr, O_gprel): New. + (DUMMY_RELOC_LITUSE_*): New. + (s_alpha_ucons, s_alpha_arch): Prototype. + (alpha_reloc_op): Construct elements via DEF macro. + (ALPHA_RELOC_SEQUENCE_OK): Remove. + (struct alpha_reloc_tag): Rename from alpha_literal_tag; rename + members to not be literal specific. + (next_sequence_num): New. + (md_apply_fix3): Cope with missing GPDISP_LO16. Adjust for + added/removed BFD relocations. + (alpha_force_relocation, alpha_fix_adjustable): Likewise. + (alpha_adjust_symtab_relocs): Handle GPDISP relocs as well. + (tokenize_arguments): Parse ! relocations properly. + (find_macro_match): Delete unused macro argument types. + (assemble_insn): Add reloc parameter; emit that instead of the + default as appropriate. + (get_alpha_reloc_tag): New. Split from ... + (emit_insn): ... here. Allocate a reloc tag for GPDISP. + (assemble_tokens): Don't search macros if user relocation present. + Copy reloc sequence number to insn struct. + (emit_ldgp): Remove user reloc handling. + (load_expression, emit_lda, emit_ldah, emit_ir_load): Likewise. + (emit_loadstore, emit_ldXu, emit_ldil, emit_stX): Likewise. + (emit_sextX, emit_division, emit_jsrjmp, emit_retjcr): Likewise. + * config/tc-alpha.h (tc_adjust_symtab): Always define. + (struct alpha_fix_tag): Name members less literal specific. + +2001-09-04 Jeffrey A Law (law@cygnus.com) + + * tc-h8300.c (tc_gen_reloc): Give an error if we try to take the + address of two symbols in different sections. + +2001-08-31 Eric Christopher <echristo@redhat.com> + Jason Eckhardt <jle@redhat.com> + + * config/tc-mips.c (mips_cpu_info): Add support for mipsisa32, + 5kc, and 20kc. Clean up old entries. + +2001-08-31 J"orn Rennecke <amylaar@redhat.com> + Jeff Law <law@redhat.com> + + * config/tc-h8300.c (build_bytes): For OBJ_ELF, make relocation's + offset match H8 ELF spec. + (md_section_align): Alternate implementation for BFD_ASSEMBLER. + (md_apply_fix): Fix argument and return types for BFD_ASSEMBLER. + + * tc-h8300.c (relocation mappings): Remove. Moved to tc-h8300.h. + (build_bytes): Mark fixups for PCrel branches as signed. For + OBJ_ELF, make sure the reloc's offset points to the first byte + to be modified. + (md_convert_frag): Update definiton based on BFD_ASSEMBLER. + * tc-h8300.h (relocation mappings): Add. + +2001-08-30 J"orn Rennecke <amylaar@redhat.com> + + * tc-h8300.c (tc_crawl_symbol_chain, tc_headers_hook): Don't + define for BFD_ASSEMBLER. + (tc_reloc_mangle): Likewise. + (tc_gen_reloc): New function for BFD_ASSEMBLER. + +2001-08-29 Jeffrey A Law (law@cygnus.com) + + * config/tc-h8300.c (h8300hmode): Record the machine type + if BFD_ASSEMBLER is defined. + (h8300smode, md_begin): Similarly. + +2001-08-29 Joel Sherrill <joel@OARcorp.com> + + * configure.in (i[3456]86-*-rtems*, m68*-*-rtems*): Change + default from coff to elf. + * configure: Regenerate. + +2001-08-29 J"orn Rennecke <amylaar@redhat.com> + + * tc-h8300.c: If OBJ_ELF, include elf/h8.h, and define + assorted coff relocations to the corresponding elf relocations. + * tc-h8300.h (TARGET_ARCH, TARGET_FORMAT): Define appropriately. + + * configure.in: Add case for h8300-*-elf. + * configure: Regenerate. + +2001-08-29 J"orn Rennecke <amylaar@redhat.com> + + * doc/internals.texi (MD_PCREL_FROM_SECTION): Change + documentation to reflect reality. + +2001-08-27 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (load_address): Reflect change to MAX_GPREL_OFFSET. + (macro): Reflect change to MAX_GPREL_OFFSET. + +2001-08-27 Torbjorn Granlund <tege@swox.com> + Staffan Ulfberg <staffanu@swox.se> + Linus Nordberg <linus@swox.se> + Alan Modra <amodra@bigpond.net.au> + + * configure.in: Recognise powerpc*le*, not just powerpcle*. + * configure: Regenerate. + * config/tc-ppc.c (PPC_LO, PPC_HI, PPC_HA, PPC_HIGHER, + PPC_HIGHERA, PPC_HIGHEST, PPC_HIGHESTA, SEX16): New macros. + (md_assemble): Use them. + (ppc_machine): Support stub for ELF64 as well as XCOFF. + (md_pseudo_table): Add "llong", "quad". + (md_parse_option): Match default_cpu of powerpc*. + (ppc_arch): Likewise. + (ppc_subseg_align): Only for OBJ_XCOFF. + (ppc_target_format): Return elf64-powerpc strings for 64 bit ELF. + (md_begin): Select PPC_OPCODE_64 for 64 bit. + (ppc_insert_operand): Don't bother testing 'file' before calling + as_bad_where. Use as_bad_where for operand->insert errors. + (mapping): Add ELF64 relocation modifiers. + (ppc_elf_suffix): Replace symbol on BFD_RELOC_PPC64_TOC reloc + expressions with abs_symbol. + (ppc_elf_cons): Correct offset for little endian targets. + (ppc_elf_frob_symbol): New. + (md_assemble): Add support for 64 bit ELF relocs. + (ppc_tc): Ensure 8 byte alignment when 64 bit. + (ppc_is_toc_sym): Only define for OBJ_XCOFF and OBJ_ELF. Match + ".toc" section for 64 bit ELF. + (ppc_fix_adjustable): New. Macro body moved from tc-ppc.h. + (md_apply_fix3): Silence warning with ATTRIBUTE_UNUSED. Only do + the ppc_is_toc_sym check for OBJ_XCOFF and OBJ_ELF. For 64 bit, + use BFD_RELOC_PPC64_TOC16_DS instead of BFD_RELOC_PPC_TOC16. + Expand on comments, error message. Add support for 64 bit relocs, + and use PPC_HI etc. macros. + * config/tc-ppc.h (MAX_MEM_FOR_RS_ALIGN_CODE): Define. + (HANDLE_ALIGN): Define to generate nops in code sections rather + than zeros. + (TC_FORCE_RELOCATION): Force for BFD_RELOC_PPC64_TOC. + (ELF_TC_SPECIAL_SECTIONS): Add 64 bit ELF sections. + (tc_fix_adjustable): Move body of macro to tc-ppc.c. + (ppc_fix_adjustable): Declare. + (tc_frob_symbol): Define. + (ppc_elf_frob_symbol): Declare. + +2001-08-26 Andreas Jaeger <aj@suse.de> + + * config/tc-s390.c: Add missing prototypes + (md_gather_operands): Make static. + +2001-08-26 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.h (MAX_GPREL_OFFSET): Change it to the maximum + allowed value, not the word beyond maximum. + * config/tc-mips.c (macro_build_lui): Code cleanup. + (macro): Reflect change to MAX_GPREL_OFFSET. + (mips_ip): Check explicitly against S_EX_NONE. + (my_get_SmallExpression): parse for %gp_rel, not %gprel. + (md_apply_fix): Code cleanup. + +2001-08-24 Andreas Jaeger <aj@suse.de> + + * config/tc-ppc.h: Fix prototype declaration. + +2001-08-23 Jakub Jelinek <jakub@redhat.com> + + * config/tc-ia64.c (dot_endp): Set function symbol sizes. + * config/obj-elf.c (obj_elf_size): When size is constant, free + and clear symbol_get_obj(sym)->size if any. + +2001-08-21 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (md_begin): Warn about incompatibility between + -march=FOO and -mipsN option, continue with default ISA. + +2001-08-21 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (md_parse_option): #ifdef the + traditional/non-traditional names as it is done in mips_target_format. + +2001-08-20 Richard Henderson <rth@redhat.com> + + * config/tc-alpha.h (MD_APPLY_FIX3): Define. + * config/tc-alpha.c (md_apply_fix3): Rename from md_apply_fix; + use seg parameter instead of now_seg. + +2001-08-18 H.J. Lu <hjl@gnu.org> + + * config/tc-mips.c (show): Add the missing prototype. + +2001-08-18 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (S_EX_*): New enum for my_getSmallExpression() + return values. + (mips_ip): Use the new return values instead of characters. Add + support for %higher and %highest. + (LP): Remove. + (RP): Remove. + (my_getSmallExpression): Make parsing case insensitive and more + reliable. Add support for %higher and %highest. Further support to + parse %gprel and %neg is implemented but currently deactivated. + +2001-08-17 Alan Modra <amodra@bigpond.net.au> + + * ecoff.c (ecoff_frob_symbol): Remove casts from bfd_get_gp_size. + (ecoff_build_symbols): Likewise. + * read.c (s_lcomm_internal): Fix signed/unsigned warning. + +2001-08-16 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (mips_elf_final_processing): Set elf header flags + for n32 ABI if appropriate. + +2001-08-16 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (cons_fix_new_mips): Remove. + * config/tc-mips.h (TC_CONS_FIX_NEW): Remove. + (cons_fix_new_mips): Remove. + +2001-08-14 Jeff Johnston <jjohnstn@redhat.com> + + * expr.c (operand)[LITERAL_PREFIXDOLLAR_HEX]: Treat $L as + a label, not a hex constant. + +2001-08-13 Nick Clifton <nickc@cambridge.redhat.com> + + * config/tc-v850.h: Add missing prototypes. + +2001-08-12 Martin Schwidefsky <schwidefsky@de.ibm.com> + + * config/tc-s390.c (s390_elf_cons): Correct fixups for PLT + relocations. + +2001-08-12 TAKAI Kousuke <takai@vlsi.kuee.kyoto-u.ac.jp> + + * config/tc-sparc.c (cons_fix_new_sparc): Move + `sparc_no_align_cons = 0;' to... + (s_uacons): ...here so that sparc_no_align_cons will get + cleared properly. + +2001-08-11 Kazu Hirata <kazu@hxi.com> + + * config/tc-mips.c: Fix a comment typo. + +2001-08-10 Richard Sandiford <rsandifo@redhat.com> + + * config/tc-mips.c (move_register): New function. + (macro_build): Remove OPCODE_IS_MEMBER's gp32 argument. + (mips_ip): Likewise. + (macro2): Use move_register rather than macro_build for moves. + (mips16_macro): Likewise. + (macro): Likewise. Handle M_MOVE. + +2001-08-10 Andreas Jaeger <aj@suse.de> + + * configure.in: Add -Wstrict-prototypes and -Wmissing-prototypes + to build warnings. + * configure: Regenerate. + +2001-08-10 Alan Modra <amodra@bigpond.net.au> + + * as.h (alloca): Don't declare if __GNUC__. Remove an old comment. + Comment indentation of #pragma. + * macro.c (alloca): Likewise. + + * config/tc-ppc.c: Revert 2001-08-08. + +2001-08-09 Alan Modra <amodra@bigpond.net.au> + + * symbols.c: Add missing prototypes. + * config/e-i386elf.c: Likewise. + * config/e-i386coff.c: Likewise. + * config/e-i386aout.c: Likewise. + * config/obj-coff.c: Likewise. + (def_symbol_in_progress, stack): Move definition. + * config/obj-elf.c: Add missing prototypes. + (obj_elf_change_section): Make static. + (obj_elf_parse_section_letters): Likewise. + (obj_elf_section_word): Likewise. + (obj_elf_section_type): Likewise. + +2001-08-08 Alan Modra <amodra@bigpond.net.au> + + From 1999-10-25 Torbjorn Granlund <tege@swox.com> + * config/tc-ppc.c (md_apply_fix3): Replace haphazard code for + determining reloc type with code reading operands->reloc field. + +2001-08-08 Alan Modra <amodra@bigpond.net.au> + + * config/obj-elf.c (elf_copy_symbol_attributes): Make it a global + function, and expand old obj-elf.h OBJ_COPY_SYMBOL_ATTRIBUTES here. + * config/obj-elf.h (elf_copy_symbol_attributes): Declare. + (OBJ_COPY_SYMBOL_ATTRIBUTES): Call elf_copy_symbol_attributes. + + * output-file.c (output_file_create): Don't try to open a second + time as it's unnecessary. FOPEN_W was undefined too. + +2001-08-07 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (macro_build): Replace magic constants by defines. + (mips_ip): Likewise. Typo. + +2001-08-04 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (mips_abi_string): Initialize with NULL instead + of 0. + (RELAX_ENCODE): Replace bfd_vma by valueT. + (load_address): Formatting. + (macro): Likewise. Code cleanup. Typo. + (macro2): Formatting. + (md_parse_option): Typo. + (s_mipsset): Reorder cases to look nicer. + (md_estimate_size_before_relax): Formatting. Code cleanup. + (mips_elf_final_processing): Check against NULL instead of 0. + (md_obj_end): Remove ugly `' in message string. + (s_mips_ent): Remove ugly `' in message string. + +2001-07-30 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (md_begin): Take -mcpu value into account even when + -mipsX is specified. Make both -mcpu/-march and -mcpu/-mtune pairs + mutually exclusive (if they are different). + (md_parse_option): Warn if an -march/-mtune/-mcpu/-m<cpu> option is + set more than once. + +2001-08-03 Richard Sandiford <rsandifo@redhat.com> + + * config/tc-mips.c (md_apply_fix): Don't subtract the symbol value + from GPREL addends. + +2001-08-02 Richard Sandiford <rsandifo@redhat.com> + + * doc/c-mips.tex (-mgp32, -mfp32): Added -mfp32, unified with -mgp32. + * config/tc-mips.c (mips_fp32, mips_32bit_abi): New static variables. + (md_long_opts): Add -mfp32 option. + (md_parse_option): Handle it. Set mips_32bit_abi given -mabi=32. + (md_show_usage): Show usage for -mfp32 and -mgp32. + (HAVE_32BIT_GPRS, HAVE_32BIT_FPRS): New macros. + (HAVE_64BIT_GPRS, HAVE_64BIT_FPRS): New macros, inverse of the above. + (HAVE_32BIT_ADDRESSES): New macro. + (load_register): Use HAVE_32BIT_GPRS to determine the register width. + (load_address): Use HAVE_32BIT_ADDRESSES to determine the address size. + (s_cprestore, s_cpadd): Likewise. + (macro): Use HAVE_32BIT_GPRS to determine the width of registers + used in branch and M_LI_D macros. Use HAVE_64BIT_FPRS to determine + the width registers used in M_LI_DD macros. Use HAVE_32BIT_ADDRESSES + to determine the width of addresses in load, store and jump macros. + (macro2): Use HAVE_32BIT_GPRS to determine the width of registers + used in set instructions; do not check the address size for them. + Use HAVE_32BIT_ADDRESSES to determine the width of addresses in + unaligned load and store macros. + (mips_ip): Use the new macros to check the width of a register when + processing float constants. Force a constant into memory if it is + destined for an FPR and the FPRs are wider than the GPRs. Warn about + odd FPR numbers if HAVE_32BIT_FPRS. Use HAVE_32BIT_GPRS rather + than mips_gp32 to select synthetic instructions. + (macro_build): Use HAVE_32BIT_GPRS rather than mips_gp32 to select + synthetic instructions. + +2001-08-01 Christian Groessler <cpg@aladdin.de> + + * config/tc-z8k.c (parse_reg): If a string starts with "r", "rl", + "rh", "rr", "rq", or "sp" then don't automatically assume + it's a register name. Check whether there is a number + following. + +2001-08-01 Alan Modra <amodra@bigpond.net.au> + + * config/tc-i386.c (lex_got): Match lower case relocation tokens. + Don't allocate more space than necessary for the input line copy. + +2001-08-01 Alan Modra <amodra@bigpond.net.au> + + * read.c: Standardize error/warning messages - don't capitalise, no + final period or newline, don't say "ignored" or "zero assumed" for + as_bad messages. In some cases, change the wording to that used + elsewhere for similar messages. + * app.c: Likewise. + * as.c: Likewise. + * atof-generic.c: Likewise. + * cgen.c: Likewise. + * cond.c: Likewise. + * depend.c: Likewise. + * dwarf2dbg.c: Likewise. + * ecoff.c: Likewise. + * expr.c: Likewise. + * frags.c: Likewise. + * input-file.c: Likewise. + * input-scrub.c: Likewise. + * listing.c: Likewise. + * output-file.c: Likewise. + * stabs.c: Likewise. + * subsegs.c: Likewise. + * symbols.c: Likewise. + * write.c: Likewise. + * ecoff.c (ecoff_directive_end): Test for missing name by + comparing input line pointers rather than reading string. + (ecoff_directive_ent): Likewise. + * read.c (s_set): Likewise. + (s_align): Report a warning rather than an error for + alignment too large. + (s_comm): Check for missing symbol name. + (s_lcomm_internal): Likewise. + (s_lsym): Likewise. + (s_globl): Use is_end_of_line instead of looking for '\n'. + (s_lcomm_internal): Likewise. + (ignore_rest_of_line): Report a warning rather than an error. + +2001-07-31 Geoffrey Keating <geoffk@redhat.com> + + * config/tc-ppc.c (ppc_elf_validate_fix): It's OK to have + any kind of relocation against a not-loaded section. + +2001-07-30 Alan Modra <amodra@bigpond.net.au> + + * config/obj-elf.c (obj_elf_symver): Temporarily modify lex_type + to include '@' in symbol names when parsing versioned symbols + rather than calling get_symbol_end multiple times. + * config/tc-i370.c (register_name): Format fixes. Don't call + get_symbol_end after parsing number. + * config/tc-mn10200.c (data_register_name): Format fixes. Hoist + code out of conditional. + (address_register_name): Likewise. + (other_register_name): Likewise. + * config/tc-mn10300.c (r_register_name): Likewise. + (xr_register_name): Likewise. + (data_register_name): Likewise. + (address_register_name): Likewise. + (other_register_name): Likewise. + * config/tc-ppc.c (register_name): Likewise. + * config/tc-s390.c (register_name): Likewise. + +2001-07-27 Stephane Carrez <Stephane.Carrez@worldnet.fr> + + * config/tc-m68hc11.c (md_estimate_size_before_relax): Fix bsr + and bra relax: update fragP->fr_fix after the fixup. + +2001-07-27 Tracy Kuhrt <Tracy.Kuhrt@microchip.com> + + * read.c (s_set): Check for missing symbol name. + +2001-07-26 Alan Modra <amodra@bigpond.net.au> + + * write.c (relax_segment <rs_space>): Account for fr_fix. + +2001-07-25 H.J. Lu <hjl@gnu.org> + + * config/tc-mips.c (md_estimate_size_before_relax): Make sure + we treat weak like extern only for ELF. + (mips_fix_adjustable): Make sure we don't adjust extern/weak + symbols only for ELF. + +2001-07-25 Chris Demetriou <cgd@broadcom.com> + + * config/tc-mips.c: Fix spelling error in comment. + +2001-07-25 Dave Brolley <brolley@redhat.com> + + * app.c (LEX_IS_PARALLEL_SEPARATOR): New macro. + (IS_PARALLEL_SEPARATOR): New macro. + (do_scrub_begin): Set up characters in tc_parallel_separator_chars + as LEX_IS_PARALLEL_SEPARATOR, if it is defined. + (do_scrub_chars): Handle LEX_PARALLEL_SEPARATOR chars like + LEX_LINE_SEPARATOR except that we go to state 1 (as if the label has + been seen). + +2001-07-24 Alan Modra <amodra@bigpond.net.au> + + * Makefile.am (DEP_FLAGS): Define, add -DOBJ_MAYBE_ELF. + (DEP1, DEPTC, DEPOBJ, DEP2): Use it. + Update dependencies with "make dep-am". + * Makefile.in: Regenerate. + * doc/Makefile.in: Regenerate. + +2001-07-23 Kazu Hirata <kazu@hxi.com> + + * config/tc-alpha.h: Fix formatting. + * config/tc-arc.c: Likewise. + * config/tc-d10v.h: Likewise. + * config/tc-hppa.c: Likewise. + * config/tc-i370.c: Likewise. + * config/tc-i386.h: Likewise. + * config/tc-i960.h: Likewise. + * config/tc-ia64.c: Likewise. + * config/tc-ia64.h: Likewise. + * config/tc-m32r.c: Likewise. + * config/tc-m68k.c: Likewise. + * config/tc-m88k.c: Likewise. + * config/tc-ns32k.c: Likewise. + * config/tc-pdp11.c: Likewise. + * config/tc-pj.h: Likewise. + * config/tc-s390.c: Likewise. + * config/tc-sparc.c: Likewise. + * config/tc-sparc.h: Likewise. + * config/tc-tic80.c: Likewise. + * config/tc-w65.h: Likewise. + +2001-07-23 Alan Modra <amodra@bigpond.net.au> + + * symbols.c (S_GET_VALUE): Don't treat O_constant and local + symbols specially. Always resolve, adding fr_address to value. + * write.c (write_object_file): Don't add fr_address to sym values. + (relax_frag): Likewise. + (relax_segment): Likewise. + * config/obj-ieee.c (do_symbols): Likewise. + * config/tc-cris.c (md_convert_frag): Likewise. + * config/tc-fr30.c (md_convert_frag): Likewise. + * config/tc-i386.c (md_convert_frag): Likewise. + * config/tc-m32r.c (md_convert_frag): Likewise. + * config/tc-m68hc11.c (md_convert_frag): Likewise. + * config/tc-mcore.c (md_convert_frag): Likewise. + * config/tc-mips.c (mips16_extended_frag): Likewise. + * config/tc-ns32k.c (md_convert_frag): Likewise. + * config/tc-m68k.c (md_convert_frag_1): Likewise. + (BRANCHBWL, BRABSJUNC, BRABSJCOND, BRANCHBW, FBRANCH, DBCCLBR, + DBCCABSJ, PCREL1632, PCINDEX, ABSTOPCREL): Decrement. + (md_relax_table): Remove first four entries. Format. + (md_estimate_size_before_relax): Remove old_fix. Don't bother + setting fr_var. Simplify byte branch checks. + +2001-07-23 Alan Modra <amodra@bigpond.net.au> + + * config/tc-hppa.c (pa_parse_nonneg_cmpsub_cmpltr): Remove + "isbranch" param as all calls have it set. + (pa_parse_neg_cmpsub_cmpltr): Likewise. + (pa_parse_nonneg_add_cmpltr): Likewise. Remember result of + strcasecmp in "nullify" var. + (pa_parse_neg_add_cmpltr): Likewise. + (pa_ip): Don't "save_s" unnecessarily. Update calls to above + functions. Don't print wrong conditions in error messages. + +2001-07-23 Andreas Jaeger <aj@suse.de> + + * config/tc-s390.c (s390_force_relocation): Removed. + + * config/tc-s390.h: Remove double declaration of + TC_FORCE_RELOCATION. + +2001-07-22 H.J. Lu <hjl@gnu.org> + + * config/tc-mips.c (s_mips_end): Remove unused variables. + (s_mips_frame): Add ATTRIBUTE_UNUSED. + +2001-07-17 Andreas Schwab <schwab@suse.de> + + * config/tc-m68k.c (md_pseudo_table) [OBJ_ELF]: Add .file and + .loc. + (md_assemble) [OBJ_ELF]: Call dwarf2_emit_insn before emitting + insn. + * config/tc-m68k.h (DWARF2_LINE_MIN_INSN_LENGTH): Define. + +2001-07-17 matthew green <mrg@eterna.com.au> + + * config/tc-i386.c (comment_chars): Don't use '/' as comment start if + TE_NetBSD. + (line_comment_chars): Set to '/' if TE_NetBSD. + +2001-07-14 matthew green <mrg@eterna.com.au> + + * configure.in (i386-*-netbsdelf*): New target. + * configure: Regenerate. + +2001-07-10 Mark Elbrecht <snowball3@softhome.net> + + * config/obj-coff.c (coff_frob_symbol): Don't merge if the storage + class of the non-debug symbol is C_NULL. + +2001-07-10 Anders Norlander <anorland@synergenix.se> + + * doc/as.texinfo (Incbin): Fix grammatical errors. + +2001-07-10 Nick Clifton <nickc@cambridge.redhat.com> + + * depend.c: Use FOPEN_.. macros in calls to fopen(). + * input-file.c: As above. + * itbl-ops.c: As above. + * listing.c: As above. + * output-file.c: As above. + * read.c: As above. + +2001-07-08 Anders Norlander <anorland@synergenix.se> + + * read.c (s_incbin): New .incbin function. + * read.c (potable): Add "incbin" pseudo-op. + * read.h: Add s_incbin prototype. + * doc/as.texinfo (incbin): Document .incbin pseudo-op. + * NEWS: Mention new feature. + +2001-07-07 Nick Clifton <nickc@cambridge.redhat.com> + + * ecoff.c (add_file): Only set debug_type to DEBUG_NONE if it is + DEBUG_UNSPECIFIED. + +2001-07-06 John Healy <jhealy@redhat.com> + + * cgen.c (gas_cgen_save_fixups): Modified to allow more than one + set of fixups to be stored. + (gas_cgen_restore_fixups): Modified to allow the fixup chain to be + restored to be chosen from any that are saved. + (gas_cgen_swap_fixups): Modified to allow the current set of + fixups to be swapped with any other set that has been saved. + (gas_cgen_initialize_saved_fixups_array): New routine. + * cgen.h: Modifed prototypes for gas_cgen_save_fixups, + gas_cgen_restore_fixups, and gas_cgen_swap_fixups. Added definitions + or MAX_SAVED_FIXUP_CHAINS. + * config/tc-m32r.c (assemble_two_insns): Changed calls to fixup + store, swap and restore fuctions to reflect the new interface. + +2001-07-06 Nick Clifton <nickc@cambridge.redhat.com> + + * config/tc-m68k.c (md_estimate_size_before_relax): Catch and + ignore empty, ineffectual alignment frags when deciding if a + branch can be short. + +2001-07-05 Steve Ellcey <sje@cup.hp.com> + + * config/tc-ia64.c (special_section): Add SPECIAL_SECTION_INIT_ARRAY + and SPECIAL_SECTION_FINI_ARRAY. + (special_section_name): Add .init_array and .fini_array. + (md_pseudo_table): Add init_array and fini_array. + (md): Add pointer_size and pointer_size_shift fields. + (setup_unwind_header): New static function. + (output_unw_records): Modify to use setup_unwind_header. + (generate_unwind_image, dot_endp): Modify to use md.pointer_size and + md.pointer_size_shift. + (md_begin): Initialize md.pointer_size and md.pointer_size_shift. + +2001-07-05 Ben Elliston <bje@redhat.com> + + * README (Supported platforms): m88k no longer suffers bitrot. + + * config/tc-m88k.c (md_pseudo_table): Remove redundant "global". + +2001-07-05 Alan Modra <amodra@bigpond.net.au> + + * struc-symbol.h (struct local_symbol): Rename lsy_offset to + lsy_value. Correct typos in comments. + * symbols.c (local_symbol_make): Update for name change. + (local_symbol_convert): Likewise. + (colon): Likewise. + (S_GET_VALUE): Likewise. + (S_SET_VALUE): Likewise. + (print_symbol_value_1): Likewise. + (resolve_symbol_value): Likewise. Don't divide local sym values + by OCTETS_PER_BYTE twice. + +2001-07-04 Jim Wilson <wilson@redhat.com> + + * config/tc-ia64.c (md_pseudo_table): Add 2byte, 4byte, and 8byte. + + * config/tc-ia64.c (is_conditional_branch): Rewrite to exclude mod + sched branches. + +2001-07-05 Ben Elliston <bje@redhat.com> + + * read.c (s_fill): Correct spelling error in comments. + + * doc/c-m88k.texi: New file. + * doc/Makefile.am (CPU_DOCS): Add c-m88k.texi. + * doc/Makefile.in: Regenerate. + * doc/all.texi: Set M880X0. + * doc/as.texinfo: Hook in m88k-dependent documentation. + +2001-07-04 Eric Christopher <echristo@redhat.com> + + * doc/c-mips.texi (MIPS Opts): Document 12000 as valid cpu. + + * config/tc-mips.c (mips_cpu_info_table): Add rm5200, rm5231, rm5261, + and rm5721 as valid cpu strings. + (md_show_usage): Add rm5200, rm5231, rm5261, rm5721. + +2001-07-04 Richard Sandiford <rsandifo@redhat.com> + + * config/tc-mips.c (md_apply_fix): Prevent addend from becoming zero + if it's expected to be non-zero. + +2001-07-03 Nick Clifton <nickc@cambridge.redhat.com> + + * config/tc-sh.c (sh_frob_section): Replace symbol_get_frag() with + fscan->fx_frag. + + * write.c (TC_FINALIZE_SYMS_BEFORE_SIZE_SEG): Default to 1. + (write_object_file): Set finalize_syms to + TC_FINALIZE_SYMS_BEFORE_SIZE_SEG just before size_segs is + called. + + * doc/internals.texi: Document + TC_FINALIZE_SYMS_BEFORE_SIZE_SEG. + +2001-07-02 Alan Modra <amodra@bigpond.net.au> + + * config/tc-ppc.c: Formatting fixes. + +2001-07-01 Ben Elliston <bje@redhat.com> + + * config/tc-m88k.c: Back out warning fixes from 2001-06-24, as + they cause some subtle breakage. Will fix them again later. + +2001-06-28 Nick Clifton <nickc@cambridge.redhat.com> + + * config/obj-coff.c (obj_coff_ln): Treat a .ln directive + outside of a function as a .appline directive. + +2001-06-28 Eric Christopher <echristo@redhat.com> + H.J. Lu <hjl@gnu.org> + + * config/tc-mips.c (mips_arch): New. Use mips_arch instead + of mips_cpu for the ISA selection. + (md_longopts): Add OPTION_MARCH and OPTION_MTUNE. + (md_parse_option): Handle OPTION_MARCH and OPTION_MTUNE. + (mips_tune): New. Use mips_tune for scheduling and optimization + issues. + (append_insn): Use mips_tune and mips_arch. + (macro_build): Ditto. + (mips_ip): Ditto. + (md_begin): Handle mips_arch, mips_tune and mips_cpu. For + backwards compatability mips_cpu generates arch and tune. + (md_show_usage): Document new behavior. + + * doc/c-mips.texi (MIPS Opts): Document -march and -mtune. + Deprecate -mcpu. + + * NEWS: Update. + +2001-06-27 Nick Clifton <nickc@cambridge.redhat.com> + + * write.c (write_object_file): Do not set finalize_syms until + after the segments have been sized. Some backends may still + need to access the syms's frags in order to adjust relaxed + frags. + + * config/tc-arm.c (do_ldst): Use MVN to build simple inverted + constants. + +2001-06-27 Alan Modra <amodra@bigpond.net.au> + + * write.c (fixup_segment <Difference of 2 syms same seg>): Don't + subtract MD_PCREL_FROM_SECTION for 68k. + (fixup_segment <Difference of 2 syms different seg>): Only fudge + by adding MD_PCREL_FROM_SECTION for 68k or if not already pcrel. + +2001-06-27 Tracy A. Kuhrt <Tracy.Kuhrt@microchip.com> + + * write.c (fixup_segment <Difference of 2 syms same seg>): If + pcrel, subtract MD_PCREL_FROM_SECTION value. + +2001-06-24 Ben Elliston <bje@redhat.com> + + * stabs.c (generate_asm_file): Make local variable `len' a size_t. + +2001-06-24 Jakub Jelinek <jakub@redhat.com> + + * config/tc-alpha.c (tc_gen_reloc): Handle relocs against SEC_MERGE + section symbols the same way as externs. + +2001-06-24 Ben Elliston <bje@redhat.com> + + * config/tc-m88k.c (md_number_to_imm): Remove; unused since 1993. + (emit_relocations): Ditto. + (s_bss): Ditto. + (md_begin): Reformat comments to conform to the GNU standards. + (md_assemble): Ditto. + + * config/tc-m88k.c (get_reg): Adjust type of `reg_prefix' to char. + (md_parse_option): Mark parameters as unused. + (md_show_usage): Ditto. + (calcop): Adjust type of `reg_prefix' to char. + (get_reg): Ditto. + (getval): Adjust type of local `c' to char. + (md_create_short_jump): Mark from_addr, to_addr params as unused. + (md_create_long_jump): Ditto. + (md_estimate_size_before_relax): Mark parameters as unused. + + * config/tc-m88k.c (md_pseudo_table): Properly terminate the table + to allay a possible compiler warning. + +2001-06-22 Nick Clifton <nickc@cambridge.redhat.com> + + * doc/internals.texi (CPU backend): Document md_atof. + +2001-06-22 Matthew Wilcox <willy@ldl.fc.hp.com> + + * config/tc-hppa.c (pre_defined_registers): Add %mrp (millicode + return pointer) alias for %r2 or %r31, depending on 32 or 64 bit + architecture. + +2001-06-21 Philip Blundell <philb@gnu.org> + + * config/tc-arm.c (cplong_flag): Rename to long_flag. All uses + updated. + (insns): Remove entry for adrl. Add long_flag for adr. + (do_adr): Handle `l' suffix. + (do_adrl): Delete. + +2001-06-21 Alan Modra <amodra@bigpond.net.au> + + * config/tc-hppa.c (CHECK_FIELD_WHERE): Define. + (md_apply_fix): Use it here. Replace printf with equivalent + as_bad_where. + (tc_gen_reloc): Use as_bad_where instead of as_bad. + (md_apply_fix): Here too. + * config/tc-i386.c (tc_gen_reloc): Use as_bad_where instead of as_bad. + * config/tc-m68k.c (tc_gen_reloc): Likewise. + (md_convert_frag_1): Likewise. + +2000-06-20 Tom Rix <trix@redhat.com> + + * config/tc-ppc.c (ppc_comm): Change default alignment to 4 bytes. + +2001-06-18 H.J. Lu <hjl@gnu.org> + + * doc/Makefile.am (info): Depend on $(MANS). + (as.1): Remove the prefix `$(srcdir)/'. + * doc/Makefile.in: Regenerated. + + * as.1: Removed. + +2001-06-18 Philip Blundell <philb@gnu.org> + + * config/tc-arm.c (do_msr): Remove restriction on usage of + immediate operands. + +2001-06-19 Alan Modra <amodra@bigpond.net.au> + + * dwarf2dbg.c (dwarf2_finish): Output file info even when no + line info. + +2001-06-13 Philip Blundell <philb@gnu.org> + + * config/tc-arm.c (thumb_shift): Improve wording of error message. + (do_t_arit): Likewise. + +2001-06-13 Nick Clifton <nickc@cambridge.redhat.com> + + * config/tc-sh.c (md_pseudo_table): Only intercept the .file and + .loc pseudos if the dfwarf2 functions are available. + (md_assemble): Only call dwarf2_emit_insn if it is available. + + * expr.c: Fix typo in comment. + +2001-06-12 Nick Clifton <nickc@cambridge.redhat.com> + + * doc/as.texinfo (Infix Ops): Document that comparison and + combiner operators can be used as infix operators. + +2001-06-12 Peter Jakubek <pjak@snafu.de> + + * config/tc-m68k.c (parse_mri_control_operand): Fix handling + of AND/OR. + (swap_mri_condition): Add HS (alias fo CC) and LO (alias for CS). + (reverse_mri_condition): Likewise. + (swap_mri_condition): Issue warning for conditions that can not be + swapped. + (build_mri_control_operand): Fix order of operands (swapped). + (build_mri_control_operand): Allow upper case extension in structured + control directives. + (s_mri_else): Likewise. + (s_mri_next): Likewise. + (s_mri_for): Likewise. + (s_mri_if): Fix handling comment ('*') in mri mode. + (s_mri_while): Likewise. + * macro.c (macro_expand): Allow macro invocation with empty + extension. + +2001-06-12 Nick Clifton <nickc@cambridge.redhat.com> + + * config/tc-arm.c: Fix test for overlow of literal pool. + +2001-06-11 H.J. Lu <hjl@gnu.org> + + * NEWS: Updated for the new -n option for the MIPS assembler. + + * config/tc-mips.c (md_show_usage): Add -n. + + * doc/as.texinfo: Document the new -n option. + * doc/c-mips.texi: Likewise. + * doc/as.1: Regenerated. + +2001-06-10 Alan Modra <amodra@bigpond.net.au> + + * config/obj-coff.c (obj_coff_section): Formatting fix. + + * config/tc-i386.c (md_assemble): Accept branch hints as ",pt" and + ",pn". + +2001-06-08 H.J. Lu <hjl@gnu.org> + + * config/tc-mips.c (warn_nops): New variable. Set to 0 to + disable warning about all NOPS that the assembler generates. + (macro): Warn NOPS generated only if warn_nops is not 0. + (md_shortopts): Add `n'. + (md_parse_option): Set warn_nops to 1 for `n'. + +2001-06-08 H.J. Lu <hjl@gnu.org> + + * config/tc-mips.c (mips_ip): Properly handle illegal operands. + +2001-06-08 H.J. Lu <hjl@gnu.org> + + * config/tc-mips.c (md_apply_fix): Don't adjust common + extern/weak symbols for ELF. + (md_estimate_size_before_relax): Treat weak like extern for + ELF. + (mips_fix_adjustable): Don't adjust extern/weak symbols for + ELF. + +2001-06-08 Alan Modra <amodra@bigpond.net.au> + + * Makefile.am: 'som' is not wrongly spelled 'some'. + * Makefile.in: Regenerate. + + * config/tc-mips.c (mips16_mark_labels): Reduce number of calls to + S_GET_VALUE by using a temp. + (append_insn): Likewise, and for S_SET_VALUE too. + (mips_emit_delays): Likewise. + (my_getExpression): Likewise. + (md_apply_fix): Likewise. Use "valueT" rather than "long" for "value". + (mips16_extended_frag): Remove code concerned with avoiding + locking in a frag address now that symbols are not finalized until + relaxation is complete. Cater for first relaxation pass having + bogus addresses. Use relax_marker to reliably determine whether a + symbol frag has been reached on the current pass. + +2001-06-07 H.J. Lu <hjl@gnu.org> + + * configure.in: Move "mips-*-linux-gnu*" before "mips-*-gnu*". + * configure: Regenerate. + +2001-06-07 H.J. Lu <hjl@gnu.org> + + * configure.in: Use MIPS_STABS_ELF for Linux/mips and remove + ecoff emulation. + * configure: Regenerate. + +2001-06-07 H.J. Lu <hjl@gnu.org> + + * config/tc-mips.c (mips_pseudo_table): Add "extern" if + MIPS_STABS_ELF is defined. + +2001-06-06 Nick Clifton <nickc@cambridge.redhat.com> + + * as.c (show_usage): Remove L from listing options. It is not a + generic option. + +2001-06-06 Christian Groessler <cpg@aladdin.de> + + * config/tc-z8k.c: Removed many warnings by removing unused + variables and tagging unused parameters as such. + (md_begin): Fixed a typo (","instead of ";"). + (struct ctrl_table): Add parentheses to initialize array + correctly. + (struct flag_table): Likewise. + (struct intr_table): Likewise. + (struct table): Likewise. + (check_operand): "#if 0"'ed since it doesn't seem to be used. + +2001-06-06 Peter Jakubek <pjak@snafu.de> + + * config/tc-m68k.c (md_show_usage): Add all supported ColdFire + options to list (e.g. m5206e, m5307, m5407). + +2001-06-06 Martin Schwidefsky <schwidefsky@de.ibm.com> + + * config/tc-s390.h (TC_FORCE_RELOCATION): Always emit relocations + BFD_RELOC_VTABLE_INHERIT and BFD_RELOC_VTABLE_ENTRY. + +2001-06-06 Alan Modra <amodra@bigpond.net.au> + + * config/tc-i386.c (md_assemble): Handle Pentium4 branch hints. + <JumpByte, JumpDword insn output>: Remove dead code. + +2001-06-06 Tracy Kuhrt <Tracy.Kuhrt@microchip.com> + + * as.c (parse_args): Correct option name "listing-lhs-width2". + +2001-06-05 Nick Clifton <nickc@cambridge.redhat.com> + + * symbols.c (S_SET_EXTERNAL): Do not override a section symbol's + status. + +2001-05-30 Richard Henderson <rth@redhat.com> + + * read.c (emit_leb128_expr): Call md_cons_align. + +2001-05-28 Jeff Sturm <jsturm@one-point.com> + + * config/tc-sparc.c (md_apply_fix3): Handle BFD_RELOC_SPARC_UA16, + BFD_RELOC_SPARC_UA32 and BFD_RELOC_SPARC_UA64. + (tc_gen_reloc): Likewise. + (sparc_cons_align): Don't clear sparc_no_align_cons. + (cons_fix_new_sparc): Substitute BFD_RELOC_SPARC_UA{16|32|64} for + BFD_RELOC_{16|32|64} iff sparc_no_align_cons is set. + +2001-05-27 Alan Modra <amodra@one.net.au> + + * write.c (relax_segment <rs_space>): Check the section of a + symbol to determine whether it is absolute rather than comparing + its frag against zero_address_frag as listings play tricks with + frags. + + * config/tc-m68k.c (md_assemble): Ensure variable part of frag is + allocated in the same chunk as the fixed part. + +2001-05-26 Alan Modra <amodra@one.net.au> + + * write.c (relax_segment <rs_space>): Calculate growth using + addresses before stretch. Prevent repeated error messages. + From Peter Jakubek <pjak@snafu.de> + Use as_bad_where and as_warn_where to pinpoint errors. + +2001-05-25 Alan Modra <amodra@one.net.au> + + * symbols.c (resolve_symbol_value): Always set segment, even when + not finalizing symbol value. + + * config/obj-ieee.c (write_object_file): Set finalize_syms. + * config/obj-coff.c (write_object_file): Likewise. + * (size_section): Remove rs_space assert as fr_symbol is no longer + removed. + (fill_section): Likewise. + + * configure.in: Replace linuxoldld with linux*oldld. + * configure: Regenerate. + + From 2.11 branch 2001-03-30 Richard Henderson <rth@redhat.com> + * config/tc-i386.c (md_convert_frag): Don't die on local symbols + that have been finalized. + + * symbols.c (resolve_symbol_value): Clear sy_resolving before + taking exit_dont_set_value. + + * write.c (relax_segment <rs_space>): Don't zap fr_symbol when + relaxing. + +2000-05-24 Tom Rix <trix@redhat.com> + + * config/obj-coff.c (add_lineno): xcoff allows negative line + numbers + * config/tc-ppc.c (ppc_stabx): fix generated symbol + +2001-05-24 Alan Modra <amodra@one.net.au> + + * write.c (write_object_file): Set finalize_syms = 1 before + size_seg is called. + +2001-05-23 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (ISA_HAS_64BIT_REGS): Add ISA_MIPS64 as 64 bit + architecture, remove erraneous ISA_MIPS32. + (md_show_usage): Add MIPS r12k support. + (mips_cpu_info_table): Add MIPS r12k support. + +2001-05-22 Alan Modra <amodra@one.net.au> + + * config/tc-arc.c (md_assemble): Use is_end_of_line instead of + testing for NULs. + + * symbols.c (resolve_symbol_value): Remove "finalize" param, + instead use finalize_syms directly. Don't treat expressions + specially with regard to finalize_syms. Update calls to self. + (resolve_local_symbol): Update call to resolve_symbol_value. + (S_GET_VALUE): Likewise. Return resolve_symbol_value if + !finalize_syms. + * symbols.h (resolve_symbol_value): Update prototype. + * config/obj-aout.c (obj_crawl_symbol_chain): Update call + to resolve_symbol_value. + * config/obj-bout.c (obj_crawl_symbol_chain): Likewise. + * config/obj-coff.c (do_relocs_for): Likewise. + (yank_symbols): Likewise. + (fixup_segment): Likewise. + * config/obj-vms.c (obj_crawl_symbol_chain): Likewise. + * config/tc-mips.c (md_convert_frag): Likewise. + * config/tc-ppc.c (ppc_frob_symbol): Likewise. + (ppc_fix_adjustable): Likewise. + * dwarf2dbg.c (dwarf2dbg_estimate_size_before_relax): Likewise. + (dwarf2dbg_convert_frag): Likewise. + * ehopt.c (eh_frame_estimate_size_before_relax): Likewise. + (eh_frame_convert_frag): Likewise. + * expr.c (make_expr_symbol): Likewise. + * write.c (adjust_reloc_syms): Likewise. + (write_object_file): Likewise. + (relax_segment): Likewise. + (fixup_segment): Likewise. + (finalize_syms): Init to zero, and update comment. + (write_object_file): Set finalize_syms to 1 rather than 2. + * doc/internals.texi (sy_value): Mention finalize_syms. + (S_GET_VALUE): Remove restriction on when S_GET_VALUE can be called. + + * config/tc-m68k.c (relaxable_symbol): Only treat external symbols + as relaxable if embedded system, make weak syms non-relaxable. + Move definition.. + (tc_m68k_fix_adjustable): ..so it can be used here. + (md_apply_fix_2): Sign extend without conditional. + + * config/tc-v850.c: Update copyright. + +2001-05-16 Jeff Johnston <jjohnstn@redhat.com> + + * cgen.c (gas_cgen_tc_gen_reloc): Changed error message when + howto entry is not found. + +2001-05-15 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-mn10300.c (mn10300_force_relocation): Don't + optimize differences between symbols in code sections to + constants. + (mn10300_fix_adjustable): Don't adjust to section+offset + relocations pointing at symbols in code sections. + +2001-05-16 Alan Modra <amodra@one.net.au> + + * config/tc-arc.c (md_assemble): Correct dwarf2_emit_insn param + for 8 byte insns. + * config/tc-i386.c (md_assemble): Call dwarf2_emit_insn before + opcodes are output rather than after. Delete insn_size. + * config/tc-v850.c (md_assemble): Similarly, but delete + total_insn_size. + +2001-05-14 Richard Henderson <rth@redhat.com> + + * ehopt.c (eh_frame_convert_frag): Fix missed subtype adjustment + last change. + +2001-05-14 Richard Henderson <rth@redhat.com> + + * ehopt.c (get_cie_info): Rename from eh_frame_code_alignment; + also collect whether to expect an FDE augmentation. + (check_eh_frame): Rewrite as a state machine. Track where in + an FDE we are located, skip any augmentation. + (eh_frame_estimate_size_before_relax): Get code alignment from + the fragment subtype. + (eh_frame_relax_frag, eh_frame_convert_frag): Likewise. + * read.c (emit_leb128_expr): Call check_eh_frame. + +2001-05-14 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-mn10300.c (md_assemble): Anchor dwarf2 line info + before a relaxable insns. + +2001-05-13 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-mn10300.c (tc_gen_reloc): Don't reject differences + between symbols if the base symbol is in the current section; + emit a PC-relative relocation instead. + +2001-05-12 Peter Targett <peter.targett@arccores.com> + + * config/tc-arc.c: Update copyright and tidy source comments. + (md_pseudo_table): Add directive .cpu back as an alias for + .option. Add .file and .line for dwarf2 support. + (arc_mach_type): Make bfd_mach_arc_6 default. + (md_longopts): Add entry 'pre-v6' representing old command line + option when assembling for 'arc5' core versions. + (md_parse_option): Make OPTION_ARC same as OPTION_ARC6, for new + default behaviour. + (arc_code_symbol): Make symbol value for @h30 fixup expression + equal to O_constant. + (md_assemble): Call dwarf2_emit_insn. + Include "dwarf2dbg2.h". Formatting fixes throughout file. + * config/tc-arc.h (DWARF2_LINE_MIN_INSN_LENGTH): Define. + * doc/c-arc.texi (ARC_CORE_DEFAULT): Update to new default. + +2001-05-11 Jakub Jelinek <jakub@redhat.com> + + * config/tc-ia64.c (special_linkonce_name): New. + (make_unw_section): Map .gnu.linkonce.t.FOO text section into + .gnu.linkonce.ia64unw{,i}.FOO. + (ia64_elf_section_type): Handle .gnu.linkonce.ia64unw{,i}.FOO. + (dot_endp): Add comment about it. + +2001-05-11 Nick Clifton <nickc@cambridge.redhat.com> + + * config/tc-arm.c (arm_handle_align): When truncating an aligned + block, ensure that the low order bits of the alignment are + preserved. + +2001-05-10 Alan Modra <amodra@one.net.au> + + * config/obj-vms.c (obj_crawl_symbol_chain): Don't take address of + symbol_next. + + * config/tc-fr30.c (md_estimate_size_before_relax): Return size of + current variable part of frag. + * config/tc-m32r.c (md_estimate_size_before_relax): Likewise. + * config/tc-openrisc.c (md_estimate_size_before_relax): Likewise. + * config/tc-m68hc11.c (RELAX_STATE): Define. + (RELAX_LENGTH): Define. + (md_estimate_size_before_relax): Handle non-relaxable cases + separately from relaxable cases for clarity, and return correct + size for multi-pass relaxation. + * config/tc-tahoe.c (RELAX_LENGTH): Correct. + (md_estimate_size_before_relax): As for tc-m68hc11.c. + (md_convert_frag): Remove "length_code". + * config/tc-vax.c (RELAX_STATE): Define. + (RELAX_LENGTH): Define. + (md_relax_table): Add missing entry. + (md_estimate_size_before_relax): As for tc-m68hc11.c. + (md_convert_frag): Remove "length_code". + * config/tc-ns32k.c (md_estimate_size_before_relax): Simplify and + don't bother setting fr_var. Return correct size for multi-pass + relaxation. + * config/tc-v850.c (md_estimate_size_before_relax): Rewrite. + (md_convert_frag): Don't bother clearing fr_var. + (md_pseudo_table): Correct initialization. + * config/tc-h8500.c (md_convert_frag): Don't bother clearing fr_var. + (md_estimate_size_before_relax): No need to set fr_var. + * config/tc-mcore.c (md_convert_frag): Don't bother clearing fr_var. + (md_estimate_size_before_relax): No need to set fr_var. + +2001-05-09 Richard Henderson <rth@redhat.com> + + * config/tc-ia64.c (generate_unwind_image): Align the fragment + beginning a function's unwind info block. + +2001-05-09 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-mn10300.c (md_apply_fix3): Accept PC-relative relocs. + +2001-05-08 Andreas Schwab <schwab@suse.de> + + * config/tc-m68k.c: Instead of replacing -1 by 64 in assignment to + fx_pcrel_adjust explicitly sign extend when reading it. + +2001-05-08 Alan Modra <amodra@one.net.au> + + * config/tc-m68k.c (md_estimate_size_before_relax): Set fr_var + from md_relax_table, and combine some switch cases. + +2001-05-06 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-mn10300.c (md_assemble): Subtract operand->shift + from offset in non-pcrel operands too. + +2001-05-06 Nick Clifton <nickc@cambridge.redhat.com> + + * config/tc-arm.h (MAX_MEM_FOR_RS_ALIGN_CODE): Define. + * config/tc-arm.c (arm_handle_align): Do not insert more than + MAX_MEM_FOR_RS_ALIGN_CODE bytes. + (arm_frag_align_code): Use MAX_MEM_FOR_RS_ALIGN_CODE. + +2001-05-03 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * Makefile.am (TARG_ENV_HFILES): Add te-hppa64.h and te-hppalinux64.h. + Run "make dep-am". + * Makefile.in: Regenerate. + * configure.in: Remove duplicate mips-*-ecoff* entry. + * configure: Regenerate. + + * config/obj-ecoff.c (obj_pseudo_table): Fix terminating entry. + (n_names): Cast away type mismatch. + (ecoff_sec_sym_ok_for_reloc): Add unused attribute. + (obj_ecoff_frob_symbol): Likewise. + * ecoff.c: (add_file): Add unused attribute. + (ecoff_directive_begin): Likewise. + (ecoff_directive_bend): Likewise. + (ecoff_directive_def): Likewise. + (ecoff_directive_dim): Likewise. + (ecoff_directive_scl): Likewise. + (ecoff_directive_size): Likewise. + (ecoff_directive_type): Likewise. + (ecoff_directive_tag): Likewise. + (ecoff_directive_val): Likewise. + (ecoff_directive_endef): Likewise. + (ecoff_directive_end): Likewise. + (ecoff_directive_ent): Likewise. + (ecoff_directive_extern): Likewise. + (ecoff_directive_file): Likewise. + (ecoff_directive_fmask): Likewise. + (ecoff_directive_frame): Likewise. + (ecoff_directive_mask): Likewise. + (ecoff_directive_loc): Likewise. + (mark_stabs): Likewise. + (ecoff_stab): Likewise. + (ecoff_frob_symbol): Cast away type mismatch. + (ecoff_padding_adjust): Likewise. + (ecoff_build_symbols): Likewise. + (ecoff_build_procs): Likewise. + (ecoff_build_aux): Likewise. + (ecoff_build_strings): Likewise. + (ecoff_build_fdr): Likewise. + (ecoff_build_debug): Likewise. + * itbl-ops.c (itbl_assemble): Variable initialization. + +2001-05-03 Alan Modra <amodra@one.net.au> + + * config/tc-i386.c (i386_displacement): Call as_bad for bad GOTOFF + expressions rather than triggering an assert. + +2001-05-02 Johan Rydberg <jrydberg@opencores.org> + + * config/tc-openrisc.c: New file. + * config/tc-openrisc.h: Likewise. + + * Makefile.am: Add OpenRISC target. + * Makefile.in: Regenerated. + + * configure.in (openrisc-*-*): Add target. + * configure: Regenerated. + +2001-05-02 Nick Clifton <nickc@cambridge.redhat.com> + + * config/tc-arm.c (arm_frag_align_code): Change error message to + more explanatory version. + +2001-04-29 Keith M Wesolowski <wesolows@foobazco.org> + + * config/tc-mips.c (md_parse_option): Also accept + elf64-tradbigmips and elf64-tradlittlemips for OPTION_64. + +2001-04-27 David Mosberger <davidm@hpl.hp.com> + + * config/tc-ia64.c (dot_spillmem_p): Fix output_spill_?sprel_p() + argument passing order: predicate goes last, not first. + +2001-04-27 Sean McNeil <sean@mcneil.com> + + * configure.in: Add arm-vxworks. + * configure: Regenerate. + +2001-04-26 Nick Clifton <nickc@cambridge.redhat.com> + + * config/tc-arm.c (arm_handle_align): New Function: Generate + no-op filled alignment frags. + (arm_frag_align_code): New Function: Create a code alignment frag. + (arm_init_frag): New Function: Initialse the target dependent + parts of a frag. + + * config/tc-arm.h (TC_FRAG_TYPE): Define. + (TC_FRAG_INIT): Define. + (HANDLE_ALIGN): Define. + (md_do_align): Define. + +2001-04-25 Nick Clifton <nickc@cambridge.redhat.com> + + * config/obj-coff.c (do_linenos_for): Check to see if the filename + symbol has been initialised before extracting its symbol index. + +2001-04-24 H.J. Lu <hjl@gnu.org> + + * configure: Regenerated with the right version of autoconf. + +2001-04-24 Christian Groessler <cpg@aladdin.de> + + * config/tc-z8k.c (build_bytes): 12 and 16 bit displacements now + generate R_CALLR and R_REL16 relocations + +2000-04-20 Jason Eckhardt <jle@redhat.com> + + * config/tc-d10v.h (tc_frob_label): Update the symbol's frag + since frag_now can change after d10v_cleanup is called. + +2001-04-16 David O'Brien <obrien@FreeBSD.org> + + * configure.in: Add the em type for FreeBSD targets. + * configure: Regenerate. + +2001-04-14 Alexandre Oliva <aoliva@redhat.com> + + * struc-symbol.h (struct local_symbol): New TC_LOCAL_SYMFIELD_TYPE. + * symbols.c (local_symbol_convert): Call TC_LOCAL_SYMFIELD_CONVERT. + + * config/tc-mn10300.c (md_assemble): Simplify offset adjustment of + pc-relative relocations not placed at the end of the instruction. + +2001-04-13 Jim Wilson <wilson@redhat.com> + + * tc-ia64.c (is_conditional_branch): Return true for br, brl, and br. + excluding br.i. + +2001-04-13 Jakub Jelinek <jakub@redhat.com> + + * config/obj-elf.c (obj_elf_change_section): Add entsize argument, + handle SHF_MERGE and SHF_STRINGS. + (obj_elf_parse_section_letters): Set SHF_MERGE and SHF_STRINGS. + (obj_elf_section): Allow additional argument specifying entity size. + * write.c (adjust_reloc_syms): Keep relocations against local symbols + in SEC_MERGE sections. + +2001-04-12 Jason Merrill <jason_merrill@redhat.com> + + * dwarf2dbg.c (process_entries): Don't optimize redundant line notes. + +2001-04-12 Alexandre Oliva <aoliva@redhat.com> + + * expr.c (operand): Pass &c to md_parse_name(). + * config/tc-ia64.h, config/tc-ppc.h, config/tc-tic54x.h: Adjust. + +2001-04-07 Steven J. Hill <sjhill@cotw.com> + + * config/tc-mips.c: Support ELF64 for traditional MIPS targets. + + * Makefile.am: (TARG_ENV_HFILES): Add tc-mips.h. + * Makefile.in: Regenerated. + + * configure.in: Use traditional MIPS targets for Linux/MIPS. + * configure: Regenerated. + +2001-04-06 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-mn10300.c (xr_registers): Added `pc'. + +2001-04-05 Alan Modra <alan@linuxcare.com.au> + + * configure.in: Add h8500-*-coff and h8500-*-rtems targets. + * configure: Regenerate. + + * config/tc-h8500.c (md_estimate_size_before_relax): Add missing + cases, and always return size based on current fr_subtype. + (md_begin): Move initialization of md_relax_table.. + (md_relax_table): ..to static initializer. Set rlx_length for + UNDEF_WORD_DISP cases. + * config/tc-w65.c (md_estimate_size_before_relax): Likewise. + (md_begin): Likewise. + (md_relax_table): Likewise. + * config/tc-mcore.c (md_estimate_size_before_relax): Likewise. + (md_relax_table): Set rlx_length for UNDEF_WORD_DISP cases. + Set rlx_backward and rlx_forward to zero for unused states. + * config/tc-sh.c (md_estimate_size_before_relax): Likewise. + (md_relax_table): Set rlx_length for UNDEF_WORD_DISP cases. + (UNCOND12, UNCOND32): Remove duplicate defines. + +2001-04-04 Hans-Peter Nilsson <hp@axis.com> + + * config/tc-cris.c (md_estimate_size_before_relax) <case + ENCODE_RELAX (STATE_CONDITIONAL_BRANCH, STATE_UNDF)>: Don't emit + 32-bit branch, just set fragP->fr_subtype. Set fragP->fr_var. + <all cases>: Always set fragP->fr_var using md_cris_relax_table. + Add cases to cover all relax states. + (cris_insn_first_word_frag): New. + (md_assemble): Call cris_insn_first_word_frag to get the first + frag in an insn, not frag_more. Don't call dwarf2_emit_insn at + end. Drop variable insn_size. + (gen_bdap): Call cris_insn_first_word_frag, not frag_more. + (cris_sym_leading_underscore): Wrap first as_bad parameter in _(). + (cris_sym_no_leading_underscore, s_cris_file, s_cris_loc): Ditto. + + * write.c (write_object_file): Reset broken word state before + calling relax_seg. + +2001-03-31 Alan Modra <alan@linuxcare.com.au> + + * listing.c (listing_listing): Enable listing on EDICT_NOLIST_NEXT + for one line if not already enabled. + * cond.c (s_elseif): Correct conditional assembly listing. + (s_else): Likewise. + + * cond.c (s_endif): Correct handling of "if .. elseif .." trees. + Don't abort on NULL current_cframe. + +2001-03-30 Alan Modra <alan@linuxcare.com.au> + + * dwarf2dbg.c (dwarf2_directive_file): Fix warnings. + (dwarf2dbg_convert_frag): Pass `finalize_syms' to resolve_symbol_value. + * config/obj-aout.c (obj_crawl_symbol_chain): Likewise. + * config/obj-bout.c (obj_crawl_symbol_chain): Likewise. + * config/obj-coff.c (do_relocs_for): Likewise. + (yank_symbols): Likewise. + (fixup_segment): Likewise. + * config/tc-ppc.c (ppc_frob_symbol): Likewise. + (ppc_fix_adjustable): Likewise. + * config/tc-mips.c (md_convert_frag): Likewise. + * config/obj-vms.c (obj_crawl_symbol_chain): Likewise. + * ehopt.c (eh_frame_convert_frag): Likewise. + * expr.c (make_expr_symbol): Likewise. + + * frags.h (struct frag): Add last_fr_address. Reorder fields for + better packing. + * symbols.c (resolve_symbol_value): Don't fix expression values + until relaxation is complete. + (resolve_local_symbol): Pass `finalize_syms' to resolve_symbol_value. + (S_GET_VALUE): Likewise, and return unresolved expression value. + * write.c (finalize_syms): New. + (relax_and_size_seg): Split into.. + (relax_seg): New function, returns 1 if anything changed.. + (size_seg): And the remainder of relax_and_size_seg. + (fixup_segment): Arrange for final resolution of sym values. + (adjust_reloc_syms): Likewise. + (write_object_file): Likewise, and repeatedly call relax_seg until + nothing more changes. + (relax_segment): Return 1 if anything changed. Use correct types + for rs_org `target' and `after'. + * write.h (finalize_syms): Declare. + (relax_segment): Update prototype. + + * config/tc-sh.c (md_estimate_size_before_relax): Add extra + do-nothing cases to switch to avoid abort on a second relaxation + pass, and tidy code a little. + * config/tc-cris.c (md_estimate_size_before_relax): Likewise. + * config/tc-h8500.c (md_estimate_size_before_relax): Likewise. + * config/tc-w65.c (md_estimate_size_before_relax): Likewise. + * config/tc-i386.c (UNCOND_JUMP, COND_JUMP, COND_JUMP86): Decrement. + (md_relax_table): Remove first four unused entries. Increment + rlx_length by one throughout table, and update comments to suit. + (md_estimate_size_before_relax): Return size of current variable + part of frag to reflect reality when relaxing more than once. + * config/tc-mcore.c (COND12, UNCD12): Rename to DISP12 throughout. + (COND32, UNCD32): Rename to DISP32 throughout. + (UNDEF_WORD_DISP): Renumber to 3. + (md_estimate_size_before_relax): Add extra do-nothing cases. + * config/tc-mn10200.c (md_estimate_size_before_relax): Rewrite. + * config/tc-mn10300.c (md_estimate_size_before_relax): Rewrite. + * config/tc-ns32k.c (md_estimate_size_before_relax): Add cases to + handle word and dword branches. + +2001-03-29 Hans-Peter Nilsson <hp@axis.com> + + * config/tc-cris.h (tc_fix_adjustable): Allow only + BFD_RELOC_CRIS_32_GOTREL of the PIC relocs. + * config/tc-cris.c (cris_get_pic_suffix): Correct reloc type in + example in comment to valid type. + +2001-03-28 H.J. Lu <hjl@gnu.org> + + * read.c (equals): Set to local for COFF only if it hasn't been + defined before. + +2001-03-28 Alan Modra <alan@linuxcare.com.au> + + * config/tc-hppa.c (DEFAULT_LEVEL): Define. + (md_begin): Use it when setting default architecture. + +2001-03-27 Nick Papadonis <nick@coelacanth.com> + + * read.c (equals): (for COFF) default symbols to being local. + +2001-03-27 Hans-Peter Nilsson <hp@axis.com> + + * configure.in (cris-*-*): Change default emulation to criself. + (cris-*-*aout*): New rule. + * configure: Regenerate. + +2001-03-26 Martin Schwidefsky <schwidefsky@de.ibm.com> + + * config/tc-s390.c (tc_s390_fix_adjustable): Add test for + BFD_RELOC_390_GOTENT. + * config/tc-s390.h (TC_RELOC_RTSYM_LOC_FIXUP): Add test for + BFD_RELOC_390_GOTENT. + +2001-03-26 Nick Clifton <nickc@redhat.com> + + * config/tc-s390.h (TC_FORCE_RELOCATION): Define. + * config/tc-s390.c (s390_force_relocation): New function: Force + relocations for VTINHERIT relocs. + +2001-03-23 Stephane Carrez <Stephane.Carrez@worldnet.fr> + + * doc/as.texinfo: Put @c man begin to generate the as man page. + When generating man, define all the variables. Re-organize some + options to obtain better indentation of man page. + * doc/Makefile.am (MANCONF, TEXI2POD, POD2MAN): New variable. + (as.1): Build from as.texinfo. + * doc/Makefile.in: Regenerate.Index: binutils/Makefile.am + +2001-03-25 Alan Modra <alan@linuxcare.com.au> + + * config/tc-i386.c (i386_scale): Accept an absolute expression for + scale factor, and return the end of the expression. + (i386_operand): Modify for above. + +2001-03-23 Nick Clifton <nickc@redhat.com> + + * doc/as.texinfo: Document --listing-XXX command line switches. + Explain why listings behave differently when -pipe is used. + +2001-03-23 Richard Sandiford <rsandifo@redhat.com> + + * write.c (fix_new_exp): Print an error if passed a register. + +2001-03-23 Hans-Peter Nilsson <hp@axis.com> + + * config/tc-cris.c: Tweak attribution. Fix typos. PIC support. + (PIC_SUFFIX_CHAR): New macro. + (cris_get_pic_suffix, cris_get_pic_reloc_size): New functions. + (pic): New variable. + (md_longopts): New option --pic. + (OPTION_PIC): Define. + (md_estimate_size_before_relax): Tweak longish comment. + (md_create_long_jump): Make the long jumps generate ADD.D offset,PC. + (md_assemble): Handle a PIC relocation on prefix and normal + instruction operands. + <output_instruction.insn_type == CRIS_INSN_BRANCH>: Handle + "complex" operand expressions. Call frag_more outside + gen_cond_branch_32 parameter list. + (cris_process_instruction): Handle PIC relocs on parsed + operand expressions. Validize PIC reloc sizes. + (get_autoinc_prefix_or_indir_op): Handle PIC suffix. + (gen_bdap): Handle "complex" operand expressions. + (gen_cond_branch_32): Use as_warn_where, not as_warn. Use + ADD.D offset,PC as jump instruction if generating PIC. Generate + error instead of crashing on complex expressions. + (cris_number_to_imm): Add segT parameter. All callers changed. + Use segT parameter, not now_seg, for segment of fixup. Handle + PCREL relocations but check that they are fully resolved. + (md_parse_option): Handle OPTION_PIC. + (tc_gen_reloc): Handle PIC relocs. + (md_show_usage): Update for --pic. + (md_apply_fix3): Renamed from md_apply_fix. + (md_pcrel_from): Accept emitting PCREL relocs when ELF. + (md_cris_force_relocation): Force relocation for PIC relocs. + + * config/tc-cris.h: Tweak attribution. + (MD_APPLY_FIX3): Define. + (IS_CRIS_PIC_RELOC): New macro. + (TC_RELOC_RTSYM_LOC_FIXUP): Define. + (tc_fix_adjustable): Don't adjust a globally visible symbol when + generating ELF. + (tc_frob_symbol): Avoid emitting undefined symbols. + +2001-03-20 Alan Modra <alan@linuxcare.com.au> + + * frags.h (struct frag): Add relax_marker. + * write.c (is_dnrange): Delete. + (relax_frag): Use correct types for `aim', `target', `address'. + Delete `offset', `was_address'. Test `relax_marker' instead of + using fragile (and slow) address test. + (relax_segment): Init and flip `relax_marker'. + +2001-03-19 Alan Modra <alan@linuxcare.com.au> + + * config/tc-i386.c (md_assemble <REGISTER_WARNINGS>): Correct + used register name. + +2001-03-18 Stephane Carrez <Stephane.Carrez@worldnet.fr> + + * config/tc-m68hc11.c (md_pseudo_table): Recognize xrefb to comply + with 'Motorola specification for assembly language input standard'. + +2001-03-17 Richard Henderson <rth@redhat.com> + + * dwarf2dbg.c (user_filenum, user_filenum_allocated): Remove. + (dwarf2_directive_loc): Don't use them. + (dwarf2_directive_file): Reject duplicate file definitions. + (get_filenum): Zero allocated memory. + (out_file_list): Complain about missing file definitions. + +2001-03-17 Alan Modra <alan@linuxcare.com.au> + + * read.c (do_org): Handle complex expressions. + * cgen.c (gas_cgen_finish_insn): Likewise. + +2001-03-15 David Mosberger <davidm@hpl.hp.com> + + * config/tc-ia64.c (md): New member keep_pending_output. + (ia64_flush_pending_output): Flush only if md.keep_pending_output + is not set. + (dot_xdata): Turn on md.keep_pending_output for the duration of + this function. + (dot_xfloat_cons): Ditto. + (dot_xstringer): Ditto. + (dot_xdata_ua): Ditto. + (dot_xfloat_cons_ua): Ditto. + +2001-03-15 Jim Wilson <wilson@redhat.com> + + * config/tc-ia64.c (ia64_unrecognized_line, case '['): Add local + label support. + +2001-03-15 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-sh.c (parse_reg): Match capital MACH and MACL. + +2001-03-15 DJ Delorie <dj@redhat.com> + + * stabs.c (s_stab_generic): Don't corrupt the notes obstack by + blindly freeing string if it isn't at the top of the obstack. + +2001-03-13 Alan Modra <alan@linuxcare.com.au> + + * config/tc-i386.c (RELOC_ENUM): Define. Use throughout file. + (NUM_FLAG_CODE): Define. + (lex_got): New function. + (got_reloc): New global var. + (x86_cons_fix_new): New function. + (x86_cons): New function. + (i386_immediate): Use lex_got here, replacing inline code. Change + "ignoring junk.." error message to "junk.." + (i386_displacement): Likewise. + * config/tc-i386.h (TC_PARSE_CONS_EXPRESSION): Define. + (x86_cons): Declare. + (TC_CONS_FIX_NEW): Define. + (x86_cons_fix_new): Declare. + +2001-03-12 Nick Clifton <nickc@redhat.com> + + * config/tc-arm.c (md_begin): Always set machine type based on + cpu_variant. + +2001-03-07 Alan Modra <alan@linuxcare.com.au> + + * config/tc-i386.c (struct _i386_insn): Rename disp_reloc to reloc. + (md_assemble) <smallest displacement>: Use correct field of i.op[] + union. + <JumpInterSegment output>: Use correct i.disp_reloc[]. + <immediate output>: Likewise. + +2001-03-06 Nick Clifton <nickc@redhat.com> + + * config/tc-arm.c (md_apply_fix3): Clear bit zero of offset in + BLX(1) instruction. + +2001-03-06 Igor Shevlyakov <igor@windriver.com> + + * config/tc-m68k.c : Add 5407 to archs[] table. + (HAVE_LONG_BRANCH): Add mcf5407. + (select_control_regs): Recognize 5407. + +2001-03-02 Dave Brolley <brolley@redhat.com> + + * config/tc-m32r.c (expand_debug_syms): Call frag_align_code rather + than m32r_do_align. + +2001-03-02 Richard Sandiford <rsandifo@redhat.com> + + * config/atof-ieee.c (TC_LARGEST_EXPONENT_IS_NORMAL): New macro. + (gen_to_words): Print warnings if NaNs are found and the target CPU + does not support them. Allow largest exponent to be used in normal + numbers if TC_LARGEST_EXPONENT_IS_NORMAL evaluates to true. + +2001-02-28 Andreas Jaeger <aj@suse.de>, Bo Thorsen <bo@suse.de> + + * config/tc-i386.c (tc_gen_reloc): Remove ugly hack which is not needed + anymore since we use bfd_elf_generic_reloc now. + (md_apply_fix3): Only apply hack for partial_inplace if not using RELA. + +2001-02-27 Alan Modra <alan@linuxcare.com.au> + + * configure.in (BFD_VERSION): New. + (AM_INIT_AUTOMAKE): Use $BFD_VERSION. + * configure: Regenerate. + * Makefile.am: Run "make dep-am" + * Makefile.in: Regenerate. + * doc/Makefile.in: Regenerate. + +2001-02-26 Mark Elbrecht <snowball3@bigfoot.com> + + * config/obj-coff.c [BFD_ASSEMBLER] (obj_coff_section): Set + SEC_NEVER_LOAD when the 'n' flag is used. + Add SEC_NEVER_LOAD to matchflags. + +2001-02-24 Stephane Carrez <Stephane.Carrez@worldnet.fr> + + * symbols.c (decode_local_label_name): Initialize message_format + only when an error is reported (perf pb due to I18N). + +2001-02-23 H.J. Lu <hjl@gnu.org> + + * dwarf2dbg.c (dwarf2_directive_file): Call s_app_file (0) if + BFD_ASSEMBLER is not defined. + +2001-02-23 Richard Sandiford <rsandifo@redhat.com> + + * config/tc-mn10300.c (md_apply_fix3): Don't mark a fixup as + done if it's against a symbol. + +2001-02-22 Timothy Wall <twall@cygnus.com> + + * config/tc-ia64.c (ia64_target_format): Return ia64-aix-specific + target formats if applicable. + * config/te-ia64aix.h: New. Configuration for AIX5 on IA-64. + * Makefile.am (TARG_ENV_HFILES): Added config/te-ia64aix.h. + * Makefile.in: Regenerated. + * configure.in: Added configuration for ia64-*-aix*. + * configure: Regenerated. + +2001-02-21 David Mosberger <davidm@hpl.hp.com> + + * config/tc-ia64.c (enum operand_match_result): New type. + (operand_match): Change return type to operand_match_result. + Fix all returns appropriately, adding support for returning the + out-of-range result. + (parse_operands): New locals result, error_pos, out_of_range_pos, + curr_out_of_range_pos. Rewrite operand matching loop to give better + error messages. + +2001-02-21 David Mosberger <davidm@hpl.hp.com> + + * config/tc-ia64.c (struct unwind): Add member "prologue_count". + (dot_proc): Clear unwind.prologue_count to zero. + (dot_prologue): Increment unwind.prologue_count. + (dot_restore): If second operand is omitted, use + unwind.prologue_count -1 for "ecount" (# of additional regions to + pop). Decrement unwind.prologue_count by number of regions + popped. + +2001-02-21 Nick Clifton <nickc@redhat.com> + + * doc/as.texinfo (Section): Note that some flags to the COFF + version of .section remove attributes rather than setting them. + +2001-02-20 Kazu Hirata <kazu@hxi.com> + + * config/tc-pdp11.c: Fix formatting. + * config/tc-pdp11.h: Likewise. + +2001-02-20 Bo Thorsen <bo@suse.de> + + * config/tc-i386.c (tc_i386_fix_adjustable): Fix GOTPCREL GOT + entry. + +2001-02-18 David O'Brien <obrien@FreeBSD.org> + + * configure.in (cpu_type, arch): Add a generic FreeBSD specification as + all FreeBSD platforms should look the same at this level. + * configure: Rebuilt. + * config/tc-i386.c: Add support for old FreeBSD a.out hosts. + +2001-02-18 lars brinkhoff <lars@nocrew.org> + + * Makefile.am: Add PDP-11 target. + * configure.in: Likewise. + * config/tc-pdp11.c: New file. + * config/tc-pdp11.h: New file. + * doc/Makefile.am: Add PDP-11 documentation. + * doc/all.texi: Likewise. + * doc/as.texinfo: Likewise. + * doc/c-pdp11.texi: New file. + +2001-02-16 matthew green <mrg@redhat.com> + + * cgen.c (gas_cgen_md_apply_fix3): Support BFD_RELOC_64. + +2001-02-13 Jim Wilson <wilson@redhat.com> + + * config/tc-ia64.c (operand_match, case TAG13): Make a BFD_RELOC_UNUSED + reloc instead of a 0 reloc. + (md_apply_fix3): Check for BFD_RELOC_UNUSED instead of 0, and mark it + as done. + * config/tc-ia64.h (TC_RELOC_RTSYM_LOC_FIXUP): Likewise. + +2001-02-13 Ian Lance Taylor <ian@zembu.com> + + * write.c (is_dnrange): Stop as soon as the address becomes + larger. + (relax_frag): Add segment parameter. Only call symbol_get_frag + once. Only call is_dnrange if the symbol is in the same segment, + and the symbol address is larger. + (relax_segment): Pass segment to md_relax_frag and relax_frag. + * write.h (relax_frag): Update declaration. + * config/tc-fr30.c (fr30_relax_frag): Add segment parameter. Pass + it to relax_frag. + * config/tc-m32r.c (m32r_relax_frag): Likewise. + * config/tc-m32r.h (md_relax_frag): Add segment parameter. + (m32r_relax_frag): Update declaration. + * config/tc-mips.h (md_relax_frag): Add segment parameter. + * config/tc-tic54x.h (md_relax_frag): Likewise. + * doc/internals.texi (CPU backend): Update documentation for + md_relax_frag. + +2001-02-13 Alan Modra <alan@linuxcare.com.au> + + * doc/c-i386.texi (i386-Arch): Add "jumps"/"nojumps" blurb. + Mention effect of < 386 architectures on jump promotion. + (i386-Jumps): xref above. Don't assume long disp is 32 bits. + + * config/tc-i386.c (no_cond_jump_promotion): New. + (set_cpu_arch): Parse "jumps" arch modifier. + (insn_size): Modify usage comment. + (ENCODE_RELAX_STATE): Reformat and protect macro arg. + (SIZE_FROM_RELAX_STATE): Rename to DISP_SIZE_FROM_RELAX_STATE. + (TYPE_FROM_RELAX_STATE): New define. + (UNCOND_JUMP, COND_JUMP): Renumber. + (md_relax_table): Reorder to suit. + (COND_JUMP86): New define. + (md_relax_table): Handle COND_JUMP86 cases. Add a few comments. + (md_assemble): Create frag var for jumps of max size, encode relax + state for COND_JUMP86. + (md_estimate_size_before_relax): Handle COND_JUMP86 cases, and + leave conditional jumps small if no_cond_jump_promotion. + (md_convert_frag): Likewise. + + * expr.c (operator): Don't bump input_line_pointer for two char + operators. Instead return operator size via new param num_chars. + (expr): Use above to parse multi-char operators correctly. + +2001-02-12 Jan Hubicka <jh@suse.cz> + + * config/tc-i386.c (i386_displacement): Fix handling of + BFD_RELOC_X86_64_GOTPCREL. + (i386_validate_fix): Likewise. + +2001-02-12 Philip Blundell <pb@futuretv.com> + + * config/tc-arm.c (do_ldst): Improve warnings for unpredictable + ldrt/strt instructions. + +2001-02-11 Maciej W. Rozycki <macro@ds2.pg.gda.pl> + + * config/tc-mips.c (macro): For M_LA_AB emit a + BFD_RELOC_MIPS_CALL16 relocation or a + BFD_RELOC_MIPS_CALL_HI16/BFD_RELOC_MIPS_CALL_LO16 pair instead of + BFD_RELOC_MIPS_GOT16 and + BFD_RELOC_MIPS_GOT_HI16/BFD_RELOC_MIPS_GOT_LO16, respectively for + loading the jump register when generating SVR4_PIC code. + +2001-02-10 Chris Demetriou <cgd@broadcom.com> + + * configure.in: Make 'mipself' and 'mipsecoff' emulations + map to MIPS-specific files, as they used to do before the + change on 2000-05-21. + * configure: Regerate. + +2001-02-10 Chris Demetriou <cgd@broadcom.com> + + * config/tc-mips.c (md_parse_option): Don't try to compile + ELF-only option code if not ELF. + +2001-02-08 David Mosberger <davidm@hpl.hp.com> + + * config/tc-ia64.h (md_elf_section_type): New macro. + (ELF_TC_SPECIAL_SECTIONS): Drop .IA_64.unwind and .IA_64.unwind_info + (they're now handled via ia64_elf_section_type. + + * config/tc-ia64.c (unwind): New members saved_text_seg, + saved_text_subseg, and force_unwind_entry. + (optimize_unw_records): New function to optimize away unnecessary + unwind directives. + (ia64_elf_section_type): New function. + (output_unw_records): Generate unwind info only if the size is + non-zero or if it's forced for some other reason (e.g., + handlerdata or a personality routine). + (generate_unwind_image): Don't switch back to previous + section---stay inside the unwind info section instead so that + handlerdata that may follow goes into the right place. + (dot_handlerdata): Force generation of unwind entry and save the + current active text segment before generating unwind image. + (dot_unwentry): Force generation of unwind entry. + (dot_personality): Ditto. + (dot_endp): Generate unwind table entry only if there is + some unwind info or the unwind entry was forced. + + * config/tc-ia64.c (make_unw_section_name): New macro to form + unwind section name. + (generate_unwind_image): Add "text_name" argument. Use it to + form unwind section name. + (dot_handlerdata): Determine current segment (section) name and + pass it to generate_unwind_image(). + (dot_endp): Determine current segment (section) name and use + it to determine the appropriate unwind section name. + (ia64_md_do_align): Add missing ATTRIBUTE_UNUSED declarations to + n, fill, and max arguments. + +2001-02-09 Schwidefsky <schwidefsky@de.ibm.com> + + * Makefile.am: Add linux target for S/390. + * configure.in: Likewise. + * config/tc-s390.c: New file. + * config/tc-s390.h: New file. + +2001-02-09 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-sh.c (md_pseudo_table): Add uaquad. Use s_uacons for + 2byte, 4byte and 8byte. + +2001-02-08 Alan Modra <alan@linuxcare.com.au> + + * config/tc-hppa.c (pa_build_unwind_subspace): Don't call + md_number_to_chars with size > sizeof (valueT). + +2001-02-06 H.J. Lu <hjl@gnu.org> + + * config/tc-ia64.h (TC_RELOC_RTSYM_LOC_FIXUP): Do fixup if + there is no relocation. + +2001-02-06 H.J. Lu <hjl@gnu.org> + + * config/tc-ia64.h (TC_RELOC_RTSYM_LOC_FIXUP): New. Defined. + + * config/tc-ia64.c (md_parse_option): Only accept the valid + ia64 options on "-axxx". + +2001-02-05 Jim Wilson <wilson@redhat.com> + + * config/tc-ia64.c (errata_nop_necessary_p): Return 0 instead of + aborting for invalid operands. + +2001-02-06 Alan Modra <alan@linuxcare.com.au> + + * config/tc-hppa.c (fix_new_hppa): Pass in unwind directly rather + than via pointer. Update all callers. + (UNWIND_LOW32): Define. + (UNWIND_HIGH32): Define. + (pa_build_unwind_subspace): Use the above macros instead of dumping + bitfields directly. Call frag_more once rather than multiple times. + (md_assemble): Use UNWIND_LOW32. + (pa_entry): Likewise + (pa_procend): Likewise. + (process_exit): Use UNWIND_HIGH32. + +2001-02-04 Stephane Carrez <Stephane.Carrez@worldnet.fr> + + * config/tc-m68hc11.h (LISTING_HEADER): Use m68hc11_listing_header + function to select the header according to the cpu. + (md_after_pass_hook, md_do_align): Remove. + (md_cleanup, m68hc11_cleanup): Remove. + (md_pcrel_from_section): Declare. + * config/tc-m68hc11.c (build_dbranch_insn): Remove insn_size. + (build_jump_insn, build_insn): Likewise. + (m68hc11_listing_header): New function. + (m68hc11_cleanup): Remove. + +2001-02-02 Stephane Carrez <Stephane.Carrez@worldnet.fr> + + * config/tc-m68hc11.c (relaxable_symbol): Relax externally visible + symbols because there is no support for shared libraries and these + symbols can't be overridden (unless they are weak). + +2001-02-01 Momchil Velikov <velco@fadata.bg> + + * dwarf2dbg.c (out_debug_abbrev): Terminate the abbreviations + for the compilation unit with a zero byte. + +2001-01-30 Alan Modra <alan@linuxcare.com.au> + + * config/tc-hppa.c (pa_ip): Support 12 bit branches to absolute + destinations. Correct range check for 17 and 22 bit branches. + +2001-01-25 Nick Clifton <nickc@redhat.com> + + * config/tc-m68k.c (tc_gen_reloc): Do not abort if tcbit is + still set. Issue an error message instead. + (md_estimate_size_before_relax): Delete unused variable + 'buffer_address'. Fixup parentheses around if statement. + +2001-01-23 Kazu Hirata <kazu@hxi.com> + + * as.c: Fix formatting. + * ehopt.c: Likewise. + * messages.c: Likewise. + * stabs.c: Likewise. + * symbols.c: Likewise. + +2001-01-23 Ben Elliston <bje@redhat.com> + + * config/tc-m32r.c (m32r_handle_align): Declare type of fragp. + +2001-01-22 Kazu Hirata <kazu@hxi.com> + + * config/tc-alpha.c: Fix formatting. + +2001-01-19 Kazu Hirata <kazu@hxi.com> + + * config/tc-alpha.c: Fix formatting. + +2001-01-18 Kazu Hirata <kazu@hxi.com> + + * config/tc-alpha.c: Fix formatting. + +2001-01-18 Nick Clifton <nickc@redhat.com> + + * config/tc-arm.c (ldm_flags): Remove redundant bit from "fa" and + "da" flags. + (stm_flags): Remove redundant bit from "ed" and "da" flags. + +2001-01-18 Alexandre Oliva <aoliva@redhat.com> + + * configure.in (cpu_type, arch): Match i386 too. + * configure: Rebuilt. + +2001-01-16 Kazu Hirata <kazu@hxi.com> + + * config/tc-i386.c: Fix formatting. + +2001-01-16 Alan Modra <alan@linuxcare.com.au> + + * config/tc-hppa.c (tc_gen_reloc): Use SEGREL32 instead of DIR32 + relocs for .PARISC.unwind section. + + * config/tc-hppa.c (pa_build_unwind_subspace): Build unwind + depending on section flags, not just for .text. + +2001-01-15 Jim Wilson <wilson@redhat.com> + + * config/tc-ia64.c (ia64_flush_insns): Handle unwind directives + not immediately followed by an instruction. + +2001-01-15 Kazu Hirata <kazu@hxi.com> + + * config/tc-m68hc11.c: Fix formatting. + +2001-01-15 Nick Clifton <nickc@redhat.com> + + * symbols.c (colon): Change 'already defined symbol' from a + fatal error to an ordinary error. There is no reason why this + error should be fatal. + + * message.c (as_fatal): Delete output file, if one has been + created. + +2001-01-14 Alan Modra <alan@linuxcare.com.au> + + * config/tc-hppa.h (TARGET_FORMAT): Add hppa-linux variants. + +2001-01-14 Kazu Hirata <kazu@hxi.com> + + * config/tc-alpha.c: Fix formatting. + * config/tc-arc.c: Likewise. + * config/tc-arc.h: Likewise. + * config/tc-d10v.c: Likewise. + * config/tc-i370.c: Likewise. + * config/tc-i386.c: Likewise. + * config/tc-i960.c: Likewise. + * config/tc-m68k.c: Likewise. + * config/tc-ppc.c: Likewise. + * config/tc-sparc.c: Likewise. + * config/tc-tahoe.c: Likewise. + * config/tc-vax.c: Likewise. + + * config/tc-arc.c: Fix formatting. + + * config/tc-arc.c: Fix formatting. + +2001-01-14 Alan Modra <alan@linuxcare.com.au> + + * config/tc-hppa.c (pa_build_unwind_subspace): Use SEGREL32 for + both 32 and 64 bit ELF. + + * config/tc-hppa.c (pa_ip): Store `a' flag in bit zero of operand + and don't bother storing `m' for "ce" completer. Tidy handling of + 'J' and 'K' operands to suit. Handle '<' and '>' operands. + +2001-01-14 Jan Hubicka <jh@suse.cz> + + * config/tc-i386.h (TARGET_MACH): New macro. + (i386_mach): Declare. + * config/tc-i386.c (i386_mach): New function. + +2001-01-13 Philip Blundell <philb@gnu.org> + + * doc/as.texinfo: Fix spelling and cross-references. + + * doc/c-arm.texi: Fix typos. Say that `;' is a line separator + character for all systems, not just GNU/Linux. Make it explicit + that `-k' doesn't affect code generation, just ELF flags. + +2001-01-13 Jan Hubicka <jh@suse.cz> + + * config/tc-i386.c (md_assemble): Check cpu_flags even for nullary + instructions. + +2001-01-12 Frank Ch. Eigler <fche@redhat.com> + + * cgen.c (gas_cgen_finish_insn): Call dwarf2_emit_insn. + +2001-01-12 Nick Clifton <nickc@redhat.com> + + * as.c (print_args): Update copyright date to 2001. + +2001-01-12 Peter Targett <peter.targett@arccores.com> + + * doc/c-arc.texi: New file. + Some sections to be expanded. + +2001-01-12 Alan Modra <alan@linuxcare.com.au> + + * config/tc-i386.c (md_longopts): Recognize "--64" only for ELF. + (md_parse_option): Always accept "--32". + +2001-01-11 Peter Targett <peter.targett@arccores.com> + + * as.h (TC_ARC): Ensure struc-symbol.h included. + * as.c (dwarf2dbg.h): Include to remove implicit declaration + warnings. + * struc-symbol.h (SYMBOLS_NEED_BACKPOINTERS): Define. + (TARGET_SYMBOL_FIELDS) added. + + * doc/Makefile.am (CPU_DOCS): Added c-arc.texi. + * doc/c-arc.texi: New file. + Some sections to be expanded. + * doc/as.texinfo: Update command-line options. + Removed outdated text for ARC dependant features, instead include + text from above file. + + * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): Define local flag. + (TARGET_SYMBOL_FIELDS): Alias to previous definition. + (targ-cpu.h) header. + * config/tc-arc.h: + * config/tc-arc.c: New updated configuration for + ARC, including selection of core variants, and extensibility of + instructions, registers etc. through directives. + + * config/tc-arc.c (arc_extinst): Minor corrections for + error messages. + (arc_common) Likewise. Make alignment argument optional for local + symbols also, with default of zero. + +2001-01-11 Stephane Carrez <Stephane.Carrez@worldnet.fr> + + * config/tc-m68hc11.c (md_estimate_size_before_relax): Fix + STATE_INDEXED_OFFSET when the symbol is undefined (16-bit offset). + (build_indexed_byte): Don't relax indexed byte, use 16-bit offset + and fix_new_exp() instead. + (md_convert_frag): For indexed post byte use the symbol value + rather than the displacement. + (md_relax_table): Fix indexed offset relax. + +2001-01-11 Stephane Carrez <Stephane.Carrez@worldnet.fr> + + * config/tc-m68hc11.c (md_estimate_size_before_relax):Don't + relax weak symbols. + (relaxable_symbol): New function. + +2001-01-11 Andreas Jaeger <aj@suse.de> + + * config/tc-i386.h (TC_RELOC_GLOBAL_OFFSET_TABLE): Removed, it's + not used anywhere. + +2001-01-10 Nick Clifton <nickc@redhat.com> + + * config/tc-arm.c (arm_fix_adjustable): Define for OBJ_COFF. + * config/tc-arm.h (obj_fix_adjustable): Define for OBJ_COFF + +2001-01-10 Nick Clifton <nickc@redhat.com> + + * symbols.c (DOLLAR_LABEL_CHAR): New constant - the magic + character used to dollar local symbols. + (LOCAL_LABEL_CHAR): New constant - the magic character used to + local label symbols. + (dollar_label_name): Use DOLLAR_LABEL_CHAR. + (fb_label_name): Prefix local labels with LOCAL_LABEL_PREFIX, + if defined. + Use LOCAL_LABEL_CHAR. + (decode_local_label_name): Skip LOCAL_LABEL_PREFIX. + Use DOLLAR_LABEL_CHAR and LOCAL_LABEL_CHAR. + (S_IS_LOCAL): Use DOLLAR_LABEL_CHAR and LOCAL_LABEL_CHAR. + +2001-01-08 Bo Thorsen <bo@suse.de> + + * config/tc-i386.c (i386_immediate, i386_displacement): + GOTPCREL check fix. + +2001-01-07 Ian Lance Taylor <ian@zembu.com> + + * doc/c-i386.texi (i386-Arch): Remove spaces incorrectly inserted + in last change. + +2001-01-07 Philip Blundell <philb@gnu.org> + + * doc/as.texinfo (Bug Reporting): Update email address for + reports. + * README: Likewise. + +2001-01-06 Jan Hubicka <jh@suse.cz> + + * configure.in: Define DEFAULT_ARCH for i386. + * config/tc-i386.c (md_assemble): Return after the error message; + move testing for 64bit operands to proper place. + +2001-01-06 Jan Hubicka <jh@suse.cz>, Andreas Jaeger <aj@suse.de> + + * doc/as.texinfo: Document '#' as comment character for i386 and + x86_64. Add AMD x86-64 into menu of machine dependent information. + + * doc/c-i386.texi: Document x86_64 extensions. + +2001-01-05 Jan Hubicka <jh@suse.cz> + + * config/tc-i386.c (md_assemble): Handle third byte of the opcode as prefix. + +2001-01-04 Jan Hubicka <jh@suse.cz> + + * config/tc-i386.c (cpu_arch): Add Pentium4 and modify sledgehammer entry. + * NEWS: Add note about Pentium4 support. + +2001-01-04 Jan Hubicka <jh@suse.cz> + + * config/tc-i387.c (pi, pte, pt): Update. + (type_names): Add new types. + +2001-01-03 Jan Hubicka <jh@suse.cz> + + * config/tc-i386.h (CpuK6, CpuAthlon, CpuSledgehammer, CpuMMX, Cpu3dnow, + CpuUnknown): Renumber + (CpuP4, CpuSSE2): New. + (CpuUnknownFlags): Add CpuP4 and CpuSSE2 + +2001-01-03 Philip Blundell <pb@futuretv.com> + + * config/tc-alpha.c (alpha_force_relocation): Handle vtable + relocs. + (alpha_fix_adjustable): Likewise. + (md_apply_fix): Likewise. + +2000-12-31 H.J. Lu <hjl@gnu.org> + + * listing.c (listing_message): Allocate string only if it is + used. + + * configure: Rebuild. + +2000-12-31 Hans-Peter Nilsson <hp@bitrange.com> + + * doc/internals.texi (Relaxing with a table) <after relaxation>: + Point out caveats with generating fixups for the opcode in a frag. + +2000-12-30 Jan Hubicka <jh@suse.cz> + + * configure.in: Add support for x86_64 and x86_64-*-linux-gnu* + * NEWS: Add x86_64. + +2000-12-29 H.J. Lu <hjl@gnu.org> + + * listing.c (calc_hex): Print the variable part only if the + fragment type is rs_fill. + +2000-12-29 Hans-Peter Nilsson <hp@bitrange.com> + + * doc/internals.texi (tc_conditional_pseudoop, + TC_LINKRELAX_FIXUP): Fix typos. + +2000-12-28 Richard Henderson <rth@redhat.com> + + * write.c (subsegs_finish): Fix thinko last change -- don't + "optimize" the alignment == 0 case. + +2000-12-28 Richard Henderson <rth@redhat.com> + + * as.h (rs_align_test): New. + * frags.c (NOP_OPCODE): Move default from read.c. + (MAX_MEM_FOR_RS_ALIGN_CODE): New default. + (frag_align_code): New. + * frags.h (frag_align_code): Declare. + * read.c (NOP_OPCODE): Remove. + (do_align): Use frag_align_code. + * write.c (NOP_OPCODE): Remove. + (get_recorded_alignment): New. + (cvt_frag_to_fill): Handle rs_align_test. + (relax_segment): Likewise. + (subsegs_finish): Align last subseg in section to the + section alignment. Use frag_align_code. + * write.h (get_recorded_alignment): Declare. + * config/obj-coff.c (size_section): Handle rs_align_test. + (fill_section, fixup_mdeps): Likewise. + (write_object_file): Use frag_align_code. + + * config/tc-alpha.c (alpha_align): Use frag_align_code. + (alpha_handle_align): New. + * config/tc-alpha.h (HANDLE_ALIGN): New. + (MAX_MEM_FOR_RS_ALIGN_CODE): New. + + * config/tc-i386.h (md_do_align): Use frag_align_code. + (MAX_MEM_FOR_RS_ALIGN_CODE): New. + + * config/tc-ia64.c (ia64_md_do_align): Don't do code alignment. + (ia64_handle_align): New. + * config/tc-ia64.h (HANDLE_ALIGN): New. + (MAX_MEM_FOR_RS_ALIGN_CODE): New. + + * config/tc-m32r.c (m32r_do_align): Remove. + (m32r_handle_align): New. + (fill_insn): Use frag_align_code. + * config/tc-m32r.h (md_do_align): Remove. + (HANDLE_ALIGN, MAX_MEM_FOR_RS_ALIGN_CODE): New. + * config/tc-m88k.c, config/tc-m88k.h: Similarly. + * config/tc-mips.c, config/tc-mips.h: Similarly. + + * config/tc-sh.c (sh_cons_align): Use rs_align_test. + (sh_handle_align): Likewise. Handle rs_align_code. + (sh_do_align): Remove. + * config/tc-sh.h (md_do_align): Remove. + (MAX_MEM_FOR_RS_ALIGN_CODE): New. + + * config/tc-sparc.c (sparc_cons_align): Use rs_align_test. + (sparc_handle_align): Likewise. Handle rs_align_code. + * config/tc-sparc.h (md_do_align): Remove. + (MAX_MEM_FOR_RS_ALIGN_CODE): New. + +2000-12-22 DJ Delorie <dj@redhat.com> + + * config/tc-d10v.c (md_assemble): set prev_seg and prev_subseg + when we assemble the first half of a pair. + +2000-12-22 H.J. Lu <hjl@gnu.org> + + * config/tc-i386.c (reloc): Update the macro for non-bfd + assembler. + (BFD_RELOC_X86_64_GOTPCREL): Set to 0 for non-bfd assembler. + +2000-12-22 H.J. Lu <hjl@gnu.org> + + * dwarf2dbg.c (dwarf2_finish): Remove #if BFD_ASSEMBLER. + +2000-12-20 Jan Hubicka <jh@suse.cz> + + * config/tc-i386.h (i386_target_format): Define even for ELFs. + (QWORD_MNEM_SUFFIX): New macro. + (CpuK6,CpuAthlon,CpuSledgehammer, Cpu64, CpuNo64, CpuUnknownFlags): + New macros + (CpuMMX,CpuSSE,Cpu3dnow, CpuUnknown): Renumber. + (IgnoreSize, DefaultSize, No_?Suf, FWait, IsString, regKludge, IsPrefix, + ImmExt): Renumber. + (Size64, No_qSuf, NoRex64, Rex64): New macros. + (Reg64, Imm32S, Imm64, Disp32S, Disp64): New macros. + (Imm8, Imm8S, Imm16, Imm32, Imm1, BaseIndex, Disp8, Disp16, Disp32, + InOutPortReg,ShiftCount, Control, Debug, Test, FloatReg, FloatAcc, + SReg2, SReg3, Acc, JumpAbsolute, RegMMX, RegXMM, EsSeg, InvMem): + Renumber. + (Reg, WordReg): Add Reg64. + (Imm): Add Imm32S and Imm64. + (EncImm): New. + (Disp): Add Disp64 and Disp32S. + (AnyMem): Add Disp32S. + (RegRex, RegRex64): New macros. + (rex_byte): New type. + * config/tc-i386.c (set_16bit_code_flag): Kill. + (fits_in_unsigned_long, fits_in_signed_long): New functions. + (reloc): New parameter "signed"; support x86_64. + (set_code_flag): New. + (DEFAULT_ARCH): New macro; default to "i386". + (default_arch): New static variable. + (struct _i386_insn): New fields Operand_PCrel; rex. + (flag_16bit_code): Kill; All tests replaced to "flag_code == CODE_64BIT" + (flag_code): New enum and static variable. + (use_rela_relocations): New static variable. + (flag_code_names): New static variable. + (cpu_arch_flags): Default to CpuUnknownFlags|CpuNo64. + (cpu_arch): Add "sledgehammer"; Add CPUAthlon to Athlon and CpuK6 to + K6 and Athlon. + (i386_align_code): Return plain "nop" for x86_64. + (mode_from_disp_size): Support Disp32S. + (smallest_imm_type): Support Imm32S and Imm64. + (offset_in_range): Support size of 8. + (set_cpu_arch): Do not clobber to Cpu64/CpuNo64. + (md_pseudo_table): Add "code64"; use set_code_flat. + (md_begin): Emit sane error message on hash failure. + (tc_i386_fix_adjustable): Support x86_64 relocations. + (md_assemble): Support QWORD_MNEM_SUFFIX, REX registers, + instructions supported on particular arch just partially, + output of 64bit immediates, handling of Imm32S and Disp32S type. + (i386_immedaite): Support x86_64 relocations; support 64bit constants. + (i386_displacement): Likewise. + (i386_index_check): Cleanup; support 64bit addresses. + (md_apply_fix3): Support x86_64 relocation and rela. + (md_longopts): Add "32" and "64". + (md_parse_option): Add OPTION_32 and OPTION_64. + (i386_target_format): Call even for ELFs; choose between + elf64-x86-64 and elf32-i386. + (i386_validate_fix): Refuse GOTOFF in 64bit mode. + (tc_gen_reloc): Support rela relocations and x86_64. + (intel_e09_1): Support QWORD. + +2000-12-15 Diego Novillo <dnovillo@redhat.com> + + * config/tc-i386.c (intel_e09_1): Only flag as a memory operand if + it's not an offset expression. + (intel_e10_1): Ditto. Also, if the operand is an offset expression, + keep the braces '[' and ']' in the output string. + (intel_e11): Ditto. Also remove comparison intel_parser.op_modifier + != FLAT. There is no such op_modifier. + +2000-12-14 Michael Sokolov <msokolov@ivan.Harhan.ORG> + + * dwarf2dbg.c: If we don't have <limits.h>, try including <sys/param.h> + if we have it. + +2000-12-13 Kazu Hirata <kazu@hxi.com> + + * as.h: Fix formatting. + * cgen.h: Likewise. + * dwarf2dbg.c: Likewise. + * input-scrub.c: Likewise. + * read.h: Likewise. + +2000-12-13 Mark Elbrecht <snowball3@bigfoot.com> + + * configure.in (i386-*-msdosdjgpp): Set bfd_gas to yes. + configure: Regenerate. + +2000-12-13 Michael Sokolov <msokolov@ivan.Harhan.ORG> + + * dwarf2dbg.c: #include <limits.h> only if it exists. + +2000-12-13 Rodney Brown <RodneyBrown@mynd.com> + + * config/tc-hppa.c (pa_ip): Correct CHECK_FIELD typo. + (md_apply_fix): Here too. + +2000-12-12 Jim Wilson <wilson@redhat.com> + + * config/tc-ia64.h (ia64_init): Add prototype. + +2000-12-12 H.J. Lu <hjl@gnu.org> + + * dwarf2dbg.c: Enabled only if BFD_ASSEMBLER is defined. + + * read.h (outputting_stabs_line_debug): Change it to int. + * stabs.c (outputting_stabs_line_debug): Likewise. + +2000-12-12 Geoffrey Keating <geoffk@redhat.com> + + * config/obj-bout.c (obj_crawl_symbol_chain): Don't take + the address of a function result. + +2000-12-12 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> + + * config/tc-ppc.c (md_pseudo_table): Add .file and .loc. + (md_assemble): Call dwarf2_emit_insn. + (shlib): Fix typo SHILB -> SHLIB. + (md_parse_option): Likewise. + (ppc_elf_validate_fix): Likewise: + * config/tc-ppc.h (DWARF2_LINE_MIN_INSN_LENGTH): New. + +2000-12-12 Nick Clifton <nickc@redhat.com> + + * cgen.h: Fix formatting. + * input-scrub.c: Fix formatting. + * macro.c: Fix formatting. + * config/tc-mips.c: Fix formatting. + * doc/c-mips.texi: Fix formatting. + +2000-12-11 Jan hubicka <jh@suse.cz> + + * config/tc-i386.c (md_assemble): Refuse 's' and 'l' suffixes in the intel + mode; convert 'd' suffix to 's' or 'l'; remove all DWORD_MNEM_SUFFIX + references. + (intel_e09_1): Convert QWORD to 'l' suffix for FP operations; refuse + otherwise. + * config/tc-i386.h (DWORD_MNEM_SUFFIX): Kill. + (No_dSuf): Kill. + + * i386.h (*_Suf): Remove No_dSuf. + (d_suf, wld_Suf,sld_Suf, sldx_Suf, bwld_Suf, d_FP, sld_FP, sldx_FP) + Remove. + (i386_optab): Remove 'd' in the suffixes. + +2000-12-06 Mark Elbrecht <snowball3@bigfoot.com> + + * config/tc-i386.c (T_SHORT): Undefine before defining. + +2000-12-05 Kazu Hirata <kazu@hxi.com> + + * config/tc-mips.c: Fix formatting. + +2000-12-04 Matthew Hiller <hiller@redhat.com> + + * config/tc-d10v.c (flag_allow_gstabs_packing): New variable. + (md_longopts): New options --gstabs-packing, --no-gstabs-packing. + (md_show_usage): Ditto. + (md_parse_option): Ditto. + (d10v_cleanup): Writes pending instruction only if + ! outputting_stabs_line_debug || ! flag_allow_gstabs_packing. + Fix compile time warning messages. + + * doc/c-d10v.texi: Documents new options. + +2000-12-04 Matthew Hiller <hiller@redhat.com> + + * stabs.c (outputting_stabs_line_debug): New variable. + (stabs_generate_asm_lineno): Set outputting_stabs_line_debug at + function entry and unset at function exit. + + * read.h (outputting_stabs_line_debug): New extern declaration. + + * as.c: Include dwarf2dbg.h for definition of dwarf2_finish. + + * dwarf2dbg.c: Fix compile time warning messages. + +2000-12-03 Kazu Hirata <kazu@hxi.com> + + * config/tc-a29k.c: Fix formatting. + * config/tc-alpha.c: Likewise. + * config/tc-arm.c: Likewise. + * config/tc-cris.c: Likewise. + * config/tc-hppa.c: Likewise. + * config/tc-i370.c: Likewise. + * config/tc-i386.c: Likewise. + * config/tc-i860.c: Likewise. + * config/tc-i960.c: Likewise. + * config/tc-ia64.c: Likewise. + * config/tc-m68hc11.c: Likewise. + * config/tc-m68k.c: Likewise. + * config/tc-m88k.c: Likewise. + * config/tc-pj.c: Likewise. + * config/tc-ppc.c: Likewise. + * config/tc-sh.c: Likewise. + * config/tc-sparc.c: Likewise. + * config/tc-tahoe.c: Likewise. + * config/tc-vax.c: Likewise. + +2000-12-01 Chris Demetriou <cgd@sibyte.com> + + * config/tc-mips.c (mips_ip): When calculating offsets, + don't accept as constant the difference between the + addresses of symbols in two different sections. + + * config/tc-mips.c (macro_build): Add new 'U' and 'J' operand + specifiers. + (validate_mips_insn): Likewise. Also, update 'B' operand + specifier to use OP_*_CODE20 constants and delete 'm' operand + specifier. + (mips_ip): Remove 'm' operand specifier, add 'U' and 'J' + operand specifiers. Change warning generated by 'B' operand + specifier to reflect its new multi-purpose usage. + + * config/tc-mips.c (mips_set_options): Use ISA_UNKNOWN rather than + -1, and update comment. + (file_mips_isa): Likewise. + (mips_cpu): Use CPU_UNKNOWN rather than -1, and update comment. + (ISA_HAS_COPROC_DELAYS, ISA_HAS_64BIT_REGS, gpr_interlocks): Use + ISA_* constants rather than hard-coded numbers. + (mips_cpu_info): New structure. + (mips_cpu_info_table): New table describing CPU and ISA names + and numbers. + (mips_cpu_info_from_name, mips_cpu_info_from_isa, + mips_cpu_info_from_cpu): New functions. + (mips_isa_to_str): New function to get string for ISA name. + (mips_cpu_to_str): Convert to use mips_cpu_info_from_cpu, and + return const char *. + (md_begin): Redo CPU and ISA selection logic, using + mips_cpu_info_from_*. Convert to use ISA_* constants rather + than hard-coded numbers. + (append_insn, mips_emit_delays, macro, macro2): Convert to use + ISA_* constants rather than hard-coded numbers. + (mips_ip): Convert to use mips_isa_to_str to get ISA name. + (md_longopts): Delete OPTION_NO_MIPS32. + (md_parse_option): Convert to use ISA_* constants rather than + hard-coded numbers. Make OPTIONS_MIPS32 case treat MIPS32 + as an ISA. Delete OPTION_NO_MIPS32 case. Convert OPTION_MCPU + to use strcasecmp to recognize "default" and to use + mips_cpu_info_from_name to get CPU numbers from argument. + (md_show_usage): Move -mips32 so it's with the rest of the ISA + flags. Change 4Kc, 4Kp and 4Km CPU entries to just be + mips32-4k. + (s_mipsset): Accept ISA value 32. + * doc/as.texinfo: Clean up MIPS options summary slightly, + remove -no-mips32. Add note about -mips4 and -mips32 + specifying those ISA levels. Delete -mips32 and -no-mips32 + cpu flag descriptions. + * doc/c-mips.texi: Add -mips32 to list of ISA switches. Clean + up the supported CPU switch list, and replace 4Kc, 4Km, and + 4Kp entries with a single mips32-4k entry. Note that you can + use ".set mips32". + + * config/tc-mips.c (ISA_HAS_64BIT_REGS): Add checks for ISA_MIPS5 and + ISA_MIPS64. + (md_longopts, OPTION_MIPS5, OPTION_MIPS64): Add options for + -mips5 and -mips64. + (md_parse_option): Add cases for OPTION_MIPS5 and + OPTION_MIPS64. + (md_show_usage): Mention -mips5 and -mips64 arguments. + (s_mipsset): Add cases for MIPS5 and MIPS64. + (mips_cpu_info_table): Add entries for MIPS5 and MIPS64 ISAs + and pseudo-CPUs. + * doc/as.texinfo: Mention -mips5 and -mips64 options + and their meanings. + * doc/c-mips.texi: Likewise. Also update introduction + and ".set" usage information. + + * config/tc-mips.c (md_show_usage): Add "sb1" to the + CPU list. + (mips_cpu_info_table): Add SB-1 entries. + * doc/c-mips.texi: Add "sb1" to the list of CPUs + known to the -mcpu option. + + * doc/as.texinfo: Correct description of MIPS -mcpu + option, by copying some of the text from doc/c-mips.texi. + +2000-12-01 Joel Sherrill <joel@OARcorp.com> + + * configure.in (arm-*-rtems*, a29k-*rtems*, h8300-*-rtems*): + New targets. + (sparc*-*-rtemself*, sparc*-*-rtemsaout*): New targets. + (sparc*-*-rtems*): Switched from a.out to ELF. + * configure: Regenerate. + * config.in: Regenerate. + * Makefile.in: Regenerate. + * aclocal.m4: Regenerate. + * po/gas.pot: Regenerate. + +2000-11-30 Philip Blundell <pb@futuretv.com> + + * config/obj-coff.c (obj_coff_weak): Use S_SET_WEAK if it exists, + even in non BFD_ASSEMBLER case. + +2000-11-30 Diego Novillo <dnovillo@redhat.com> + + * config/tc-i386.c (md_assemble): Swap i.disp_relocs when using intel + syntax. + +2000-11-29 Richard Henderson <rth@redhat.com> + + * dwarf2dbg.c: Rewrite from scratch. Queue all debugging output + until dwarf2_finish; use relaxation to get cross-fragment offsets; + thread multiple subsegments properly; handle multiple code + sections properly; emit proper compilation unit info for assembler + generated debugging. + + * as.h (enum _relax_state): Add rs_dwarf2dbg. + * dwarf2dbg.h (struct dwarf2_line_info): Remove filename. + (dwarf2dbg_estimate_size_before_relax): Declare. + (dwarf2dbg_relax_frag, dwarf2dbg_convert_frag): Declare. + * write.c: Include dwarf2dbg.h. + (cvt_frag_to_fill): Handle rs_dwarf2dbg. + (relax_segment): Likewise. + +2000-11-28 Hans-Peter Nilsson <hp@bitrange.com> + + * config/tc-sh.c (md_convert_frag) <undefined symbol, conditional + jump>: Use as_bad_where instead of as_bad. Tweak error message + accordingly. Stabilize frag by updating fix part and resetting + variant part. + <undefined symbol, unconditional jump>: Ditto. + (sh_elf_cons): Cast *input_line_pointer to unsigned char when + indexing is_end_of_line[]. + (md_assemble): Initialize size to 0. + (md_section_align): Mark parameter seg as unused. + (parse_reg): Parse names case-insensitively. + +2000-11-28 Kazu Hirata <kazu@hxi.com> + + * config/obj-aout.h: Fix formatting. + * config/obj-bout.h: Likewise. + * config/obj-coff.c: Likewise. + * config/obj-coff.h: Likewise. + * config/obj-elf.h: Likewise. + * config/obj-som.h: Likewise. + * config/obj-vms.c: Likewise. + * config/obj-vms.h: Likewise. + * config/tc-h8300.h: Likewise. + * config/tc-ns32k.h: Likewise. + * config/tc-sparc.h: Likewise. + * config/tc-tic54x.h: Likewise. + * config/tc-z8k.h: Likewise. + +2000-11-28 Nick Clifton <nickc@redhat.com> + + * doc/as.1 (COPYING): Mention that the GNU Free Documentation + License is present in the sources, but not the output, and + also available from the GNU website. + (GNU Free Documentation License): Comment out this section. + +2000-11-28 Hans-Peter Nilsson <hp@axis.com> + + * Makefile.am (CPU_OBJ_VALID): Add case to filter out invalid coff + targets. Remove i860 from valid a.out targets. + * Makefile.in: Regenerate. + + * config/tc-cris.c: Include dwarf2dbg.h. + (md_pseudo_table): Add .file and .loc. + (md_assemble): Call dwarf2_emit_insn if generating ELF. + (s_cris_file, s_cris_loc): New. + * config/tc-cris.h (DWARF2_LINE_MIN_INSN_LENGTH): Define. + * Makefile.am: Regenerate dependencies. + * Makefile.in: Regenerate. + +2000-11-28 Alan Modra <alan@linuxcare.com.au> + + * expr.c (STANDARD_MUL_PRECEDENCE): Correct value. + (MRI_MUL_PRECEDENCE): Likewise. + (op_rank): Fix a comment typo. + +2000-11-26 Stephane Carrez <Stephane.Carrez@worldnet.fr> + + * config/tc-m68hc11.c (build_indexed_byte): Print the offset in + the error message. + (get_operand): Fix analysis for movw/movb instructions. + +2000-11-24 Nick Clifton <nickc@redhat.com> + + * configure.in (xscale-elf): Add target. + (xscale-coff): Add target. + * configure: Regenerate. + + * config/tc-arm.c (ARM_EXT_V5E): New ARM architecture + extenstion. + (ARM_EXT_XSCALE): New ARM architecture extension. + (ARM_LONGMUL): Rename to ARM_EXT_LONGMUL. + (ARM_HALFWORD): Rename to ARM_EXT_HALFWORD. + (ARM_THUMB): Rename to ARM_EXT_THUMB. + (ARM_ARCH_V4): Remove processor from architecture. + (ARM_ARCH_3M): New architecutre definition. + (ARM_ARCH_V5TE): New architecutre definition. + (ARM_ARCH_XSCALE): New architecutre definition. + (CPU_DEFAULT): Allow to be defaulted to XScale. + (atpcs): New boolean variable. + (ldr_flags): Support 'd' flag for double word loads. + (str_flags): Support 'd' flag for double word stored. + (do_mia): New function. + (do_mar): New function. + (do_mra): New function. + (do_pld): New function. + (do_ldrd): New function. + (do_blx): New function. + (do_bkpt): New function. + (do_clz): New function. + (do_lstc2): New function. + (do_cdp2): New function. + (do_t_blx): New function. + (do_t_bkpt): New function. + (do_smla): New function. + (do_smlal): New function. + (do_smul): New function. + (do_qadd): New function. + (do_co_reg2c): New function. + (LONGEST_INSN): Redefine to 7. + + * doc/c-arm.texi: Document -mxscale, -mmarmv5te and -matpcs + command line switches. + +2000-11-22 Jim Wilson <wilson@redhat.com> + + * config/tc-ia64.c (pseudo_func): Add missing initializers. + (struct rsrc): Make line unsigned. + (gr_values): Add missing initializer. + (SLOT_NUM_NOT_SET): Add unsigned cast. + (ia64_elf_section_flags, output_vbyte_mem, count_output, dot_radix, + dot_fframe, dot_vframe, dot_vframesp, dot_vframepsp, dot_save, + dot_restore, dot_restorereg, dot_restorereg_p, dot_handlerdata, + dot_unwentry, dot_altrp, dot_saveg, dot_savef, dot_saveb, dot_savegf, + dot_spill, dot_spillreg, dot_spillreg_p, dot_label_state, + dot_copy_state, dot_unwabi, dot_personality, dot_proc, dot_body, + dot_prologue, dot_endp, dot_regstk, dot_psr, dot_alias, dot_ln, + dot_reg_val, dot_entry, dot_mem_offset, ia64_init, mark_resource, + md_undefined_symbol, md_apply_fix3, tc_gen_reloc, ia64_md_do_align): + Add ATTRIBUTE_UNUSED to unused parameters. + (convert_expr_to_ab_reg): Add parens. + (convert_expr_to_xy_reg): Add parens. Comment out >= REG_GR test. + (dot_prologue): Initialize grsave when declared. + (md_pseudo_table): Add missing initializers. + (operand_match): Add casts to bfd_vma. + (emit_one_bundle): Delete unused local prev. Make required_template + unsigned. + (specify_resource): Cast i to unsigned. + (note_register_values): Use fprintf_vma. + (print_dependency): Likewise. + +2000-11-21 Jim Wilson <wilson@redhat.com> + + * config/tc-ia64.c (generate_unwind_image): Call record_alignment + for unwind info section. + (dot_endp): Likewise for unwind section. + + * config/tc-ia64.c (emit_one_bundle): Pass size of 8 not 4 to + fix_new_exp. + +2000-11-21 Jakub Jelinek <jakub@redhat.com> + + * config/tc-sparc.c (md_pseudo_table): Add .file and .loc. + (output_insn): Call dwarf2_emit_insn. + * config/tc-sparc.h (DWARF2_LINE_MIN_INSN_LENGTH): New. + +2000-11-17 Richard Henderson <rth@redhat.com> + + * ehopt.c (eh_frame_code_alignment): New arg `in_seg', update all + callers. Don't switch segments. Expect CIE == -1 in .debug_frame. + (check_eh_frame): Handle .eh_frame and .debug_frame concurrently. + +2000-11-17 Nick Clifton <nickc@redhat.com> + + * config/tc-arm.c (md_pseudo_table): Add support for .line and + .file pseudo ops. + +2000-11-17 Richard Henderson <rth@redhat.com> + + * config/tc-i386.c (md_pseudo_table): Add .file and .loc. + +2000-11-17 Richard Henderson <rth@redhat.com> + + * dwarf2dbg.c (dwarf2_gen_line_info): Early out for no line number. + * config/obj-elf.h (ECOFF_DEBUGGING) [TC_ALPHA]: Adjust for + tri-state definition of alpha_flag_mdebug. + * config/tc-alpha.c (alpha_flag_mdebug): Init to -1. + (s_alpha_file): Store first .file directive. + (s_alpha_stab): New. + (md_pseudo_table): Add stabs and stabn. + +2000-11-17 Richard Henderson <rth@redhat.com> + + * config/tc-i386.c (md_assemble): Call dwarf2_emit_insn. + +2000-11-17 Richard Henderson <rth@redhat.com> + + * as.c (debug_type): Init to DEBUG_UNSPECIFIED. + (main): Call dwarf2_finish. + * as.h (debug_type): Clarify documentation of the meaning + of this variable. + * dwarf2dbg.c (DWARF2_LINE_MIN_INSN_LENGTH): Default to 1. + (print_stats): Fix parenthesis problem. + (now_subseg_size): New. + (dwarf2_finish): Use it. If DEBUG_DWARF2, emit bits for .debug_info. + (dwarf2_directive_file): Don't set debug_type. + (dwarf2_where): Honor DEBUG_DWARF2 first. + (dwarf2_emit_insn): Renamed from dwarf2_generate_asm_lineno; + do nothing if not emitting dwarf2 debug info, or no work. + * dwarf2dbg.h (dwarf2_emit_insn): Update. + * ecoff.c (add_file): Turn on DEBUG_ECOFF only if DEBUG_UNSPECIFIED. + (ecoff_new_file): Likewise. + * read.c (generate_lineno_debug): Kill ecoff hackery. Update + commentary wrt dwarf2. + + * config/tc-alpha.c (alpha_adjust_symtab_relocs): Add + ATTRIBUTE_UNUSED as needed. + (emit_insn): Call dwarf2_emit_insn. + (s_alpha_file): New. + (s_alpha_loc): New. + (s_alpha_coff_wrapper): Don't handle them. + (md_pseudo_table): Update for .file and .loc. + * config/tc-alpha.h (DWARF2_LINE_MIN_INSN_LENGTH): New. + + * config/tc-arm.c (output_inst): Update for dwarf2_emit_insn; + don't protect with debug_type. + * config/tc-hppa.c (md_assemble): Likewise. + * config/tc-m68hc11.c (m68hc11_new_insn): Likewise. + * config/tc-mn10300.c (md_assemble): Likewise. + * config/tc-sh.c (md_assemble): Likewise. + * config/tc-v850.c (md_assemble): Likewise. + + * config/tc-arm.c (arm_end_of_source): Remove. + * config/tc-hppa.c (pa_end_of_source): Remove. + * config/tc-m68hc11.c (m68hc11_end_of_source): Remove. + * config/tc-mn10300.c (mn10300_finalize): Remove. + * config/tc-sh.c (sh_finalize): Remove. + * config/tc-v850.c (sh_finalize): Remove. + + * config/tc-arm.h (md_end): Remove. + * config/tc-hppa.h (md_end): Remove. + (DWARF2_LINE_MIN_INSN_LENGTH): New. + * config/tc-m68hc11.h (md_end): Remove. + * config/tc-mn10300.h (md_end): Remove. + * config/tc-sh.h (md_end): Remove. + * config/tc-v850.h (md_end): Remove. + + * config/tc-ia64.c (emit_one_bundle): Don't protect + dwarf2 bits with debug_type. + (md_assemble): Likewise. + (ia64_end_of_source): Don't call dwarf2_finish. + +2000-11-16 Jim Wilson <wilson@redhat.com> + + * config/tc-ia64.c (errata_nop_necessary_p): Abort if general regno + >= 128 instead of > 128. Abort if predicate regno is >= 64 instead of + > 16. + +2000-11-16 H.J. Lu <hjl@gnu.org> + + * config/obj-elf.c (obj_elf_symver): Don't check the missing + version name. + +2000-11-15 Kazu Hirata <kazu@hxi.com> + + * config/tc-tic30.c: Fix formatting. + * 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. + +2000-11-14 DJ Delorie <dj@redhat.com> + + * config/tc-v850.c: Support dwarf2. + * config/tc-v850.h: Ditto. + + * config/tc-v850.c (cons_fix_new_v850): Don't rely on + parse_cons_expression_v850 to initialize hold_cons_reloc. + +2000-11-15 Bernd Schmidt <bernds@redhat.com> + + * config/tc-ia64.c (struct md): New entries LAST_GROUPS, GROUP_IDX. + (errata_nops_necessary_p): New function. + (emit_one_bundle): Call it. Update the GROUP_IDX field in struct + md. + +2000-11-14 Jim Wilson <wilson@redhat.com> + + * config/tc-ia64.c (ia64_target_format): If EF_IA_64_BE not set, then + return little endian bfd formats. + +2000-11-14 Kazu Hirata <kazu@hxi.com> + + * config/aout_gnu.h: Fix formatting. + * config/atof-vax.c: Likewise. + * config/m68k-parse.h: Likewise. + * config/m88k-opcode.h: Likewise. + * config/obj-elf.c: Likewise. + * config/tc-arm.c: Likewise. + * config/tc-cris.c: Likewise. + * config/tc-i386.c: Likewise. + * config/tc-ia64.c: Likewise. + * config/tc-mn10300.c: Likewise. + * config/te-386bsd.h: Likewise. + * config/te-hppa.h: Likewise. + * config/te-nbsd.h: Likewise. + * config/te-ppcnw.h: Likewise. + * config/te-sparcaout.h: Likewise. + * config/te-tmips.h: Likewise. + * config/vax-inst.h: Likewise. + * config/vms-conf.h: Likewise. + +2000-11-14 Jakub Jelinek <jakub@redhat.com> + + * config/tc-alpha.c (s_alpha_prologue): Preserve visibility bits. + +2000-11-13 H.J. Lu <hjl@gnu.org> + + * config/obj-elf.c (elf_frob_symbol): Support + ".symver name,name2@@@nodename". + (elf_frob_file_before_adjust): Likewise. + + * doc/as.texinfo: Updated for ".symver name,name2@@@nodename" + and ".symver name,name2@@@nodename". + Fix a typo. + +2000-11-12 H.J. Lu (hjl@gnu.org) + + * config/obj-elf.c (obj_elf_symver): Check missing version + name. + +2000-11-12 H.J. Lu (hjl@gnu.org) + + * dwarf2dbg.c (dwarf2_generate_asm_lineno): Use addressT + instead of bfd_vma for non-bfd assemblers. + +2000-11-09 Kazu Hirata <kazu@hxi.com> + + * itbl-ops.c: Fix comment typos. + +2000-11-08 Jim Wilson <wilson@redhat.com> + + * config/tc-ia64.c (struct unw_rec_list): Add slot_frag field. + (struct unwind): Add next_slot_frag field. + (slot_index): New parameters slot_frag and first_frag. Add code + to add in frag sizes when different. Add comments. + (fixup_unw_records): New locals first_frag and last_frag. Pass new + arguments to slot_index. + (emit_one_bundle): Set slot_frag field. Set next_slot_number after + loop end. Set next_slot_frag field. + +2000-11-07 H.J. Lu <hjl@gnu.org> + + * doc/as.texinfo (.symver): Updated for versioned symbol + reference. + + * obj.h (format_ops): Add the frob_file_before_adjust field. + + * config/obj-aout.c (aout_format_ops): Set the + frob_file_before_adjust field to 0. + * config/obj-coff.c (coff_format_ops): Likewise. + * config/obj-ecoff.c (ecoff_format_ops): Likewise. + + * config/obj-elf.c (obj_elf_symver): Allow duplicated version + name. + (elf_frob_file_before_adjust): New function to remove unneeded + versioned symbols from the symbol table. + (elf_format_ops): Set the frob_file_before_adjust field to + elf_frob_file_before_adjust. + + * config/obj-elf.h (obj_frob_file_before_adjust): Defined if + not defined. + + * config/obj-multi.h (obj_frob_file_before_adjust): Defined. + +2000-11-07 Peter Targett <peter.targett@arccores.com> + + * config/tc-arc.h: Avoid warnings for LITTLE_ENDIAN and + BIG_ENDIAN macros. + * config/tc-arc.c: Use S_IS_LOCAL to test local symbols. + Fix compile time warning messages. + +2000-11-07 Nick Clifton <nickc@redhat.com> + + * stabs.c (generate_asm_file): Increase length of xmalloc'ed + buffer in order to avoid buffer overflows. + +2000-11-06 Steve Ellcey <sje@cup.hp.com> + + * config/tc-ia64.c (md_shortopts, md_parse_option, md_show_usage): + Change M to m for -milp32 or -mlp64 to match gcc. + (dot_endp): Use bytes_per_address instead of 8. + (emit_one_bundle): Use number_to_chars_littleendian instead of + md_number_to_chars. + (fix_insn): Likewise. + (ia64_init): New function. + (ia64_target_format): New function. + (md_begin): Set endianness, arch, and machine as appropriate. + * config/tc-ia64.h: (TARGET_BYTES_BIG_ENDIAN, md_number_to_chars): + Make these macros depend on TE_HPUX macro. + (TARGET_FORMAT): Define. + (HOST_SPECIAL_INIT): Define. + * config/te-hpux.h: New file. + * configure.in: Add "ia64-*-hpux*" target to configure. + * configure: Regenerate. + +2000-11-06 Kazu Hirata <kazu@hxi.com> + + * as.c: Fix formatting. + * dwarf2dbg.c: Likewise. + * input-file.c: Likewise. + * input-file.h: Likewise. + * input-scrub.c: Likewise. + * itbl-ops.c: Likewise. + * listing.c: Likewise. + * macro.h: Likewise. + * messages.c: Likewise. + * read.c: Likewise. + * subsegs.c: Likewise. + * subsegs.h: Likewise. + * write.c: Likewise. + +2000-11-06 Nick Clifton <nickc@redhat.com> + + * doc/as.texinfo: Add GNU Free Documentation License. + * doc/gasp.texi: Add GNU Free Documentation License. + * doc/as.1: Add GNU Free Documentation License. + +2000-11-05 Nick Clifton <nickc@redhat.com> + + * config/tc-arm.c: Add include of "dwarf2dbg.h" + +2000-11-02 Per Lundberg <plundis@chaosdev.org> + + * configure.in: Recognise i[3456]86-chaosdev-storm-chaos. + * configure: Regenerate. + +2000-11-01 Nick Clifton <nickc@redhat.com> + + * read.c (original_case_string): New global variable. + (read_a_source_file): Copy opcode string into + original_case_string if clobbering the case of the opcode. + * read.h: Export the definition of original_case_string. + * config/tc-arm.c (md_assembler): When parsing a .req + directive use the original opcode string, not the case + clobbered version. + +2000-11-02 Nick Clifton <nickc@redhat.com> + + * config/tc-mn10300.c (debug_line): Remove this static + variable. + (md_assemble): Call dwarf2_generate_asm_lineno instead of + dwarf2_where and dwarf2_gen_line_info. + +2000-11-02 Theo Honohan <th@futuretv.com> + + * config/tc-arm.c (do_msr): Improve error message. + +2000-10-31 Eric Christopher <echristo@redhat.com> + + * config/tc-mn10300.c (md_apply_fix3): Use valuep if fully resolved + or pc-relative, else use fx_offset. + +2000-10-31 Jim Wilson <wilson@redhat.com> + + * config/tc-ia64.c (struct md): New field tag_fixups. + (ia64_flush_insns): Handle tag_fixups. Error if dangling + qualifying predicate. + (emit_one_bundle): Delete spurious multiplication by one. Handle + tag_fixups. + (ia64_start_line): Error if dangling qualifying predicate. + (defining_tag): New static variable. + (ia64_unrecognized_line, case '['): Parse tags. + (ia64_frob_label): Create tag_fixups. + (md_assemble): Reset md.qp.X_op after using it. + +2000-10-31 Kaz Kojima <kkojima@rr.iij4u.or.jp> + + * config/tc-sh.c (md_apply_fix [BFD_RELOC_SH_PCDISP12BY2]): Allow 4094. + +2000-10-31 Bernd Schmidt <bernds@redhat.co.uk> + + * config/tc-ia64.c (extra_goodness): Only prefer F in slot 1 and B in slot 2. + +2000-10-30 Kazu Hirata <kazu@hxi.com> + + * expr.c: Fix formatting. + * flonum-copy.c: Likewise. + * flonum.h: Likewise. + * gasp.c: Likewise. + * hash.c: Likewise. + +2000-10-30 Hans-Peter Nilsson <hp@bitrange.com> + + * as.h (OPTION_MD_BASE): Bump to 190. + * as.c (parse_args) <std_longopts>: Add comment about the need to + check OPTION_MD_BASE in as.h. + + * config/tc-sh.c (md_apply_fix): For ELF, do not "adjust back" VAL + for weak symbols. + +2000-10-27 Nick Clifton <nickc@redhat.com> + + * configure.in (emulations): Add m68hc12. + * configure: Regenerate. + * po/gas.pot: Regenerate. + +2000-10-27 Aldy Hernandez <aldyh@redhat.com> + + * config/tc-arm.c (psrs): Remove lowercase versions of spsr* and + cpsr*. + (arm_psr_parse): Handle lowercase CPSR and SPSR. + +2000-10-25 Nick Clifton <nickc@redhat.com> + + * dwarf2out.c (dwarf2_generate_asm_lineno): New function: Generate + a DWARF2 line number information sequence. + + *dwarf2out.h: Add prototype for dwarf2_generate_asm_lineno. + + * read.c (generate_lineno_debug): Update comment describing why + DWARF2 line number debug information is not generated + automatically by this function. + + * doc/as.texinfo: Note that --gdwarf2 only works on some targets, + not all. + + * config/tc-arm.h (md_end): Define. + (DWARF2_LINE_MIN_INSN_LENGTH): Define. + + * config/tc-arm.c (output_inst): Call dwarf2_generate_asm_lineno + if generating DWARF2 line numbers. + (arm_end_of_source): New function. Call dwarf2_finish if + necessary. + + * config/tc-hppa.c (md_assemble): Use dwarf2_generate_asm_lineno. + * config/tc-m68hc11.c (m68hc11_new_insn): Use dwarf2_generate_asm_lineno. + * config/tc-sh.c (md_assemble): Use dwarf2_generate_asm_lineno. + +2000-10-25 Diego Novillo <dnovillo@cygnus.com> + + * config/tc-i386.c: Fix prototype declarations for functions taking no + arguments. + +2000-10-24 Diego Novillo <dnovillo@cygnus.com> + + * config/tc-i386.c (i386_operand_modifier): Remove. + (build_displacement_string): Remove. + (i386_parse_seg): Remove. + (i386_intel_memory_operand): Remove. + (i386_intel_operand): Re-write using recursive descent parser based + on MASM documentation. + (struct intel_parser_s): New structure. + (intel_parser): New static variable. + (struct intel_token): New structure. + (cur_token, prev_token): New static variables. + (T_NIL): Define. + (T_CONST): Define. + (T_REG): Define. + (T_BYTE): Define. + (T_WORD): Define. + (T_DWORD): Define. + (T_QWORD): Define. + (T_XWORD): Define. + (T_SHORT): Define. + (T_OFFSET): Define. + (T_PTR): Define. + (T_ID): Define. + (intel_match_token): New function. + (intel_get_token): New function. + (intel_putback_token): New function. + (intel_expr): New function. + (intel_e05): New function. + (intel_e05_1): New function. + (intel_e06): New function. + (intel_e06_1): New function. + (intel_e09): New function. + (intel_e09_1): New function. + (intel_e10): New function. + (intel_e10_1): New function. + (intel_e11): New function. + +2000-10-20 Jakub Jelinek <jakub@redhat.com> + + * config/tc-sparc.c (sparc_ip): Fix a bug which caused v9_arg_p + instructions to loose any special insn->architecture mask. + + * config/tc-sparc.c (v9a_asr_table): Add v9b ASRs. + (sparc_md_end, sparc_arch_types, sparc_arch, + sparc_elf_final_processing): Handle v8plusb and v9b architectures. + (sparc_ip): Handle siam mode operands. Support v9b ASRs (and + request v9b architecture if they are used). + +2000-10-18 Michael Sokolov <msokolov@ivan.Harhan.ORG> + + * config/tc-m68k.c: Fix the previous misapplied patch. + +2000-10-18 Michael Sokolov <msokolov@ivan.Harhan.ORG> + + * config/tc-m68k.h (RELAX_RELOC_*): New definitions for both + BFD_ASSEMBLER and !BFD_ASSEMBLER. + * config/tc-m68k.c (md_convert_frag_1): Use them instead of + BFD_RELOC_*. + +2000-10-17 Kazu Hirata <kazu@hxi.com> + + * debug.c: Fix formatting. + * depend.c: Likewise. + * dwarf2dbg.c: Likewise. + * dwarf2dbg.h: Likewise. + * ecoff.c: Likewise. + * expr.c: Likewise. + * expr.h: Likewise. + * flonum-konst.c: Likewise. + * frags.h: Likewise. + +2000-10-17 Chandrakala Chavva <cchavva@redhat.com> + + * as.c: New option OPTION_TARGET_HELP. Prints all target specific + options. + * doc/as.texinfo: Added notes about this new option. + +2000-10-16 Hans-Peter Nilsson <hp@bitrange.com> + + * config/tc-sh.c (JREG): Remove. + (md_convert_frag): Remove #if 0:d code using JREG. + +2000-10-15 Diego Novillo <dnovillo@cygnus.com> + + * config/tc-i386.c (i386_operand_modifier): Only match + modifiers SHORT and FLAT if they are followed by a space. + (parse_register): When `allow_naked_reg' is set, do not confuse + identifiers that start with a register name with a register. + +2000-10-12 Kazu Hirata <kazu@hxi.com> + + * app.c: Fix formatting. + * as.c: Likewise. + * as.h: Likewise. + * bit_fix.h: Likewise. + * cgen.c: Likewise. + * cgen.h: Likewise. + * cond.c: Likewise. + +2000-10-11 Alan Modra <alan@linuxcare.com.au> + + * config/obj-elf.c (elf_frob_symbol): Revert 2000-10-07 change. + +2000-10-07 Alan Modra <alan@linuxcare.com.au> + + * config/tc-hppa.c (md_apply_fix): Remove plainly wrong assert. + Re-arrange function a little and improve error message. + + * write.c (write_relocs): Fix a comment. + + * config/obj-elf.c (elf_frob_symbol): Make section syms global on + link-once sections. + +2000-10-05 Jim Wilson <wilson@cygnus.com> + + * config/tc-ia64.c (resources_match): Handle IA64_RS_PRr. + +2000-10-05 Alan Modra <alan@linuxcare.com.au> + + * config/tc-i386.c: Delete some useless comments, reformat others. + + * config/tc-i386.h (TC_FIX_ADJUSTABLE): Add check to cover + non-global syms in linkonce sections. + +2000-10-04 Ralf Baechle <ralf@gnu.org> + + * config/tc-ia64.c (operand_match): Don't use // style comments. + * config/tc-i370.c: Likewise. + +2000-09-29 Hans-Peter Nilsson <hp@axis.com> + + Changes to handle varying register prefix and user symbol prefix. + * config/tc-cris.c (SYNTAX_RELAX_REG_PREFIX, + SYNTAX_ENFORCE_REG_PREFIX, SYNTAX_USER_SYM_LEADING_UNDERSCORE, + SYNTAX_USER_SYM_NO_LEADING_UNDERSCORE, REGISTER_PREFIX_CHAR): New. + (s_syntax, cris_force_reg_prefix, cris_relax_reg_prefix, + cris_sym_leading_underscore, cris_sym_no_leading_underscore): New. + (demand_register_prefix): New variable. + (md_pseudo_table): New pseudo ".syntax". + (md_longopts): New options --no-underscore and --underscore. + (cris_target_format): Return elf32-us-cris or elf32-cris depending + on symbols_have_leading_underscore. + (get_gen_reg): Accept or require REGISTER_PREFIX_CHAR. + (get_spec_reg): Ditto. + (cris_number_to_imm) <case BFD_RELOC_VTABLE_ENTRY>: Remove FIXME. + Fix formatting. + (md_parse_option) <case 'h' 'H'>: Deprecate; add reference to + --help. + <case OPTION_NO_US, case OPTION_US>: New. + (md_show_usage): Be brief and reformat to match continuation of + --help. + * po/gas.pot: Regenerate. + +2000-09-28 Alan Modra <alan@linuxcare.com.au> + + * config/tc-hppa.c (hppa_force_relocation): If OBJ_SOM, don't + force relocs for 12 bit branches. + (md_apply_fix): Similarly, adjust logic here. + +2000-09-28 Alan Modra <alan@linuxcare.com.au> + + * config/tc-hppa.c (md_apply_fix): Add fmt assertion. Don't + adjust for external and weak syms as we will use a reloc. Allow + for +8 offset when calculating limits of branches. + (hppa_fix_adjustable): Undo 2000-09-23 change. + (hppa_force_relocation): Likewise. Add fx_addsy assertion. + Correct distance calculation. + (tc_gen_reloc): Print the file name and line number if we can't + handle a fixup. + + From John David Anglin <dave@hiauly1.hia.nrc.ca> + * config/tc-hppa.c (nonzero_dibits): Define. + (arg_reloc_stub_needed): Check each arg and return value + separately for zero case. + (pa_align): Declare argument `bytes'. + +2000-09-25 Kazu Hirata <kazu@hxi.com> + + * config/tc-cris.c: Fix formatting. + * config/tc-d10v.h: Likewise. + * config/tc-d30v.c: Likewise. + * config/tc-d30v.h: Likewise. + * config/tc-fr30.c: Likewise. + * config/tc-fr30.h: Likewise. + * config/tc-m68k.c: Likewise. + * config/tc-m68k.h: Likewise. + * config/tc-pj.h: Likewise. + * config/tc-ppc.c: Likewise. + * config/tc-ppc.h: Likewise. + * config/tc-sh.c: Likewise. + * config/tc-sh.h: Likewise. + * config/tc-sparc.c: Likewise. + * config/tc-v850.h: Likewise. + * config/tc-vax.h: Likewise. + * config/tc-w65.h: Likewise. + * config/tc-z8k.h: Likewise. + +2000-09-23 Alan Modra <alan@linuxcare.com.au> + + * config/tc-hppa.c (hppa_fix_adjustable): Do the external and weak + checks only for ELF. + (hppa_force_relocation): Likewise. + +2000-09-22 Jim Wilson <wilson@cygnus.com> + + * config/tc-ia64.c (dv_sem): Add "stop". + (specify_resource, case IA64_RS_PR): Only handles regs 1 to 15 now. + (specify_resource, case IA64_RS_PRr): New for regs 16 to 62. + (specify_resource, case IA64_RS_PR63): Reorder (note == 7) test to + match above. + (mark_resources): Check IA64_RS_PRr. + +2000-09-22 Michael Sokolov <msokolov@ivan.Harhan.ORG> + + * config/tc-m68k.c (md_relax_table, m68k_ip, md_convert_frag_1, + md_estimate_size_before_relax): Redesign and clean up the + relaxation mechanism. + +2000-09-21 Kazu Hirata <kazu@hxi.com> + + * config/tc-ns32k.c: Fix formatting. + * config/tc-ns32k.h: Likewise. + +2000-09-20 Kazu Hirata <kazu@hxi.com> + + * config/tc-m32r.c: Fix formatting. + * config/tc-m32r.h: Likewise. + * config/tc-m68851.h: Likewise. + * config/tc-m68hc11.c: Likewise. + * config/tc-m68hc11.h: Likewise. + * config/tc-m88k.c: Likewise. + * config/tc-mcore.c: Likewise. + * config/tc-mcore.h: Likewise. + * config/tc-mips.c: Likewise. + * config/tc-mips.h: Likewise. + * config/tc-mn10200.h: Likewise. + * config/tc-mn10300.h: Likewise. + * config/tc-tahoe.c: Likewise. + * config/tc-tahoe.h: Likewise. + +2000-09-19 Michael Sokolov <msokolov@ivan.Harhan.ORG> + + * config/tc-vax.c (synthetic_votstrs): Remove jbssi and jbcci. + Likewise in relaxation description comments. + +2000-09-18 Alan Modra <alan@linuxcare.com.au> + + * config/tc-hppa.h (TC_FORCE_RELOCATION_SECTION): Allow + subtraction of two syms without emitting a relocation. + + From David Huggins-Daines <dhd@linuxcare.com> + * config/tc-hppa.c (hppa_force_relocation): Force relocations for + global or weak symbols. + +2000-09-15 Kazu Hirata <kazu@hxi.com> + + * config/tc-h8300.h: Fix formatting. + * config/tc-h8500.c: Likewise. + * config/tc-h8500.h: Likewise. + * config/tc-hppa.h: Likewise. + * config/tc-i370.h: Likewise. + * config/tc-i386.h: Likewise. + * config/tc-i860.c: Likewise. + * config/tc-i860.h: Likewise. + * config/tc-i960.h: Likewise. + * config/tc-ia64.c: Likewise. + * config/tc-ia64.h: Likewise. + +2000-09-14 Kazu Hirata <kazu@hxi.com> + + * config/tc-a29k.c: Fix formatting. + * config/tc-alpha.c: Likewise. + * config/tc-arc.c: Likewise. + * config/tc-arc.h: Likewise. + * config/tc-arm.c: Likewise. + * config/tc-arm.h: Likewise. + * config/tc-avr.c: Likewise. + * config/tc-avr.h: Likewise. + * config/tc-tic30.c: Likewise. + * config/tc-tic30.h: Likewise. + * config/tc-tic54x.c: Likewise. + * config/tc-tic54x.h: Likewise. + * config/tc-tic80.c: Likewise. + * config/tc-tic80.h: Likewise. + +2000-09-14 Timothy Wall <twall@cygnus.com> + + * config/tc-ia64.c (specify_resource): For PR%/PR63, note types of + parallel comparisons for later use. + (struct rsrc): Add parallel comparison type. + (resources_match): Skip special cases of PR usage (non-conflicting + parallel compares). + +2000-09-13 Kazu Hirata <kazu@hxi.com> + + * config/obj-ecoff.c: Fix formatting. + * config/obj-elf.c: Likewise. + * config/obj-elf.h: Likewise. + * config/obj-evax.h: Likewise. + * config/obj-generic.h: Likewise. + * config/obj-hp300.c: Likewise. + * config/obj-hp300.h: Likewise. + * config/obj-ieee.h: Likewise. + * config/obj-vms.c: Likewise. + * config/obj-vms.h: Likewise. + +2000-09-13 Anders Norlander <anorland@acc.umu.se> + + * config/tc-mips.c (md_begin): Recognize 4Kc, 4Km and 4Kp processors. + (md_parse_option): Ditto. + (md_longopts): Add -mips32 option. + (md_show_usage): Document new options. + (mips_ip): Assemble sdbbp 20 bit 'm' args for MIPS32. + (mips_ip): Assemble mfc0 with a sub-selection code. + (validate_mips_insn): Handle 'H' (OP_*_SEL) and 'm' (OP_*_CODE20). + (mips_cpu_to_str): New function. + (mips_ip): Use mips_cpu_to_str instead of printing numeric cpu value. + Use CPU_* defines instead of hardcoded numbers. + + * doc/as.texinfo: Document new options. + * doc/c-mips.texi: Ditto. + +2000-09-12 Kazu Hirata <kazu@hxi.com> + + * as.h: Fix formatting. + * asintl.h: Likewise. + * bit_fix.h: Likewise. + * config/obj-aout.c: Likewise. + * config/obj-aout.h: Likewise. + * config/obj-bout.c: Likewise. + * config/obj-bout.h: Likewise. + * config/obj-coff.c: Likewise. + * config/obj-coff.h: Likewise. + * dwarf2dbg.h: Likewise. + * expr.h: Likewise. + * flonum.h: Likewise. + * frags.h: Likewise. + * itbl-ops.h: Likewise. + * macro.h: Likewise. + * read.h: Likewise. + * sb.h: Likewise. + * struc-symbol.h: Likewise. + * subsegs.h: Likewise. + * symbols.h: Likewise. + * tc.h: Likewise. + * write.h: Likewise. + +2000-09-11 Kazu Hirata <kazu@hxi.com> + + * bignum-copy.c: Fix formatting. + * config/tc-i370.c: Likewise. + * config/tc-i960.c: Likewise. + * config/tc-m68k.c: Likewise. + * ehopt.c: Likewise. + * flonum-copy.c: Likewise. + * flonum-konst.c: Likewise. + * flonum-mult.c: Likewise. + * literal.c: Likewise. + * read.c: Likewise. + * sb.c: Likewise. + * stabs.c: Likewise. + * subsegs.c: Likewise. + +2000-09-09 Philip Blundell <philb@gnu.org> + + * configure.in (arm*-*-uclinux*): New target. + * configure: Regenerate. + +2000-09-09 Kazu Hirata <kazu@hxi.com> + + * input-file.c: Fix formatting. + * itbl-ops.c: Likewise. + * messages.c: Likewise. + +2000-09-08 Philip Blundell <philb@gnu.org> + + * config/tc-arm.c (md_apply_fix3): Correct handling of ADRL when + offset is negative. + +2000-09-07 H.J. Lu <hjl@gnu.org> + + * configure.in (AC_ISC_POSIX): Put after AC_CANONICAL_SYSTEM. + * configure: Rebuild. + +2000-09-07 Kazu Hirata <kazu@hxi.com> + + * atof-generic.c: Fix formatting. + * config/tc-mips.c: Likewise. + * config/tc-vax.c: Likewise. + * input-scrub.c: Likewise. + +2000-09-07 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-sh.h (TARGET_FORMAT): Use sh-linux targets. + * configure.in (sh-*-linux*): Added. + * configure: Rebuilt. + +2000-09-06 Kazu Hirata <kazu@hxi.com> + + * config/tc-hppa.c: Fix formatting. + + * ecoff.c: Fix formatting. + +2000-09-06 Alexandre Oliva <aoliva@redhat.com> + + * configure: Rebuilt with new libtool.m4. + +2000-09-05 Kazu Hirata <kazu@hxi.com> + + * cgen.c: Fix formatting. + * config/tc-ia64.c: Likewise. + +2000-09-05 Nick Clifton <nickc@redhat.com> + + * aclocal.m4: Regenerate. + * config.in: Regenerate. + * configure: Regenerate. + * po/gas.pot: Regenerate. + +2000-09-05 Hans-Peter Nilsson <hp@axis.com> + + * config/tc-cris.c: Correct comment typos. + +2000-09-05 Eric Christopher <echristo@cygnus.com> + + * config/tc-mn10300.c: Cleanup. + (md_pcrel_from): Enable. + +2000-09-05 Alan Modra <alan@linuxcare.com.au> + + * expr.c (operand): Fix a comment typo. + * write.c (write_relocs): Fix a signed/unsigned warning. + + * config/tc-hppa.c (fudge_reg_expressions): New + (hppa_force_reg_syms_absolute): New. + (pa_equ): Allow reg_section expressions. + * config/tc-hppa.c (md_optimize_expr): Define. + (hppa_force_reg_syms_absolute): Prototype. + + * config/tc-hppa.c (pa_11_fp_reg_struct): Delete. + (pa_parse_number): Pass in arg to select fp reg parsing. + Return 1 to indicate format checks pass. If strict, then only + accept a register or register symbol. Return value in... + (pa_number): New static for pa_parse_number. + (FP_REG_BASE): Define. + (FP_REG_RSEL): Define. + (pre_defined_registers): Apply FP_REG_BASE and FP_REG_RSEL as + appropriate. White space changes. + (need_pa11_opcode): Don't bother passing any params, get them from + globals instead. + (pa_ip): Modify all calls to pa_parse_number and need_pa11_opcode. + Remove extraneous check in case 'Q'. + (pa_equ): Modify call to pa_parse_number to do strict parsing. If + reg, set section of resulting symbol to reg_section. + (pa_parse_space_stmt): Modify call to pa_parse_number. + (pa_space): Likewise. + + * config/tc-hppa.c: (md_apply_fix): Handle vtable relocs. + (hppa_force_relocation): Handle vtable relocs. + (pa_vtable_entry): New. + (pa_vtable_inherit): New. + (md_pseudo_table): Add entries for vtable pseudos. + (hppa_fix_adjustable): Reject reduction of R_PARISC_GNU_VTINHERIT + and R_PARISC_GNU_VTENTRY relocs. Reject reduction of relocs + against weak syms. + (tc_gen_reloc): Remove ELF_ARG_RELOC_INSN code. + (pa_type_args): Don't call symbol_get_bfdsym multiple times. + Set STT_PARISC_MILLICODE for OBJ_ELF when encountering a + millicode import. + * config/obj-elf.c (obj_elf_type): Allow md_elf_symbol_type to + specify a symbol type. + + * config/tc-hppa.h: Reorganize file a little, grouping OBJ_ELF + dependent things together. + (md_elf_symbol_type): Define. + + * config/tc-hppa.c (fix_new_hppa): Elide "$PIC_pcrel$0" pseudo + symbol. + * config/tc-hppa.h (tc_frob_symbol): Elide "$PIC_pcrel$0" here too. + + * config/obj-elf.h (obj_elf_vtable_inherit): Declare. + (obj_elf_vtable_entry): Declare. + + * config/obj-elf.c (obj_elf_vtable_inherit): Return struct fix * + and export function. + (obj_elf_vtable_entry): Similarly. + (elf_pseudo_table): Fix the damage with a cast. + +2000-09-03 Richard Henderson <rth@cygnus.com> + + * config/tc-ia64.c (emit_one_bundle): Stop collecting insns + for template selection when a label is needed. + +2000-09-02 Kazu Hirata <kazu@hxi.com> + + * config/tc-ia64.c: Fix formatting. + +2000-09-02 Nick Clifton <nickc@redhat.com> + + * configure.in: Increase version number to 2.10.91. + * configure: Regenerate. + * aclocal.m4: Regenerate. + * config.in: Regenerate. + * po/gas.pot: Regenerate. + * Makefile.in: Regenerate. + +2000-09-01 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-sh.h [OBJ_ELF] (TC_FIX_ADJUSTABLE): Define. + * config/tc-sh.c (md_apply_fix): Map 32-bit relocations that + become PC-relative to BFD_RELOC_32_PCREL. Reject 16- or 8-bit + similar relocs. + (sh_obj_adjustable): Return 1 for PC-relative offsets used in + branches. + +2000-09-01 Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp>, Alexandre Oliva <aoliva@redhat.com> + + * config/tc-sh.h (DIFF_EXPR_OK, GLOBAL_OFFSET_TABLE_NAME, + TC_RELOC_GLOBAL_OFFSET_TABLE, TC_RELOC_RTSYM_LOC_FIXUP): Define. + * config/tc-sh.c (sh_elf_cons, sh_elf_suffix): New functions. + [OBJ_ELF] (md_pseudo_table) <long, int, word, short>: Use them. + (GOT_symbol): New variable. + (md_undefined_symbol): Set it. + +2000-09-01 Richard Henderson <rth@cygnus.com> + + * config/tc-ia64.c (match): Don't inline. + (extra_goodness): New. + (md_begin): Prefer nop.f and nop.b for best_template. + +2000-08-31 Kazu Hirata <kazu@hxi.com> + + * as.c: Fix formatting. + * cond.c: Likewise. + * frags.c: Likewise. + * macro.c: Likewise. + +2000-08-31 Eric Christopher <echristo@cygnus.com> + + * config/tc-mn10300.c: Cleanup and fix warnings. + (md_pseudo_table): Add initializers. + (md_show_usage): Cleanup. + (md_parse_option): Fix warnings. + (md_undefined_symbol): Fix warnings. + (md_conver_frag): Fix warnings. + (tc_gen_reloc): Fix warnings. + (md_apply_fix3): Fix warnings. + (check_operand): Fix warnings. + +2000-08-31 Alexandre Oliva <aoliva@redhat.com> + + * acinclude.m4: Include libtool and gettext macros from the + top level. + * aclocal.m4, configure: Rebuilt. + +2000-08-30 Mark Hatle <mhatle@mvista.com> + + * config/tc-ppc.c (md_parse_option): Recognize -m405. + +2000-08-31 Kazu Hirata <kazu@hxi.com> + + * listing.c: Fix formatting. + +2000-08-29 Kazu Hirata <kazu@hxi.com> + + * app.c: Fix a comment typo. Fix formatting. + +2000-08-25 J. David Anglin <dave@hiauly1.hia.nrc.ca> + + * config/tc-vax.c (md_convert_frag): Correctly calculate the pc relative + offset of the target destination for jmp instructions. + (md_assemble): Change mode to VAX_ABSOLUTE_MODE as per comments. + +2000-08-24 Hans-Peter Nilsson <hp@axis.com> + + * NEWS: Mention support for CRIS. + +2000-08-24 Denis Chertykov <denisc@overta.ru> + + * config/tc-avr.h (TC_IMPLICIT_LCOMM_ALIGNMENT): New macros. + Sets `.lcomm' alignment to zero. + +2000-08-23 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-i386.h (OBJ_MAYBE_ELF, OBJ_MAYBE_COFF, + TC_FIX_ADJUSTABLE): Define. + +2000-08-23 Jim Wilson <wilson@cygnus.com> + + * config/tc-ia64.c (output_unw_records): Set U & E flags only if + unwind.personality_routine is set. + +2000-08-23 H.J. Lu <hjl@gnu.org> + + * write.c (TC_FIX_ADJUSTABLE): Remove the duplicate. + +2000-08-23 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-i386.h (TC_FIX_ADJUSTABLE): Do *NOT* define if target + environment is pe. + +2000-08-22 H.J. Lu <hjl@gnu.org> + + * config.in (STRICTCOFF): New for strict COFF. + + * configure.in: Define STRICTCOFF for i386-*-msdosdjgpp*, + i386-*-go32* and i386-go32-rtems*. + * configure: Rebuilt. + + * config/obj-coff.c (obj_coff_endef): Follow the historical + behavior if STRICTCOFF is not defined. + + * doc/internals.texi: Document STRICTCOFF. + +2000-08-22 Alexandre Oliva <aoliva@redhat.com> + + * write.c (TC_FIX_ADJUSTABLE): Define to 1, if not defined. + (fixup_segment) Use it instead of TC_DONT_FIX_NON_ADJUSTABLE. + * config/tc-i386.h (TC_DONT_FIX_NON_ADJUSTABLE): Remove. + <OBJ_ELF, OBJ_COFF, TE_PE> (TC_FIX_ADJUSTABLE): Define. + * config/tc-arm.h (TC_DONT_FIX_NON_ADJUSTABLE): Remove. + <OBJ_ELF> (TC_FIX_ADJUSTABLE): Define. + * config/tc-i960.h, config/tc-m68k.h, config/tc-v850.h: + Likewise. + +2000-08-22 Eric Christopher <echristo@cygnus.com> + + * config/tc-mn10300.c: (md_apply_fix): New function. + (mn10300_force_relocation): New function. + (mn10300_fix_adjustable): New function. + + * config/tc-mn10300.h: (TC_FORCE_RELOCATION): Define. + (TC_HANDLES_FX_DONE): Define. + (obj_fix_adjustable): Define. + (MD_APPLY_FIX3): Define. + (TC_LINKRELAX_FIXUP): Define. + + * write.c: (TC_LINKRELAX_FIXUP): Define if not + previously defined. + (fixup_segment): Use TC_LINKRELAX_FIXUP. + + * doc/internals.texi: Document TC_LINKRELAX_FIXUP. + +2000-08-21 Jason Eckhardt <jle@cygnus.com> + + * config/tc-i860.c (md_apply_fix3): Do not insert the immediate + if the fixup resulted in a relocation. + +2000-08-18 Nick Clifton <nickc@redhat.com> + + * config/tc-arm.c (decode_shift): Replace as_tsktsk with as_warn. + Make reference to first element of shift_names explicit. + +2000-08-18 Alexandre Oliva <aoliva@redhat.com> + + * write.c (fixup_segment) [TC_DONT_FIX_NON_ADJUSTABLE]: Use + obj_fix_adjustable() and tc_fix_adjustable() to tell whether to + add a symbol's address. Removed all target-specific #ifdefs that + used to accomplished the same. + * config/tc-v850.h (TC_DONT_FIX_NON_ADJUSTABLE): Define. + * config/tc-m68k.h (TC_DONT_FIX_NON_ADJUSTABLE): Define. + * config/tc-arm.h (TC_DONT_FIX_NON_ADJUSTABLE): Define. + * config/tc-i960.h (TC_DONT_FIX_NON_ADJUSTABLE): Define. + * config/tc-i386.h (TC_DONT_FIX_NON_ADJUSTABLE): Define. + +2000-08-17 Kazu Hirata <kazu@hxi.com> + + * dwarf2dbg.c: Fix formatting. + +2000-08-17 Nick Clifton <nickc@redhat.com> + + * config/tc-arm.c (decode_shift): Allow illegal shifts by zero + to be recoded as logical shift lefts by zero. + +2000-08-16 Jim Wilson <wilson@cygnus.com> + + * config/tc-ia64.c (specify_resource, case IA64_RS_GR): Handle + postincrement modified registers. Handle IA64_OPND_R3_2 addl + source registers. + (note_register_values): Handle IA64_OPND_R3_2 operands. + +2000-08-16 Jason Eckhardt <jle@cygnus.com> + + * config/tc-i860.c (md_operand): Silly typo fixed. + +2000-08-16 Nick Clifton <nickc@redhat.com> + + * config/tc-arm.c (struct asm_shift): Delete. + (shift[]): Delete. + (enum asm_shift_index): New. + (struct asm_shift_properties): New. + (struct asm_shift_name): New. + (shift_properties[]); New. + (shift_names[]); New. + + (decode_shift): Use new structures. + Issue a warning is "ROR #0" is used. + Issue a warning if "ASR #0" or "LSR #0" is used. + + (md_begin): Initialise arm_shift_hsh table from new + asm_shift_name array. + +2000-08-16 Jakub Jelinek <jakub@redhat.com> + + * config/tc-sparc.c: Kill all warnings. + (md_parse_option): Set -32/-64 for -xarch=, allow all -A archs + in -xarch= as well. + (md_show_usage): Update usage text. + +2000-08-16 Nick Clifton <nickc@redhat.com> + + * config/tc-arm.c (do_bx): Warn about "bx px" not being very + useful. + +2000-08-15 Will Cohen <wcohen@redhat.com> + + * config/tc-sh.h (DWARF2_LINE_MIN_INSN_LENGTH): Defined. + + * config/tc-sh.c (md_assemble): Changed so debug_type + test performed for ppi_assemble + * config/tc-sh.c: Included dwarf2dbg.h. + (debug_line): Defined. + (md_assemble): Generates dwarf2 line info. + (sh_finalize): New function. Finalize dwarf2 info. + (assemble_ppi): Returns size of code generated. + (build_Mytes): Returns size of code generated. + (md_pseudo_table): Added "file" and "loc" psuedo ops. + * config/tc-sh.h (md_end): Defined. + (sh_finalize): Declared. + +2000-08-15 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-sh.c (md_apply_fix) [BFD_RELOC_32, BFD_RELOC_16]: Use + md_number_to_chars. + +2000-08-14 Nick Clifton <nickc@redhat.com> + + * config/tc-arm.c (do_bx): Allow "bx pc". + +2000-08-14 Jim Wilson <wilson@cygnus.com> + + * config/tc-ia64.c (md_longopts): Add -mconstant-gp and -mauto-pic. + (md_parse_option): Add OPTION_MCONSTANT_GP and OPTION_MAUTO_PIC. + (md_begin): Change assignment to md.flag to OR in the new bit. + +2000-08-14 Mark Elbrecht <snowball3@bigfoot.com> + + * config/obj-coff.c (obj_coff_endef) [BFD_ASSEMBLER]: Set the debug + flag for storage types C_ARG, C_REGPARM, C_FIELD, C_MOS, C_MOE, + C_MOU, and C_EOS. + +2000-08-14 Jason Eckhardt <jle@cygnus.com> + + * NEWS: Mention i860 support. + +2000-08-14 Jeffrey A Law (law@cygnus.com) + + * config/tc-mn10300.h (DWARF2_LINE_MIN_INSN_LENGTH): Define. + +2000-08-14 Andreas Schwab <schwab@suse.de> + + * doc/c-arm.texi (ARM Directives): Fix warnings from makeinfo. + +2000-08-11 Andreas Schwab <schwab@suse.de> + + * doc/c-i860.texi (Opcodes for i860): Remove braces from @item + argument. + +2000-08-11 Kazu Hirata <kazu@hxi.com> + + * expr.c: Fix formatting. + * config/obj-bout.c: Likewise. + +2000-08-10 Jason Eckhardt <jle@cygnus.com> + + * doc/c-i860.texi: Flesh out the i860 section more. + +2000-08-10 Kazu Hirata <kazu@hxi.com> + + * symbols.c: Fix formatting. + * expr.c: Likewise. + +2000-08-09 Diego Novillo <dnovillo@cygnus.com> + + * config/tc-i386.c (md_assemble): Skip suffix check if the opcode + modifier has the IgnoreSize bit set. + +2000-08-09 Alan Modra <alan@linuxcare.com.au> + + From Rodney Brown <RodneyBrown@mynd.com> + * configure.in: Use elf on Unixware 7 (i586-sco-sysv5uw7.1.0) + * configure: Regenerate. + +2000-08-09 Kazu Hirata <kazu@hxi.com> + + * hash.c: Fix formatting. + * gasp.c: Likewise. + +2000-08-08 Jason Eckhardt <jle@cygnus.com> + + * config/tc-i860.h: Rework completely for BFD_ASSEMBLER. + (i860_fix_info): New enum. + (MD_APPLY_FIX3): Define. + (WORKING_DOT_WORD): Define. + (TC_HANDLES_FX_DONE): Define. + (DIFF_EXPR_OK): Define. + (LISTING_HEADER): Define. + (TARGET_FORMAT): Select target format based on endian flag. + (TARGET_BYTES_BIG_ENDIAN): Default to little endian. + (target_big_endian): Add external declaration. + + * config/tc-i860.c: All existing code reworked completely. Other + new code shown below. + (SYNTAX_SVR4): Define. + (target_warn_expand): New variable. + (md_shortopts): Declare and define (-Qy, -Qn, and -V options). + (md_longopts): Declare and define with new options (-EL, -EB, + and -mwarn-expand). + (md_show_usage): New function. + (md_operand): New function. + (obtain_reloc_for_imm16): New function. + (md_apply_fix3): New function. + (tc_gen_reloc): New function. + +2000-08-08 Stephane Carrez <Stephane.Carrez@worldnet.fr> + + * config/tc-m68hc11.c (build_jump_insn): Make sure the + 2 bytes of the jump address are in the same frag. + (find): Accept 68hc12 register indirect modes. + + * NEWS: Mention 68HC11 & 68HC12 support. + +2000-08-07 Richard Henderson <rth@cygnus.com> + + * config/tc-ia64.c (unwind): Add prologue_mask member. + (dot_vframe): Elide psp_gr record if it overlaps prologue_gr. + (dot_save): Likewise for pfs_gr, rp_gr, and preds_gr. + (dot_body): Clear unwind.prologue_mask. + (dot_prologue): Set it. Accept a register second argument. + +2000-08-07 Kazu Hirata <kazu@hxi.com> + + * config/atof-ieee.c: Fix formatting. + * config/atof-tahoe.c: Likewise. + +2000-08-06 Nick Clifton <nickc@cygnus.com> + + * config/tc-sparc.c (md_begin): Fix typo in recent formatting + work. + + * doc/as.texinfo (Pseudo Ops): Update to include descriptions + of .popsection, .previous, .pushsection, .subsection, + .version, .vtable_entry, .vtable_inherit and .weak. + +2000-08-05 Kazu Hirata <kazu@hxi.com> + + * config/tc-cris.c: Fix formatting. + * config/tc-i386.c: Likewise. + * config/tc-sparc.c (sparc_ip): Simplify the code. + +2000-08-04 Kazu Hirata <kazu@hxi.com> + + * config/tc-cris.c: Rearrange code for readability. + * config/tc-d10v.c: Fix formatting. + * config/tc-m32r.c: Likewise. + * config/tc-sparc.c: Likewise. + +2000-08-02 Jim Wilson <wilson@cygnus.com> + + * config/tc-ia64.c (emit_one_bundle): Call ia64_free_opcode + before ia64_find_opcode. + (md_assemble): Likewise. + +2000-08-01 Nick Clifton <nickc@cygnus.com> + + * config/tc-arm.c (do_mrs): Fix skip of 'cpsr_all' flag. + Undo some formatting fixes. + +2000-08-01 Kazu Hirata <kazu@hxi.com> + + * config/obj-som.c: Fix formatting. + * config/obj-ieee.c: Likewise. + * config/tc-arm.c: Likewise. + * config/tc-v850.c: Likewise. + +2000-08-01 Nick Clifton <nickc@redhat.com> + + * doc/c-m68k.texi (section M680x0 Options): Turn into a table + index by command line option. + +2000-08-01 Michael Sokolov <msokolov@ivan.Harhan.ORG> + + * doc/c-m68k.texi (@cindex @samp{--pcrel}): Rewrite option description. + (@node M68K-Branch): Rewrite to match the reality. + +2000-07-31 Jason Eckhardt <jle@cygnus.com> + + * doc/c-i860.texi: New file. + * doc/Makefile.am (CPU_DOCS): Add c-i860.texi. + * doc/Makefile.in: Regenerate. + * doc/all.texi: Add I860 as relevant architecture. + * doc/as.texinfo: Include i860 dependent file c-i860.texi. + +2000-07-31 Kazu Hirata <kazu@hxi.com> + + * config/tc-d30v.c: Fix formatting. + +2000-07-31 Michael Sokolov <msokolov@ivan.Harhan.ORG> + + * config/tc-m68k.c (flag_keep_pcrel, OPTION_PCREL): Add --pcrel option. + (md_convert_frag_1, md_estimate_size_before_relax): When making DBcc + long emit a long branch if available instead of an absolute jump, never + emit absolute jumps for anything with --pcrel. + + * doc/c-m68k.texi: Document new command line option. + +2000-07-29 Marek Michalkiewicz <marekm@linux.org.pl> + + * config/tc-avr.c: Use PARAMS macro in function declarations. + Don't declare md_pcrel_from_section (already in tc-avr.h). + (avr_operands): Use AVR_UNDEF_P and AVR_SKIP_P macros. + (avr_operand): Don't set (unsigned) op_mask to -1. + +2000-07-28 Jason Eckhardt <jle@cygnus.com> + + * configure.in: Add bits for i860-stardent-{sysv4, elf}*. + * configure: Regenerated. + * config/obj-elf.c (obj_elf_type): Recognize a fifth type + of operand to the .type directive (.e.g, "type"). + +2000-07-28 Alan Modra <alan@linuxcare.com.au> + + * as.h (warn_comment, found_comment, found_comment_file): Declare. + * app.c (do_scrub_chars): Record where first comment found. + * read.c (read_a_source_file): Init found_comment on entry, and + notify whether comments found on exit. + * config/tc-hppa.c (md_shortopts): Add "c". + (md_longopts): Add warn-comment. + (md_parse_option): Handle it. + (md_show_usage): Show available options. + * config/tc-hppa.h (WARN_COMMENTS): Define if TE_LINUX + +2000-07-27 Andrew Cagney <cagney@b1.cygnus.com> + + * config/tc-mn10300.c (md_convert_frag): Fix printfs. + (tc_gen_reloc): Add cast when assigning bfd_abs_symbol to + sym_ptr_ptr + (md_estimate_size_before_relax): Don't fall off end of function. + +2000-07-27 Kazu Hirata <kazu@hxi.com> + + * config/tc-avr.c: Fix formatting. + * config/tc-ns32k.c: Likewise. + +2000-07-27 Alan Modra <alan@linuxcare.com.au> + + * config/tc-d10v.c (find_opcode): Remove extraneous `='. + +2000-07-27 Kazu Hirata <kazu@hxi.com> + + * config/tc-d10v.c: Fix formatting. + * config/tc-z8k.c: Likewise. + * config/tc-sparc.c: Likewise. + +2000-07-26 Dave Brolley <brolley@redhat.com> + + * cgen.c (queue_fixup): Declare opinfo. + (gas_cgen_parse_operand): Mark unused parameters with ATTRIBUTE_UNUSED. + (gas_cgen_md_operand): Ditto. + (gas_cgen_md_apply_fix3): Ditto. + +2000-07-24 Mark Elbrecht <snowball3@bigfoot.com> + + * config/obj-coff.c (obj_frob_symbol): Don't merge + labels. Don't merge if the symbol isn't constant. Return + immediately if a symbol is merged. + +2000-07-22 Alan Modra <alan@linuxcare.com.au> + + * frags.c (frag_align): Correct absolute section alignment. + +2000-07-20 DJ Delorie <dj@redhat.com> + + * config/obj-coff.c (obj_frob_symbol): revert previous change, + it breaks linking against DLLs. + +2000-07-20 Hans-Peter Nilsson <hp@axis.com> + + * configure.in: Add CRIS support. + * configure: Regenerate. + * Makefile.am: (CPU_TYPES): Add cris. + (CPU_OBJ_VALID) [aout]: Add cris. + (MULTI_CPU_TYPES): Add cris. + (MULTI_CPU_OBJ_VALID) [aout]: Add cris. + [coff]: Only i386 and mips are valid. + (TARGET_CPU_CFILES): Add config/tc-cris.c. + (TARGET_CPU_HFILES): Add config/tc-cris.h. + (MULTI_CFILES): Add config/e-crisaout.c and config/e-criself.c. + Regenerate dependencies. + * Makefile.in: Regenerate. + * aclocal.m4: Regenerate. + * as.c: Declare crisaout, criself. + * config/tc-cris.h, config/tc-cris.c: New. + * config/e-criself.c, config/e-crisaout.c: New. + * po/POTFILES.in, po/gas.pot: Regenerate. + +2000-07-20 Kazu Hirata <kazu@hxi.com> + + * read.c: Fix formatting. + * write.c: Fix formatting. + +2000-07-19 H.J. Lu <hjl@gnu.org> + + * sb.c: Include <stdlib.h> if exists for abort (). + +2000-07-19 Alan Modra <alan@linuxcare.com.au> + + * config/tc-hppa.c (hppa_fix_adjustable): Correct LR%/RR% comment. + (arg_reloc_stub_needed): #ifdef OBJ_SOM, not #ifdef SOM. + (pa_type_args): Same here. + +2000-07-17 Mark Elbrecht <snowball3@bigfoot.com> + + * config/obj-coff.c (obj_frob_symbol): Don't merge labels. Don't + merge if the symbol isn't constant. Don't call S_SET_EXTERNAL if + the storage class is already set. + +2000-07-17 Kazu Hirata <kazu@hxi.com> + + * config/tc-m68hc11.c: Fix formatting. + * config/tc-mn10200.c: Likewise. + * config/tc-mn10300.c: Likewise. + * config/tc-pj.c: Likewise. + * config/tc-tic80.c: Likewise. + * config/tc-w65.c: Likewise. + +2000-07-17 Frank Ch. Eigler <fche@redhat.com> + + * expr.c (operand): Permit %bin literals if LITERAL_PREFIXPERCENT_BIN + is defined. + +2000-07-15 Ian Lance Taylor <ian@zembu.com> + + * doc/c-mips.texi (MIPS Opts): Remove erroneous space after + @code. + +2000-07-15 Alan Modra <alan@linuxcare.com.au> + + * config/tc-hppa.c (hppa_fix_adjustable): Use the same checks for + ELF as are used for SOM (except the 32-bit reloc one) to decide + whether a symbol can be reduced to a section symbol. Expand on + the comment for symbols involved in LR% and RR% expressions. + +2000-07-14 Nick Clifton <nickc@cygnus.com> + + * config/tc-mips.c (mips_disable_float_construction): New + static variable. Set to true if doubles should not be + constructed by loading two single width fp registers with + halves of the value. + (mips_ip): Test mips_disable_float_construction. + (md_longopts): Add command line switches --construct-floats + and --no-construct-floats. + (md_parse_option): Parse new command line options. + (md_show_usage): Describe new command line options. + + * doc/c-mips.texi: Document new command line options. + +2000-07-13 Koundinya K <kk@ddeorg.soft.net> + + * configure.in: Remove the test /usr/dde for mips-*-sysv4*MP* + * configure: Regenerate. + +2000-07-13 Hans-Peter Nilsson <hp@axis.com> + + * configure.in (DEFAULT_EMULATION setting): Revert part of + 2000-07-01 change that set te_multi=multi unless set to tmips. + * configure: Regenerate. + +2000-07-12 Mark Elbrecht <snowball3@bigfoot.com> + + * config/obj-coff.c (coff_frob_section): Add padding to the last + section when aligning it increases its size. + +2000-07-11 Kazu Hirata <kazu@hxi.com> + + * config/tc-tic54x.c: Fix formatting. + +2000-07-10 Kazu Hirata <kazu@hxi.com> + + * config/tc-h8500.c: Fix formatting. + * config/tc-tic54x.c: Fix formatting. + +2000-07-10 Alan Modra <alan@linuxcare.com.au> + + * config/tc-hppa.c (md_apply_fix): Check fmt 12 and 22 pc-rel + displacements correctly. + + * read.h (s_abort): Add ATTRIBUTE_NORETURN. + +2000-07-10 Ryan Bradetich <rbradetich@uswest.net> + + * hash.c (hash_insert): Add cast to obstruct_alloc to fix + warning. + (hash_jam): Ditto. + +2000-07-09 Alan Modra <alan@linuxcare.com.au> + + From David Huggins-Daines <dhd@linuxcare.com> + * config/te-hppalinux64.h: Add a new emulation. + * configure.in (emulations): Add configure bits to support the + 64-bit Linux/parisc target. + * configure: Regenerate. + + * config/tc-hppa.c (md_parse_option): Support `-V' for ELF. + (md_shortopts): Add `V' for ELF. + + * config/tc-hppa.c (arg_reloc_stub_needed): Define as zero except + when SOM or ELF_ARG_RELOC are defined. + (pa_type_args): Only set symbol_arg_reloc_info when SOM or + ELF_ARG_RELOC are defined. + (pa_stringer_aux): Don't pa_check_current_space_and_subspace here.. + (pa_stringer): ..Do it here instead. Fix comment typos. + (hppa_force_relocation): Cast enums to int before comparing with + ints. + + From Ryan Bradetich <rbradetich@uswest.net> + * config/tc-hppa.c: Removed unneeded libbfd.h to fix macro + redifinition warning. + (md_apply_fix): Added cast from enum to int for fixP->fx_r_type. + (hppa_force_relocation): ditto + (md_apply_fix): Added cast to buf to fix warnings. + + * config/tc-hppa.h (pa_define_label, parse_cons_expression_hppa, + cons_fix_new_hppa, hppa_force_relocation): Prototype. + + * config/tc-hppa.c (reloc_type): It's an enum for OBJ_ELF. + (R_N0SEL, R_N1SEL): Define only for OBJ_SOM. + (tc_gen_reloc): Make `code' a reloc_type and `codes' a + reloc_type** to avoid warnings in switch. + (md_apply_fix): Make insn, val signed. Zap buf_wd and read insn a + little earlier instead. + + * config/tc-hppa.c (symbol_arg_reloc_info): Define for both som + and elf. + (pa_type_args): Use symbol_arg_reloc_info. + (struct pa_it): Make arg_reloc unsigned int. + (struct hppa_fix_struct): Likewise for fx_arg_reloc. + (pa_text, pa_data, pa_comm): Don't compile for TE_LINUX. + (pa_code): Delete. pa_text duplicates this function. + (md_pseudo_table): Call obj_elf_text for ".code" if TE_LINUX. + (fix_new_hppa): Argument offset is offsetT, arg_reloc is unsigned + int. + (cons_fix_new_hppa): Actually change selector to e_fsel when + warning about assuming so. + (tc_gen_reloc): More example elf arg reloc code. + (md_apply_fix): Use arg_reloc_stub_needed for elf too. + (hppa_force_relocation): Likewise. + + * config/tc-hppa.h: Use TARGET_ARCH_SIZE to select target include + files. + (pa_end_of_source): Prototype. + (hppa_fix_adjustable): Prototype. + (LABELS_WITHOUT_COLONS): Move it.. + * config/te-hppa.h: To here. + + * config/te-hppa64.h: New file. + + * config/tc-hppa.c: Use TARGET_ARCH_SIZE to select target reloc + type. + (md_apply_fix): Pass stdoutput to bfd_hppa_insn2fmt. Handle + format -10, -16, 16 relocs. + (hppa_elf_mark_end_of_function): Test for null + last_call_info->start_symbol + + * config/tc-hppa.c (pa_ip): In case 'V', pass `strict' to + CHECK_FIELD, not INSERT_FIELD_AND_CONTINUE. Don't pass opcode to + re_assesmble_* functions. Delete extraneous statements. Fix + typos in comments. + (md_apply_fix): Compare against 1048575 in case 21. Don't pass + insn to re_assemble_*. + +2000-07-08 Ulf Carlsson <ulfc@engr.sgi.com> + + * doc/internals.texi (Expressions): Fix typo. + +2000-07-08 Kazu Hirata <kazu@hxi.com> + + * config/tc-sh.c: Fix formatting. + * config/tc-tic54x.c: Fix formatting. + * depend.c: Fix formatting. + * flonum-konst.c: Likewise. + * flonum-mult.c: Likewise. + +2000-07-07 Kazu Hirata <kazu@hxi.com> + + * config/tc-sh.c: Fix comments. + * config/obj-vms.c: Fix comments. + * config/tc-a29k.c: Likewise. + * config/tc-alpha.c: Likewise. + * config/tc-h8300.c: Likewise. + * config/tc-h8500.c: Likewise. + * config/tc-i370.c: Likewise. + * config/tc-ia64.c: Likewise. + * config/tc-m68hc11.c: Likewise. + * config/tc-m68k.c: Likewise. + * config/tc-mips.c: Likewise. + * config/tc-ns32k.c: Likewise. + * config/tc-ppc.c: Likewise. + * config/tc-z8k.c: Likewise. + +2000-07-06 Mark Elbrecht <snowball3@bigfoot.com> + + * config/obj-coff.c (TC_COFF_SECTION_DEFAULT_ATTRIBUTES): New. + Default to '(SEC_LOAD | SEC_DATA)'. + (obj_coff_section) [BFD_ASSEMBLER]: Use it. + + * doc/internals.texi (CPU Backend): Describe + TC_COFF_SECTION_DEFAULT_ATTRIBUTES. + +2000-06-06 Andrew Cagney <cagney@b1.cygnus.com> + + * as.c (parse_args): NULL terminate the long option list. + +2000-06-04 Andrew Cagney <cagney@b1.cygnus.com> + + * config/tc-d30v.h: Include "write.h" for fixS. + (d30v_start_line, md_pcrel_from_section): Add function prototypes. + +2000-07-05 Nick Clifton <nickc@cygnus.com> + + * config/tc-d30v.c (write_2_short): Further changes to warning + messages produced when combining EITHER_BUT_PREFER_MU attributed + opcodes. + +2000-07-05 DJ Delorie <dj@redhat.com> + + * MAINTAINERS: new + +2000-07-04 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-arm.c (psrs): Accept combinations of flags. + +2000-07-03 Marek Michalkiewicz <marekm@linux.org.pl> + + * config/tc-avr.c: Change _ () to _() around all strings marked + for translation (exception from the usual coding style). + (avr_opt): New struct variable, how the new switches are set. + (OPTION_MMCU): Define as 'm' and actually use. + (md_longopts): Add -mall-opcodes, -mno-skip-bug, -mno-wrap. + (show_mcu_list): New function, display the list of known MCUs. + (md_show_usage): Document the new switches. Call show_mcu_list. + (avr_set_arch): Change 'm' to OPTION_MMCU. + (md_parse_option): Call show_mcu_list if unknown MCU specified. + Handle the new switches. + (avr_operands): Disable warnings for undefined combinations of + operands if -mall-opcodes. Disable warnings for skipping two-word + instructions if enhanced core or -mno-skip-bug. + (avr_operand): Accept all addressing modes on avr1 if -mall-opcodes. + (md_apply_fix3): Reject 8K wrap if >8K or -mno-wrap. + (md_assemble): Accept opcodes not supported by MCU if -mall-opcodes. + (avr_ldi_expression): Warn about implicit lo8(). + * config/tc-avr.h (md_pcrel_from_section): Add prototype. + +2000-07-01 Koundinya K <kk@ddeorg.soft.net> + + * configure.in: Add entry for mips-*-sysv4*MP* + * configure: Rebuild + * config/tc-mips.c (mips_target_format): Return elf32-tradbigmips or + elf32-tradlittlemips for traditional mips targets. + * config/tc-mips.c (md_estimate_size_before_relax): Duplicate the + test for Link Once sections as in adjust_reloc_syms. + * config/te-tmips.h: New file for traditional mips targets. Define + TE_TMIPS. + +2000-06-29 Mark Elbrecht <snowball3@bigfoot.com> + + * config/obj-coff.c (obj_coff_setcion) [BFD_ASSEMBLER]: If the + flags argument is not present, don't change an existing section's + section's attributes. If the flags argument is present, warn if the + attributes don't match the section's current attributes. When + long section names are supported, set SEC_LINK_ONCE and + SEC_LINK_DUPLICATES_DISCARD for a new .gnu.linkonce section. + +2000-06-29 Hans-Peter Nilsson <hp@axis.com> + + * config/obj-aout.c (obj_aout_type): Do not ignore for undefined + symbols; create them. + +2000-06-29 Mark Elbrecht <snowball3@bigfoot.com> + + * write.c (set_segment_vma): New: Set vma and lma for a segment. + (write_object_file) [BFD_ASSEMBLER && OBJ_COFF && TE_GO32]: Use it. + +2000-06-27 Aldy Hernandez <aldyh@redhat.com> + + * config/tc-mips.c (mips_ip): handle "(foo-.-4)" type of + expressions. Ignore the problem when handling 16 bit signed + immediates, because the assembler will take care of the relocation + later. + +2000-06-27 Nick Clifton <nickc@cygnus.com> + + * config/tc-d30v.c (write_2_short): Do not allow opcodes with + the EITHER_BUT_PREFER_MU attribute to be combined into a reverse + sequential order, and emit warning messages if the input source + code contains constructs like that, or parallel constructs + containing such opcodes. + +2000-06-26 Marek Michalkiewicz <marekm@linux.org.pl> + + * config/tc-avr.c (mcu_types): Rename avr4 to avr5, add avr4. + Add more MCU types for avr4 and avr5. Replace at94k{10,20,40} + with just at94k. Change AVR_ISA_85xx back to AVR_ISA_2xxx. + (md_show_usage): Update usage message. + (md_parse_option): Allow redefinition of MCU type within the + same avr[1-5] bfd machine type. Show both old and new MCU type + in the error message. + (md_apply_fix3): Support 8K wrap if AVR_ISA_MEGA is not set. + Simplify 8K wrap code. + +2000-06-25 Kazu Hirata <kazu@hxi.com> + + * config/obj-aout.c: Remove all uses of DEFUN. + * config/obj-ieee.c: Likewise. + * config/tc-sh.c: Fix comment typos. + * config/tc-tahoe.c: Likewise. + * config/tc-vax.c: Likewise. + * config/tc-w65.c: Likewise. + * config/tc-z8k.c: Likewise. + * config/tc-h8300.c (build_bytes): Assemble ldmac correctly. + +2000-06-24 DJ Delorie <dj@cygnus.com> + + * config/tc-i386.c (md_estimate_size_before_relax): Revert + more changes from Sept 1999 + (tc_i386_fix_adjustable): ditto + (md_apply_fix3): ditto + +2000-06-24 Frank Ch. Eigler <fche@redhat.com> + + * cgen.c (expr_jmp_buf_p): New validity flag for expr_jmp_buf. + (gas_cgen_parse_operand): Set it around expression() call. + (gas_cgen_md_operand): Test for it before longjmp(). + +2000-06-24 Kazu Hirata <kazu@hxi.com> + + * config/tc-h8500.c: Remove all uses of DEFUN. + * config/tc-sh.c: Likewise. + * config/tc-w65.c: Likewise. + * config/tc-z8k.c: Likewise. + + * config/tc-h8500.c: Fix typos in comments. + +2000-06-23 Frank Ch. Eigler <fche@redhat.com> + + * expr.c (operand): Permit $hex literals if LITERAL_PREFIXDOLLAR_HEX + is defined. + +2000-06-23 matthew green <mrg@redhat.com> + + * expr.c (operand): Do not as_bad() if RELAX_PAREN_GROUPING is + defined. Fix error message for `[' grouping. + +2000-06-22 Kazu Hirata <kazu@hxi.com> + + * config/tc-h8300.c: Fix formatting and comment typos. + +2000-06-22 Timothy Wall <twall@cygnus.com> + + * config/tc-ia64.c (note_register_values): Move premature QP + notation clearing into the appropriate place. + +2000-06-22 Alan Modra <alan@linuxcare.com.au> + + * dep-in.sed: Escape literal `.'s on patterns. Trim off `../' + first before anything else. Add bin-bugs.h, emul.h and progress.h + Sort list of files as for $(OBJS) in Makefile.am. + + * Makefile.am (DEP): grep for leading `/' in DEPA, and fail if we + find one. Remake dependencies. + ($(OBJS)): Add bin-bugs.h, emul.h, and progress.h Sort the list. + * Makefile.in: Regenerate. + * doc/Makefile.in: Regenerate. + + * config/tc-i386.c (i386_displacement): Don't assume a constant + displacement is necessarily 16 bits when in 16 bit code mode. + (md_assemble): Instead size the displacement here after we know + for sure that a .code16gcc operand hasn't automatically added + operand size prefixes. + +2000-06-21 H.J. Lu <hjl@gnu.org> + + * Makefile.am: Rebuild dependency. + * Makefile.in: Rebuild. + +2000-06-21 Kazu Hirata <kazu@hxi.com> + + * config/tc-h8300.c (parse_reg): Make the function static. + (parse_exp): Likewise. + +2000-06-20 DJ Delorie <dj@cygnus.com> + + * config/tc-i386.c (tc_i386_fix_adjustable): Revert change from + Sept 1999; RVA relocs need to be treated more like DIR32 relocs + for cygwin import libraries to work properly. + +2000-06-20 H.J. Lu <hjl@gnu.org> + + * Makefile.am: Rebuild dependency. + * Makefile.in: Rebuild. + * configure: Likewise. + * doc/Makefile.in: Likewise. + +2000-06-20 Timothy Wall <twall@cygnus.com> + + * doc/internals.texi (CPU backend): Add @itemx for + TC_START_LABEL_WITHOUT_COLON. + * doc/c-tic54x.texi: New. + * doc/as.texinfo: Add tic54x features and include primary tic54x + documentation file. + * doc/all.texi: Add C54X. + * doc/Makefile.am (CPU_DOCS): Add c-tic54x.texi. + * doc/Makefile.in: Regenerate. + * configure.in: Add tic54x and define LIBM for tic54x. + * configure: Regenrate. + * config/tc-tic54x.[ch]: New. + * config/obj-coff.h: Add tic54x. + * Makefile.am: (CPU_TYPES): Add tic54x. + (TARGET_CPU_CFILES): Add 'tc-tic54x.c'. + (TARGET_CPU_HFILES): Add 'tc-tic54x.h'. + (as_new_LDADD): Add $(LIBM). + * Makefile.in: Regenerate. + +2000-06-18 Stephane Carrez <stcarrez@worldnet.fr> + + * doc/Makefile.am (CPU_DOCS): Added 68hc11 file. + * doc/c-m68hc11.texi: Document 68HC11 and 68HC12 port. + * doc/as.texinfo: Likewise. + + * configure, Makefile.in: Regenerate. + * configure.in (emulations): Recognize m6811 and m6812. + * Makefile.am (CPU_TYPES, TARGET_CPU_CFILES, TARGET_CPU_HFILES): + Added files for 68hc11 and 68hc12 assembler. + * config/tc-m68hc11.c: Assembler for 68hc11 and 68hc12. + * config/tc-m68hc11.h: Header definition for that assembler. + +2000-06-18 Nick Clifton <nickc@redhat.com> + + * symbols.c (resolve_symbol_value): Use bfd_octets_per_byte + instead of OCTETS_PER_BYTE. + + * config/tc-v850.c: Fix compile time warnings. + * config/tc-ppc.c: Fix compile time warnings. + +2000-06-18 H.J. Lu <hjl@gnu.org> + + * configure.in: Don't emulate i386-pc-pe-coff with i386coff. + * configure: Rebuild. + +2000-06-17 Mark Elbrecht <snowball3@bigfoot.com> + + * config/obj-coff.c (obj_coff_weak): Typo fix: Change BFD_ASSEMLER + to BFD_ASSEMBLER. + +2000-06-16 Nick Clifton <nickc@cygnus.com> + + * config/tc-mips.c (md_parse_option): Accept RM5200,RM5230, + RM5231, RM5261, RM5721 and RM7000 as r5000 cpu variants. + + * doc/c-mips.texi: Document newly accepted cpu variants. + +2000-06-15 Ulf Carlsson <ulfc@engr.sgi.com> + + * config/tc-mips.h: Remove definition of ONLY_STANDARD_ESCAPES. + +2000-06-13 Ulf Carlsson <ulfc@engr.sgi.com> + + * macro.c (getstring): Make it possible to escape the quote + character. + +2000-06-13 Catherine Moore <clm@redhat.com> + + * config/tc-hppa.c (pa_export): Weak symbols can be global. + +2000-06-13 H.J. Lu <hjl@gnu.org> + + * configure: Regenerate. + +2000-06-09 Alan Modra <alan@linuxcare.com.au> + + * app.c (do_scrub_begin): Don't default lex[';'] as a line + separator. + * doc/internals.texi (line_separator_chars): Semicolon is no + longer a default. Mention null and newline as defaults. + + * read.c (is_end_of_line): Remove ifdef TC_HPPA. + + * config/tc-i386.h (line_separator_chars): Explicitly mention `;' + * config/tc-i860.h (line_separator_chars): Likewise. + * config/tc-h8300.c (line_separator_chars): Likewise. + * config/tc-i960.c (line_separator_chars): Likewise. + * config/tc-m68k.c (line_separator_chars): Likewise. + * config/tc-mips.c (line_separator_chars): Likewise. + * config/tc-ns32k.c (line_separator_chars): Likewise. + * config/tc-sparc.c (line_separator_chars): Likewise. + * config/tc-vax.c (line_separator_chars): Likewise. + + * config/tc-h8300.c (comment_chars): Use string initialiser. + * config/tc-i960.c (line_comment_chars): Likewise. + * config/tc-z8k.c (comment_chars, line_comment_chars, + line_separator_chars): Likewise. + + * config/tc-arm.c (line_separator_chars): Always use `;', not just + for TE_LINUX. + +2000-06-08 Nick Clifton <nickc@cygnus.com> + + * config/tc-arm.c (cons_fix_new_arm): Assign correct reloc value + for size 1 fixes. + +2000-06-08 David O'Brien <obrien@FreeBSD.org> + + * configure.in (VERSION): Update to show this is the CVS mainline. + +2000-06-08 Matthew Jacob <mjacob@feral.com> + + * config/tc-alpha.c (md_undefined_symbol): Properly understand that + $at is the integer register $r28, vs. both $r28 and the floating + point register $f28. + +2000-06-08 James E. Wilson <wilson@cygnus.com> + + * config/tc-ia64.c (generate_unwind_image): Call ia64_flush_insns. + (dot_endp): Don't call ia64_flush_insns. + (emit_one_bundle): Don't delete prologue/body records from + unwind_record list in first loop. Rewrite second loop to account for + this. + +2000-06-07 David Mosberger <davidm@hpl.hp.com> + + * config/tc-ia64.c: Add missing prototypes. + (generate_unwind_image): Cast argument to output_unw_records call. + +2000-06-07 Denis Chertykov <denisc@overta.ru> + + * config/tc-avr.c (avr_operand): fix the formatting of the comment. + +2000-06-07 Denis Chertykov <denisc@overta.ru> + + * config/tc-avr.c (AVR_ISA_???): moved to include/opcode/avr.h + (REGISTER_P): likewise. + (avr_opcodes): uses include/opcode/avr.h + (avr_operand): enable ld r,Z or st r,Z for at90s1200. + +2000-06-04 Alan Modra <alan@linuxcare.com.au> + + * read.c (is_end_of_line): No ';' for TC_HPPA. Add missing + initializers too. + +2000-06-03 H.J. Lu <hjl@gnu.org> + + * read.c (is_end_of_line): Put back `;'. + +2000-06-03 Alan Modra <alan@linuxcare.com.au> + + * config/tc-i386.c (md_shortopts): Remove 'm', add 'q' to non-elf. + +2000-06-01 Alan Modra <alan@linuxcare.com.au> + + * expr.c (operand): Test is_end_of_line outside switch to catch + line separator chars that are also operators. + (operator): Return O_illegal for line separator chars. + + * read.c (is_end_of_line): Use 1 instead of 99. Don't set `;' + entry (or `!' entry for TC_HPPA). + + * config/tc-arm.c (my_get_float_expression): Cast to unsigned char + before indexing is_end_of_line. Remove redundant check for '\0'. + (fp_op2): Likewise. + * config/tc-h8500.c (md_assemble): Likewise. + * config/tc-mcore.c (md_assemble): Likewise. + * config/tc-tic30.c (tic30_find_parallel_insn): Likewise. + (md_atof): Likewise + + * config/tc-m88k.c (s_bss): Cast to unsigned char before indexing + is_end_of_line. + * config/tc-mcore.c (mcore_cons): Likewise. + (mcore_float_cons): Likewise. + (mcore_stringer): Likewise. + * config/tc-tic30.c (tic30_find_parallel_insn): Likewise. + +2000-06-01 Scott Bambrough <scottb@netwinder.org> + + * config/tc-arm.c (do_mrs): Allow SPSR_BIT to be set correctly. + +2000-05-29 Nick Clifton <nickc@cygnus.com> + + * config/tc-sh.c: Fix compile time warning messages. + + * config/tc-mips.c: Fix compile time warning messages. + +2000-05-29 Philip Blundell <philb@gnu.org> + + * doc/as.texinfo: Update copyright dates. + (Local Labels): Delete misplaced mention of ARM. + * NEWS: Mention ARM ELF support. + +2000-05-27 Alexandre Oliva <aoliva@cygnus.com> + + * config/tc-mn10300.c (md_assemble): Copy size to real_size before + it is modified, and use the real_size to compute the frag address + for dwarf2 line info. + +2000-05-27 Alan Modra <alan@linuxcare.com.au> + + * Makefile.am (DEP, DEP1, dep, dep-in, dep-am): Use a better sed + line-matching scheme to cope with automake moving variables around. + ($(TARG_CPU_O)): Remove dependency on TARG_CPU_DEP_@target_cpu_type@ + * Makefile.in: Regenerate. + +2000-05-26 Jakub Jelinek <jakub@redhat.com> + + * config/tc-sparc.c (sparc_relax): New. + (md_longopts): Add -relax and -no-relax options. + (md_parse_options, md_show_usage): Likewise. + (md_apply_fix3): Optimize tail call into branch always if possible. + +2000-05-04 Donald Lindsay <dlindsay@cygnus.com> + + * config/tc-d10v.c (write_2_short, parallel_ok, md_assemble, + d10v_cleanup) implement Mitsubishi's newly explained branch-packing + rules, with warning when a GAS statement specifies a packing that + will result in an instruction being squashed. + Added typdef packing_type and enumerals, changed various integer + literals to use the enumerals. + +2000-05-24 David Mosberger <davidm@hpl.hp.com> + + * config/tc-ia64.c (dot_restorereg_p): New function. + (md_pseudo_table): Add restorereg.p. + (output_X3_format): Fix typo: record type should be UNW_X3, not UNW_X1. + (output_X4_format): Fix typo: record type should be UNW_X4, not UNW_X2. + + * config/tc-ia64.h (unw_record_type): Add unwabi. + (unw_r_record): Rename member MASK to GRMASK. Add sub-structure + called MASK with members for imask, and the masks produced by + fr_mem, gr_mem, br_mem, and frgr_mem. + (unw_p_record): Add members ABI and CONTEXT. + (unw_x_record): Add member AB. + * config/tc-ia64.c (enum reg_symbol): Add REG_PSP and REG_PRIUNAT + as pseudo-register for use during unwind info generation. + (AR_PFS, AR_LC): New macros. + (enum pseudo_type): Add PSEUDO_FUNC_REG to permit declaring registers + whose names start with an at sign (as in "@priunat"). + (pseudo_func): Add "svr4", "hpux", "nt" constants and "priunat" + register. + (unwind_list, unwind_tail, current_unwind_entry, proc_start, + proc_end, unwind_info, personality_routine): Consolidate into + "unwind" structure to reduce offset-table use. Add member + NEXT_SLOT_NUMBER to track the slot number for the next instruction + to be emitted. + (output_R1_format, output_R3_format, output_P3_format, + output_P6_format): Initialize R with zero to reduce compiler warnings. + (output_P7_format): Ditto. Add `default' branch to switch + statement to reduce compiler warnings. + (output_P8_format, output_B1_format, output_B4_format): Ditto. + (output_P4_format): Rename 2nd & 3rd arg to IMASK and IMASK_SIZE. + (format_ab_reg): Rename from format_a_b_reg. Merge A and B args + into single argument. + (output_X1_format, output_X3_format): Initialize R with zero to reduce + compiler warnings. Merge A and B args into single argument. + (output_X2_format, output_X4_format): Remove unused variable R. Merge + A and B args into single argument. + (free_record): Removed (wasn't used). + (free_list_records): Also free imasks in prologue records. + (output_prologue, output_prologue_gr): Initialize mask bits to zero. + (output_spill_mask): Remove. + (output_unwabi): New function. + (output_epilogue, output_label_state, output_copy_state): Call + alloc_record. + (output_spill_psprel, output_spill_sprel, output_spill_psprel_p, + output_spill_sprel_p, output_spill_reg, output_spill_reg_p): Add AB + argument. + (process_one_record): New locals FR_MASK and GR_MASK. Ignore + gr_mem, fr_mem, br_mem, and frgr_mem records and instead emit them + as part of handling the prologue records. Emit region's imask if + we have one. Handle unwabi, epilogue, label_state, copy_state, + spill_psprel, spill_sprel, spill_reg, spill_psprel_p, + spill_sprel_p, and spill_reg_p records. + (set_imask, count_bits, slot_index): New function. + (fixup_unw_records): Fix region size computation. Handle + epilogue, spill_reg, spill_sprel, spill_psprel, spill_reg_p, + spill_sprel_p, and spill_psprel_p records. Merge mask bits of + frgr_mem, fr_mem, gr_mem, br_mem on a per-region basis and + set_imask accordingly. Update imask for gr_gr, and br_gr records. + (convert_expr_to_ab_reg, convert_expr_to_xy_reg): New function. + (dot_save): Use manifest constants for applicaton registers. + Handle REG_PR and REG_PRIUNAT. + (dot_restore): Don't just ignore it. + (dot_restorereg): New function.. + (generate_unwind_image): Ensure unwind info is a multiple of eight + bytes, not just four bytes. + (dot_handlerdata, dot_unwentry): Demand empty rest of line. + (dot_altrp): Don't just ignore it. + (dot_savemem): New function. Replaces dot_savesp() and + dot_savepsp(). Use manifest constants for applicaton registers. + Handle REG_PR and REG_PRIUNAT. + (dot_savef): Simplify. + (dot_saveb): Support generation of br_gr. + (dot_spillreg, dot_spillmem, dot_spillreg_p, dot_spillmem_p, + dot_label_state, dot_copy_state): New function. + (dot_unwabi): Don't just ignore it. + (md_pseudo_table): Add restorereg, spillreg, spillsp, spillpsp, + spillreg.p, spillsp.p, spillpsp, label_state, copy_state, + unwabi, vframesp, and vframepsp. Fix typo alprp->altrp. + (emit_one_bundle): Set slot number for prologue/body records + *before* emitting the first insn. + (emit_one_bundle): Set UNWIND.NEXT_SLOT_NUMBER. + (md_begin): Declare "psp" pseudo-register. + (md_operand): Handle PSEUDO_FUNC_REG. Fix printing of error message + so we don't get segfault. + (output_psp_sprel): Output sp/psp relative offsets as 4-byte word + counts as required per SW Conventions manual + (output_rp_psprel, output_rp_sprel, output_pfs_psprel,output_pfs_sprel, + output_preds_psprel, output_preds_sprel, output_spill_base, + output_unat_psprel, output_unat_sprel, output_lc_psprel, + output_lc_sprel, output_fpsr_psprel, output_fpsr_sprel, + output_priunat_psprel, output_priunat_sprel, output_bsp_psprel, + output_bsp_sprel, output_bspstore_psprel, output_bspstore_sprel, + output_rnat_psprel, output_rnat_sprel, output_spill_psprel, + output_spill_sprel, output_spill_psprel_p, output_spill_sprel_p):Ditto. + (dot_vframe): Implement. + (dot_vframesp, dot_vframepsp): New function. + +2000-05-23 Hans-Peter Nilsson <hp@axis.com> + + * configure.in (i386-*-freebsd a.out entry): Quote properly. + * configure: Regenerate. + +2000-05-23 Alan Modra <alan@linuxcare.com.au> + + * config/tc-i386.c (md_assemble): Pass jump reloc in fr_var... + (md_estimate_size_before_relax): so we can use it here instead of + old kludges. Localise vars to blocks. Comment. + + * frags.c (frag_new): Update fr_var comments. + * frags.h (struct frag): Ditto. + +2000-05-22 Richard Henderson <rth@cygnus.com> + + * config/tc-ia64.c (FUNC_PC_RELATIVE): New. + (pseudo_func): Add pcrel. + (operand_match): Handle IA64_OPND_TGT64. + (build_insn): Likewise. + (md_begin): Initialize pseudo_func[FUNC_PC_RELATIVE]. + (ia64_gen_real_reloc_type): Handle FUNC_PC_RELATIVE. + (fix_insn): Handle all three 64-bit relocation types. + +2000-05-22 Hans-Peter Nilsson <hp@axis.com> + + * obj.h (struct format_ops): New members begin, app_file, + s_set_other, s_set_desc, s_get_type, s_set_type, + separate_stab_sections, init_stab_section. + + * config/obj-multi.h: Update GPL notice to v2. + (obj_begin): New. + (obj_app_file): New. + (S_SET_SIZE): Test s_set_size for NULL before calling. + (S_SET_ALIGN): Similar for s_set_align. + (S_SET_OTHER): New. + (S_SET_DESC): New. + (S_GET_TYPE): New. + (S_SET_TYPE): New. + (SEPARATE_STAB_SECTIONS): New. + (INIT_STAB_SECTION): New. + (EMIT_SECTION_SYMBOLS): New. + (AOUT_STABS) [OBJ_MAYBE_AOUT]: Define. + + * config/obj-elf.h: Update GPL notice to v2. + Mention that this file is included from obj-multi.h. + (obj_begin): Wrap definition in ifndef. + (elf_file_symbol): Constify declaration. + (obj_app_file): Ditto. + (SEPARATE_STAB_SECTIONS, INIT_STAB_SECTION, OBJ_PROCESS_STAB): + Wrap in ifndef SEPARATE_STAB_SECTIONS. + + * config/obj-elf.c (elf_s_set_other): New. + (elf_file_symbol): Constify argument. + (elf_separate_stab_sections): New. + (elf_init_stab_section): New. + (elf_format_ops): Add new members. Remove comma at end. + + * config/obj-ecoff.c (ecoff_separate_stab_sections): New. + (ecoff_format_ops): Add new fields. Remove comma at end. + Mention inconsistency for emit_section_symbols. + + * config/obj-coff.h (c_dot_file_symbol): Constify declaration. + + * config/obj-coff.c (c_dot_file_symbol): Constify argument. + (coff_separate_stab_sections): New. + (coff_format_ops): Add new members. + + * config/obj-aout.c (obj_aout_sec_sym_ok_for_reloc): New. + (obj_aout_s_set_other): New. + (obj_aout_s_set_desc): New. + (obj_aout_s_get_type): New. + (obj_aout_s_set_type): New. + (obj_aout_separate_stab_sections): New. + (aout_format_ops): New members added. Use obj_aout_process_stab, + not 0. Use obj_aout_sec_sym_ok_for_reloc, not 0. + (obj_aout_frob_symbol): Add ATTRIBUTE_UNUSED to args as + appropriate. + (obj_aout_line, obj_aout_weak, obj_aout_type): Ditto. + +2000-05-22 Alan Modra <alan@linuxcare.com.au> + + * config/tc-i386.c (tc_i386_fix_adjustable): Prevent adjustment + for OBJ_MAYBE_ELF too. Use S_IS_EXTERNAL instead of S_IS_EXTERN. + (md_estimate_size_before_relax): Ensure jumps to weak and + externally visible symbols are relocatable. + +2000-05-20 Hans-Peter Nilsson <hp@axis.com> + + * stabs.c (aout_process_stab): Make global. + (s_desc): Add ATTRIBUTE_UNUSED to args as appropriate. + * read.h (aout_process_stab): Declare. + + * configure.in (EMULATIONS) [i386aout, i386coff, i386elf]: + Generalize to *aout, *coff *elf. + * configure: Regenerated. + + * doc/internals.texi (Object format backend): Say + SEPARATE_STAB_SECTIONS needs to be nonzero, not just defined. + + * Makefile.am (TARG_ENV_HFILES): Delete te-multi.h. + * Makefile.in: Regenerated. + +2000-05-19 Catherine Moore <clm@cygnus.com> + + * cgen.h (GAS_CGEN_MAX_FIXUPS): Check if already defined. + +2000-05-18 Alan Modra <alan@linuxcare.com.au> + + * config/tc-hppa.c (md_apply_fix): Mask out immediate bits of + instruction to reflect change in re_assemble_*. + +2000-05-18 Jeffrey A Law (law@cygnus.com) + + * configure.in (hppa-*-hpux11*): If the cpu is hppa*64*, then + build PA64 ELF tools. + * configure: Rebuilt. + +2000-05-17 Alan Modra <alan@linuxcare.com.au> + + * Makefile.am: Regenerate dependencies. + * Makefile.in: Regenerate. + +2000-05-15 Nick Clifton <nickc@cygnus.com> + + * config/tc-arm.c (struct asm_psr): Add boolean field + distinguishing between CSPR and SPSR. Rename 'number' field + to 'field'. + (psrs): Rearrange contents to match new asm_psr structure. + (arm_psr_parse): Move next to psr_required_here. Make it + return an asm_psr structure. + (psr_required_here): Use asm_psr structure returned by + arm_psr_parse. + (do_msr): Reorganise to allow psr_required_here to be called + only once. + (md_undefined_name): Mark 'name' parameter as unused, since + the COFF target does not use it. + +2000-05-14 David O'Brien <obrien@FreeBSD.org> + + * config/te-386bsd.h: Clean up comments to adhere to the GNU coding + standards. + * config/te-aux.h: Likewise. + * config/te-dpx2.h: Likewise. + * config/te-go32.h: Likewise. + * config/te-hp300.h: Likewise. + * config/te-hppa.h: Likewise. + * config/te-i386aix.h: Likewise. + * config/te-ic960.h: Likewise. + * config/te-interix.h: Likewise. + * config/te-nbsd532.h: Likewise. + * config/te-pc532mach.h: Likewise. + * config/te-ppcnw.h: Likewise. + * config/te-psos.h: Likewise. + * config/te-sparcaout.h: Likewise. + * config/te-sun3.h: Likewise. + * config/te-sysv32.h: Likewise. + +2000-05-14 Alan Modra <alan@linuxcare.com.au> + + * config/tc-h8300.c (do_a_fix_imm): Don't rely on `short' being 16 + bits. Instead explicitly mask and sign extend. Do the 8 bit mask + and sign extend without an if statement. + (build_bytes): Likewise. + +2000-05-14 Kazu Hirata <kazu@hxi.com> + + * config/tc-h8300.c (do_a_fix_imm): Output a reloc for no + X_add_symbol L_32 case. + +2000-05-14 David O'Brien <obrien@FreeBSD.org> + + * config/te-freebsd.h: New file. + +2000-05-13 Alan Modra <alan@linuxcare.com.au> + + * asintl.h (gettext, dgettext, dcgettext, textdomain, + bindtextdomain): Replace defines with those from intl/libgettext.h + to quieten gcc warnings. + + * NEWS: Mention x86 .arch and -q. + + * config/tc-i386.c (quiet_warnings): New. + (md_assemble): Use quiet_warnings. + (md_parse_option): Set quiet_warnings from -q. + (md_show_usage): Mention -q, delete -m. + (flag_do_long_jump): Delete. + (md_parse_option): Remove -m. + (md_show_usage): Remove -m. + (md_create_long_jump): Remove useless flag_do_long_jump code. + + * as.c (parse_args): In case OPTION_DEFSYM, use a valueT to hold + the symbol value, and use bfd_scan_vma if BFD_ASSEMBLER. + +2000-05-13 Alan Modra <alan@linuxcare.com.au> + Alexander Sokolov <robocop@netlink.ru> + + * doc/c-i386.texi (i386-Arch): New section. + (i386-Syntax): Mention .intel_syntax and .att_syntax. + + * config/tc-i386.c (cpu_arch_name, cpu_arch_flags): New. + (smallest_imm_type): Use smallest opcode for shift by one if cpu + architecture has been given and is not 486. + (set_cpu_arch): New. + (md_pseudo_table): Add .arch. + (md_assemble): Warn if cpu architecture has been given and an + unsupported instruction. + + * config/tc-i386.h (SMALLEST_DISP_TYPE): Delete. + Move operand_types bit defines after relevant template field. + (template): Add cpu_flags. + (Cpu*): Define. + (arch_entry): New. + +2000-05-12 Alexandre Oliva <aoliva@cygnus.com> + + * config/tc-mn10300.h (md_end): Define. + (mn10300_finalize): Declare. + * config/tc-mn10300.c: Include dwarf2dbg.h. + (debug_line): Define. + (md_assemble): Generate dwarf2 line info. + (mn10300_finalize): New function. Finalize dwarf2 info. + +2000-05-11 Ulf Carlsson <ulfc@engr.sgi.com> + + * config/tc-mips.c (md_estimate_size_before_relax): Use the + external version of the relocation for weak symbols. + +2000-05-08 David Mosberger <davidm@hpl.hp.com> + + * config/tc-ia64.c (output_P7_format, case mem_stack_f): Output fixed + frame size in units of 16 bytes, as required per SW Conventions manual. + (output_unw_records): Output info-block header as a dword to get + byte-order right. + +2000-05-08 Alan Modra <alan@linuxcare.com.au> + + * as.h: #include "file", not <file> on files from ../include. + (as_abort, as_fatal): Add ATTRIBUTE_NORETURN. + * config/tc-m68k.c (m68k_ip): Fix signed/unsigned warnings. + (md_convert_frag): Add ATTRIBUTE_UNUSED. + (tc_coff_symbol_emit_hook): Ditto. + (OPTCOUNT): Cast to int to avoid compiler warning. + (md_begin): Fix signed/unsigned warnings. + +2000-05-08 Michael Sokolov <msokolov@ivan.Harhan.ORG> + + * config/tc-m68k.c (md_convert_frag_1): Abort if we end up in the + ABRANCH LONG case for a conditional branch on a 68000. + (md_estimate_size_before_relax): Likewise. Also handle + flag_short_refs correctly for ABRANCH, BCC68000, and DBCC. + (m68k-ip: case ABSL): Relax absolute references to 16-bit + PC-relative on all CPUs. + (md_estimate_size_before_relax): Likewise. + +2000-05-04 Alan Modra <alan@linuxcare.com.au> + + * as.c (parse_args): Just mention current year in printed + copyright message. + +2000-05-03 J.T. Conklin <jtc@redback.com> + + * config/tc-ppc.c (pre_defined_registers): Add entries for vector + unit registers. + (md_parse_option): Recognize -m7400. + +2000-05-03 Ian Lance Taylor <ian@zembu.com> + + * config/atof-ieee.c (gen_to_words): When adding carry back in, + don't permit lp to become less than the words array. + +2000-05-03 Rodney Brown <RodneyBrown@pmsc.com> + + config/tc-mcore.c (md_apply_fix3): BFD_RELOC_MCORE_PCREL_IMM11BY2 + Fix little-endian case. + +2000-05-03 David O'Brien <obrien@NUXI.com> + + * as.c (parse_args): Update copyright. + +2000-05-03 Mark Elbrecht <snowball3@bigfoot.com> + + * config/tc-i386.h (SUB_SEGMENT_ALIGN): If TE_GO32, return 4 + for the .bss section too. + +2000-05-02 Alan Modra <alan@linuxcare.com.au> + + * configure.in: Set em=linux for hppa-*-linux. + * configure: Regenerate. + * doc/Makefile.in: Regenerate with correct automake. + + * frags.c (frag_grow): Sanity check chunk_size. + + * config/obj-elf.h: #include "bfd.h" not <bfd.h> + * config/obj-som.h: Likewise. + * config/obj-ieee.h: Likewise. + + * config/tc-hppa.h: Test BFD_ARCH_SIZE, not BFD64. + + * config/tc-hppa.c (log2): Only compile when OBJ_SOM. + (md_pseudo_table): Fully initialise OBJ_ELF cases. + (fix_new_hppa): Add ATTRIBUTE_UNUSED to args as appropriate. + (pa_ip): low_sign_unext now returns via function value. Use + re_assemble_* instead of dis_assemble_* and + INSERT_FIELD_AND_CONTINUE combination. Don't call sign_unext + unnecessarily. + (md_convert_frag): Add ATTRIBUTE_UNUSED to args as appropriate. + (md_section_align, md_parse_option, md_show_usage, + md_undefined_symbol, pa_align, pa_block, pa_brtab, pa_try, + pa_callinfo, pa_code, pa_comm, pa_end, pa_enter, pa_entry, + pa_exit, pa_export, pa_import, pa_label, pa_leave, pa_level, + pa_origin, pa_param, pa_proc, pa_procend, pa_space, pa_spnum, + pa_version, pa_compiler, pa_copyright, pa_data, pa_fill, pa_lsym, + pa_text): Likewise. + (md_apply_fix): Change type of new_val to offsetT. Delete w1, w2, + w, resulti. Add insn, val. Move bfd_get_32 and bfd_put_32 + outside of switch. Correct mask and shifting errors in case 10 + and case -11. In case 21, compare against signed range to suit + hppa_field_adjust changes. In case 12, use re_assemble_12. In + case 17 and case 22, use offsetT variable to properly check range. + Use re_assemble_* here too. + (evaluate_absolute): Change type of value to offsetT. Call + hppa_field_adjust to do the work for us. + (pa_parse_cmpb_64_cmpltr): Delete save_s. + (pa_parse_cmpib_64_cmpltr): Ditto. + (pa_build_unwind_subspace): Delete unused var subseg. Change type + of i to unsigned int. + (pa_type_args): Conditionally declare symbol if OBJ_SOM. + (pa_end_of_source): Return type is void. + +2000-05-01 Catherine Moore <clm@cygnus.com> + + * macro.c (macro_expand_body): Don't prepend macro number with zeroes. + +2000-05-01 Denis Chertykov <denisc@overta.ru> + + * config/tc-avr.c: ATTRIBUTE_UNUSED added to the necessary places. + More comments added. + (md_begin): Removed "construct symbols for each register name". + Because register names conflicts with GCC generated function + names. + (avr_operand): Now constant numbers can be used as a register + identifiers (0 as r0, 31 as r31). + (md_assemble): use skip_space () before parsing instruction + operands. + +2000-05-01 Alan Modra <alan@linuxcare.com.au> + + * configure.in: Set bfd_gas=yes on i386-*-pe and i386-*-nt* to + ensure all pe targets use bfd. Remove unnecessary bfd_gas=yes on + arm-*-netbsd* and arm-*-wince as this is set for all arm*. + * configure: Regenerate. + +2000-04-29 Andreas Jaeger <aj@suse.de> + + * as.h: Correctly check GCC version. + +2000-04-26 David O'Brien <obrien@FreeBSD.org> + + * doc/as.1: Fix unbalanced brackets. + + * config/tc-i386.c (comment_chars): Don't use '/' as comment start if + TE_FreeBSD. + (line_comment_chars): Set to '/' if TE_FreeBSD. + +2000-04-25 Jeffrey A Law (law@cygnus.com) + + * configure.in: Configury support for PA64 (currently disabled). + * configure: Rebuilt. + +2000-04-25 Machida Hiroyuki <machida@sm.sony.co.jp> + + * config/tc-mips.c (s_change_sec): Use record_alignment, not + bfd_set_section_alignment. + +2000-04-25 Alan Modra <alan@linuxcare.com.au> + + * config/tc-i386.c (offset_in_range): Ensure shift counts are less + than 32. + +2000-04-24 Nick Clifton <nickc@cygnus.com> + + * doc/c-arm.texi (ARM Directives): Document behaviour of .align 0. + * doc/as.texinfo (Align): Include arm and strongarm in list of + targets that have the second form of the behaviour of the .align + directive. + +2000-04-24 Mark Klein <mklein@dis.com> + + * config/obj-som.c: Terminate obj_pseudo_table. + +2000-04-24 Clinton Popetz <cpopetz@cygnus.com> + + * as.c (parse_args): Allow md_parse_option to override -a listing + option. + * config/obj-coff.c (add_lineno): Change type of offset parameter + from "int" to "bfd_vma." + * config/tc-ppc.c (md_pseudo_table): Add "llong" and "machine." + (ppc_mach, ppc_subseg_align, ppc_target_format): New. + (ppc_change_csect): Align correctly for XCOFF64. + (ppc_machine): New function, which discards "ppc_machine" line. + (ppc_tc): Cons for 8 when code is 64 bit. + (md_apply_fix3): Don't check operand->insert. Handle 64 bit + relocations. + (md_parse_option): Handle -a64 and -a32. + (ppc_xcoff64): New. + * config/tc-ppc.h (TARGET_MACH): Define. + (TARGET_FORMAT): Move to function. + (SUB_SEGMENT_ALIGN): Use ppc_subseg_align. + +2000-04-23 Denis Chertykov <denisc@overta.ru> + + * config/tc-avr.c: New AVR_ISA_ defined. + (md_assemble): Handle opcodes with optional operands (lpm,elpm). + (avr_operand): Handle 'a', 'v' and 'z' constraint letters needed + for `fmul', `movw' and `lpm R,Z' instructions. + (avr_operands): Warn if current opcode is a two-word instruction + and previous opcode was cpse/sbic/sbis/sbrc/sbrs. + (avr_opcodes): New commands added. + (REGISTER_P): Check 'a' and 'v' constraint letters. + (mcu_types): New MCU added. + +2000-04-22 Timothy Wall <twall@cygnus.com> + + * config/tc-ia64.c (pseudo_func[]): Add new "nat" entry equivalent + to "natval". + (operand_match): Conditionally insert default bit values for IMMU9. + +2000-04-14 Matthew Green <mrg@cygnus.com> + + * configure.in: Add NetBSD/sparc ELF and NetBSD/sparc64 support. + * configure: Rebuilt. + +2000-04-21 Jeffrey A Law (law@cygnus.com) + Jason Eckhardt <jle@cygnus.com> + + * config/tc-hppa.c (md_apply_fix): Handle new PA2.0 formats. + + * config/tc-hppa.c (CHECK_ALIGN): New macro. + Added handling of new operand types l,y,&,fe,fE,fx. + +2000-04-21 Richard Henderson <rth@cygnus.com> + David Mosberger <davidm@hpl.hp.com> + Timothy Wall <twall@cygnus.com> + Andrew MacLeod <amacleod@cygnus.com> + Jim Wilson <wilson@cygnus.com> + + * Makefile.am (CPU_TYPES): Add ia64. + (TARGET_CPU_CFILES): Add config/tc-ia64.c. + (TARGET_CPU_HFILES): Add config/tc-ia64.h. + * Makefile.in: Rebuild. + * app.c (do_scrub_chars): Handle DOUBLESLASH_COMMENTS. + * configure: Rebuild. + * configure.in: Recognize ia64 as cpu type. Set bfd_gas. + (ia64-*-elf*, ia64-*-linux-gnu*): New targets. + * expr.c (expr): Handle md_optimize_expr. + * read.c (LEX_HASH): Add comment. + * config/tc-ia64.c, config/tc-ia64.h: New files. + +2000-04-21 Richard Henderson <rth@cygnus.com> + + * config/tc-d30v.c (write_2_short): Disregard opcode1->ecc when + bundling a non-delayed branch type instruction. + +2000-04-20 Alexandre Oliva <aoliva@cygnus.com> + + * config/tc-mn10300.c (HAVE_AM30): Define. + (md_assemble): Use it. + +2000-04-19 Alan Modra <alan@linuxcare.com.au> + + * config/obj-elf.c (obj_elf_change_section): Check for changed + section attributes. + + * Makefile.am: (CPU_MULTI_VALID): Remove. + (MULTI_CPU_TYPES): Define. + (MULTI_CPU_OBJ_VALID): Define. + (DEPTC): Use the above. + (DEPOBJ): Same here. + (DEP2): And here. + Regenerate dependencies. + * Makefile.in: Regenerate. + +2000-04-19 Michael Sokolov <msokolov@ivan.Harhan.ORG> + + * Makefile.am (YACC, LEX): Get them from configure. + +2000-04-18 H.J. Lu (hjl@gnu.org) + + * config/tc-i386.c (offset_in_range): Use addressT instead of + bfd_vma for non-bfd assemblers. + +2000-04-17 Alan Modra <alan@linuxcare.com.au> + + * config/tc-i386.c (offset_in_range): Sign extend val so BFD64 + doesn't give spurious errors. + +2000-04-14 Michael Sokolov <msokolov@ivan.Harhan.ORG> + + * as.h (SEEK_SET): Define if undefined. + +2000-04-13 Alan Modra <alan@linuxcare.com.au> + + * config/tc-arm.c (md_apply_fix3): Don't use UL suffix on + constants, and don't assume offsetT is 32 bits. + +2000-04-12 Andrew Cagney <cagney@b1.cygnus.com> + + * config/tc-d10v.h: Include "write.h" to get definition of fixS. + (md_pcrel_from_section): Add prototype. + (d10v_fix_adjustable): Add prototype. + (d10v_force_relocation): Replace 'struct fix' with 'fixS'. + + * config/tc-d10v.c (md_apply_fix3): Add paren around &&. + +2000-04-12 Nick Clifton <nickc@cygnus.com> + + * config/tc-d10v.c (find_opcode): Correctly calculate position of + symbol in frag chain. + +2000-04-10 Alan Modra <alan@linuxcare.com.au> + + * config/tc-i386.c (fits_in_signed_byte): Change arg to offsetT. + (fits_in_unsigned_byte, fits_in_unsigned_word): Ditto. + (fits_in_signed_word, smallest_imm_type): Ditto. + (md_assemble): Use an offsetT var to hold offsetT values, not a + long. + (offset_in_range): New. + (md_assemble): Use it. + (md_convert_frag): Change type of target_address, opcode_address, + and displacement_from_opcode_start to offsetT. + (md_create_short_jump): Change type of offset to offsetT. + (md_create_long_jump): Ditto. + (md_apply_fix3): Use -4, not 0xfffffffc for BFD_RELOC_386_PLT32. + (md_chars_to_number): Remove. + (output_invalid): Remove duplicate prototype. + +2000-04-09 Nick Clifton <nickc@cygnus.com> + + * Makefile.am (CPU_TYPES): Add 'avr'. + (TARGET_CPU_CFILES): Add 'tc-avr.c'. + (TARGET_CPU_HFILES): Add 'tc-avr.h'. + + * Makefile.in: Regenerate. + + * doc/as.texinfo: Add M32R documentation. + +2000-04-07 Andrew Cagney <cagney@b1.cygnus.com> + + * configure.in (WARN_CFLAGS): Set to -W -Wall by default. Add + --enable-build-warnings option. + * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions. + * Makefile.in, configure: Re-generate. + +2000-04-07 Nick Clifton <nickc@cygnus.com> + + * config/tc-arm.c (md_apply_fix3): Treat BFD_RELOC_ARM_PCREL_BLX + in the same way as BFD_RELOC_ARM_PCREL_BRANCH, and + BFD_RELOC_THUMB_PCREL_BLX lie BFD_RELOC_THUMB_PCREL_BRANCH. + (tc_gen_reloc): Accept BFD_RELOC_{ARM|THUMB}_PCREL_BLX. + (arm_force_relocation): Force relocations for + BFD_RELOC_{ARM|THUMB}_PCREL_BLX as well. + +2000-04-05 J"orn Rennecke <amylaar@cygnus.co.uk> + + * config/tc-sh.c (get_operands): There's no third operand if the + first operand is an immediate. + +2000-04-05 J"orn Rennecke <amylaar@cygnus.co.uk> + + * config/tc-sh.c (immediate): Delete. + (sh_operand_info): Add immediate member. + (parse_reg): Use A_PC for pc. + (parse_exp): Add second argument 'op'. All callers changed. + (parse_at): Expect pc to be coded as A_PC. + Use immediate field in *op. + (insert): Add fourth argument 'op'. All callers changed. + (build_relax): Add second argument 'op'. All callers changed. + (insert_loop_bounds): New function. + (build_Mytes): Remove DISP_4. + Split IMM_[48]{,BY[24]} into IMM[01]_[48]{,BY[24]}. Add REPEAT. + (assemble_ppi): Use immediate field in *operand. + (sh_force_relocation): Handle BFD_RELOC_SH_LOOP_{START,END}. + (md_apply_fix): Likewise. + (tc_gen_reloc): Likewise. Check for a pcrel BFD_RELOC_SH_LABEL. + +2000-04-05 Alexandre Oliva <oliva@lsd.ic.unicamp.br> + + * config/tc-sparc.c (sparc_ip): Avoid string pasting. + +2000-04-04 Hans-Peter Nilsson <hp@axis.com> + + * internals.texi (CPU backend): Document + TC_CHECK_ADJUSTED_BROKEN_DOT_WORD. + +2000-04-04 Alan Modra <alan@linuxcare.com.au> + + * po/gas.pot: Regenerate. + + * as.c (show_usage): Restore translated part of bug string. + * gasp.c (show_usage): Likewise. + + * Makefile.am (MKDEP): Use gcc -MM rather than ../mkdep. + (DEP): Quote when passing vars to sub-make. Use "mv -f" rather + than move-if-change. + (DEP1): Modify for "gcc -MM". + (DEPTC): Likewise. + (DEPOBJ): Likewise. + (DEP2): Likewise. + (CLEANFILES): Add DEPTCA, DEPOBJA, DEP2a, DEPA. + Update dependencies. + * Makefile.in: Regenerate. + +2000-04-03 Alexandre Oliva <aoliva@cygnus.com> + + * config/tc-mn10300.c (md_pseudo_table): Use constant names. + (md_begin): Likewise. + (HAVE_AM33): New macro. + (md_assemble): Use it. Match r_regs and xr_regs only if + HAVE_AM33. + +2000-04-03 Alan Modra <alan@linuxcare.com.au> + + * as.h: #include "bin-bugs.h" + * as.c (show_usage): Use REPORT_BUGS_TO. + * gasp.c: #include "bin-bugs.h" + (show_usage): Use REPORT_BUGS_TO. + + * config/tc-sparc.c (md_show_usage): Add a trailing newline. + +2000-04-03 Hans-Peter Nilsson <hp@axis.com> + + * write.c (write_object_file) [! WORKING_DOT_WORD]: If defined, + call TC_CHECK_ADJUSTED_BROKEN_DOT_WORD for each word after + adjustments. + +2000-04-03 Alan Modra <alan@linuxcare.com.au> + + * config/tc-i386.c (i386_immediate): Don't assume a constant + immediate is necessarily 16 bits when in 16 bit code mode. + (md_assemble): Instead set guess_suffix here after we have checked + registers. + +2000-04-02 Richard Henderson <rth@cygnus.com> + + * config/tc-d30v.c (check_range): Allow signed or unsigned 32-bit + quantities. Correct right shift sign extension. + (build_insn): Make `number' unsigned long. Mask top 6 bits of + 32-bit value when shifting into place. + +2000-04-01 Ian Lance Taylor <ian@zembu.com> + + * app.c: Add ATTRIBUTE_UNUSED as needed. + * config/tc-ppc.c: Likewise. + (ppc_size): Make unsigned long. + (ppc_insert_operand): Add casts to avoid warnings. + +2000-03-31 Nick Clifton <nickc@cygnus.com> + + * config/tc-d10v.h (md_flush_pending_output): Define. + +2000-03-29 Nick Clifton <nickc@cygnus.com> + + * config/tc-sh.h (SEG_NAME): New macro: return the name of a + segment. Works for both BFD_ASSEMBLER and others. + (SUB_SEGMENT_ALIGN): Use SEG_NAME. + +2000-03-29 Nick Clifton <nickc@cygnus.com + + * config/tc-arm.c (tinsns): Add "bal" instruction pattern. + +2000-03-28 Alan Modra <alan@linuxcare.com.au> + + * listing.c (LISTING_LHS_WIDTH): Default depends on + LISTING_WORD_SIZE. + (LISTING_LHS_WIDTH_SECOND): Default to LISTING_LHS_WIDTH. + +2000-03-27 Ian Lance Taylor <ian@zembu.com> + + * config/tc-sh.c (md_show_usage): Use backslash before newline in + string literal. + +2000-03-27 Alan Modra <alan@linuxcare.com.au> + + * config/tc-avr.h (TC_HANDLES_FX_DONE): Define. + + * config/tc-avr.c (mcu_types): Add missing initialiser. + (md_pcrel_from_section): Add prototype. + (avr_operand): Remove redundant test of unsigned < 0. + (avr_cons_fix_new): Ensure exp_mod_pm zero on function exit. + +2000-03-27 Denis Chertykov <denisc@overta.ru> + + * config/tc-avr.c: New file for AVR support. + * config/tc-avr.h: Likewise. + * configure.in: Add AVR support. + * configure: Regenerate. + +2000-03-26 Timothy Wall <twall@cygnus.com> + + * gasp.c (macro_op): Add new argument to check_macro call. + Macro structure definitions moved to macro.h + * sb.h: Add argument to prototype for input_scrub_include_sb. + * input-scrub.c (input_scrub_include_sb): Allow disabling of sb + nesting checks with an additional flag. + (struct input_save): Add flag to indicate whether current sb + should be checked for proper macro/conditional nesting. + (input_scrub_push/pop): Save/restore nest check flag. + (input_scrub_next_buffer): Ditto. Also call end of macro hook if + defined. + * macro.c (check_macro): Allow caller to retrieve parsed macro + information if a pointer is provided. This information may be + used by the new macro hooks. + * macro.h: Update prototype for check_macro. Macro struct + definitions moved here from macro.c/gasp.c. + * read.c (read_a_source_file): Add parameter to check_macro call, + and pass macro info to the macro hook, if defined. + (input_scrub_insert_line): New. Allow insertion of a line of + characters into the input stream. + (input_scrub_insert_file): New. Allow insertion of an arbitrary + file into the input stream. + (s_include): Use input_scrub_insert_file. + * internals.texi: Document new macro hooks. + * as.h: New prototypes added. + +2000-03-26 Alan Modra <alan@linuxcare.com.au> + + * config/tc-i386.c: Don't start any as_bad or as_warn message with + an initial capital letter. + (i386_index_check): Reindent. + +2000-03-19 Nick Clifton <nickc@cygnus.com> + + * config/tc-arm.c (md_apply_fix3): Fix bug detecting overflow of pc + relative branches. + +2000-03-17 Thomas de Lellis <tdel@windriver.com> + + * config/tc-arm.c (do_t_adr): Flag "adr Rd,label" + instruction operand bad if Rd > 7 when generating + thumb instructions. Prevents for example, + "adr r12,label" from silently failing and generating + the wrong instruction. + +2000-03-17 Nick Clifton <nickc@cygnus.com> + + * config/tc-arm.c (md_apply_fix3): Handle same-section relocations + that have a destingation >= 0x400000. + Fix compile time warning messages. + +2000-03-16 J"orn Rennecke <amylaar@cygnus.co.uk> + + * config/tc-sh.c (md_begin): When encountering insn that are + not supported by the current arch, only change the name if + its contents are the same as prev_name. + (get_specific): If the the architecture doesn't match, fail. + +2000-03-16 J"orn Rennecke <amylaar@cygnus.co.uk> + + * config/tc-sh.c (IDENT_CHAR): Define. + (parse_reg): Use it instead of isalnum. Put r[0..7]_bank operand + matching back where it came from. + +2000-03-16 J"orn Rennecke <amylaar@cygnus.co.uk> + + * config/tc-sh.c (md_show_usage): Add description of -dsp. + +2000-03-15 Jonathan Larmour <jlarmour@redhat.co.uk> + + * config/tc-sh.c (parse_reg): Match r[0..7]_bank operands before + normal operands. + +2000-03-15 Kazu Hirata <kazu@hxi.com> + + * config/tc-h8300.c: Add ATTRIBUTE_UNUSED as appropriate. + +2000-03-13 Hans-Peter Nilsson <hp@axis.se> + + * expr.c (operand) [case 'f']: When testing if '0f' can start a + floating-point-number, make sure 'f' is in FLT_CHARS. + +2000-03-11 Hans-Peter Nilsson <hp@axis.se> + + * read.c (TC_IMPLICIT_LCOMM_ALIGNMENT): New default-definition. + (s_lcomm_internal): Use it. + * doc/internals.texi (CPU backend): Document it. + * config/obj-evax.h (TC_IMPLICIT_LCOMM_ALIGNMENT): Set to 2**3 + bytes. + +2000-03-10 Geoffrey Keating <geoffk@cygnus.com> + + * config/tc-mips.c (mips_ip): Don't put stuff in .rodata + when embedded-pic. + + * config/tc-mips.c (SWITCH_TABLE): The ELF embedded-pic + implementation doesn't have special handling for switch + statements. + (macro_build): Allow for code in sections other than .text. + (macro): Likewise. + (mips_ip): Likewise. + (md_apply_fix): Do pc-relative relocation madness for MIPS ELF. + Don't perform relocs if we will be outputting them. + (tc_gen_reloc): For ELF, just use fx_addnumber for pc-relative + relocations. Allow BFD_RELOC_16_PCREL_S2 relocs when + embedded-pic. + +2000-03-09 Catherine Moore <clm@cygnus.com> + + * config/tc-m32r.c (m32r_fix_adjustable): Look up the + relocation type based on the entry in the fixup structure. + Put S_IS_EXTERN processing back in. + +2000-03-08 H.J. Lu (hjl@gnu.org) + + * Makefile.am (install-exec-tooldir): Depend on + install-exec-bindir for parallel make. + * Makefile.in: Regenerated. + +2000-03-06 Nick Clifton <nickc@cygnus.com> + + * config/tc-m32r.c (struct md_longopts): Add -m32r command line + switch. + (md_parse_option): Parse -m32r command line switch - disable m32rx + compatability. + (md_show_usage): Document new option. + + * doc/Makefile.am (CPU_DOCS): Add c-m32r.texi. + * doc/Makefile.in: Regenerate. + * doc/c-m32r.texi (M32R-Opts): Document new command line switch. + +2000-03-02 Michael Meissner <meissner@redhat.com> + + * config/tc-d30v.c (check_range): Remove code that incorrectly + sign extended values where bits < 32. + +2000-03-02 H.J. Lu (hjl@gnu.org) + + * configure.in: Support --enable-targets=all on ia32. + * configure: Regenerated. + +2000-03-01 Nick Clifton <nickc@cygnus.com> + + * gasp.c (do_align): Remove bogus check of alignment value. + +2000-02-27 Thomas de Lellis <tdel@windriver.com> + + * config/obj-elf.c (elf_frob_symbol): Remove code which when + TC_PPC was defined forced the type of a symbol with no other type + to be BSF_OBJECT. + +2000-02-27 Hans-Peter Nilsson <hp@axis.com> + + * doc/internals.texi (CPU backend): Mention that + line_separator_chars do not break up comments. Fix typos for + LEX_AT and LEX_NAME descriptions. Document operands for + TC_EQUAL_IN_INSN, md_operand and md_section_align. Correct + description of md_create_short_jump usage. Document argument for + md_undefined_symbol. + +2000-02-27 Jakub Jelinek <jakub@redhat.com> + + * config/tc-sparc.c (OPTION_UNDECLARED_REGS): New option. + (md_parse_option): Handle it. + (md_show_usage): Document it. + +2000-02-27 Ian Lance Taylor <ian@zembu.com> + + * config/tc-alpha.c (md_assemble): Accept `1' and `9' in an + opcode, for the instruction `pal19'. From Andrea Arcangeli + <andrea@suse.de>. + +2000-02-26 Alan Modra <alan@spri.levels.unisa.edu.au> + + * config/tc-i386.c (i386_immediate): Move constant operand sizing + from here.. + (md_assemble): To here, before template operands are matched. + Also ensure a constant immediate is sign extended when we know the + size is at most 16 bits. This is to catch cases like "add + $0xffc0,%ax" where we don't know the size, and thus that the + immediate can be represented as Imm8S until after parsing the + register operand. + (i386_displacement): Similarly sign extend 16 bit constant + displacements. + (md_assemble): Relax 16-bit jump constant range check to suit sign + extended displacements. + +2000-02-26 Andreas Jaeger <aj@suse.de> + + * doc/c-mips.texi (MIPS Opts): Fix typo in last patch. + +2000-02-25 Alan Modra <alan@spri.levels.unisa.edu.au> + + * config/tc-i386.c (md_assemble): Don't swap intersegment jmp and + call operands when intel_syntax. + (intel_float_operand): Return 2 for "fi...". + (i386_operand_modifier): Change "DWORD PTR" test to suit above. + Return SHORT_MNEM_SUFFIX for "WORD PTR" when "fi...". Revert + earlier "SHORT" change. + (md_assemble): When determining suffix from Regs, exclude + InOutPortReg. + +2000-02-24 Nick Clifton <nickc@cygnus.com> + + * configure: Add arm-wince, mips-pe and sh-pe targets. + * configure: Regenerate. + + * config/obj-coff.h (COFF_WITH_PE): Define for mips-pe and + sh-pe targets. + (TARGET_FORMAT): Set to "pe-shl" for the sh-pe target and to + "pe-mips" for the mips-pe target. + + * config/tc-arm.c (insns): Change displacement encoded in BL + and B instructions if the target port is arm-wince. + (do_ldst): Do not bias the relocation offset if the target + port is arm-wince. + (md_pcrel_from): Add in missing relocation offset bias if the + target os arm-wince. + + * config/tc-mips.c (mips_target_format): Support COFF flavour. + (md_begin): Disable -G support for mips-pe target. + (md_apply_fix): Treat BFD_RELOC_RVA reloc as BFD_RELOC_32. + * config/tc-mips.h (USE_GLOBAL_POINTER_OPT): Add support for + COFF flavour. + + * config/tc-sh.c (md_begin): sh-pe target is little endian. + * config/tc-sh.h (SUB_SEGMENT_ALIGN): If using a BFD + assembler, just set the alignment to 4. + + * config/te-wince-pe.h: New file for WinCE targets. Define + TE_WINCE. + +2000-02-25 Alan Modra <alan@spri.levels.unisa.edu.au> + + * config/tc-i386.c (md_assemble): Swap segments too for intel mode + string instructions. + (i386_operand_modifier): Set i.suffix = WORD_MNEM_SUFFIX for SHORT. + (i386_intel_memory_operand): After finding a segment override, + check again for no `[' before looking for a displacement. Bomb if + more than one displacement rather than silently discarding the + second and subsequent ones. Free strings malloc'd by + build_displacement_string. + +2000-02-24 Catherine Moore <clm@cygnus.com> + + * config/obj-som.c (obj_pseudo_table): Add "weak". + (obj_som_weak): New routine. + +2000-02-24 Alan Modra <alan@spri.levels.unisa.edu.au> + + * config/tc-i386.c (union i386_op): New. + (struct _i386_insn): Delete disps[], imms[], regs[]. Add op[]. + Throughout file replace occurences of disps[n], imms[n], regs[n] + with equivalent op[n].disps, op[n].imms, op[n].regs. Simplify + intel mode operand swapping. Add assert in regKludge and + fake_zero_displacement code. Test i.types[n] when outputting + displacements and immediates. Combine output of Disp16 with + Disp32. + (md_assemble): Don't try to fix broken UNIXWARE_COMPAT opcodes + when in intel mode by (not) reversing fsub and fdiv operands + before the template search. This fails for single operand + shorthand forms of the instruction, and if UNIXWARE_COMPAT is + undefined. Instead fix the base_opcode after we've found the + template. Move base_opcode xor with found_reverse_match from + opcode output code to before this fix so we test for the correct + opcodes. + (md_assemble): Don't use strcmp when deciding to ignore the suffix + check in intel mode. Instead compare opcodes. + + * config/tc-i386.h (TC_RELOC): Delete. + * config/tc-i386.c (TC_RELOC): Delete. Replace usage of TC_RELOC + with equivalent call to reloc. + + * as.h (flag_m68k_mri): Move declaration after target include, and + only declare when TC_M68K defined. Define as zero otherwise. + (LABELS_WITHOUT_COLONS, NO_PSEUDO_DOT): If undefined, define as 0. + * app.c (scrub_m68k_mri): Declare only when TC_M68K defined. + Define as zero otherwise. + (do_scrub_begin): Use m68k_mri parameter only when TC_M68K defined. + (struct app_save): Declare scrub_m68k_mri only when TC_M68K. + (app_push, app_pop): Save scrub_m68k_mri only when TC_M68K. + (do_scrub_chars): Use LABELS_WITHOUT_COLONS directly rather than + testing whether defined. + * cond.c (ignore_input): Use NO_PSEUDO_DOT directly. + * expr.c (operand): #ifdef unused case labels when TC_M68K undefined. + * read.c: Use LABELS_WITHOUT_COLONS and NO_PSEUDO_DOT directly + rather than testing whether defined. + (s_mri): Set flag_m68k_mri only when TC_M68K defined. + (parse_mri_cons): Declare and use only when TC_M68K. + * config/tc-hppa.h (LABELS_WITHOUT_COLONS): Define as 1. + * config/tc-m68k.h (NO_PSEUDO_DOT): Define as 1. + * config/tc-m88k.h (NO_PSEUDO_DOT): Define as 1. + + * NEWS: Mention IBM 370 support. + +2000-02-23 Richard Henderson <rth@cygnus.com> + + * config/tc-i386.c (md_assemble): When swapping operands for + intel_syntax, assume everything that's not Imm or Disp is a + register. + +2000-02-23 Linas Vepstas <linas@linas.org> + + * config/tc-i370.c, config/tc-i370.h: New files. + * Makefile.am: Add support for Linux/IBM 370. + * configure.in: Likewise. + * app.c (do_scrub_begin): Don't lex single quote when TC_I370. + * config/obj-elf.c: Include elf/i370.h + (obj_elf_section): Don't do anything special for flag_mri if TC_I370. + + * Makefile.in: Regenerate. + * configure: Regenerate. + + * doc/c-i370.texi: New file. + * doc/all.texi: Include it. + * doc/as.texinfo: And here. + * doc/Makefile.am(CPU_DOCS): Add c-i370.texi. + * doc/Makefile.in: Regenerate. + +2000-02-19 Michael Meissner <meissner@redhat.com> + + * config/tc-d30v.c (parallel_ok): Use FLAG_NOT_WITH_ADDSUBppp to + determine if an instruction can be used in parallel with an ADDppp + or SUBppp instruction. + +2000-02-22 Andrew Haley <aph@cygnus.com> + + * doc/c-mips.texi (MIPS Opts): Document -mgp32 and -mgp64. + +2000-02-22 Andrew Haley <aph@cygnus.com> + + * config/tc-mips.c (mips_gp32): New variable. + (macro_build) Use mips_gp32. + (mips_ip): Ditto. + (md_longopts): Add "-mgp32" and "-mgp64". + (md_parse_option): Add OPTION_GP32 and OPTION_GP64. + + (OPTION_M7900): Change offset + (OPTION_NO_M7900): Ditto. + +2000-02-22 Alexandre Oliva <oliva@lsd.ic.unicamp.br> + + * config/obj-coff.c (add_lineno): Accept non-positive lineno with + warning, and bump it to 1. + +2000-02-22 Ian Lance Taylor <ian@zembu.com> + + From Brad Lucier <lucier@math.purdue.edu>: + * dwarf2dbg.c (print_stats): Add cast to force printf argument to + match format. + +2000-02-21 Catherine Moore <clm@cygnus.com> + + * config/tc-mips.c (MF_HILO_INSN): Define. + (mips_7000_hilo_fix): Declare. + (append_insn): Conditionally insert nops after an mfhi/mflo insn. + (md_parse_option): Check for 7000_HILO_FIX options. + (OPTION_M7000_HILO_FIX): Define. + (OPTION_NO_M7000_HILO_FIX): Define. + * doc/c-mips.texi (-mfix7000): Describe. + +2000-02-21 Alan Modra <alan@spri.levels.unisa.edu.au> + + * listing.c (print_lines): Remove unused variable `end'. + + * config/tc-i386.c (md_assemble): Use `reloc()' to select reloc + type for JumpInterSegment output. Use enum bfd_reloc_code_real for + reloc_type when BFD_ASSEMBLER. + (md_estimate_size_before_relax): Use enum bfd_reloc_code_real for + reloc_type when BFD_ASSEMBLER. Move common code out of switch + statement and quell signed vs. unsigned comparison warning. + +2000-02-18 Nick Clifton <nickc@cygnus.com> + + * config/tc-d10v.c (find_opcode): Add a symbol's value to + the computed frag offset, rather than overwriting it. + +2000-02-17 J"orn Rennecke <amylaar@cygnus.co.uk> + + * config/tc-sh.c ("elf/sh.h"): Include. + (sh_dsp, valid_arch, reg_x, reg_y, reg_efg): New static variables. + (md.begin): Initialize target_arch. + Only include opcodes in has table that match selected architecture. + (parse_reg): Recognize register names for sh-dsp. + (parse_at): Recognize post-modify addressing. + (get_operands): The leading space is now optional. + (get_specific): Remove FDREG_N support. Add support for sh-dsp + arguments. Update valid_arch. + (build_Mytes): Add support for SDT_REG_N. + (find_cooked_opcode): New function, broken out of md_assemble. + (assemble_ppi, sh_elf_final_processing): New functions. + (md_assemble): Use find_cooked_opcode and assemble_ppi. + (md_longopts, md_parse_option): New option: -dsp. + * config/tc-sh.h (elf_tc_final_processing): Define. + (sh_elf_final_processing): Declare. + +2000-02-11 Jeffrey A Law (law@cygnus.com) + + * config/tc-hppa.c (pa_build_unwind_subspace): Use subseg_new to create + the unwinder subspace. Save the current seg/subseg before creating + the new seg/subseg. + +2000-02-10 Nick Clifton <nickc@cygnus.com> + + * config/tc-mcore.c (INST_BYTE0): Redefine to handle big and + little endian targets. + (INST_BYTE1): Redefine to handle big and little endian + targets. + (cpu_type): New type: Select between M340 and M210. + (parse_psrmod): New function: Parse the PSRCLR and PSRSET + instructions of the M340. + (md_assemble): Add support for the MULSH and OPSR classes of + instructions. + (md_atof): Add support for little endian targets. + (md_parse_option): Add support for -EL, -EB and -mcpu command + line switches. + (md_convert_frag): Add support for little endian targets. + (md_apply_fix3): Add support for little endian targets. + (md_number_to_chars): Add support for little endian targets. + +2000-02-10 Timothy Wall <twall@redhat.com> + + * read.c (read_a_source_file): If TC_START_LABEL_WITHOUT_COLON is + defined, use it to verify the symbol just read should be a label. + +2000-02-10 Timothy Wall <twall@redhat.com> + + * app.c (do_scrub_chars): Handle "||" for parallel instructions + when DOUBLEBAR_PARALLEL is defined. Avoid stripping whitespace + around colons when KEEP_WHITE_AROUND_COLON is defined. + * doc/internals.texi (CPU backend): Document DOUBLEBAR_PARALLEL + and KEEP_WHITE_AROUND_COLON. + +2000-02-08 Timothy Wall <twall@redhat.com> + + * read.c (s_rept): Call do_repeat, which abstracts the repeat + logic. + (do_repeat): New. Abstract repeat logic so that a "break" can be + implemented. + (end_repeat): New. Provide support for a "break" out of the + repeat loop. + * read.h: Add prototypes for new functions. + +2000-02-08 Timothy Wall <twall@redhat.com> + + * doc/internals.texi: Document NUMBERS_WITH_SUFFIX macro. + * as.h: Provide a default NUMBERS_WITH_SUFFIX definition (zero). + * expr.c: Handle numbers with suffixes if NUMBERS_WITH_SUFFIX is + non-zero. + +2000-02-08 Timothy Wall <twall@redhat.com> + + * read.c: Added elseif to directives table. + * read.h: Added prototype for s_elseif. + * doc/as.texinfo: Added description for elseif. + * cond.c (s_elseif): New function + +2000-02-04 Timothy Wall <twall@redhat.com> + + * listing.c (print_lines): Remove conditionals causing bug in + listings. + +2000-02-03 Timothy Wall <twall@cygnus.com> + + * as.h: Define OCTETS_PER_BYTE and OCTETS_PER_BYTE_POWER + default values. + * frags.c (frag_new): Calculate fr_fix in octets + (frag_now_fix) Return offset as target address offset (bytes). + (frag_now_fix_octets) New - Return offset in octets (8-bit + quantities). + * frags.h: Added prototype for frag_now_fix_octets(). + Distinguish between octets and bytes in field descriptions. + * listing.c (calc_hex): Account for octets vs bytes when + printing addresses/offsets. + (print_lines) Ditto. Also, if LISTING_WORD_SIZE is not 1, and + target is little-endian, print the octets in a word in big-endian + order so that the display looks like a proper hexadecimal number, + instead of having the octets reversed. + * read.c (do_align): When recording alignment, alignment power + should be in terms of target bytes (minimum addressible unit) + instead of octets. + (do_org) Convert ORG target address (byte) argument into an + octet offset when generating a variable fragment. + * symbols.c (resolve_symbol_value): Symbol final value + converted to a target address offset (bytes) from its octet offset. + * config/obj-coff.c (coff_frob_symbol): Symbol target address + offset (bytes) is adjusted by the frag offset (octets) converted + to bytes. + (coff_frob_section) Section alignment power is in terms of bytes; + convert it to an octet alignment power when calculating size (and + size mask) in octets. Don't modify the section size in order to + "align" it for TI COFF, since that format has a different method + for storing alignment information. + +2000-02-01 Timothy Wall <twall@cygnus.com> + + * stabs.c (generate_asm_file): Escape backslashes in stabs file + entries, matching the way GCC generates them. If not escaped, the + filename is encoded incorrectly. + +2000-01-31 Nick Clifton <nickc@cygnus.com> + + * config/tc-arm.c (reg_table): Add support for ATPCS register + naming conventions. + +2000-01-31 Geoff Keating <geoffk@cygnus.com> + + * config/obj-coff.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Don't define if + already defined. + * config/tc-ppc.h [OBJ_XCOFF] (OBJ_COPY_SYMBOL_ATTRIBUTES): + New macro. + * config/tc-ppc.c (ppc_fix_adjustable): Don't look at the frag + of a symbol when we really care about its value. + +2000-01-19 Chandra Chavva <cchavva@cygnus.com> + + * config/tc-mcore.c (md_assemble): Give warning message if + operands passes to instruction are more than the spec. + +2000-01-27 Thomas de Lellis <tdel@windriver.com> + + * config/tc-arm.c (armadjust_symtab): If the assembler is in + Thumb mode but the label seen was not declared as '.thumb_func' + then set the ST_INFO type to STT_ARM_16BIT mode. This allows + correct disassembly of Thumb code bounded by non function labels. + +2000-01-27 Alan Modra <alan@spri.levels.unisa.edu.au> + + * Makefile.am (MULTI_CFILES): Add config/e-i386aout.c + Add dependencies for e-i386aout.o. Fix 2 comment lines. + + * Makefile.in: Same here. + Update copyright. + + * configure.in: Set bfd_gas for i386-aout when primary target + is bfd. Handle i386aout emulation. Don't use te_file=multi, as + we may need the primary te_file. Remove incorrect comment. + + * configure: Regenerate. + + * config/e-i386aout.c: New file. + + * as.c (USE_EMULATIONS): Move to before print_version_id. + (struct emulation): Add i386aout. + (show_usage): Split text strings. Reformat -a text. Add --em + help. + Update copyright. + + * obj.h (struct format_ops): Add s_get_other and s_get_desc. + (aout_format_ops): New. + Update copyright. + + * read.c (s_lcomm_internal): Rewrite OBJ_AOUT,OBJ_BOUT + preprocessor conditional and add aout USE_EMULATIONS tests. + (read_a_source_file): Don't pass error strings to printf as + format arg. + Update copyright. + + * gasp.c (exp_get_abs): Don't pass error strings to printf as + format arg. + (do_data): Same here. + (process_file): And here. + Update copyright. + + * symbols.c (colon): Rewrite "already defined" fatal message + code for aout with USE_EMULATIONS. + Update copyright. + + * config/obj-aout.c (OBJ_HEADER): Define. + (obj_pseudo_table): Rename to aout_pseudo_table. Init all + fields of sentinel. + (obj_aout_frob_symbol): Expand S_GET_DESC, S_GET_TYPE, + S_GET_OTHER, S_SET_TYPE macros since we don't need obj-multi + forms here. + (obj_aout_type): Expand S_SET_OTHER here too. + (obj_read_begin_hook): Remove. + (aout_pop_insert): New. + (obj_aout_s_get_other): New. + (obj_aout_s_get_desc): New. + (aout_format_ops): New. + Update copyright. + + * config/obj-aout.h (obj_pop_insert): Define so non-multi usage + gets aout_pseudo_table. + (aout_pseudo_table): Declare. + (obj_read_begin_hook): Define. + Update copyright. + + * config/obj-coff.c (obj_pseudo_table): Rename to + coff_pseudo_table. + (coff_pop_insert): Use coff_pseudo_table. + (coff_sec_sym_ok_for_reloc): Remove. + (coff_format_ops): Add 0 entries for s_get_size, s_set_size, + and comment all zero entries and remove #if 0 code. + Update copyright. + + * config/obj-coff.h (obj_pop_insert): Define. + (coff_pseudo_table): Declare. + Update copyright. + + * config/obj-ecoff.c (ecoff_format_ops): Add 0 entries for + s_get_size, s_set_size. Comment all zero entries. + Update copyright. + + * config/obj-elf.c (elf_s_get_other): New function. + (obj_read_begin_hook): Rename to elf_obj_read_begin_hook. + (obj_symbol_new_hook): Rename to elf_obj_symbol_new_hook. + (elf_format_ops): Add elf_s_get_other, 0 s_get_size entry, and + comment. + (obj_elf_parse_section_letters): Don't pass error strings to + printf as format arg. + Update copyright. + + * config/obj-elf.h (ECOFF_DEBUGGING): Define when + OBJ_MAYBE_ECOFF. + (elf_s_get_other): Declare. + (S_GET_OTHER) Define as elf_s_get_other if not already + defined. + (S_SET_OTHER): Only define when not already defined. + (elf_obj_read_begin_hook): Declare. + (obj_read_begin_hook): Define. + (elf_obj_symbol_new_hook): Declare. + (obj_symbol_new_hook): Define. + Update copyright. + + * config/obj-multi.h: Add copyright header and protect against + multiple inclusion. Add * to all function pointers. + (OBJ_HEADER): If defined, include it rather than other defines + in this file. + (obj_frob_file_after_relocs): Test for NULL. + (obj_symbol_new_hook): Here too. + (obj_sec_sym_ok_for_reloc): And here. + (S_GET_OTHER): Define. + (S_GET_DESC): Define. + (ECOFF_DEBUGGING): Remove as it's done in obj-elf.h + (OBJ_MAYBE_ELF): Update comment. + + * config/tc-i386.c (i386_immediate): Add OBJ_MAYBE_AOUT to + OBJ_AOUT preprocessor conditional and handle emulation by + testing OUTPUT_FLAVOR. + (i386_displacement): Here too. + (md_section_align): Similarly here. + (i386_target_format): Conditionally compile when more than one + of OBJ_MAYBE_{ELF,COFF,AOUT} defined. Add aout case. + (i386_immediate): Fix error message for aout BFD_ASSMBLER. + (i386_displacement): Here too. + Update copyright. + + * config/tc-i386.h (AOUT_TARGET_FORMAT): Define for each TE_*. + Define TARGET_FORMAT for aout only when not multi. + Update copyright. + + * config/te-multi.h: Delete file as it's identical to te-generic.h + +2000-01-15 Alan Modra <alan@spri.levels.unisa.edu.au> + + * config/tc-i386.h (DWORD_MNEM_SUFFIX): Delete. + * config/tc-i386.c (DWORD_MNEM_SUFFIX): Rename all occurrences to + LONG_MNEM_SUFFIX. + + * config/tc-i386.h (INTEL_DWORD_MNEM_SUFFIX): Rename to + DWORD_MNEM_SUFFIX. + * config/tc-i386.c (INTEL_DWORD_MNEM_SUFFIX): Here too. Fix some + comments. + +2000-01-13 Clinton Popetz <cpopetz@cygnus.com> + + * config/tc-mips.c (mips_do_align): New function. + * config/tc-mips.h (md_do_align): Define. + +2000-01-10 Philip Blundell <philb@gnu.org> + + * doc/c-arm.texi (ARM Options): Fix typo. + (ARM-Chars): Correct description of `#'. Mention that `;' is a + line separator for Linux. + * doc/as.texinfo (Comments): Mention the ARM. + +2000-01-10 Philip Blundell <pb@futuretv.com> + + * configure.in (arm*-*-conix*): New target. + (arm*-*-linux-gnu*): Match instead of arm-*-linux* and + armv*-*-linux-gnu. + * configure: Regenerate. + +2000-01-03 Martin v. Loewis <loewis@informatik.hu-berlin.de> + + * config/obj-elf.c (elf_pseudo_table): Define visibility pseudos. + (obj_elf_visibility): New function. + + * doc/as.texinfo (Visibility): New node: document visibility + pseudo ops. + +For older changes see ChangeLog-9899 |