X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gas%2FChangeLog;h=01621747154c7dc5e29dcd06543335ea0b7a530c;hb=ab90248154ba05dc800c480712c3cb03eb33b135;hp=7f7d0e879b07269293c8646863c5ff907ec2fd73;hpb=f40da81ba51cd6e300f929ef29f14865a3e7bfcd;p=deliverable%2Fbinutils-gdb.git diff --git a/gas/ChangeLog b/gas/ChangeLog index 7f7d0e879b..0162174715 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,141 @@ +2013-07-14 Richard Sandiford + + * 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 + + * config/tc-mips.c (mips16_macro_build): Remove 'Y' case. + +2013-07-14 Richard Sandiford + + * config/tc-mips.c (macro_build): Take an int for "C", "k", "\\" + and "~". + (macro): Update accordingly. + +2013-07-14 Richard Sandiford + + * 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 + + * config/tc-mips.c (mips16_ip): Handle "I". + +2013-07-12 Maciej W. Rozycki + + * 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 + + * configure.com: Define HAVE_SYS_TYPES_H and HAVE_UNISTD_H + +2013-07-08 Richard Sandiford + + * 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 + + * 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 + + * 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 + + * 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 + + * config/tc-mips.c (validate_mips_insn, validate_micromips_insn): + (mips_ip, mips16_ip): Handle "+i". + +2013-07-07 Richard Sandiford + + * 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 + + * config/tc-mips.c (validate_mips_insn, validate_micromips_insn) + (mips_ip): Remove "+D" and "+T" handling. + +2013-07-05 Andreas Krebbel + + * config/tc-s390.c (md_gather_operands, md_apply_fix): Support new + relocs. + +2013-07-03 Marcus Shawcroft + + * config/tc-aarch64.c (reloc_table): Merge got_prel19 into got. + +2013-07-02 Marcus Shawcroft + + * config/tc-aarch64.c (md_apply_fix): Reorder case values. + (aarch64_force_relocation): Likewise. + 2013-07-02 Alan Modra * config/tc-ppc.c (ppc_elf_adjust_symtab): Don't make .TOC. weak.