daily update
[deliverable/binutils-gdb.git] / gas / ChangeLog
index 602eb6d6469f296583e9223638ab0843737d2639..86886436b704440070de2af8da8dc310b91b9464 100644 (file)
@@ -1,3 +1,361 @@
+2011-07-30  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * config/tc-mips.c (nops_for_vr4130): Revert previous commit.
+
+2011-07-29  Maciej W. Rozycki  <macro@codesourcery.com>
+
+       * config/tc-mips.c: Adjust comments throughout.
+       (reglist_lookup): Reshape code.
+       (jmp_reloc_p, jalr_reloc_p): Reformat.
+       (got16_reloc_p, hi16_reloc_p, lo16_reloc_p): Handle microMIPS
+       relocations.
+       (gpr_mod_mask): Remove unused variable.
+       (gpr_read_mask, gpr_write_mask): Reshape code.
+       (fpr_read_mask, fpr_write_mask): Likewise.
+       (nops_for_vr4130): Ensure non-microMIPS mode.
+       (can_swap_branch_p): Correct pinfo2 reference.  Reshape code.
+       (append_insn): Skip Loongson 2F workaround in MIPS16 mode.  Use
+       the outermost operator of a compound relocation to determines
+       the relocated field.  Fix formatting.
+       (md_convert_frag): Reshape code.
+
+2011-07-29  Tristan Gingold  <gingold@adacore.com>
+
+       * frags.c (frag_var_init): New function.
+       (frag_var): Call frag_var_init to initialize.
+       (frag_variant): Ditto.
+
+2011-07-27  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * dwarf2dbg.c (out_debug_line): Ignore non-normal segments, with a
+       warning.
+       * doc/as.texinfo (Offset): Document .offset directive.
+
+2011-07-27  Tristan Gingold  <gingold@adacore.com>
+
+       * frags.c (frag_grow): Revert previous patch.
+
+2011-07-26  Kazuhiro Inaoka  <kazuhiro.inaoka.ud@renesas.com>
+
+       * config/tc-rx.c (md_convert_frag): Fix encoding of beq.a
+       synthetic instruction.
+
+2011-07-25  Tristan Gingold  <gingold@adacore.com>
+
+       * frags.c (frag_grow): Simplify the code.
+
+2011-07-24  Maciej W. Rozycki  <macro@codesourcery.com>
+            Chao-ying Fu  <fu@mips.com>
+           Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * config/tc-mips.h (mips_segment_info): Add one bit for
+       microMIPS.
+       (TC_LABEL_IS_LOCAL): New macro.
+       (mips_label_is_local): New prototype.
+       * config/tc-mips.c (S0, S7): New macros.
+       (emit_branch_likely_macro): New variable.
+       (mips_set_options): Add micromips.
+       (mips_opts): Initialise micromips to -1.
+       (file_ase_micromips): New variable.
+       (CPU_HAS_MICROMIPS): New macro.
+       (hilo_interlocks): Set for microMIPS too.
+       (gpr_interlocks): Likewise.
+       (cop_interlocks): Likewise.
+       (cop_mem_interlocks): Likewise.
+       (HAVE_CODE_COMPRESSION): New macro.
+       (micromips_op_hash): New variable.
+       (micromips_nop16_insn, micromips_nop32_insn): New variables.
+       (NOP_INSN): Handle microMIPS ASE.
+       (mips32_to_micromips_reg_b_map): New macro.
+       (mips32_to_micromips_reg_c_map): Likewise.
+       (mips32_to_micromips_reg_d_map): Likewise.
+       (mips32_to_micromips_reg_e_map): Likewise.
+       (mips32_to_micromips_reg_f_map): Likewise.
+       (mips32_to_micromips_reg_g_map): Likewise.
+       (mips32_to_micromips_reg_l_map): Likewise.
+       (mips32_to_micromips_reg_n_map): Likewise.
+       (mips32_to_micromips_reg_h_map): New variable.
+       (mips32_to_micromips_reg_m_map): Likewise.
+       (mips32_to_micromips_reg_q_map): Likewise.
+       (micromips_to_32_reg_h_map): New variable.
+       (micromips_to_32_reg_i_map): Likewise.
+       (micromips_to_32_reg_m_map): Likewise.
+       (micromips_to_32_reg_q_map): Likewise.
+       (micromips_to_32_reg_b_map): New macro.
+       (micromips_to_32_reg_c_map): Likewise.
+       (micromips_to_32_reg_d_map): Likewise.
+       (micromips_to_32_reg_e_map): Likewise.
+       (micromips_to_32_reg_f_map): Likewise.
+       (micromips_to_32_reg_g_map): Likewise.
+       (micromips_to_32_reg_l_map): Likewise.
+       (micromips_to_32_reg_n_map): Likewise.
+       (micromips_imm_b_map, micromips_imm_c_map): New macros.
+       (RELAX_DELAY_SLOT_16BIT): New macro.
+       (RELAX_DELAY_SLOT_SIZE_FIRST): Likewise.
+       (RELAX_DELAY_SLOT_SIZE_SECOND): Likewise.
+       (RELAX_MICROMIPS_ENCODE, RELAX_MICROMIPS_P): New macros.
+       (RELAX_MICROMIPS_TYPE, RELAX_MICROMIPS_AT): Likewise.
+       (RELAX_MICROMIPS_U16BIT, RELAX_MICROMIPS_UNCOND): Likewise.
+       (RELAX_MICROMIPS_COMPACT, RELAX_MICROMIPS_LINK): Likewise.
+       (RELAX_MICROMIPS_RELAX32, RELAX_MICROMIPS_TOOFAR16): Likewise.
+       (RELAX_MICROMIPS_MARK_TOOFAR16): Likewise.
+       (RELAX_MICROMIPS_CLEAR_TOOFAR16): Likewise.
+       (RELAX_MICROMIPS_TOOFAR32): Likewise.
+       (RELAX_MICROMIPS_MARK_TOOFAR32): Likewise.
+       (RELAX_MICROMIPS_CLEAR_TOOFAR32): Likewise.
+       (INSERT_OPERAND, EXTRACT_OPERAND): Handle microMIPS ASE.
+       (mips_macro_warning): Add delay_slot_16bit_p, delay_slot_32bit_p,
+       fsize and insns.
+       (mips_mark_labels): New function.
+       (mips16_small, mips16_ext): Remove variables, replacing with...
+       (forced_insn_size): ... this.
+       (append_insn, mips16_ip): Update accordingly.
+       (micromips_insn_length): New function.
+       (insn_length): Return the length of microMIPS instructions.
+       (mips_record_mips16_mode): Rename to...
+       (mips_record_compressed_mode): ... this.  Handle microMIPS ASE.
+       (install_insn): Handle microMIPS ASE.
+       (reglist_lookup): New function.
+       (is_size_valid, is_delay_slot_valid): Likewise.
+       (md_begin): Handle microMIPS ASE.
+       (md_assemble): Likewise.  Update for append_insn interface change.
+       (micromips_reloc_p): New function.
+       (got16_reloc_p): Handle microMIPS ASE.
+       (hi16_reloc_p): Likewise.
+       (lo16_reloc_p): Likewise.
+       (jmp_reloc_p): New function.
+       (jalr_reloc_p): Likewise.
+       (matching_lo_reloc): Handle microMIPS ASE.
+       (insn_uses_reg, reg_needs_delay): Likewise.
+       (mips_move_labels): Likewise.
+       (mips16_mark_labels): Rename to...
+       (mips_compressed_mark_labels): ... this.  Handle microMIPS ASE.
+       (gpr_mod_mask): New function.
+       (gpr_read_mask, gpr_write_mask): Handle microMIPS ASE.
+       (fpr_read_mask, fpr_write_mask): Likewise.
+       (insns_between, nops_for_vr4130, nops_for_insn): Likewise.
+       (fix_loongson2f_nop, fix_loongson2f_jump): Likewise.
+       (MICROMIPS_LABEL_CHAR): New macro.
+       (micromips_target_label, micromips_target_name): New variables.
+       (micromips_label_name, micromips_label_expr): New functions.
+       (micromips_label_inc, micromips_add_label): Likewise.
+       (mips_label_is_local): Likewise.
+       (micromips_map_reloc): Likewise.
+       (can_swap_branch_p): Handle microMIPS ASE.
+       (append_insn): Add expansionp argument.  Handle microMIPS ASE.
+       (start_noreorder, end_noreorder): Handle microMIPS ASE.
+       (macro_start, macro_warning, macro_end): Likewise.
+       (brk_fmt, cop12_fmt, jalr_fmt, lui_fmt): New variables.
+       (mem12_fmt, mfhl_fmt, shft_fmt, trap_fmt): Likewise.
+       (BRK_FMT, COP12_FMT, JALR_FMT, LUI_FMT): New macros.
+       (MEM12_FMT, MFHL_FMT, SHFT_FMT, TRAP_FMT): Likewise.
+       (macro_build): Handle microMIPS ASE.  Update for append_insn
+       interface change.
+       (mips16_macro_build): Update for append_insn interface change.
+       (macro_build_jalr): Handle microMIPS ASE.
+       (macro_build_lui): Likewise.  Simplify.
+       (load_register): Handle microMIPS ASE.
+       (load_address): Likewise.
+       (move_register): Likewise.
+       (macro_build_branch_likely): New function.
+       (macro_build_branch_ccl): Likewise.
+       (macro_build_branch_rs): Likewise.
+       (macro_build_branch_rsrt): Likewise.
+       (macro): Handle microMIPS ASE.
+       (validate_micromips_insn): New function.
+       (expr_const_in_range): Likewise.
+       (mips_ip): Handle microMIPS ASE.
+       (options): Add OPTION_MICROMIPS and OPTION_NO_MICROMIPS.
+       (md_longopts): Add mmicromips and mno-micromips.
+       (md_parse_option): Handle OPTION_MICROMIPS and
+       OPTION_NO_MICROMIPS.
+       (mips_after_parse_args): Handle microMIPS ASE.
+       (md_pcrel_from): Handle microMIPS relocations.
+       (mips_force_relocation): Likewise.
+       (md_apply_fix): Likewise.
+       (mips_align): Handle microMIPS ASE.
+       (s_mipsset): Likewise.
+       (s_cpload, s_cpsetup, s_cpreturn): Use relocation wrappers.
+       (s_dtprel_internal): Likewise.
+       (s_gpword, s_gpdword): Likewise.
+       (s_insn): Handle microMIPS ASE.
+       (s_mips_stab): Likewise.
+       (relaxed_micromips_32bit_branch_length): New function.
+       (relaxed_micromips_16bit_branch_length): New function.
+       (md_estimate_size_before_relax): Handle microMIPS ASE.
+       (mips_fix_adjustable): Likewise.
+       (tc_gen_reloc): Handle microMIPS relocations.
+       (mips_relax_frag): Handle microMIPS ASE.
+       (md_convert_frag): Likewise.
+       (mips_frob_file_after_relocs): Likewise.
+       (mips_elf_final_processing): Likewise.
+       (mips_nop_opcode): Likewise.
+       (mips_handle_align): Likewise.
+       (md_show_usage): Handle microMIPS options.
+       * symbols.c (TC_LABEL_IS_LOCAL): New macro.
+       (S_IS_LOCAL): Add a TC_LABEL_IS_LOCAL check.
+
+       * doc/as.texinfo (Target MIPS options): Add -mmicromips and
+       -mno-micromips.
+       (-mmicromips, -mno-micromips): New options.
+       * doc/c-mips.texi (-mmicromips, -mno-micromips): New options.
+       (MIPS ISA): Document .set micromips and .set nomicromips.
+       (MIPS insn): Update for microMIPS support.
+
+2011-07-24  Maciej W. Rozycki  <macro@codesourcery.com>
+
+       * config/tc-mips.c (mips_ip): Make a copy of the instruction's
+       mnemonic and use it for further processing.
+
+2011-07-24  Maciej W. Rozycki  <macro@codesourcery.com>
+
+       * config/tc-mips.c (can_swap_branch_p): Adjust for the rename of
+       INSN_TRAP to INSN_NO_DELAY_SLOT.  Remove the check for INSN_SYNC
+       as well as explicit checks for ERET and DERET when scheduling
+       branch delay slots.
+
+2011-07-22  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * config/tc-i386.c (cpu_arch): Add k1om.
+       (i386_align_code): Handle PROCESSOR_K1OM.
+       (check_cpu_arch_compatible): Check EM_K1OM.
+       (i386_arch): Handle Intel K1OM.
+       (i386_mach): Return bfd_mach_k1om for Intel K1OM.
+       (i386_target_format): Return ELF_TARGET_K1OM_FORMAT for Intel
+       K1OM.
+
+       * config/tc-i386.h (ELF_TARGET_K1OM_FORMAT): New.
+       (processor_type): Add PROCESSOR_K1OM.
+
+       * doc/c-i386.texi: Document k1om.
+
+2011-07-18  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * doc/c-i386.texi: Fix a typo.
+
+2011-07-06  Aurelien Jarno  <aurelien@aurel32.net>
+
+       * config/tc-mips.c (append_insn): delete prev_pinfo2 and pinfo2.
+
+2011-07-04  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * config/tc-mips.c (gpr_read_mask, gpr_write_mask): Fix handling
+       of register 0.
+
+2011-07-04  Maciej W. Rozycki  <macro@codesourcery.com>
+
+       * config/tc-mips.c (append_insn): Make sure DWARF-2 location
+       information is properly adjusted for branches that get swapped.
+
+2011-07-03  Samuel Thibault  <samuel.thibault@gnu.org>
+           Thomas Schwinge  <thomas@schwinge.name>
+
+       PR binutils/12913
+       * config/obj-elf.c (obj_elf_type): Use ELFOSABI_GNU name instead of
+       ELFOSABI_LINUX alias.
+       * config/tc-ia64.c: Likewise.
+
+2011-06-30  Paul Carroll  <pcarroll@codesourcery.com>
+
+       * config/tc-arm.c (do_t_add_sub): Only allow LSL shifts of less
+       than 4 in Thumb mode.
+
+2011-06-30  Nick Clifton  <nickc@redhat.com>
+
+       PR gas/12848
+       * config/tc-arm.c (BAD_RANGE): New error message define.
+       (md_apply_fix): Use it.
+       Fix range check for thumb branch instructions.
+
+2011-06-29  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * config/tc-mips.c (append_method): New enum.
+       (can_swap_branch_p, get_append_method): New functions.
+       (append_insn): Use get_append_method to decide how the instruction
+       should be added.
+
+2011-06-29  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * config/tc-mips.c (append_insn): Remove bogus goto.
+
+2011-06-29  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * config/tc-mips.c (append_insn): Always clear the history after an
+       unconditional branch.
+
+2011-06-29  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * config/tc-mips.c (find_altered_mips16_opcode): New function.
+       (append_insn): Use it.
+
+2011-06-29  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * config/tc-mips.c (insn_uses_reg): Delete.
+       (gpr_read_mask, gpr_write_mask): New functions.
+       (fpr_read_mask, fpr_write_mask): Likewise.
+       (insns_between, nops_for_vr4130, append_insn): Use them.
+
+2011-06-29  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * config/tc-mips.c (md_mips_end): Call mips_emit_delays.
+
+2011-06-29  Dave Martin  <dave.martin@linaro.org>
+
+       PR gas/12931
+       * config/tc-arm.c (mapping_state): When changing to ARM or THUMB
+       state set the minimum required alignment of the section.
+
+2011-06-29  Tristan Gingold  <gingold@adacore.com>
+
+       * config/tc-i386.c (i386_mach): Convert to ISO-C.
+       (md_begin, pe_directive_secrel, md_estimate_size_before_relax): Ditto.
+       (md_convert_frag, md_apply_fix, md_undefined_symbol): Ditto.
+       (md_section_align, tc_gen_reloc): Ditto.
+
+2011-06-28  Tristan Gingold  <gingold@adacore.com>
+
+       * config/tc-alpha.c (s_alpha_pdesc): Fix indentation. Do not
+       generate dummy fix.
+
+2011-06-28  Tristan Gingold  <gingold@adacore.com>
+
+       * config/tc-alpha.c (load_expression): Use alloca instead of xmalloc.
+       (emit_jsrjmp): Ditto.
+       (tc_gen_reloc): Ditto.
+
+2011-06-28  Tristan Gingold  <gingold@adacore.com>
+
+       * config/tc-alpha.c (alpha_evax_proc_hash): Remove.
+       (alpha_evax_proc_data): New variable.
+       (s_alpha_ent): Prevent nested function.  Remove has_insert call.
+       (s_alpha_pdesc): Do not call demand_empty_rest_of_line in case of
+       error.  Do not search in the hash table.  Check if match with .ent.
+       (s_alpha_name): Remove unused variable.
+       (md_begin): Remove initialization of alpha_evax_proc_hash.
+
+2011-06-27  Tristan Gingold  <gingold@adacore.com>
+
+       * config/tc-alpha.c (add_to_link_pool): Remove basesym parameter.
+       Locally declare basesym.  Add comments.  Do not set literal_pool_size.
+       (load_expression): Adjust call to add_to_link_pool.
+       (s_alpha_pdesc): Define pdesc symbol using dot.
+       Do not set literal_pool_size.
+       (s_alpha_end): Use NULL instead of 0.
+
+2011-06-27  Tristan Gingold  <gingold@adacore.com>
+
+       * config/obj-evax.c (evax_frob_file_before_adjust): Add comments.
+       Fix style.
+       * config/obj-evax.h (struct alpha_linkage_fixups): Remove seg
+       field.  Add comments.
+       (obj_symbol_type, object_headers, OBJ_SYMFIELD_TYPE): Remove
+
+2011-06-26  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * config/tc-mips.c (fix_24k_record_store_info): If the previous
+       instruction was a store, and the next instructions are unknown,
+       assume the worst.
+
 2011-06-25  Richard Sandiford  <rdsandiford@googlemail.com>
 
        PR gas/12915
This page took 0.026893 seconds and 4 git commands to generate.