* dwarf2dbg.c (process_entries): Fix uninitialized variable warning.
[binutils-gdb.git] / gas / ChangeLog
index 8c54b2053e33ae4d6531ce823f43bef81f3598c2..2506e6870c10fc2fbac3cc30b4645c0f8b2849f9 100644 (file)
@@ -1,3 +1,183 @@
+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.
+
+2005-09-14  Jan Beulich  <jbeulich@novell.com>
+
+       * config/tc-i386.c (tc_x86_regname_to_dw2regnum): Add selector
+       registers, floating point control and status words, and mxcsr as
+       well as (for 64-bit code) segment base registers and rflags.
+
+2005-09-09  Dmitry Diky  <diwil@spec.ru>
+
+       * config/tc-msp430.c (msp430_operands): Undo last changes. Instead...
+       (msp430_relax_frag): add a guard check to ensure that final fr_subtype
+       has been reached.
+
+2005-09-08  Chao-ying Fu  <fu@mips.com>
+
+       * doc/as.texinfo: Document -mdsp and -mno-dsp options.
+       * doc/c-mips.texi: Likewise, and document ".set dsp" and ".set nodsp"
+       directives.
+
+2005-09-08  Paul Brook  <paul@codesourcery.com>
+
+       * config/tc-arm.c (do_smi, do_t_smi): Rename ...
+       (do_smc, do_t_smc): ... to this.
+       (insns): Remane smi to smc.
+       (md_apply_fix, tc_gen_reloc): Rename BFD_RELOC_ARM_SMI to
+       BFD_RELOC_ARM_SMC.
+
+2005-09-07  Richard Henderson  <rth@redhat.com>
+
+       * dwarf2dbg.c (dwarf2_where): Set line->isa.
+       (dwarf2_set_isa): New.
+       (dwarf2_directive_loc): Rearrange to allow all options on one line.
+       * dwarf2dbg.h (dwarf2_set_isa): Declare.
+       * doc/as.texinfo: Update .loc documentation.
+
+2005-09-07  Richard Henderson  <rth@redhat.com>
+
+       * dwarf2dbg.c: Include safe-ctype.h.
+       (DWARF2_LINE_OPCODE_BASE): Bump to 13.
+       (current): Initialize.
+       (dwarf2_emit_insn): Clear DWARF2_FLAG_BASIC_BLOCK,
+       DWARF2_FLAG_PROLOGUE_END, DWARF2_FLAG_EPILOGUE_BEGIN.
+       (dwarf2_directive_file): Cope with invalid filename.
+       (dwarf2_directive_loc): Add handling for basic_block, prologue_end,
+       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, 
+       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.
+       * dwarf2dbg.h (DWARF2_FLAG_IS_STMT): Rename from DWARF2_FLAG_BEGIN_STMT.
+       (DWARF2_FLAG_BASIC_BLOCK): Rename from DWARF2_FLAG_BEGIN_BLOCK.
+       (DWARF2_FLAG_PROLOGUE_END, DWARF2_FLAG_EPILOGUE_BEGIN): New.
+       (struct dwarf2_line_info): Add isa member.
+       * doc/as.texinfo (LNS directives): New node.
+
+2005-09-07  David Ung  <davidu@mips.com>
+
+       * config/tc-mips.c (append_insn): Undo last change.  Instead add
+       guard to suppress calling frag_grow if the current instruction is
+       one that allows a delay slot.
+
+2005-09-06  Chao-ying Fu  <fu@mips.com>
+
+       * config/tc-mips.c (mips_set_options): Add ase_mt for MT instructions.
+       (mips_opts): Add -1 to initialize ase_mt.
+       (file_ase_mt): New variable for -mmt.
+       (CPU_HAS_MT): New define.
+       (validate_mips_insn): Add supports for +t, +T, !, $, *, &, g operand
+       formats.
+       (mips_ip): Check ase_mt to enable MT instructions.
+       Handle !, $, *, &, +T, +t, g operand formats.
+       For "mftc1", "mfthc1", "cftc1", "mttc1", "mtthc1", "cttc1", we allow
+       odd float registers.
+       (OPTION_MT, OPTION_NO_MT): New define.
+       (OPTION_COMPAT_ARCH_BASE): Change because of inserting MT define.
+       (md_parse_option): Parse OPTION_MT and OPTION_NO_MT.
+       (mips_after_parse_args): Set ase_mt based on CPU.
+       (s_mipsset): Handle ".set mt" and ".set nomt".
+       (mips_elf_final_processing): Remind of adding new flag for MT ASE.
+       (md_show_usage): Show usage of -mmt and -mno-mt.
+       * doc/as.texinfo: Document -mmt and -mno-mt options.
+       * doc/c-mips.texi: Likewise, and document ".set mt" and ".set nomt"
+       directives.
+
+2005-09-06  Paul Brook  <paul@codesourcery.com>
+
+       * config/tc-arm.c (arm_it): Add relax field.
+       (T16_32_TAB): Add addi, addis, add_pc, add_sp, dec_sp, inc_sp,
+       b, bcond, ldr_pc, ldr_pc2, ldr_sp, str_sp, subi, subis.
+       (do_t_add_sub, do_t_addr, do_t_branch, do_t_ldst,
+       do_t_mov_cmp): Allow relaxation.
+       (output_relax_insn): New function.
+       (put_thumb32_insn): New function.
+       (output_inst): Use new functions.
+       (md_assemble): Don't throw error on relaxable instructions.
+       (insns): Change "b" entry from TCE(...) to tCE(...).
+       (md_estimate_size_before_relax): Return 2.
+       (md_convert_frag, relax_immediate, relax_adr, relax_addsub,
+       relax_branch, arm_relax_frag): New functions.
+       (arm_force_relocation): Return 0 for Thumb-2 immediate operand
+       relocations.
+       * config/tc-arm.h (md_convert_frag): Remove definition.
+       (md_relax_frag): Define.
+       (arm_relax_frag): Add prototype.
+
+2005-09-02  Paul Brook  <paul@codesourcery.com>
+
+       * config/tc-arm.c (do_rn_rd): Enforce SWP operand constraints.
+
+2005-09-02  Paul Brook  <paul@codesourcery.com>
+
+       * config/tc-arm.c (encode_arm_cp_address): Use
+       BFD_RELOC_ARM_T32_CP_OFF_IMM in thumb mode.
+       (do_iwmmxt_wldstbh): Use BFD_RELOC_ARM_T32_CP_OFF_IMM_S2 in thumb
+       mode.
+       (md_assemble): Only allow coprocessor instructions when Thumb-2 is
+       available.
+       (cCE, cC3): Define.
+       (insns): Use them for coprocessor instructions.
+       (md_pcrel_from_section): Handle BFD_RELOC_ARM_T32_CP_OFF_IMM.
+       (get_thumb32_insn): New function.
+       (put_thumb32_insn): New function.
+       (md_apply_fix): Handle BFD_RELOC_ARM_T32_CP_OFF_IMM and
+       BFD_RELOC_ARM_T32_CP_OFF_IMM_S2.
+
+2005-09-02  Paul Brook  <paul@codesourcery.com>
+
+       * config/tc-arm.c (opcode_lookup): Look for infix opcode when
+       incorrect suffix matches.
+
+2005-09-01  David Ung  <davidu@mips.com>
+
+       * config/tc-mips.c (append_insn): Correctly handle mips16 case
+       when the frags are different for the 2 instructions we want to
+       swap.  If the lengths of the 2 instructions are not the same, we
+       won't do the swap but emit an nop.
+
 2005-09-01  Dmitry Diky  <diwil@spec.ru>
 
        * config/tc-msp430.c (msp430_operands): Emit dwarf2_emit_insn()