This adjusts equate handling by
[binutils-gdb.git] / gas / ChangeLog
index 2018e20bfc2a825d036ed13fa2d16387d73bc7a1..16d67b59f7ff5d0a1877e4e58675ef0f0e5aba34 100644 (file)
@@ -1,3 +1,257 @@
+2005-10-11  Jan Beulich  <jbeulich@novell.com>
+
+       * expr.h (enum expr_mode): New.
+       (expression): Pass thrid argument to expr.
+       (expression_and_evaluate): New.
+       (deferred_expression): New.
+       (expr): Add third parameter.
+       (resolve_expression): New.
+       * struc-symbol.h (struct symbol): New members sy_volatile and
+       sy_forward_ref.
+       * symbols.c, symbols.h (symbol_clone): New.
+       (symbol_clone_if_forward_ref): New.
+       (snapshot_symbol): New.
+       (S_IS_VOLATILE): New.
+       (S_IS_FORWARD_REF): New.
+       (S_SET_VOLATILE): New.
+       (S_SET_FORWARD_REF): New.
+       * as.c (macro_expr): Use expression_and_evaluate.
+       * cond.c (s_if): Likewise.
+       (s_elseif): Likewise.
+       * dw2gencfi.c (cfi_parse_reg): Likewise.
+       * expr.c (operand): Add second parameter. Optionally call
+       deferred_expression. Pass mode argument to itself and md_parse_name.
+       Check mode before trying to evaluate symbol. Call
+       symbol_clone_if_forward_ref for both operands.
+       (expr): Add thrid parameter. Pass mode to operand and itself.
+       Optionally call resolve_expression.
+       (resolve_expression): New.
+       (get_single_number): Pass second argument to operand.
+       * read.c (potable): New entry for .eqv.
+       (read_a_source_file): Handle new == operator.
+       (get_absolute_expr): Use expression_and_evaluate.
+       (s_lsym): Likewise.
+       (assign_symbol): Rename second parameter. Call symbol_clone on
+       legal and illegal redefinition. Call S_SET_VOLATILE and
+       S_SET_FORWARD_REF depending on mode.
+       (s_set): Update description.
+       (s_space): Call resolve_expression.
+       (pseudo_set): Optionally call deferred_expression. Check
+       S_IS_FORWARD_REF before trying to simplify/resolve an expression.
+       (equals): Handle ==.
+       * config/tc-ia64.h (md_parse_name): Add mode parameter.
+       * config/tc-arc.c (arc_parse_cons_expression): Likewise.
+       * config/tc-m32r.h (md_parse_name): Likewise.
+       (m32r_parse_name): Likewise.
+       * config/tc-mmix.h (md_parse_name): Likewise.
+       * config/tc-mn10300.h (md_parse_name): Likewise.
+       (mn10300_parse_name): Likewise.
+       * config/tc-ppc.h (md_parse_name): Likewise.
+       * config/tc-sh.h (md_parse_name): Likewise.
+       (sh_parse_name): Likewise.
+       * config/tc-sh64.h (md_parse_name): Likewise.
+       (sh64_consume_datalabel): Likewise.
+       * config/tc-tic54x.h (md_parse_name): Likewise.
+       * config/tc-m32r.c (m32r_parse_name): Add mode parameter. Check it
+       before trying to evaluate symbol.
+       * config/tc-mn10300.c (mn10300_parse_name): Likewise.
+       * config/tc-sh.c (sh_parse_name): Likewise.
+       * config/tc-sh64.c (sh64_consume_datalabel): Add mode parameter. Pass
+       second argument to operandf. Pass mode parameter to sh_parse_name.
+       * doc/as.texinfo: Document .eqv and the == assignment operator.
+
+2005-10-10  Ian Lance Taylor  <ian@airs.com>
+
+       * Makefile.am (EXTRA_DIST): Remove bfin-lex.l and bfin-defs.h.
+       * Makefile.in: Regenerate.
+
+2005-10-10  Arnold Metselaar  <arnold.metselaar@planet.nl>
+
+       * expr.c (operator): Allow "!=" as a synonym for "<>".
+       * doc/as.texinfo (Infix Op): Mention "!=".
+
+2005-10-08  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       * config/tc-hppa.c (strict): Don't initialize.  Update comment.
+       (pa_ip): Promote from PA 1.0 to 1.1 immediately when 1.1 match is
+       found.  Simplify handling of "ma" and "mb" completers.
+
+2005-10-08  Paul Brook  <paul@codesourcery.com>
+
+       * config/tc-arm.c: Don't provide fallback default for CPU_DEFAULT.
+       (arm_arch_used, thumb_arch_used, selected_cpu, selected_cpu_name):
+       New variables.
+       (arm_cpu_option_table): Add canonical_name.
+       (arm_cpus): Populate canonical_name field.
+       (s_arm_eabi_attribute, s_arm_arch, s_arm_cpu, s_arm_fpu,
+       aeabi_set_public_attributes, arm_md_end): New functions.
+       (md_pseudo_table): Add "cpu", "arch", "fpu" and "eabi_attribute".
+       (md_assemble): Set thumb_arch_used and arm_arch_used.
+       (md_begin): Set defaut cpu if CPU_DEFAULT not defined.
+       * config/tc-arm.h (md_end): Define.
+       * doc/c-arm.texi: Document .cpu, .arch, .fpu and .eabi_attribute.
+
+2005-10-06  Khem Raj  <kraj@mvista.com>
+            NIIBE Yutaka  <gniibe@m17n.org>
+
+       * config/tc-sh.c (allow_dollar_register_prefix): New variable.
+       (parse_reg_without_prefix): New function.
+       (parse_reg): Check for '$' register prefix if --allow-reg-prefix is
+       set.
+       (option md_longopts): Add allow-reg-prefix option.
+       * doc/c-sh.texi: Document --allow-reg-prefix option.
+       * NEWS: Mention the new switch.
+
+2005-10-03  Arnold Metselaar  <arnold.metselaar@planet.nl>
+
+       * doc/as.texinfo (Infix Ops):  '<' and '>' are not shift
+       operators.
+
+2005-09-30  Sterling Augustine  <sterling@tensilica.com>
+           Bob Wilson  <bob.wilson@acm.org>
+
+       * config/tc-xtensa.c (xtensa_frob_label): Disallow labels in bundles.
+
+2005-09-30  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * Makefile.am: Run "make dep-am".
+       * Makefile.in: Regenerated.
+       * aclocal.m4: Likewise.
+
+2005-09-30  Mark Mitchell  <mark@codesourcery.com>
+
+       * as.c (main): Use expandargv.
+
+2005-09-30  Jan Beulich  <jbeulich@novell.com>
+
+       * config/tc-tic4x.c (tic4x_set): Advance input_line_pointer past
+       (removed) comma.
+
+2005-09-30  Catherine Moore  <clm@cm00re.com>
+
+       * Makefile.am: Bfin support.
+       * Makefile.in: Regenerated.
+       * aclocal.m4: Regenerated.
+       * configure: Regenerated.
+       * configure.in: Bfin support.
+       * configure.tgt: Bfin support.
+       * config/bfin-aux.h: New file.
+       * config/bfin-defs.h: New file.
+       * config/bfin-lex.l: New file.
+       * config/bfin-parse.y: New file.
+       * config/tc-bfin.c: New file.
+       * config/tc-bfin.h: New file.
+       * doc/Makefile.am: Recognize c-bfin.texi.
+       * doc/Makefile.in: Regenerated.
+       * doc/all.texi: Bfin support.
+       * doc/as.texinfo: Likewise.
+       * doc/c-bfin.texi: Document bfin-specific syntax and
+       directives.
+
+2005-09-30  Paul Brook  <paul@codesourcery.com>
+
+       * config/tc-arm.c (opcode_tag): Add OT_cinfix3_legacy.
+       (opcode_lookup): Handle OT_cinfix3_legacy.  Revert earlier change for
+       normal infix conditions.
+       (C3E): Include Thumb-2 definition.
+       (CL, cCL): Define.
+       (insns): Use them for legacy mnemonics.
+
+2005-09-30  Matthias Kurz  <mk@baerlap.north.de>
+
+       * asintl.h: Prevent the inclusion of <libintl.h> from the Solaris
+       version of <locale.h> when ENABLE_NLS is not defined.
+
+2005-09-29  Jan Beulich  <jbeulich@novell.com>
+
+       * config/tc-ia64.c (parse_operands): Always parse first operand of
+       alloc.
+
+2005-09-29  Arnold Metselaar <arnold.metselaar@planet.nl>
+           Alan Modra  <amodra@bigpond.net.au>
+
+       * app.c (do_scrub_chars): Match open and close quote of strings.
+       Remove redundant EOF test in case 7.
+
+2005-09-28  Jan Beulich  <jbeulich@novell.com>
+
+       * config/tc-i386.c (reloc): Disable signedness check for 4-byte
+       relocations in 16- and 32-bit modes.
+       (i386_displacement): Make pc-relative branch handling dependent
+       upon operand (rather than address) size.
+
+2005-09-28  Jan Beulich  <jbeulich@novell.com>
+
+       * dw2gencfi.c (dot_cfi): Call ignore_rest_of_line when not fully
+       parsing the input.
+       (dot_cfi_startproc): Likewise.
+       (dot_cfi_endproc): Likewise. Also check no extra input was given.
+       (dot_cfi_escape): Likewise.
+
+2005-09-28  Jan Beulich  <jbeulich@novell.com>
+
+       * config/tc-i386.h (x86_cons_fix_new): Declare unconditionally.
+       (TC_CONS_FIX_NEW): Define unconditionally.
+       (x86_pe_cons_fix_new): Remove.
+       * config/tc-i386.c (signed_cons): New.
+       (md_pseudo_table): Add slong.
+       (x86_cons_fix_new): Declare unconditionally.
+       (x86_pe_cons_fix_new): Merge into x86_cons_fix_new.
+       (tc_gen_reloc): Also consider BFD_RELOC_X86_64_32S for gotpc
+       conversion.
+
+2005-09-28  Arnold Metselaar  <arnold.metselaar@planet.nl>
+
+       * app.c (do_scrub_chars <LEX_IS_SYMBOL_COMPONENT>): Check for full
+       buffer after copying string.
+
+2005-09-27  Paul Brook  <paul@codesourcery.com>
+
+       * config/arm.c (arm_cpus): Add more cpu names.
+       * doc/c-arm.texi: Document them.
+
+2005-09-21  Alan Modra  <amodra@bigpond.net.au>
+
+       * read.c (pseudo_set): Don't set undefined symbols to expr_section.
+
+2005-09-20  Richard Henderson  <rth@redhat.com>
+
+       * dwarf2dbg.c (process_entries): Fix uninitialized variable warning.
+
+2005-09-20  Richard Henderson  <rth@redhat.com>
+
+       * dwarf2dbg.c (struct line_entry): Replace frag and frag_ofs
+       with label.
+       (dwarf2_loc_mark_labels): New.
+       (dwarf2_gen_line_info_1): Split out of ...
+       (dwarf2_gen_line_info): ... here.  Create the temp symbol here.
+       (dwarf2_emit_label): New.
+       (dwarf2_directive_loc_mark_labels): New.
+       (out_set_addr): Take a symbol instead of frag+ofs.
+       (relax_inc_line_addr): Likewise.
+       (emit_inc_line_addr): Assert delta non-negative.
+       (process_entries): Remove dead code.  Update to work with temp
+       symbols instead of frag+ofs.
+       * dwarf2dbg.h (dwarf2_directive_loc_mark_labels): Declare.
+       (dwarf2_emit_label, dwarf2_loc_mark_labels): Declare.
+       * config/obj-elf.c (elf_pseudo_tab): Add loc_mark_labels.
+       * config/obj-elf.h (obj_frob_label): New.
+       * config/tc-alpha.c (alpha_define_label): Call dwarf2_emit_label.
+       * config/tc-arm.c, config/tc-hppa.c, config/tc-m68k.c,
+       config/tc-mips.c, config/tc-ppc.c, config/tc-sh.c, config/tc-xtensa.c:
+       Similarly in the respective tc_frob_label implementation functions.
+       * config/tc-i386.c (md_pseudo_table): Move file and loc to
+       non-elf section; add loc_mark_labels.
+       * config/tc-ia64.c (struct label_fix): Add dw2_mark_labels.
+       (ia64_flush_insns): Check for marked labels; emit line entry if so.
+       (emit_one_bundle): Similarly.
+       (ia64_frob_label): Record marked labels.
+       * config/tc-m68hc11.h (tc_frob_label): Remove.
+       * config/tc-ms1.c (md_pseudo_table): Remove file and loc.
+       * config/tc-sh.h (tc_frob_label): Pass sym to sh_frob_label.
+       * config/tc-sh64.h (tc_frob_label): Likewise.
+       * doc/as.texinfo (LNS directives): Docuement .loc_mark_blocks.
+
 2005-09-20  Alan Modra  <amodra@bigpond.net.au>
 
        * read.c (pseudo_set): Set segment of expression syms to expr_section.
        epilogue_begin, is_stmt, isa.
        (emit_inc_line_addr): Move line_delta == 0, addr_delta == 0 special
        case down lower.
