include/opcode/
[external/binutils.git] / gas / ChangeLog
index 0641b1c..b201962 100644 (file)
@@ -1,3 +1,60 @@
+2013-08-03  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * config/tc-mips.c (match_int_operand): Use mips_int_operand_min
+       and mips_int_operand_max.
+       (mips16_immed_operand, mips16_immed_operands, MIPS16_NUM_IMMED):
+       Delete.
+       (mips16_immed_operand, mips16_immed_in_range_p): New functions.
+       (mips16_immed, mips16_extended_frag): Use them.  Use mips_int_operand
+       instead of mips16_immed_operand.
+
+2013-08-03  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * config/tc-mips.c (mips16_macro): Don't use move_register.
+       (mips16_ip): Allow macros to use 'p'.
+
+2013-08-01  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * config/tc-mips.c (MAX_OPERANDS): New macro.
+       (mips_operand_array): New structure.
+       (mips_operands, mips16_operands, micromips_operands): New arrays.
+       (micromips_to_32_reg_b_map, micromips_to_32_reg_c_map)
+       (micromips_to_32_reg_e_map, micromips_to_32_reg_f_map)
+       (micromips_to_32_reg_g_map, micromips_to_32_reg_l_map)
+       (micromips_to_32_reg_q_map): Delete.
+       (insn_operands, insn_opno, insn_extract_operand): New functions.
+       (validate_mips_insn): Take a mips_operand_array as argument and
+       use it to build up a list of operands.  Extend to handle INSN_MACRO
+       and MIPS16.
+       (validate_mips16_insn): New function.
+       (validate_micromips_insn): Take a mips_operand_array as argument.
+       Handle INSN_MACRO.
+       (md_begin): Initialize mips_operands, mips16_operands and
+       micromips_operands.  Call validate_mips_insn and
+       validate_micromips_insn for macro instructions too.
+       Call validate_mips16_insn for MIPS16 instructions.
+       (insn_read_mask, insn_write_mask, operand_reg_mask, insn_reg_mask):
+       New functions.
+       (gpr_read_mask, gpr_write_mask, fpr_read_mask, fpr_write_mask): Use
+       them.  Handle INSN_UDI.
+       (get_append_method): Use gpr_read_mask.
+
+2013-08-01  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * config/tc-mips.c (compact_branch_p, uncond_branch_p): Use the same
+       flags for MIPS16 and non-MIPS16 instructions.
+       (gpr_mod_mask): Move the INSN2_MOD_SP case outside the micromips block.
+       (gpr_read_mask): Use INSN2_READ_GPR_31 for MIPS16 instructions too.
+       (gpr_write_mask): Remove MIPS16_INSN_WRITE_SP handling.
+       (can_swap_branch_p, get_append_method): Use the same flags for MIPS16
+       and non-MIPS16 instructions.  Fix formatting.
+
+2013-08-01  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * config/tc-mips.c (reg_needs_delay): Move later in file.
+       Use gpr_write_mask.
+       (insns_between): Use gpr_read_mask instead of EXTRACT_OPERAND.
+
 2013-07-26  Sergey Guriev  <sergey.s.guriev@intel.com>
            Alexander Ivchenko  <alexander.ivchenko@intel.com>
            Maxim Kuznetsov  <maxim.kuznetsov@intel.com>