+2013-07-14 Richard Sandiford <rdsandiford@googlemail.com>
+
+ * config/tc-mips.c (validate_mips_insn): Move further up file.
+ Add insn_bits and decode_operand arguments. Use the mips_operand
+ fields to work out which bits an operand occupies. Detect double
+ definitions.
+ (validate_micromips_insn): Move further up file. Call into
+ validate_mips_insn.
+
+2013-07-14 Richard Sandiford <rdsandiford@googlemail.com>
+
+ * config/tc-mips.c (mips16_macro_build): Remove 'Y' case.
+
+2013-07-14 Richard Sandiford <rdsandiford@googlemail.com>
+
+ * config/tc-mips.c (macro_build): Take an int for "C", "k", "\\"
+ and "~".
+ (macro): Update accordingly.
+
+2013-07-14 Richard Sandiford <rdsandiford@googlemail.com>
+
+ * config/tc-mips.c (imm_expr, imm2_expr, offset_expr): Tweak commentary.
+ (imm_reloc): Delete.
+ (md_assemble): Remove imm_reloc handling.
+ (mips_ip): Update commentary. Use offset_expr and offset_reloc
+ rather than imm_expr and imm_reloc for 'i', 'j' and 'u'.
+ Use a temporary array rather than imm_reloc when parsing
+ constant expressions. Remove imm_reloc initialization.
+ (mips16_ip): Update commentary. Use offset_expr and offset_reloc
+ for the relaxable field. Use a relax_char variable to track the
+ type of this field. Remove imm_reloc initialization.
+
+2013-07-14 Richard Sandiford <rdsandiford@googlemail.com>
+
+ * config/tc-mips.c (mips16_ip): Handle "I".
+
+2013-07-12 Maciej W. Rozycki <macro@codesourcery.com>
+
+ * config/tc-mips.c (mips_flag_nan2008): New variable.
+ (options): Add OPTION_NAN enum value.
+ (md_longopts): Handle it.
+ (md_parse_option): Likewise.
+ (s_nan): New function.
+ (mips_elf_final_processing): Handle EF_MIPS_NAN2008.
+ (md_show_usage): Add -mnan.
+
+ * doc/as.texinfo (Overview): Add -mnan.
+ * doc/c-mips.texi (MIPS Opts): Document -mnan.
+ (MIPS NaN Encodings): New node. Document .nan directive.
+ (MIPS-Dependent): List the new node.
+
+2013-07-09 Tristan Gingold <gingold@adacore.com>
+
+ * configure.com: Define HAVE_SYS_TYPES_H and HAVE_UNISTD_H
+
+2013-07-08 Richard Sandiford <rdsandiford@googlemail.com>
+
+ * config/tc-mips.c (mips_ip): Unconditionally parse an expression
+ for 'A' and assume that the constant has been elided if the result
+ is an O_register.
+
+2013-07-07 Richard Sandiford <rdsandiford@googlemail.com>
+
+ * config/tc-mips.c (gprel16_reloc_p): New function.
+ (macro_read_relocs): Assume BFD_RELOC_LO16 if all relocs are
+ BFD_RELOC_UNUSED.
+ (offset_high_part, small_offset_p): New functions.
+ (nacro): Use them. Remove *_OB and *_DOB cases. For single-
+ register load and store macros, handle the 16-bit offset case first.
+ If a 16-bit offset is not suitable for the instruction we're
+ generating, load it into the temporary register using
+ ADDRESS_ADDI_INSN. Make the M_LI_DD code fall through into the
+ M_L_DAB code once the address has been constructed. For double load
+ and store macros, again handle the 16-bit offset case first.
+ If the second register cannot be accessed from the same high
+ part as the first, load it into AT using ADDRESS_ADDI_INSN.
+ Fix the handling of LD in cases where the first register is the
+ same as the base. Also handle the case where the offset is
+ not 16 bits and the second register cannot be accessed from the
+ same high part as the first. For unaligned loads and stores,
+ fuse the offbits == 12 and old "ab" handling. Apply this handling
+ whenever the second offset needs a different high part from the first.
+ Construct the offset using ADDRESS_ADDI_INSN where possible,
+ for offbits == 16 as well as offbits == 12. Use offset_reloc
+ when constructing the individual loads and stores.
+ (mips_ip): Set up imm_expr, imm2_expr, offset_expr, imm_reloc
+ and offset_reloc before matching against a particular opcode.
+ Handle elided 'A' constants. Allow 'A' constants to use
+ relocation operators.
+
+2013-07-07 Richard Sandiford <rdsandiford@googlemail.com>
+
+ * config/tc-mips.c (validate_mips_insn): Remove "[" and "]" handling.
+ (mips_ip): Likewise. Do not set is_mdmx for INSN_5400 instructions.
+ Check constraints on the VR5400 RZU.OB, SLL.OB and SRL.OB instructions.
+
+2013-07-07 Richard Sandiford <rdsandiford@googlemail.com>
+
+ * config/tc-mips.c (mips_ip): Preserve the real bit number for "+p".
+ Require the msb to be <= 31 for "+s". Check that the size is <= 31
+ for both "+s" and "+S".
+
+2013-07-07 Richard Sandiford <rdsandiford@googlemail.com>
+
+ * config/tc-mips.c (validate_mips_insn, validate_micromips_insn):
+ (mips_ip, mips16_ip): Handle "+i".
+
+2013-07-07 Richard Sandiford <rdsandiford@googlemail.com>
+
+ * config/tc-mips.c (mips32_to_micromips_reg_h_map): Delete.
+ (micromips_to_32_reg_h_map): Rename to...
+ (micromips_to_32_reg_h_map1): ...this.
+ (micromips_to_32_reg_i_map): Rename to...
+ (micromips_to_32_reg_h_map2): ...this.
+ (mips_lookup_reg_pair): New function.
+ (gpr_write_mask, macro): Adjust after above renaming.
+ (validate_micromips_insn): Remove "mi" handling.
+ (mips_ip): Likewise. Parse both registers in a pair for "mh".
+
+2013-07-07 Richard Sandiford <rdsandiford@googlemail.com>
+
+ * config/tc-mips.c (validate_mips_insn, validate_micromips_insn)
+ (mips_ip): Remove "+D" and "+T" handling.
+
+2013-07-05 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
+
+ * config/tc-s390.c (md_gather_operands, md_apply_fix): Support new
+ relocs.
+
+2013-07-03 Marcus Shawcroft <marcus.shawcroft@arm.com>
+
+ * config/tc-aarch64.c (reloc_table): Merge got_prel19 into got.
+
+2013-07-02 Marcus Shawcroft <marcus.shawcroft@arm.com>
+
+ * config/tc-aarch64.c (md_apply_fix): Reorder case values.
+ (aarch64_force_relocation): Likewise.
+
2013-07-02 Alan Modra <amodra@gmail.com>
* config/tc-ppc.c (ppc_elf_adjust_symtab): Don't make .TOC. weak.