+2005-03-09 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/tc-mips.c (s_cpsetup): Use '__gnu_local_gp' instead of '_gp'
+ for -mno-shared optimization.
+
+2005-03-09 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/tc-mips.c (MAX_VR4130_NOPS, MAX_DELAY_NOPS): New macros.
+ (MAX_NOPS): Bump to 4.
+ (mips_fix_vr4130): New variable.
+ (nops_for_vr4130): New function.
+ (nops_for_insn): Use MAX_DELAY_NOPS rather than MAX_NOPS. Use
+ nops_for_vr4130 if working around VR4130 errata.
+ (OPTION_FIX_VR4130, OPTION_NO_FIX_VR4130): New macros.
+ (md_longopts): Add -mfix-vr4130 and -mno-fix-vr4130.
+ (md_parse_option): Handle them.
+ (md_show_usage): Print them.
+ * doc/c-mips.texi: Document -mfix-vr4130 and -mno-fix-vr4130.
+
+2005-03-09 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/tc-mips.c (append_insn): Remove cop_interlocks test from
+ branch delay code.
+
+2005-03-09 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/tc-mips.h (mips_flush_pending_output): Delete.
+ (mips_emit_delays): Declare.
+ (md_flush_pending_output): Use mips_emit_delays.
+ * config/tc-mips.c (mips_no_prev_insn): Remove parameter; always forget
+ the previous instructions.
+ (md_begin, append_insn, md_parse_option): Update callers.
+ (mips_emit_delay): Remove parameter. Move INSNS != 0 code to
+ start_noreorder.
+ (mips_align, s_change_sec, s_cons, s_float_cons, s_gpword)
+ (s_gpdword): Update callers.
+ (start_noreorder, end_noreorder): New functions.
+ (macro, macro2, mips16_macro, s_mipsset): Use them instead of
+ manipulating mips_opts or prev_nop_frag directly.
+ (mips_flush_pending_output): Delete.
+
+2005-03-09 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/tc-mips.c (mips_move_labels): New function, taken from...
+ (append_insn, mips_emit_delays): ...here.
+
+2005-03-09 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/tc-mips.c (MAX_NOPS): New macro.
+ (history): Resize to 1 + MAX_NOPS.
+ (fix_vr4120_class): New enumeration.
+ (vr4120_conflicts): New variable.
+ (init_vr4120_conflicts): New function.
+ (md_begin): Call it.
+ (insn_uses_reg): Constify first argument.
+ (classify_vr4120_insn, insns_between, nops_for_insn, nops_for_sequence)
+ (nops_for_insn_or_target): New functions.
+ (append_insn): Use the new nops_for_* functions instead of inline
+ delay checks. Generalize prev_nop_frag handling to handle an
+ arbitrary history length. Insert nops into the history buffer
+ once the number of nops in prev_nop_frag is fixed.
+ (emit_delays): Use nops_for_insn instead of inline delay checks.
+
+2005-03-09 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/tc-mips.c (append_insn): Remove now-redundant nops != 0
+ check from branch delay code. Remove unnecessary check for branches.
+
+2005-03-09 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/tc-mips.c (dummy_opcode): Delete.
+ (nop_insn, mips16_nop_insn): New variables.
+ (NOP_INSN): New macro.
+ (insn_length, create_insn, install_insn, move_insn, add_fixed_insn)
+ (add_relaxed_insn, insert_into_history, emit_nop): New functions.
+ (md_begin): Initialize nop_insn and mips16_nop_insn.
+ (append_insn): Use the new emit_nop function to add nops, recording
+ them in the history buffer. Use add_fixed_insn or add_relaxed_insn
+ to reserve room for the instruction and install_insn to install the
+ final form. Use insert_into_history to record the instruction in
+ the history buffer. Use move_insn to do delay slot filling.
+ (mips_emit_delays): Use add_fixed_insn instead of the emit_nop macro.
+ (macro_build, mips16_macro_build, macro_build_lui, mips_ip)
+ (mips16_ip): Use create_insn to initialize mips_cl_insns.
+
+2005-03-09 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/tc-mips.c (INSERT_BITS, EXTRACT_BITS, INSERT_OPERAND)
+ (EXTRACT_OPERAND, MIPS16_INSERT_OPERAND, MIPS16_EXTRACT_OPERAND): New.
+ (insn_uses_reg, reg_needs_delay, append_insn, macro_build)
+ (mips16_macro_build, macro_build_lui, mips16_macro, mips_ip)
+ (mips16_ip): Use the new macros instead of explicit masks and shifts.
+
+2005-03-09 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/tc-mips.c (mips_cl_insn): Replace the valid_p, delay_slot_p
+ and extended_p fields with a single fixed_p field.
+ (append_insn, mips_no_prev_insn): Adjust accordingly.
+
+2005-03-09 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/tc-mips.c (mips_cl_insn): Replace reloc_type array with
+ a single mips16_absolute_jump_p bit.
+ (append_insn): Adjust accordingly.
+
+2005-03-09 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/tc-mips.h (mips_cl_insn): Move definition to...
+ * config/tc-mips.c (mips_cl_insn): ...here. Add new fields:
+ frag, where, fixp, reloc_type, valid_p, noreorder_p, delay_slot_p
+ and extended_p.
+ (history): New variable.
+ (prev_insn, prev_prev_insn, prev_insn_valid, prev_insn_frag)
+ (prev_insn_where, prev_insn_reloc_type, prev_insn_fixp)
+ (prev_insn_is_delay_slot, prev_insn_unreordered, prev_insn_extended)
+ (prev_prev_insn_unreordered): Delete.
+ (reg_needs_delay, append_insn, mips_no_prev_insn, mips_emit_delays)
+ (macro_start): Replace uses of prev_insn* with the equivalent history[]
+ field.
+
+2005-03-08 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * doc/Makefile.am: Update as.info dependencies.
+ * aclocal.m4, Makefile.in, doc/Makefile.in: Regenerated.
+
+2005-03-08 Jan Beulich <jbeulich@novell.com>
+
+ * doc/as.texinfo: Add sentence to indicate redefining a macro is an
+ error, and point to .purgem documentation if someone really needs
+ re-definitions.
+ * NEWS: Mention macro redefinition is now an error.
+
+2005-03-08 Jan Beulich <jbeulich@novell.com>
+
+ * config/tc-ia64.c (emit_one_bundle): Track last slot user insn was
+ emitted to. Add more precise diagnostics for non-fitting insns based
+ on that. Eliminate now superfluous special casing of MLX. Clear out
+ slot information when dropping an insn.
+
+2005-03-08 Jan Beulich <jbeulich@novell.com>
+
+ * config/tc-ia64.c (parse_section_name): Rename to...
+ (cross_section): In addition to separating the name from the rest of
+ the arguments, also carry out the operation.
+ (dot_xdata): Use cross_section.
+ (dot_float_cons): Likewise.
+ (dot_xstringer): Likewise.
+ (dot_xdata_ua): Likewise.
+ (dot_float_cons_ua): Likewise. Pass float_cons, not stmt_float_cons.
+
+2005-03-05 Alan Modra <amodra@bigpond.net.au>
+
+ * po/gas.pot: Regenerate.
+
+2005-03-04 David Daney <ddaney@avtrex.com>
+
+ * config/tc-mips.c (macro_build_lui): Use '__gnu_local_gp'
+ instead of '_gp' for -mno-shared optimization.
+ (s_cpload): Ditto.
+ (s_abicalls): Document it in the comment.
+ (md_show_usage): Document the -mno-shared option.
+
+2005-03-04 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/tc-mips.c (mips_set_options): Add sym32 field.
+ (mips_opts): Initialize it.
+ (HAVE_32BIT_ADDRESSES): Set to true if pointers are 32 bits wide.
+ (HAVE_64BIT_ADDRESSES): Redefine as !HAVE_32BIT_ADDRESSES.
+ (HAVE_32BIT_SYMBOLS, HAVE_64BIT_SYMBOLS): New macros.
+ (load_address): Use HAVE_64BIT_SYMBOLS instead of HAVE_64BIT_ADDRESSES
+ when deciding whether to use a symbolic %highest/%higher expansion.
+ (macro): Likewise. Remove o64/n32 linux hack. Always use
+ ADDRESS_ADD*_INSN for address addition in the expansion of "dla"
+ and "la". Handle constants separately from symbolic expressions in
+ the "ld_st:" case, using 64-bit arithmetic if HAVE_64BIT_ADDRESSES
+ and using load_register to load the high part of the address.
+ (OPTION_MSYM32, OPTION_NO_MSYM32): New macros.
+ (OPTION_ELF_BASE): Bump by 2.
+ (md_longopts): Add entries for -msym32 and -mno-sym32.
+ (md_parse_option): Handle them.
+ (usage): Document them.
+ (s_mipsset): Handle ".set sym32" and ".set nosym32".
+ (s_cpload, s_cpsetup): Use HAVE_64BIT_SYMBOLS instead of
+ HAVE_64BIT_ADDRESSES to detect 64-bit values of "_gp".
+ * doc/c-mips.texi: Document ".set sym32", ".set nosym32",
+ -msym32 and -mno-sym32.
+
+2005-03-03 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
+
+ * config/tc-mips.c (load_address): Implement GP optimization
+ for 64bit address space non-PIC. Fix formatting.
+ (macro): Likewise. Simplify code.
+ (md_parse_option): Don't bail out if -G 0 is set for PIC code.
+ (mips_after_parse_args): Simplify code.
+
+2005-03-03 Nick Clifton <nickc@redhat.com>
+
+ * expr.c (operand): Remove redundant code enclosed by #ifdef
+ RELAX_PAREN_GROUPING....#endif.
+
+ * config/tc-mn10200.c (tc_gen_reloc): Handle the case where the
+ reloc is the difference of two symbols defined in the same
+ section.
+
+ * config/tc-iq2000.c (line_comment_chars): Include the # character
+ as otherwise this breaks #APP/#NO_APP processing.
+
+2005-03-03 Ramana Radhakrishnan <ramana.radhakrishnan@codito.com>
+
+ * config/tc-arc.c(md_assemble): Remove dead code for handling
+ immediate indexing of ld and st .
+
+2005-03-02 Daniel Jacobowitz <dan@codesourcery.com>
+ Joseph Myers <joseph@codesourcery.com>
+
+ * config/tc-mips.c (percent_op): Add %tlsgd, %tlsldm, %dtprel_hi,
+ %dtprel_lo, %tprel_hi, %tprel_lo, and %gottprel.
+ (parse_relocation): Check for a word break after a relocation
+ operator.
+ (md_apply_fix3): Handle TLS relocations, and mark thread-local
+ symbols.
+
+2005-03-02 Alan Modra <amodra@bigpond.net.au>
+
+ * config/tc-ppc.c (ppc_fix_adjustable <ELF>): Remove bogus checks.
+
+2005-03-02 Jan Beulich <jbeulich@novell.com>
+
+ * as.c (main): Use unlink_if_ordinary instead of unlink.
+ * messages.c (as_fatal): Likewise.
+
+2005-03-02 Jan Beulich <jbeulich@novell.com>
+
+ * config/tc-i386.c (build_modrm_byte): Add lock prefix for cr8...15
+ accesses.
+ (parse_register): Allow cr8...15 in all modes.
+
+2005-03-02 Jan Beulich <jbeulich@novell.com>
+
+ * config/tc-i386.c (intel_e11): If not followed by T_PTR, treat T_BYTE
+ etc. like normal symbol references (T_ID).
+
2005-03-02 Alan Modra <amodra@bigpond.net.au>
+ * symbols.c (fb_label_name): Fix silly thinko in last change.
+
+2005-03-02 Alan Modra <amodra@bigpond.net.au>
+
+ * expr.c (integer_constant): Remove TARGET_WORD_SIZE hack.
+ * config/tc-m68k.h (TARGET_WORD_SIZE): Delete.
+
* symbols.c (fb_label_name): Allow an augend of 2 for mmix.
2005-03-01 Ramana Radhakrishnan <ramana.radhakrishnan@codito.com>
(set_section, add_unwind_adjustsp, flush_pending_unwind,
finish_unwind_opcodes, start_unwind_section, create_unwind_entry,
require_hashconst, add_unwind_opcode): New functions.
- * doc/tc-arm.text: Document unwinding opcodes.
+ * doc/c-arm.texi: Document unwinding opcodes.
* NEWS: Mention the new feature.
2004-10-04 Eric Christopher <echristo@redhat.com>
(md_begin): Set flags for EABI v3.
(arm_eabis): Add.
(arm_long_opts): Add meabi.
- * doc/as.texinf <ARM>: Document -meabi.
+ * doc/as.texinfo <ARM>: Document -meabi.
* doc/c-arm.texi: Ditto.
2004-03-22 Bob Wilson <bob.wilson@acm.org>