-       (process_entries): Handle isa, DWARF2_FLAG_PROLOGUE_END, 
+       (process_entries): Handle isa, DWARF2_FLAG_PROLOGUE_END,
        and DWARF2_FLAG_EPILOGUE_BEGIN.
        (out_debug_line): Emit sizes for DW_LNS_set_prologue_end,
        DW_LNS_set_epilogue_begin, DW_LNS_set_isa.
 2005-09-01  Dmitry Diky  <diwil@spec.ru>
 
        * config/tc-msp430.c (msp430_operands): Emit dwarf2_emit_insn()
-       as appropriate. Change frag_variant() to frag_var() for relaxes. 
+       as appropriate. Change frag_variant() to frag_var() for relaxes.
 
 2005-08-29  Nick Clifton  <nickc@redhat.com>
 
        * config/tc-msp430.h (TC_FORCE_RELOCATION_LOCAL): Defined.
        (msp430_force_relocation_local): Likewise.
        * doc/c-msp430.texi: Describe new options.
-       
+
 2005-08-11  Ian Lance Taylor  <ian@airs.com>
 
        * Makefile.am ($(srcdir)/make-gas.com): Remove target.
        * doc/as.texinfo: Add text for the M32C-specific options and line
        comment characters, and refer to c-m32c.texi.
        * doc/c-m32c.texi: New file.
-       
+
 2005-07-14  Nick Clifton  <nickc@redhat.com>
 
        PR 1069