2007-11-19 Bob Wilson * dwarf2dbg.c (dwarf2_emit_label): Use dwarf2_consume_line_info. 2007-11-19 Bob Wilson * dwarf2dbg.c (dwarf2_consume_line_info): New. (dwarf2_emit_insn): Use it here. (dwarf2_directive_loc): Fix check for consecutive .loc directives when debug_type is DEBUG_DWARF2. * dwarf2dbg.h (dwarf2_consume_line_info): New prototype. * config/tc-ia64.c (ia64_flush_insns): Call dwarf2_consume_line_info. (md_assemble): Likewise. 2007-11-17 Thiemo Seufer * config/tc-mips.c (md_parse_option): Match mips_optimize to the -O option supplied, but still keep mips_optimize == 2 as default value. 2007-11-17 Thiemo Seufer * doc/as.texinfo: Document the new attribute value. 2007-11-16 Eric B. Weddington * config/tc-avr.c (mcu_types): Add ATmega32HVB device. * doc/c-avr.texi: Likewise. 2007-11-16 Eric B. Weddington * config/tc-avr.c (mcu_types): Add ATmega1284P device. * doc/c-avr.texi: Likewise. 2007-11-14 Tristan Gingold * config/tc-ia64.c (AR_RUC): Defined. (ar): Add "ar.ruc". (specify_resource): Handle AR_RUC like AR_ITC. 2007-11-13 Nick Clifton * config/tc-mn10300.c (mn10300_force_relocation): Force a reloc to be generated for alignment fixups. * config/tc-mn10300.h (TC_FORCE_RELOCATION): Call mn10300_force_relocation. 2007-11-12 Nick Clifton PR gas/5269 * config/tc-frv.c (md_show_usage): Rewrite usage description to make it easier to translate. * gas/po/gas.pot: Regenerate. 2007-11-12 Tristan Gingold * config/tc-ppc.c (md_assemble): If -mregnames, when parsing PPC_OPERAND_CR always parse as expression to allow register name followed by an expression. 2007-11-09 H.J. Lu * config/tc-i386.c (match_template): Re-order suffix check. 2007-11-07 Bob Wilson * config/tc-xtensa.c (relaxable_section): Check for .eh_frame. 2007-11-07 Eric B. Weddington * config/tc-avr.c (mcu_types): Add ATtiny88 device. * doc/c-avr.texi: Likewise. 2007-11-07 Anatoly Sokolov * config/tc-avr.c (mcu_types): Add new devices: ATmega48P, ATmega88P, ATmega168P, Atmega328P * doc/c-avr.texi: Document new devices. 2007-11-07 Tristan Gingold * config/tc-ppc.c (md_apply_fix): For PPC_TOC16 on XCOFF, uses offset within the TOC instead of the VMA. 2007-11-06 Paul Brook * config/tc-arm.c (do_mull): Allow overlapping Rm for armv6. 2007-11-06 Nick Clifton * ehopt.c (check_eh_frame): If md_allow_eh_opt is defined, invoke it to see if the optimizations should be applied. * config/tc-mn10300.h (md_allow_eh_opt): Define. Only allow call frame optimization if linker relaxation is not enabled. 2007-11-05 Danny Smith * read.c (ALIGN_LIMIT): Rename to ... (TC_ALIGN_LIMIT): Guard against prior definition. * config/tc-i386.h (TC_ALIGN_LIMIT)[TE_PE]: Define. 2007-11-01 Sterling Augustine * config/tc-xtensa.c (xtensa_symbol_new_hook): New. (xtensa_mark_difference_of_two_symbols): New. (xtensa_post_relax_hook): Call xtensa_mark_difference_of_two_symbols. * config/tc-xtensa.h (xtensa_symfield_type): Add next_expr_symbol. (tc_symbol_new_hook): Define. 2007-11-01 H.J. Lu * config/tc-i386.c (md_assemble): Replace no_xsuf with no_ldsuf. (match_template): Likewise. 2007-11-01 H.J. Lu * config/tc-i386.h (LONG_DOUBLE_MNEM_SUFFIX): Use a non-ascii letter. 2007-11-01 H.J. Lu * config/tc-i386.c (process_suffix): Check addrprefixop0 to see if the address size override prefix changes the size of the first operand. (check_byte_reg): Don't warn if byteokintel is set. (check_long_reg): Set i.suffix to QWORD_MNEM_SUFFIX if toqword is set. (check_qword_reg): Set i.suffix to LONG_MNEM_SUFFIX if todword is set. 2007-10-31 Eric B. Weddington * config/tc-avr.c (mcu_types): Remove devices that were never produced: attiny10, atmega83, atmega85, atmega603. * doc/c-avr.texi: Likewise. 2007-10-30 Nick Clifton * config/tc-mn10300.c (tc_gen_reloc): Fix test that decides when sym_diff relocs should be generated. (md_apply_fix): Skip R_MN10300_ALIGN relocs. (mn10300_fix_adjustable): Do not adjust R_MN10300_ALIGN relocs. (mn10300_handle_align): New function. Generate R_MN10300_ALIGN relocs to record alignment requests. * config/tc-mn10300.h (TC_FORCE_RELOCATION_SUB_SAME): Also force R_MN10300_ALIGN relocs. (HANDLE_ALIGN): Define. Call mn10300_handle_align. 2007-10-30 Nick Clifton * doc/as.texinfo (Section): Replace "subsegment" with "subsection". 2007-10-27 H.J. Lu PR gas/5221 * config/obj-elf.c (obj_elf_section): Handle optional parameters for .pushsection. * doc/as.texinfo: Document optional parameters for .pushsection. 2007-10-24 H.J. Lu * configure.in: Move AM_PROG_LIBTOOL after AC_GNU_SOURCE. * configure: Regenerated. 2007-10-24 Alan Modra * Makefile.am (INCLUDES, DEP_INCLUDES): Remove -D_GNU_SOURCE. Run "make dep-am". * configure.in: Invoke AC_GNU_SOURCE. * Makefile.in: Regenerate. * config.in: Regenerate. * configure: Regenerate. 2007-10-19 Nick Clifton * expr.c (expr): Test md_allow_local_subtract (if defined) before allowing the evaluation of an expression involving two symbols defined in the same section. * doc/internals.texi (md_allow_local_subtract): Document the new macro. * config/tc-mn10300.h (md_allow_local_subtract): Define. (RELAX_EXPANSION_POSSIBLE): Define. (MAX_RELOC_EXPANSION): Define. (TC_FRAG_TYPE): Define. * config/tc-mn10300.c (md_assemble): Mark fragments as containing code. (tc_gen_reloc): Return an array of relocs. If necessary generate two relocs to handle an expressions involving the difference of two symbols. (mn10300_fix_adjustable): Do not test TC_FORCE_RELOCATION_LOCAL when then fixup is not pc-relative. (mn10300_allow_local_subtract): New function. Determine when it is safe to compute the difference between two symbols at assemble time. 2007-10-19 Alan Modra * config/tc-ppc.c (ppc_parse_name): Skip leading '%'. (md_assemble): When parsing PPC_OPERAND_CR, add '%' to set of chars that can start a name. 2007-10-18 Carlos O'Donell * config/tc-hppa.c (pa_ip): Fix comment typo. (pa_comm): Likewise. 2007-10-18 Nick Clifton PR gas/5172 * config/tc-arc.c (md_estimate_size_before_relax): Change error message. (md_convert_frag): Just call abort. * config/tc-i860.c (md_estimate_size_before_relax): Change error message. * config/tc-i860.h (md_convert_frag): Just call abort. * config/tc-ip2k.c (md_estimate_size_before_relax): Change error message. (md_convert_frag): Just call abort. * config/tc-m68k.c (m68k_ip): Do not attempt translation of architecture names. PR gas/5174 * config/tc-arm.c: Fix formatting and spelling errors. PR gas/5175 * config/tc-xc16x.c: Fix formatting and internationalization. * po/gas.pot: Regenerate. 2007-10-17 Nick Clifton PR gas/5173 * as.h (ieee_md_atof, vax_md_atof): New prototypes. * read.c (s_float_space): Allow a zero length return from md_atof if the error message has been set. (float_cons): Likewise. * config/atof-ieee.c (ieee_md_atof): New function. Performs the md_atof() function in a generic way for IEEE using targets. * config/atof-vax.c (md_atof): Rename to vax_md_atof. Use the same error message as ieee_md_atof. * tc-alpha.c (md_atof): Use ieee_md_atof. Remove #define of vax_md_atof. * tc-arc.c (md_atof): Use ieee_md_atof. * tc-arm.c (md_atof): Use sizeof (LITTLENUM_TYPE) instead of the constant 2. Use a precision of 5 for the 'x' and 'p' types. * tc-avr.c (md_atof): Use ieee_md_atof. * tc-bfin.c (md_atof): Use ieee_md_atof. * tc-cr16.c (md_atof): Use ieee_md_atof. * tc-crx.c (md_atof): Use ieee_md_atof. * tc-d10v.c (md_atof): Use ieee_md_atof. * tc-d30v.c (md_atof): Use ieee_md_atof. * tc-dlx.c (md_atof): Use ieee_md_atof. * tc-fr30.c (md_atof): Use ieee_md_atof. * tc-frv.c (md_atof): Use ieee_md_atof. * tc-h8300.c (md_atof): Use ieee_md_atof. * tc-hppa.c (md_atof): Use ieee_md_atof. * tc-i370.c (md_atof): Use ieee_md_atof. (i370_dc): Convert the 'E' type to 'f' before calling md_atof. * tc-i386.c (md_atof): Use ieee_md_atof. * tc-i860.c (md_atof): Use ieee_md_atof. * tc-i960.c (md_atof): Use ieee_md_atof. * tc-ia64.c (md_atof): Use the same error message as ieee_md_atof. * tc-ip2k.c (md_atof): Use ieee_md_atof. * tc-iq2000.c (md_atof): Use ieee_md_atof. * tc-m32c.c (md_atof): Use ieee_md_atof. * tc-m32r.c (md_atof): Use ieee_md_atof. * tc-m68hc11.c (md_atof): Use ieee_md_atof. * tc-m68k.c (md_atof): Use ieee_md_atof. * tc-maxq.c (md_atof): Use ieee_md_atof. * tc-mcore.c (md_atof): Use ieee_md_atof. * tc-mep.c (md_atof): Use ieee_md_atof. * tc-mips.c (md_atof): Use ieee_md_atof. * tc-mmix.c (md_atof): Use ieee_md_atof. * tc-mn10200.c (md_atof): Use ieee_md_atof. * tc-mn10300.c (md_atof): Use ieee_md_atof. * tc-msp430.c (md_atof): Use ieee_md_atof. * tc-mt.c (md_atof): Use ieee_md_atof. * tc-ns32k.c (md_atof): Use ieee_md_atof. * tc-openrisc.c (md_atof): Use ieee_md_atof. * tc-or32.c (md_atof): Use ieee_md_atof. * tc-pdp11.c (md_atof): New function. Call vax_md_atof. * tc-pj.c (md_atof): Use ieee_md_atof. * tc-ppc.c (md_atof): Use ieee_md_atof. * tc-s390.c (md_atof): Use ieee_md_atof. * tc-score.c (md_atof): Use ieee_md_atof. * tc-sh.c (md_atof): Use ieee_md_atof. * tc-sparc.c (md_atof): Use ieee_md_atof. * tc-spu.c (md_atof): Use ieee_md_atof. * tc-tic30.c (md_atof): Use the same error message as ieee_md_atof. * tc-tic4x.c (md_atof): Use the same error message as ieee_md_atof. * tc-tic54.c (md_atof): Use ieee_md_atof. * tc-v850.c (md_atof): Use ieee_md_atof. * tc-vax.c (md_atof): New function. Call vax_md_atof. * tc-xc16x.c (md_atof): Use ieee_md_atof. * tc-xstormy16.c (md_atof): Use ieee_md_atof. * tc-xtensa.c (md_atof): Use ieee_md_atof. * tc-z8k.c (md_atof): Use ieee_md_atof. * doc/internals.texi: Update description of md_atof function. * po/gas.pot: Regenerate. 2007-10-16 Bob Wilson * doc/as.texinfo (Overview): Add Xtensa --rename-section option. 2007-10-16 Nick Clifton * config/obj-elf.c (obj_elf_type): Accept "common" as a valid symbol type. * doc/as.texinfo (.type): Document the types accepted by the type pseudo op, including "common". 2007-10-15 Peter Bergner * config/tc-ppc.c (ppc_setup_opcodes): Verify instructions are sorted according to major opcode number. 2007-10-15 Alan Modra * read.c (do_s_func): Check asprintf return status. * stabs.c (stabs_generate_asm_func): Likewise. (stabs_generate_asm_endfunc): Likewise. 2007-10-12 H.J. Lu * config/tc-i386.c (process_operands): Simplify implicit xmm0 handling. 2007-10-12 H.J. Lu * config/tc-i386.c (process_operands): Check the firstxmm0 field in opcode_modifier for instruction with a implicit xmm0 as the first operand. 2007-10-12 Eric B. Weddington * config/tc-avr.c (mcu_types): Add new devices: AT90PWM2B, AT90PWM3B. * doc/c-avr.texi: Document new devices. 2007-10-12 M R Swami Reddy * config/tc-cr16.c: Update the md_relax_table for 1 word b instruction range information. 2007-10-12 Daniel Jacobowitz * doc/as.texinfo (Object Attributes): New chapter. (Pseudo Ops): Document .gnu_attribute. (LNS directives): Correct .loc_mark_labels documentation. 2007-10-11 Nick Clifton * config/obj-elf.c (obj_elf_section): When pushing a section, if there is a comma then the following argument must be a subsection number. 2007-10-11 H.J. Lu * doc/c-i386.texi: Update which instruction's operands are swapped. 2007-10-11 Nick Clifton PR gas/5161 * config/tc-ia64.c: Allow for translations of error and warning messages. * po/gas.pot: Regenerate. PR gas/5158 * config/tc-h8300.c (tc_gen_reloc): Allow for translation of error message. * po/gas.pot: Regenerate. PR gas/5155 * config/tc-msp430.c: Fix spelling typos. 2007-10-11 Nick Clifton * doc/as.texinfo (Type): Fix typo: STT_FUNC not STT_FUNCTION. 2007-10-08 Maciej W. Rozycki * config/tc-mips.c (AT): Rename to... (ATREG): ... this. (AT): New definition. (mips_set_options): Rename "noat" to "at"; change the type. (mips_opts): Update accordingly. (append_insn): Likewise. (macro_build_ldst_constoffset): Likewise. (load_address): Likewise. (macro, macro2): Likewise. (s_mipsset): Handle ".set at=REG". Update handling of ".set at" and ".set noat". 2007-10-08 Nick Clifton * doc/as.texinfo (Previous): Clarify explanation of the behaviour of this pseudo-op and add a couple of examples. 2007-10-08 Nick Clifton PR gas/5121 gas/5122 gas/5123 * Makefile.am (CFILES): Add cgen.c (TARGET_CPU_CFILES): Add tc-iq2000.c, tc-maxq.c, tc-mt.c, tc-tic4x.c and xtensa-relax.c. (TARGET_CPU_HFILES): Add tc-iq2000.h, tc-maxq.h, tc-mt.h, tc-tic4x.h and xtensa-relax.h. (TARG_ENV_HFILES): Remove te-aux.h, te-delta.h, te-delt88.h, te-ic960.h, te-linux.h. Add te-aix5.h, te-armeabi.h, te-freebsd.h, te-gnu.h, te-interix.h, te-vxworks.h. (CONFIG_ATOF_CFILES): New variable. (POTFILES): Add CONFIG_ATOF_CFILES to dependencies. Fix typo with dependency upon TARG_ENV_HFILES. (DEPTC): Do not put "#include opcodes/-desc.h" into cgen-desc.h when foo-desc.h does not exit. Run make dep-am. * Makefile.in: Regenerate. * doc/Makefile.in: Regenerate. * po/POTFILES.in: Regenerate. PR gas/5124 gas/5125 * po/es.po: Regenerate. * po/fr.po: Regenerate. * po/gas.pot: Regenerate. * po/rw.po: Regenerate. * po/tr.po: Regenerate. * config/obj-elf.c (obj_elf_vtable_inherit): Allow for translation of error messages. PR gas/5126 * config/obj-som.c: Likewise. PR gas/5129 * config/tc-arc.c: Likewise. PR gas/5131 gas/5132 * config/tc-arm.c: Likewise. PR gas/5137 * config/tc-bfin.c: Likewise. PR gas/5143 * config/tc-frv.c: Likewise. PR gas/5142 * config/tc-dlx.c: Likewise. 2007-10-08 Eric B. Weddington * config/tc-avr.c (mcu_types): Add new devices: ATtiny43U, ATtiny48, AT90PWM216, AT90PWM316. * doc/c-avr.texi: Document new devices. 2007-10-08 Nick Clifton PR gas/5133 * config/tc-arm.c (md_apply_fix): Correct error message. PR gas/5134 * config/tc-arm.c (md_apply_fix): Likewise. PR gas/5136 * config/tc-bfin.c (md_apply_fix): Fix error message. PR gas/5135 (Expr_Node_Gen_Reloc_R): Fix spelling typos in error messages. 2007-10-05 H.J. Lu * config/tc-i386.c (build_modrm_byte): Check the first 2 8bit immediate operands directly for instructions with 4 operands. 2007-10-04 H.J. Lu PR gas/5109 * config/tc-i386.c (process_suffix): Clear QWORD suffix if it is ignored in Intel mode. 2007-10-04 Helge Deller * read.c (potable): Add string8, string16, string32 and string64. Add bit size for stringer function. (stringer_append_char): New. (stringer): Use stringer_append_char(). * config/obj-coff.c (obj_coff_ident): Add bit size for stringer function. * config/obj-elf.c (obj_elf_ident): Likewise. * config/tc-alpha.c (s_alpha_stringer): Likewise. * config/tc-dlx.c (dlx_pseudo_table): Likewise. * config/tc-hppa.c (pa_stringer): Likewise. * config/tc-ia64.c (md_pseudo_table, pseudo_opcode): Likewise. * config/tc-m68hc11.c (md_pseudo_table): Likewise. * config/tc-mcore.c (md_pseudo_table): Likewise. * config/tc-mips.c (mips_pseudo_table): Likewise. * config/tc-spu.c (md_pseudo_table): Likewise. * config/tc-s390.c (md_pseudo_table): Likewise. Replace '2' by '1'. * doc/as.texinfo (ABORT): Fix identing. (String): Document new string8, string16, string32, string64 functions. * NEWS: Mention the new feature. 2007-10-03 Nick Clifton PR gas/5078 * config/tc-avr.c (avr_get_constant): Extend error message to mention that the constant must be positive. 2007-10-03 Nick Clifton * config/tc-avr.c (avr_get_constant): PR gas/5089 * config/tc-arm.c (s_arm_unwind_handlerdata): Fix spelling typo. PR gas/5090 (md_assemble): Fix spelling typo. 2007-10-03 Alan Modra PR 4303 * stabs.c (aout_process_stab): Set BSF_DEBUGGING. 2007-10-01 M R Swami Reddy * config/tc-cr16.c: Replaced 'tabs' with white spaces and added R_CR16_DISP8 as default reloc type for b instructions. 2007-09-30 H.J. Lu PR gas/5080 * config/tc-i386.c (check_long_reg): Also handle cvttss2si. (check_qword_reg): Also handle cvttsd2si. 2007-09-27 Kazu Hirata * config/m68k-parse.h (m68k_register): Use MBO instead of MBB. (last_movec_reg): Change to MBO. * config/tc-m68k.c (fido_ctrl): Use MBO instead of MBB. (m68k_ip): Use MBO instead of MBO. (init_table): Use MBO instead of MBO. Add an entry for mbo. 2007-09-26 Jan Beulich * config/tc-i386.c (build_modrm_byte): Also check for RegEip when considering IP-relative addressing. 2007-09-26 Jan Beulich * config/tc-i386.h (md_register_arithmetic): Define. * config/tc-ia64.h (md_register_arithmetic): Likewise. * doc/internals.texi: Document md_register_arithmetic. * expr.c (make_expr_symbol): Force O_register expressions into reg_section. (expr): Provide default for md_register_arithmetic. Don't resolve adding/subtracting constants to/from registers if md_register_arithmetic is zero. 2007-09-26 Jan Beulich * dw2gencfi.c: Conditionalize whole body upon TARGET_USE_CFIPOP. (cfi_finish): Add second empty instance. 2007-09-26 Jan Beulich * config/tc-ia64.c (dot_pred_rel): Replace specialized handling with simple call to parse_operand. 2007-09-26 Jan Beulich * config/tc-i386.c (NUM_FLAG_CODE): Remove. 2007-09-26 Jan Beulich * as.c (itbl_parse): Remove #define. (struct itbl_file_list): Move down and ... (itbl_files): .. conditionalize upon HAVE_ITBL_CPU. (show_usage): Conditionalize printing of --itbl option upon HAVE_ITBL_CPU. (parse_args): Conditionalize handling of -t/--itbl options upon HAVE_ITBL_CPU. Remove OPTION_INSTTBL and replace its use with 't'. 2007-09-25 H.J. Lu * config/tc-i386.c (output_insn): Use i.tm.opcode_length to check opcode length. 2007-09-25 Nathan Sidwell * config/tc-m68k.c (LONG_BRANCH_VIA_COND): New. (BRANCHBWPL, FRAG_VAR_SIZE): New. (md_relax_table): Add BRANCHBWPL entries. (m68k_ip): Choose BRANCHBWPL relaxation if necessary. (md_assemble): Use FRAG_VAR_SIZE. (md_convert_frag_1): Add BRANCHBWPL cases. (md_estimate_size_before_relaz): Likewise. 2007-09-24 Carlos O'Donell * config/tc-mips.c (s_align): Set max_alignment to 28. 2007-09-20 H.J. Lu PR 658 * config/tc-i386.c (SCALE1_WHEN_NO_INDEX): Removed. (set_allow_index_reg): New. (allow_index_reg): Likewise. (md_pseudo_table): Add "allow_index_reg" and "disallow_index_reg". (build_modrm_byte): Set i.sib.index to NO_INDEX_REGISTER for fake index registers. (i386_scale): Updated. (i386_index_check): Support fake index registers. (parse_real_register): Return NULL on eiz/riz if fake index registers aren't allowed. 2007-09-19 Nick Clifton * config/tc-h8300.c (md_apply_fix): Do not abort or handle 8 byte fixups. 2007-09-19 Bob Wilson * doc/c-xtensa.texi (Xtensa Immediate Relaxation): Fix "addi" typo. 2007-09-18 Bernd Schmidt * config/bfin-parse.y (asm_1): Slightly improve error messages for "reg += const;". 2007-09-18 Alan Modra PR gas/5026 * read.c (emit_expr): Only use long long if required and available. 2007-09-17 H.J. Lu * config/tc-i386.c (baseindex): Removed. (build_modrm_byte): Check reg_num for RIP register instead of reg_type. (i386_index_check): Likewise. 2007-09-17 H.J. Lu PR gas/5035 * config/obj-coff.c (obj_coff_endef): Remove checking size of def_symbol_in_progress. 2007-09-17 Evandro Menezes PR gas/5026 * read.c (emit_expr): Use unsigned long long values in warning message about truncated expressions. 2007-09-17 H.J. Lu * config/tc-i386.c (intel_e04): Revert the last change. 2007-09-17 Nick Clifton * po/es.po: Updated Spanish translation. 2007-09-15 H.J. Lu PR gas/5034 * config/tc-i386.c (intel_e04): Return 1 if cur_token.code is T_NIL. 2007-09-14 H.J. Lu * config/tc-i386.c (build_modrm_byte): Adjust comment line wrap. 2007-09-14 H.J. Lu * config/tc-i386.c (build_modrm_byte): Use (A || B) instead of (A || B) != 0. 2007-09-14 H.J. Lu * config/tc-i386.c (build_modrm_byte): Adjust indentation. 2007-09-14 Michael Meissner Dwarakanath Rajagopal Tony Linthicum * NEWS: Add SSE5 support to NEWS file. * config/tc-i386.h (drex_byte): Add fields to allow process_drex and build_modrm_byte to communicate. (DREX_OC0): New SSE5 macro. (DREX_OC0_MASK): Ditto. (DREX_OC1): Ditto. (DREX_OC1_MASK): Ditto. (DREX_XMEM_X1_X2_X2): Ditto. (DREX_X1_XMEM_X2_X2): Ditto. (DREX_X1_XMEM_X2_X1: Ditto. (DREX_X1_X2_XMEM_X1: Ditto. (DREX_XMEM_X1_X2): Ditto. (DREX_X1_XMEM_X2): Ditto. (drex_byte): New structure to describe the DREX byte. * config/tc-i386.c (process_drex): New function to handle SSE5 DREX bits. (build_modrm_byte): Use the information cached away in process_drex in the case of DREX instructions. (i386_insn): Add drex field. (pi): Add debugging of drex field. (md_assemble): Treat SSE5 like SSE3 in instructions with an immediate byte. Move REX field to DREX if this is a DREX instruction. (process_operands): Add SSE5 support. (build_modrm_byte): Ditto. (output_insn): Ditto. (cpu_arch): Ditto. (i386_align_code): Ditto. 2007-09-12 Jan Beulich * config/tc-i386.c (md_assemble): Move handling of extrq/insertq after generic operand swapping, and swap only the immediate operands. 2007-09-11 Nathan Sidwell * config/tc-m68k.c (m68k_ip): Add mcfisa_c case. (m68k_elf_final_processing): Add EF_M68K_CF_ISA_C_NODIV. 2007-09-09 H.J. Lu * tc-i386.c (output_insn): Only check SSE4.2 and ABM for 3 byte opcode. 2007-09-08 H.J. Lu * config/tc-i386.c (cpu_flags_check_x64): Renamed to ... (cpu_flags_check_cpu64): This. Inline. (uints_all_zero): New. (uints_set): Likewise (uints_equal): Likewise (UINTS_ALL_ZERO): Likewise (UINTS_SET): Likewise (UINTS_CLEAR): Likewise (UINTS_EQUAL): Likewise (cpu_flags_and): Likewise. (cpu_flags_or): Likewise. (operand_type_and): Likewise. (operand_type_or): Likewise. (operand_type_xor): Likewise. (cpu_flags_not): Inline and use switch instead of loop. (cpu_flags_match): Updated. (operand_type_match): Likewise. (smallest_imm_type): Likewise. (set_cpu_arch): Likewise. (pt): Likewise. (md_assemble): Likewise. (parse_insn): Likewise. (optimize_imm): Likewise. (match_template): Likewise. (process_suffix): Likewise. (update_imm): Likewise. (finalize_imm): Likewise. (process_operands): Likewise. (build_modrm_byte): Likewise. (i386_immediate): Likewise. (i386_displacement): Likewise. (i386_index_check): Likewise. (i386_operand): Likewise. (i386_target_format): Likewise. (intel_e11): Likewise. (operand_type): Remove implicitregister. (operand_type_check): Updated. Inline. (cpu_flags_all_zero): Removed. (operand_type_all_zero): Likewise. (i386_array_biop): Likewise. (cpu_flags_biop): Likewise. (operand_type_biop): Likewise. 2007-09-08 H.J. Lu * Makefile.am: Run "make dep-am". * Makefile.in: Regenerate. 2007-09-08 H.J. Lu * configure.in (AC_CHECK_HEADERS): Add limits.h. * configure: Regenerated. * config.in: Likewise. * config/tc-i386.c: Include "opcodes/i386-init.h". (_i386_insn): Use i386_operand_type for types. (cpu_arch_flags): Updated to new types with bitfield. (cpu_arch_tune_flags): Likewise. (cpu_arch_isa_flags): Likewise. (cpu_arch): Likewise. (i386_align_code): Likewise. (set_code_flag): Likewise. (set_16bit_gcc_code_flag): Likewise. (set_cpu_arch): Likewise. (md_assemble): Likewise. (parse_insn): Likewise. (process_operands): Likewise. (output_branch): Likewise. (output_jump): Likewise. (parse_real_register): Likewise. (mode_from_disp_size): Likewise. (smallest_imm_type): Likewise. (pi): Likewise. (type_names): Likewise. (pt): Likewise. (pte): Likewise. (swap_2_operands): Likewise. (optimize_imm): Likewise. (optimize_disp): Likewise. (match_template): Likewise. (check_string): Likewise. (process_suffix): Likewise. (check_byte_reg): Likewise. (check_long_reg): Likewise. (check_qword_reg): Likewise. (check_word_reg): Likewise. (finalize_imm): Likewise. (build_modrm_byte): Likewise. (output_insn): Likewise. (disp_size): Likewise. (imm_size): Likewise. (output_disp): Likewise. (output_imm): Likewise. (gotrel): Likewise. (i386_immediate): Likewise. (i386_displacement): Likewise. (i386_index_check): Likewise. (i386_operand): Likewise. (parse_real_register): Likewise. (i386_intel_operand): Likewise. (intel_e09): Likewise. (intel_bracket_expr): Likewise. (intel_e11): Likewise. (cpu_arch_flags_not): New. (cpu_flags_check_x64): Likewise. (cpu_flags_all_zero): Likewise. (cpu_flags_not): Likewise. (i386_cpu_flags_biop): Likewise. (cpu_flags_biop): Likewise. (cpu_flags_match); Likewise. (acc32): New. (acc64): Likewise. (control): Likewise. (reg16_inoutportreg): Likewise. (disp16): Likewise. (disp32): Likewise. (disp32s): Likewise. (disp16_32): Likewise. (anydisp): Likewise. (baseindex): Likewise. (regxmm): Likewise. (imm8): Likewise. (imm8s): Likewise. (imm16): Likewise. (imm32): Likewise. (imm32s): Likewise. (imm64): Likewise. (imm16_32): Likewise. (imm16_32s): Likewise. (imm16_32_32s): Likewise. (operand_type): Likewise. (operand_type_check): Likewise. (operand_type_match): Likewise. (operand_type_register_match): Likewise. (update_imm): Likewise. (set_code_flag): Also update cpu_arch_flags_not. (set_16bit_gcc_code_flag): Likewise. (md_begin): Likewise. (parse_insn): Use cpu_flags_check_x64 to check 64bit support. Use cpu_flags_match to match instructions. (i386_target_format): Update cpu_arch_isa_flags and cpu_arch_tune_flags to i386_cpu_flags type with bitfield. (smallest_imm_type): Check cpu_arch_tune to tune for i486. (match_template): Don't initialize overlap0, overlap1, overlap2, overlap3 and operand_types. (process_suffix): Handle crc32 with 64bit register. (MATCH): Removed. (CONSISTENT_REGISTER_MATCH): Likewise. * config/tc-i386.h (arch_entry): Updated to i386_cpu_flags type. 2007-09-06 H.J. Lu * config/tc-i386.c (match_template): Handle invlpga, vmload, vmrun and vmsave in SVME. (process_suffix): Likewise. 2007-09-05 H.J. Lu * config/tc-i386.c (i386_index_check): Don't use RegRex on the reg_type field. (parse_real_register): Use `||' instead of `|'. 2007-09-04 H.J. Lu * config/tc-i386.c (process_operands): Remove segment override check on SVME instructions. (i386_index_check): Remove memory operand check on SVME instructions. 2007-09-04 Alan Modra * config/tc-spu.c (struct spu_insn): Delete "flag". Add "reloc". (md_assemble): Update init of insn. Use insn.reloc instead of calculating from flag. (get_imm): Set reloc rather than flag. (calcop): Formatting. 2007-08-29 Daniel Jacobowitz * dwarf2dbg.c (dwarf2_directive_loc): Emit duplicate .loc directives. 2007-08-28 Daniel Jacobowitz * doc/c-arc.texi: Fix typo. 2007-08-28 H.J. Lu * config/tc-i386.c (process_suffix): Handle cmpxchg8b in Intel mode. 2007-08-28 Nathan Sidwell * config/tc-m68k.c (mcf52235_ctrl): Add cache registers. (mcf5253_ctrl): Add RAMBAR, MBAR, MBAR2. (mcf5407_ctrl): New. (m68k_cpus): Adjust 5407 entry. 2007-08-28 Maxim Kuvyrkov * config/tc-m68k.c (mcf51qe_ctrl): Define 51QE control registers. (m68k_cpus): Define 51QE cpu. 2007-08-28 Mark Shinwell Joseph Myers * as.c (main): Flush stderr before printing listings to ensure consistent output order across platforms. 2007-08-28 Robert Sebastian Gerus * configure.tgt: Add support for i[3-7]86-*-dragonfly*. 2007-08-24 Joseph Myers Paul Brook * remap.c: New. * as.h (remap_debug_filename, add_debug_prefix_map): Declare. * as.c (show_usage): Document --debug-prefix-map option. (parse_args): Handle --debug-prefix-map. * dwarf2dbg.c (out_file_list, out_debug_info): Remap debug paths. * stabs.c (stabs_generate_asm_file): Remap debug paths. * Makefile.am (GAS_CFILES): Add remap.c (GENERIC_OBJS): Add remap.o. Regenerate dependencies. * Makefile.in: Regenerate. * doc/as.texinfo (--debug-prefix-map): Document. 2007-08-24 Aurelien Jarno * config/tc-arm.c (md_apply_fix): Cast bfd_vma values to long before printing them. 2007-08-24 Anders Waldenborg Alan Modra * config/tc-i386.c (lex_got): Don't scan past a comma. 2007-08-23 Ben Elliston * config/tc-ppc.c (parse_cpu): Handle "750cl". (pre_defined_registers): Add "gqr0" to "gqr7", "gqr.0" to "gqr.7". (md_show_usage): Document -m750cl. (md_assemble): Handle two delimiters in succession (eg. `),'). * doc/c-ppc.texi (PowerPC-Opts): Document -m750cl. * testsuite/gas/ppc/ppc.exp: Run ppc70ps dump tests. * testsuite/gas/ppc/ppc750ps.s: New file. * testsuite/gas/ppc/ppc750ps.d: Likewise. 2007-08-23 Ben Elliston * doc/c-arm.texi (ARM Directives): Move brackets out of @vars. 2007-08-17 Alan Modra PR gas/4079 * config/tc-i386.c (x86_cons): Complain about invalid @got etc. expressions. (i386_immediate): Detect and complain about more cases of invalid immediate expressions. Return failure rather than converting them to zero. (i386_displacement): Likewise. 2007-08-17 Alan Modra * po/Make-in: Add --msgid-bugs-address to xgettext invocation. 2007-08-14 Andreas Schwab * config/tc-ia64.c (tc_gen_reloc): Return NULL if relocation is unrepresentable. 2007-08-12 Matthias Klose * doc/Makefile.am (AM_MAKEINFOFLAGS, TEXI2DVI): Include $(top_srcdir)/../../bfd/doc. * doc/Makefile.in: Regenerate. 2007-08-10 Nick Clifton * NEWS: Add a marker for the 2.18 features. 2007-08-09 Paul Brook * config/tc-arm.c (relaxed_symbol_addr): Compensate for alignment. 2007-08-09 H.J. Lu * config/tc-i386.c (check_byte_reg): Support pextrb and pinsrb. 2007-07-29 H.J. Lu * config/tc-i386.c (check_long_reg): Allow cvtss2si to convert DWORD memory to Reg64 in Intel synax. (check_qword_reg): Allow cvtsd2si to convert QWORD memory to Reg32 in Intel syntax. 2007-07-25 Sterling Augustine * config/tc-xtensa.c (xtensa_extui_opcode): New. (xg_expand_assembly_insn): Check for invalid extui operands. (md_begin): Initialize xtensa_extui_opcode. 2007-07-24 Nick Clifton * config/tc-mep.h (skip_whitespace): Remove definition. 2007-07-23 H.J. Lu * config/tc-i386.c (cpu_arch): Change i386 to PROCESSOR_I386. (f32_15): Removed. (jump_31): New. (f32_patt): Remove f32_15. (f16_patt): Likewise. (i386_align_code): Updated to alt_long_patt for 64bit by default. * config/tc-i386.h (processor_type): Add PROCESSOR_I386. 2007-07-23 Evandro Menezes * config/tc-i386.c (i386_align_code): Enable alignment up to MAX_MEM_FOR_RS_ALIGN_CODE bytes. Remove special treatment for K8. * config/tc-i386.h (MAX_MEM_FOR_RS_ALIGN_CODE): Changed to 31. 2007-07-20 Nick Clifton * app.c (do_scrub_chars): Provide a one character buffer to hold a pushed back newline at the end of an unterminated quoted string. 2007-07-14 Nick Clifton * config/tc-arm.c (create_register_alias): Return a boolean rather than an integer. Check the return value of insert_reg_alias and do not continue to create aliases once an insertion has failed. (s_unreq): Delete the all-upper-case and all-lower-case alternatives as well. 2007-07-12 Kai Tietz * symbols.c: Print bfd_hostptr_t to file via fprintf_vma. * write.c: Likewise. 2007-07-11 Daniel Jacobowitz * config/tc-mips.c (mips_dwarf2_format, mips_dwarf2_addr_size): Use HAVE_64BIT_SYMBOLS. 2007-07-04 Richard Sandiford * config/tc-mips.c (mips_cpu_info_table): Add new entries for {24k,24ke,34k,74k}f{2_1,1_1,x}. Also add an entry for 74kf3_2. Deprecate *x and *fx. * doc/c-mips.texi: Document the new CPU arguments. Deprecate *x and *fx. 2007-07-04 H.J. Lu * config/obj-coff.h (x86_64_target_format): Renamed to ... (i386_target_format): This (TARGET_FORMAT): Use i386_target_format. * config/tc-i386.c (x86_64_target_format): Removed. (i386_target_format): Handle PE formats. 2007-07-04 Nick Clifton * symbols.c (symbol_relc_make_value): Use bfd_sprintf_vma in order to get the right length of printed value. 2007-07-03 Nick Clifton * COPYING: Replace with GPLv3 text. * app.c: Update copyright notice to refer to GPLv3. * as.c, as.h, asintl.h, atof_generic.c, bignum.h, bit_fix.h, cgen.c, cond.c, debug.c, depend.c, dw2gencfi.c, dw2gencfi.h, dwarf2dbg.c, dwarf2dbg.h, ecoff.c, ecoff.h, ehopt.c, emul.h, emul_target.h, expr.c, expr.h, flonum-copy.c, flonum.h, flonum-konst.c, frags.c, frags.h, hash.c, hash.h, input-file.c, input-file.h, input-scrub.c, ibtl-lex.h, itbl-lex.l, itbl-ops.c, itbl-ops.h, itbl-parse.y, listing.c, listing.h, literal.c, macro.c, messages.c, obj.h, output-file.c, output-file.h, read.c, read.h, sb.c, sb,h, stabs.c, struc-symbol.h, subsegs.c, subsegs.h, symbols.c, symbols.h, tc.h, write.c, write.h, config/aout_gnu.h, config/config/atof-ieee.c, config/atof-vax.c, config/bfin-aux.h, config/bfin-defs.h, config/bfin-lex.l, config/bfin-parse.y, config/itbl-mips.h, config/m68k-parse.h, config/m68k-parse.y, config/obj-aout.c, config/obj-aout.h, config/obj-coff.c, config/obj-coff.h, config/obj-ecoff.c, config/obj-ecoff.h, config/obj-elf.c, config/obj-elf.h, config/obj-evax.c, config/obj-evax.h, config/obj-multi.h, config/obj-som.c, config/obj-som.h, config/tc-alpha.c, config/tc-alpha.h, config/tc-arc.c, config/tc-arc.h, config/tc-arm.c, config/tc-arm.h, config/tc-avr.c, config/tc-avr.h, config/tc-bfin.c, config/tc-bfin.h, config/tc-cr16.c, config/tc-cr16.h, config/tc-cris.c, config/tc-cris.h, config/tc-crx.c, config/tc-crx.h, config/tc-d10v.c, config/tc-d10v.h, config/tc-d30v.c, config/tc-d30v.h, config/tc-dlx.c, config/tc-dlx.h, config/tc-fr30.c, config/tc-fr30.h, config/tc-frv.c, config/tc-frv.h, config/tc-generic.c, config/tc-generic.h, config/tc-h8300.c, config/tc-h8300.h, config/tc-hppa.c, config/tc-hppa.h, config/tc-i370.c, config/tc-i370.h, config/tc-i386.c, config/tc-i386.h, config/tc-i860.c, config/tc-i860.h, config/tc-i960.c, config/tc-i960.h, config/tc-ia64.c, config/tc-ia64.h, config/tc-ip2k.c, config/tc-ip2k.h, config/tc-iq2000.c, config/tc-iq2000.h, config/tc-m32c.c, config/tc-m32c.h, config/tc-m32r.c, config/tc-m32r.h, config/tc-m68hc11.c, config/tc-m68hc11.h, config/tc-m68k.c, config/tc-m68k.h, config/tc-maxq.c, config/tc-maxq.h, config/tc-mcore.c, config/tc-mcore.h, config/tc-mep.c, config/tc-mep.h, config/tc-mips.c, config/tc-mips.h, config/tc-mmix.c, config/tc-mmix.h, config/tc-mn10200.c, config/tc-mn10200.h, config/tc-mn10300.c, config/tc-mn10300.h, config/tc-msp430.c, config/tc-msp430.h, config/tc-mt.c, config/tc-mt.h, config/tc-ns32k.c, config/tc-ms32k.h, config/tc-openrisc.c, config/tc-openrisc.h, config/tc-or32.c, config/tc-or32.h, config/tc-pdp11.c, config/tc-pdp11.h, config/tc-pj.c, config/tc-pj.h, config/tc-ppc.c, config/tc-ppc.h, config/tc-s390.c, config/tc-s390.h, config/tc-score.c, config/tc-score.h, config/tc-sh64.c, config/tc-sh64.h, config/tc-sh.c, config/tc-sh.h, config/tc-sparc.c, config/tc-sparc.h, config/tc-spu.c, config/tc-spu.h, config/tc-tic30.c, config/tc-tic30.h, config/tc-tic4x.c, config/tc-tic4x.h, config/tc-tic54x.c, config/tc-tic54x.h, config/tc-v850.c, config/tc-v850.h, config/tc-vax.c, config/tc-vax.h, config/tc-xc16x.c, config/tc-x16x.h, config/tc-xstormy16.c, config/tc-xstormy16.h, config/tc-xtensa.c, config/tc-xtensa.h, config/tc-z80.c, config/tc-z80.h, config/tc-z8k.c, config/tc-z8k.h, config/te-386bsd.h, config/te-freebsd.h, config/te-hppa.h, config/te-irix.h, config/te-netware.h, config/te-sparcaout.h, config/te-tmips.h, config/te-vxworks.h, config/vax-inst.h, config/xtensa-istack.h, config/xtensa-relax.c, config/xtensa-relax.h: Likewise. * flonum-mult.c: Likewise, and also correct typo referring to non-existant GNU Assembler General Public License. * config/tc-m68851.h: Likewise. * NEWS: Mention the new license. Also note where the 2.17 release happened. * config/e-crisaout.c: Add copyright header. * config/e-criself.c, config/e-i386aout.c, config/e-i386coff.c, config/e-i386elf.c, config/e-mipscoff.c, config/e-mipself.c, config/obj-multi.c, config/te-aix5.h, config/te-armeabi.h, config/te-armlinuxeabi.h, config/te-dynix.h, config/te-epoc-pe.h, config/te-generic.h, config/te-gnu.h, config/te-go32.h, config/te-hppa64.h, config/te-hppalinux64.h, config/te-hpux.h, config/te-i386aix.h, config/te-ia64aix.h, config/te-interix.h, config/te-linux.h, config/te-lnews.h, config/te-lynx.h, config/te-mach.h, config/te-macos.h, config/te-nbsd532.h, config/te-nbsd.h, config/te-pc532mach.h, config/te-pe.h, config/te-pep.h, config/te-psos.h, config/te-riscix.h, config/te-sun3.h, config/te-svr4.h, config/te-symbian.h, config/te-wince-pe.h: Likewise. 2007-07-03 Nathan Sidwell * config/tc-m68k.c (m68k_ip): Add j & K operand types. (install_operand): Add E encoding. (md_begin): Check and skip initial '.' arg character. (get_num): Add 0..511 case. 2007-07-03 Alan Modra PR 4713 * config/obj-elf.c (elf_ecoff_set_ext): Make static when OBJ_MAYBE_ELF. * config/obj-elf.h (obj_ecoff_set_ext): Comment. 2007-07-03 Mikkel Lauritsen PR 4722 * app.c (do_scrub_chars ): Check for output buffer full after memcpy. 2007-07-02 Joseph Myers * config/tc-mips.c (s_dtprelword, s_dtpreldword, s_dtprel_internal): New. (mips_pseudo_table): Add .dtprelword and .dtpreldword. (md_apply_fix): Handle BFD_RELOC_MIPS_TLS_DTPREL32 and BFD_RELOC_MIPS_TLS_DTPREL64. 2007-07-02 Alan Modra * Makefile.am: Run "make dep-am". * Makefile.in: Regenerate. * aclocal.m4: Regenerate. * config.in: Regenerate. * doc/Makefile.in: Regenerate. * po/POTFILES.in: Regenerate. * po/gas.pot: Regenerate. 2007-07-02 Alan Modra * config/tc-ppc.c (ppc_pe_section): Comment out code assigning coff section flag values to bfd section flag. 2007-06-30 H.J. Lu * aclocal.m4: Regenerated. * doc/Makefile.in: Likewise. * Makefile.in: Likewise. 2007-06-29 Joseph Myers * as.c (main): Only call create_obj_attrs_section if IS_ELF. 2007-06-29 Joseph Myers * as.c (create_obj_attrs_section): New. (main): Call create_obj_attrs_section for ELF. * read.c (s_gnu_attribute, skip_whitespace, skip_past_char, skip_past_comma, s_vendor_attribute): New. (potable): Add gnu_attribute for ELF. * read.h (s_vendor_attribute): Declare. * config/tc-arm.c (s_arm_eabi_attribute): Replace by wrapper round s_vendor_attribute. (aeabi_set_public_attributes): Update for new attributes interfaces. (arm_md_end): Remove attributes contents setting now done generically. 2007-06-29 M R Swami Reddy * Makefile.am: Add CR16 related entry. * Makefile.in: Regenerate. * config/tc-cr16.h: New file * config/tc-cr16.c: New file * doc/c-cr16.texi: New file for cr16 * doc/all.texi: Entry for cr16 * doc/Makefile.am: Added c-cr16.texi * doc/Makefile.in: Regenerate * doc/as.texinfo: Entry for CR16 target * NEWS: Announce the support for the new target. 2007-06-26 Paul Brook * config/tc-arm.c (parse_operands): Accept generic coprocessor regs for OP_RVC. (reg_names): Add fpinst, pfinst2, mvfr0 and mvfr1. 2007-06-25 H.J. Lu * config/tc-i386.c (process_operands): Replace regKludge with RegKludge. 2007-06-25 Richard Sandiford * config/tc-mips.h (TC_SYMFIELD_TYPE): New. * config/tc-mips.c (append_insn): Record which symbols have R_MIPS16_26 relocations against them. (mips_fix_adjustable): Don't reduce relocations against such symbols. 2007-06-22 Sterling Augustine * config/tc-xtensa.c (xg_assembly_relax): Comment termination rules. (frag_format_size): Handle RELAX_IMMED_STEP3. (xtensa_relax_frag, md_convert_frag): Likewise. * config/tc-xtensa.h (xtensa_relax_statesE): Add RELAX_IMMED_STEP3. (RELAX_IMMED_MAXSTEPS): Adjust. * config/xtensa-relax.c (widen_spec_list): Add transitions from wide branches to branch-over-jumps. (build_transition): Handle wide branches in transition patterns. 2007-06-22 H.J. Lu * config/tc-i386.c (disp_size): New. (imm_size): Likewise. (output_disp): Use disp_size and imm_size. (output_imm): Use imm_size. 2007-06-19 Sterling Augustine * config/tc-xtensa.h (struct xtensa_frag_type): Update comment about use of literal_frag field. * config/tc-xtensa.c (xtensa_mark_literal_pool_location): Record frag in the literal_frag field. (xtensa_move_literals): Use it here instead of searching. Update literal_frag field with new value. 2007-06-14 Paul Brook * config/tc-arm.c (do_t_mov_cmp): Handle shift by register and narrow shift by immediate. 2007-06-14 H.J. Lu * Makefile.am (ACLOCAL_AMFLAGS): Add -I ../config -I ../bfd. * acinclude.m4: Don't include m4 files. (BFD_BINARY_FOPEN): Removed. Remove libtool kludge. * Makefile.in: Regenerated. * doc/Makefile.in: Likewise. * aclocal.m4: Likewise. * configure: Likewise. 2007-06-11 Sterling Augustine Bob Wilson * config/tc-xtensa.c (XTENSA_PROP_INSN_NO_TRANSFORM): Renamed to... (XTENSA_PROP_NO_TRANSFORM): ...this. (frag_flags_struct): Move is_no_transform out of the insn sub-struct. (xtensa_mark_frags_for_org): New. (xtensa_handle_align): Set RELAX_ORG frag subtype for rs_org. (xtensa_post_relax_hook): Call xtensa_mark_frags_for_org. (get_frag_property_flags): Adjust reference to is_no_transform flag. (xtensa_frag_flags_combinable): Likewise. (frag_flags_to_number): Likewise. Use XTENSA_PROP_NO_TRANSFORM. * config/tc-xtensa.h (xtensa_relax_statesE): Add RELAX_ORG. 2007-06-06 Paul Brook * config/tc-arm.c (s_align): Pad code sections appropriately. 2007-06-05 Paul Brook * config/tc-arm.c (insns): Correct Thumb-2 ldrd/strd opcodes. 2007-06-05 Nick Clifton PR gas/4587 * config/tc-sparc.c (sparc_ip): Terminate tls_ops array. 2007-06-05 Alan Modra * config/tc-spu.c (spu_cons): Use deferred_expression. Handle number@ppu. (tc_gen_reloc): Abort if neither addsy or subsy is set. (md_apply_fix): Don't attempt to resolve SPU_PPU relocs. * config/tc-spu.h (md_operand): Handle @ppu without sym. 2007-05-31 Paul Brook * config/tc-arm.c (insns): Allow strex on M profile cores. 2007-05-29 David S. Miller Jakub Jelinek PR gas/4558 * config/tc-sparc.c (md_apply_fix): Fix relocation overflow checks for BFD_RELOC_SPARC_WDISP16 and BFD_RELOC_SPARC_WDISP19. 2007-05-29 Alan Modra * config/tc-spu.h: Wrap in #ifndef/#endif. Delete coff macros. 2007-05-29 Alan Modra * config/tc-ppc.c: Convert to ISO C. * config/tc-ppc.c: Likewise. 2007-05-29 Alan Modra * write.h (EXEC_MACHINE_TYPE): Delete. (string_byte_count, section_alignment): Delete. 2007-05-28 Nathan Sidwell * app.c (do_scrub_chars): Cope with \ at end of buffer. 2007-05-26 Alan Modra * config/tc-ppc.c (ppc_insert_operand): Truncate sign bits in top 32 bits of 64 bit value if so doing results in passing range check. Rewrite sign extension fudges similarly. Enable fudges for powerpc64 too. Report user value if range check fails rather than fudged value. Negate PPC_OPERAND_NEGATIVE range rather than value, also to report user value on failure. 2007-03-25 Paul Brook * config/tc-arm.c (T2_SUBS_PC_LR): Define. (do_t_add_sub): Correctly encode subs pc, lr, #const. (do_t_mov_cmp): Correctly encode movs pc, lr. 2007-05-24 Steve Ellcey * Makefile.in: Regnerate. * configure: Regenerate. * aclocal.m4: Regenerate. * doc/Makefile.in: Regenerate. 2007-05-22 Bob Wilson * doc/c-xtensa.texi (Xtensa Automatic Alignment): Remove statements and index entries about automatic alignment of ENTRY instructions. 2007-05-22 Nick Clifton * doc/as.texinfo: Use @copying around the copyright notice. 2007-05-18 Joseph Myers * config/tc-mips.c (s_mipsset): Use generic s_set for directives containing a comma. 2007-05-17 H.J. Lu PR gas/4517 2003-06-05 Michal Ludvig * doc/as.texinfo: Document new directives: .cfi_restore, .cfi_undefined, .cfi_same_value, .cfi_return_column, .cfi_remember_state and .cfi_restore_state. 2007-05-17 Nathan Sidwell * config/tc-m68k.c (md_apply_fix): Show value of out of range fixups in error message. (md_conver_frag_1): Propagate the fix source location and use as_bad_where rather than fatal, for better error messages. 2007-05-16 Paul Brook * config/tc-arm.c (v7m_psrs): Add uppercase PSR names and xpsr. 2007-05-15 Mark Shinwell * app.c (do_scrub_chars): Don't damage \@ pseudo-variables. 2007-05-15 Vincent Riviere PR gas/3041 * config/tc-m68k.c (relaxable_symbol): Make sure that the correct addend is stored for relocs against weak symbols. (md_apply_fix): So not loose track of addend for relocs against weak symbols. 2007-05-14 Thiemo Seufer * config/tc-mips.c (md_parse_option): Fix parsing of -O option. 2007-05-14 Mei Ligang * config/tc-score.c (data_op2, validate_immediate): Fix bug for addri, addri.c, subi, and subi.c when immediate number is hex. (score_insns): Remove subis and subis.c. (do_sub_rdi16): Delete. 2007-05-11 Alan Modra * config/tc-spu.c (md_pseudo_table): Add int, long, quad. Call spu_cons for word. (md_assemble): Tidy use of insn.flag. (get_imm): Likewise. Handle uppercase input too. (spu_cons): New function. * config/tc-spu.h (tc_fix_adjustable): Don't adjust SPU_PPU relocs. (TC_FORCE_RELOCATION): Don't resolve them either. 2007-05-05 Mark Shinwell * config/tc-arm.c (md_apply_fix): Generate more accurate diagnostic when 8-bit immediate range is exceeded for BFD_RELOC_ARM_OFFSET_IMM8. 2007-05-04 Alan Modra PR gas/4460 * config/tc-i386.c (lex_got): Don't replace the reloc token with a space if we already have a space. 2007-05-03 H.J. Lu * config/tc-i386.c (match_template): Don't explicitly check suffix for crc32 in Intel mode. (process_suffix): Issue an error for crc32 if the operand size is ambiguous. 2007-05-03 Vincent Riviere Nick Clifton PR gas/3041 * config/tc-m68k.c (relaxable_symbol): Do not relax weak symbols. (tc_gen_reloc): Adjust the addend of relocs against weak symbols. (md_apply_fix): Put zero values into the frags referencing weak symbols. 2007-05-02 Alan Modra PR 4448 * config/tc-ppc.c (ppc_insert_operand): Don't increase min for PPC_OPERAND_PLUS1. 2007-05-01 H.J. Lu * config/tc-i386.c (match_template): Check suffix for crc32 in Intel mdoe. (process_suffix): Default the suffix of 8bit crc32 to BYTE_MNEM_SUFFIX. (check_byte_reg): Skip check for 8bit crc32. 2007-04-30 H.J. Lu * config/tc-i386.c (md_assemble): Use register_prefix in error/warning message. (check_byte_reg): Likewise. (check_long_reg): Likewise. (check_qword_reg): Likewise. (check_word_reg): Likewise. (process_operands): Likewise. 2007-04-30 Alan Modra PR 4436 * config/tc-ppc.c (ppc_insert_operand): Disable range check if min > max. 2007-04-28 Thiemo Seufer * config/tc-mips.c: Fix comment. 2007-04-26 Anatoly Sokolov * config/tc-avr.c (mcu_types): Add support for atmega8hva and atmega16hva devices. Move at90usb82 device to 'avr5' architecture. * doc/c-avr.texi: Document new devices. 2007-04-24 Alan Modra * Makefile.am: Run "make dep-am". * Makefile.in: Regenerate. 2007-04-23 Nathan Sidwell * config/tc-m68k.c (mcf54455_ctrl): New. (HAVE_LONG_DISP, HAVE_LONG_CALL, HAVE_LONG_COND): New. (m68k_archs): Add isac. (m68k_cpus): Add 54455 family. (m68k_ip): Split Bg into Bb, Bs, Bg. (m68k_elf_final_processing): Add ISA_C. * doc/c-m68k.texi (M680x0 Options): Add isac. 2007-04-22 Alan Modra * read.c (read_a_source_file): Skip multiple spaces to cover hack in mmix md_start_line_hook which overwrites a colon with a space. Delete sermon and needless assertion. 2007-04-21 Alan Modra * config/atof-vax.c (atof_vax_sizeof): Change return type to unsigned. (md_atof): Make number_of_chars unsigned. Revert last change. * config/tc-or32.c (md_apply_fix): Delete bogus assertions. * config/tc-sh.c (sh_optimize_expr): Only define for OBJ_ELF. * config/tc-sh.h (md_optimize_expr): Likewise. * config/tc-sh64.c (shmedia_md_pcrel_from_section): Delete bogus assertion. * config/tc-xtensa.c (convert_frag_immed_finish_loop): Likewise. 2007-04-21 Nick Clifton * config/atof-vax.c (md_atof): Fix comparison inside know(). * config/tc-ia64.c (emit_one_bundle): Fix typo. 2007-04-21 Alan Modra * expr.c (expr): Assert on rankarg, not rank which can be unsigned. * read.c (read_a_source_file): Remove buffer_limit[-1] assertion. Don't skip over NUL char. (pseudo_set): Set X_op for registers to O_register. * symbols.c (symbol_clone): Remove assertion that sym is defined. (resolve_symbol_value): Resolve O_register symbols. * config/tc-i386.c (parse_real_register): Don't use i386_float_regtab. Instead find st(0) by hash lookup. * config/tc-ppc.c (ppc_macro): Warning fix. * as.h (ENABLE_CHECKING): Default define to 0. (know): Assert if ENABLE_CHECKING. (struct relax_type): Remove superfluous declaration. * configure.in (--enable-checking): New. * configure: Regenerate. * config.in: Regenerate. * config/tc-ppc.c (ppc_setup_opcodes): Do checks when ENABLE_CHECKING. Check for duplicate powerpc_operands entries. 2007-04-20 Nathan Sidwell * config/tc-m68k.c (mcf5253_ctrl): New. (mcf52223_ctrl): New. (m68k_cpus): Add 5253, 52221, 52223. * config/m68k-parse.h (RAMBAR_ALT): New. * config/tc-m68k.c (mcf5206_ctrl, mcf5307_ctrl): New. (mcf_ctrl, mcf5208_ctrl, mcf5210a_ctrl, mcf5213_ctrl, mcf52235_ctrl, mcf5225_ctrl, mcf5235_ctrl, mcf5271_ctrl, mcf5275_ctrl, mcf5282_ctrl, mcf5329_ctrl, mcf5373_ctrl, mcfv4e_ctrl, mcf5475_ctrl, mcf5485_ctrl): Add RAMBAR synonym for RAMBAR1. (mcf5272_ctrl): Add RAMBAR0, replace add RAMBAR with RAMBAR_ALT. (m68k_cpus): Adjust 5206, 5206e & 5307 entries. (m68k_ip) : Detect when RAMBAR_ALT should be used. Add it to control register mapping. 2007-04-20 Alan Modra * messages.c (as_internal_value_out_of_range): Fix typo in error message. Return after printing domain error. * config/tc-ppc.c (ppc_insert_operand): Preserve low zero bits in max when shifting right. 2007-04-20 Alan Modra * messages.c (as_internal_value_out_of_range): Extend to report errors for values with invalid low bits set. * config/tc-ppc.c (ppc_setup_opcodes): Check powerpc_operands bitm fields. Check that operands and opcode fields are disjoint. (ppc_insert_operand): Check operands using mask rather than bit count. Check low bits too. Handle PPC_OPERAND_PLUS1. Adjust insertion code. (md_apply_fix): Adjust for struct powerpc_operand change. 2007-04-19 Paul Brook * config/tc-arm.c (md_assemble): Only allow 16-bit instructions on Thumb-1. Add sanity check for bogus relaxations. 2007-04-19 Paul Brook * config/tc-arm.c (insns): Allow rsb and rsbs on Thumb-1. 2007-04-19 Alan Modra * Makefile.am: Run "make dep-am". * Makefile.in: Regenerate. 2007-04-19 Nathan Froyd * doc/c-ppc.texi (PowerPC-Opts): Document -me500, -me500x2, -mspe. 2007-04-18 H.J. Lu * doc/c-i386.texi; Document .ssse3, .sse4.1, .sse4.2 and .sse4. 2007-04-18 H.J. Lu * config/tc-i386.c (cpu_arch): Add .sse4.2 and .sse4. (match_template): Handle operand size for crc32 in SSE4.2. (process_suffix): Handle operand type for crc32 in SSE4.2. (output_insn): Support SSE4.2. 2007-04-18 H.J. Lu * config/tc-i386.c (cpu_arch): Add .sse4.1. (process_operands): Adjust implicit operand for blendvpd, blendvps and pblendvb in SSE4.1. (output_insn): Support SSE4.1. 2007-04-18 Paul Brook * config/tc-arm.c (do_t_rsb): Use 16-bit encoding when possible. 2007-04-16 Kaz Kojima * config/tc-sh.c (sh_handle_align): Call as_bad_where instead of as_warn_where for misaligned data. 2007-04-15 Kaz Kojima * config/tc-sh.c (align_test_frag_offset_fixed_p): Handle rs_fill frags. 2007-04-14 Steve Ellcey * Makefile.am: Add ACLOCAL_AMFLAGS. * Makefile.in: Regenerate. 2007-04-14 Kaz Kojima * config/tc-sh.c (align_test_frag_offset_fixed_p): New. (sh_optimize_expr): Likewise. * config/tc-sh.h (md_optimize_expr): Define. (sh_optimize_expr): Prototype. 2007-04-06 Matt Thomas * config/tc-vax.c (vax_cons): Added to support %pcrel{8,16,32}(exp) to emit pcrel relocations by DWARF2 in non-code sections. Borrowed heavily from tc-sparc.c. (vax_cons_fix_new): Likewise. 2007-04-04 Kazu Hirata * config/tc-m68k.c (HAVE_LONG_BRANCH): Add fido_a. 2007-04-04 Paul Brook * config/tc-arm.c (do_neon_ext): Enforce immediate range. (insns): Use I15 for vext. 2007-04-04 Paul Brook * configure.tgt: Loosen checks for arm uclinux eabi targets. 2007-04-02 Sterling Augustine * config/tc-xtensa.c (xtensa_flush_pending_output): Check outputting_stabs_line_debug. 2007-03-26 Anatoly Sokolov * config/tc-avr.c (mcu_types): Add support for at90pwm1, at90usb82, at90usb162, atmega325p, atmega329p, atmega3250p and atmega3290p devices. * doc/c-avr.texi: Document new devices. 2007-04-02 Richard Sandiford * doc/as.texinfo: Add -mvxworks-pic to the list of MIPS options. * doc/c-mips.texi (-KPIC, -mvxworks-pic): Document. * config/tc-mips.c (md_show_usage): Mention -mvxworks-pic. 2007-03-30 Sterling Augustine Bob Wilson * config/tc-xtensa.c (xtensa_move_labels): Remove loops_ok argument. Do not check is_loop_target flag. (xtensa_frob_label): Adjust calls to xtensa_move_labels. (xg_assemble_vliw_tokens): Likewise. Also avoid calling xtensa_move_labels for alignment of loop opcodes. 2007-03-30 H.J. Lu * config/tc-i386.c (process_suffix): Reindent a bit. 2007-03-30 Paul Brook * config/tc-arm.c (encode_thumb2_ldmstm): New function. (do_t_ldmstm): Generate 16-bit push/pop. Use encode_thumb2_ldmstm. (do_t_push_pop): Use encode_thumb2_ldmstm. 2007-03-29 DJ Delorie * config/tc-m32c.c (rl_for, relaxable): Protect argument. (md_relax_table): Add entries for ADJNZ macros. (M32C_Macros): Add ADJNZ macros. (subtype_mappings): Add entries for ADJNZ macros. (insn_to_subtype): Check for adjnz and sbjnz insns. (md_estimate_size_before_relax): Pass insn to insn_to_subtype. (md_convert_frag): Convert adjnz and sbjnz. 2007-03-29 Nick Clifton * itbl-ops.c (itbl_entry): Remove unnecessary and excessively long initialization. * itbl-ops.h (enum e_processor): Initialise the e_nprocs field using ITBL_NUMBER_OF_PROCESSORS. * itbl-parse.y (yyerror): Remove use of redundant macro PARAMS. 2007-03-28 H.J. Lu * config/tc-i386.c (build_modrm_byte): For instructions with 2 register operands, encode destination in i.rm.regmem if its RegMem bit is set. 2007-03-28 Richard Sandiford Phil Edwards * doc/as.texinfo: Put the contents after the title page rather than at the end of the document. 2007-03-27 Alan Modra * NEWS: Mention ".reloc". 2007-03-26 Sterling Augustine * config/tc-xtensa.c (xg_translate_idioms): Allow assembly idioms in FLIX instructions. 2007-03-26 Julian Brown * config/tc-arm.c (arm_it): Add immisfloat field. (parse_qfloat_immediate): Disallow integer syntax for floating-point immediates. Fix hex immediates, handle 0.0 and -0.0 specially. (parse_neon_mov): Set immisfloat bit for operand if it parsed as a float. (neon_cmode_for_move_imm): Reject non-float immediates for float operands. (neon_move_immediate): Pass immisfloat bit to neon_cmode_for_move_imm. 2007-03-26 Julian Brown * doc/c-arm.texi: Add documentation for .dn/.qn directives. 2007-03-26 Alan Modra * doc/as.texinfo (Reloc): Document. * read.c (potable): Add "reloc". (s_reloc): New function. * write.c (reloc_list): New global var. (resolve_reloc_expr_symbols): New function. (write_object_file): Call it. (write_relocs): Process reloc_list. * write.h (struct reloc_list): New. (reloc_list): Declare. 2007-03-24 Paul Brook * config/tc-arm.c (do_t_ldmstm): Error on Thumb-2 addressing modes. 2007-03-24 Paul Brook Mark Shinwell * config/tc-arm.c (operand_parse_code): Add OP_oRRw. (parse_operands): Don't expect comma if first operand missing. Handle OP_oRRw. (do_srs): Encode register number, checking it is r13. Update comment. (insns): Update SRS entries to take a register. 2007-03-23 H.J. Lu * config/tc-i386.c (md_begin): Allow '.' in mnemonic. 2007-03-23 Mark Shinwell * config/tc-arm.c (md_apply_fix): Turn CBZ instructions that attempt to jump to the next instruction into NOPs. 2007-03-23 Alan Modra * config/tc-spu.c: Don't include opcode/spu.h. (md_assemble): Set tc_fix_data.insn_tag and arg_format. (md_apply_fix): Adjust. * config/tc-spu.h: Include opcode/spu.h. (struct tc_fix_info): New. (TC_FIX_TYPE, TC_INIT_FIX_DATA): Adjust. (TC_FORCE_RELOCATION): Define. 2007-03-22 Joseph Myers * doc/as.texinfo: Include VERSION_PACKAGE when reporting version. 2007-03-21 H.J. Lu * config/tc-i386.c (process_suffix): Check 0x90 instead of xchg for xchg %rax,%rax. 2007-03-21 H.J. Lu * config/tc-i386.c: Replace REX_MODE64, REX_EXTX, REX_EXTY and REX_EXTZ with REX_W, REX_R, REX_X and REX_B respectively. 2007-03-21 H.J. Lu PR binutils/4218 * config/tc-i386.c (match_template): Properly handle 64bit mode "xchg %eax, %eax". 2007-03-21 Anton Ertl PR gas/4124 * config/tc-alpha.c (emit_ustX): Fix ustq code generation. 2007-03-21 H.J. Lu * Makefile.am: Run dep-am. * Makefile.in: Regenerated. * config/tc-i386.c: Don't include "opcodes/i386-opc.h". * config/tc-i386.h: Include "opcodes/i386-opc.h". (NOP_OPCODE): Removed. (template): Likewise. 2007-03-21 Andreas Schwab * config/tc-i386.h (NOP_OPCODE): Restore. 2007-03-18 Mark Shinwell * config/tc-arm.c (do_mul): Don't warn about overlapping Rd and Rm operands when assembling for v6 or above. Correctly capitalize register names in the messages. (do_mlas): Likewise. Delete spurious blank line. 2007-03-16 Kazu Hirata * config/tc-m68k.c (m68k_cpus): Add an entry for fidoa. 2007-03-15 H.J. Lu * config/tc-i386.c (md_begin): Use i386_regtab_size to scan i386_regtab. (parse_register): Use i386_regtab_size instead of ARRAY_SIZE on i386_regtab. 2007-03-15 Alexandre Oliva PR gas/4184 * app.c (do_scrub_chars): PUT after setting states. 2007-03-15 H.J. Lu * Makefile.am: Run "make dep-am". * Makefile.in: Regenerated. * config/tc-i386.c: Include "opcodes/i386-opc.h" instead of "opcode/i386.h". (md_begin): Check reg_name != NULL for the last entry in i386_regtab. * config/tc-i386.h: Move many entries to opcode/i386.h and opcodes/i386-opc.h. * configure.in (need_opcodes): Set true for i386. * configure: Regenerated. 2007-03-15 H.J. Lu * Makefile.am (REPORT_BUGS_TO): Removed. (INCLUDES): Remove -DREPORT_BUGS_TO. * Makefile.in: Regenerated. * configure.in (--with-bugurl): Removed. * configure: Regenerated. * doc/Makefile.am (as_TEXINFOS): Remove gasver.texi. (AM_MAKEINFOFLAGS): Add -I ../../bfd/doc. (TEXI2DVI): Likewise. (gasver.texi): Removed. (MOSTLYCLEANFILES): Remove gasver.texi. (as.1): Don't depend on gasver.texi. * doc/Makefile.in: Regenerated. * doc/as.texi: Include bfdver.texi instead of gasver.texi. 2007-03-14 Daniel Jacobowitz * config/tc-arm.c (arm_copy_symbol_attributes): New. * config/tc-arm.h (arm_copy_symbol_attributes): Declare. (TC_COPY_SYMBOL_ATTRIBUTES): Define. * gas/symbols.c (copy_symbol_attributes): Use TC_COPY_SYMBOL_ATTRIBUTES. 2007-03-14 Paul Brook * config/tc-arm.c (T16_32_TAB): Fix dec_sp encoding. 2007-03-14 Alan Modra PR 4029 * write.c (relax_segment): Insert extra alignment padding to break infinite relax loop when given impossible gcc_except_table assembly. 2007-03-12 H.J. Lu * config/tc-i386.c (md_assemble): Use Opcode_XXX instead of XXX on i.tm.base_opcode. (match_template): Likewise. (process_operands): Use ~0x3 mask to match MOV_AX_DISP32. * config/tc-i386.h (Opcode_D): New. (Opcode_FloatR): Likewise. (Opcode_FloatD): Likewise. (D): Redefined. (W): Likewise. (FloatMF): Likewise. (FloatR): Likewise. (FloatD): Likewise. 2007-03-09 Alexandre Oliva * app.c (do_scrub_chars): Recognize comments after # line "file". * read.c (get_linefile_number): New. (s_app_line): Accept ill-formed .linefile lines as comments. 2007-03-09 Alan Modra * config/tc-i386.h (WORKING_DOT_WORD): Define. 2007-03-09 Alexandre Oliva * app.c (do_scrub_chars): Turn #"file"flags into .linefile. * as.h (new_logical_line_flags): New. * input-scrub.c (new_logical_line): Turned into wrapper for... (new_logical_line_flags): this. Handle flags. * read.c (potable): Add linefile. Adjust appline argument. (s_app_file): Fake .appfiles no more. (s_app_line): For .linefile, accept file name and flags. 2007-03-08 Alan Modra * symbols.c (symbol_relc_make_sym): Comment typo fixes. 2007-03-08 Alan Modra * Makefile.am: Run "make dep-am". * Makefile.in: Regenerate. * po/POTFILES.in: Regenerate. 2007-03-07 Joseph Myers * configure.in (REPORT_BUGS_TEXI): Define to Texinfo version of bug-reporting URL. * doc/Makefile.am (gasver.texi): Define BUGURL. * doc/as.texinfo: Use BUGURL. * Makefile.in, configure, doc/Makefile.in: Regenerate. 2007-03-06 Andreas Krebbel * config/tc-s390.c (md_parse_option): z9-ec option added. 2007-03-02 Paul Brook * config/tc-arm.c (relax_immediate): Always return positive values. (relaxed_symbol_addr): New function. (relax_adr, relax_branch): Use it. (arm_relax_frag): Pass strect argument. Adjust infinite loop check. 2007-03-01 Joseph Myers * as.c (parse_args): Update copyright date. 2007-02-28 Nathan Sidwell * configure.tgt (sh-*-uclinux, sh[12]-*-uclinux): Specify as elf. 2007-02-28 Nick Clifton PR gas/3797 * config/tc-d10v.c (do_assemble): Do not generate error messages, just return -1 whenever a problem is encountered. (md_assemble): If do_assemble returns -1 generate a non-fatal error message and return. PR gas/2623 * config/tc-msp430.c (line_separator_char): Change to '{'. 2007-02-27 Alan Modra * config/tc-m68hc11.c (fixup24): Correct fixup size. (build_jump_insn): Likewise. (build_insn): Likewise. (s_m68hc11_relax): Likewise. 2007-02-27 Alan Modra * config/obj-elf.c (elf_frob_file): frag_wane any new frags. 2007-02-25 Mark Shinwell * config/tc-arm.c (do_vfp_nsyn_pop): Use fldmias/fldmiad. 2007-02-23 Alan Modra * config/tc-mn10300.c (md_convert_frag): Correct fixup size. (md_assemble): Likewise. 2007-02-22 Alan Modra * write.c (size_seg): Always clear SEC_RELOC here. (install_reloc): New function, extracted from.. (write_relocs): ..here. Combine RELOC_EXPANSION_POSSIBLE code with !RELOC_EXPANSION_POSSIBLE code. Don't add fr_offset when testing frag size. Set SEC_RELOC here. 2007-02-21 Alan Modra PR 4082 * config/tc-avr.h (TC_FX_SIZE_SLACK): Define. 2007-02-20 Thiemo Seufer * doc/c-mips.texi: Document 74kc, 74kf, 74kx. 2007-02-20 Thiemo Seufer * config/tc-mips.c (mips_cpu_info_table): Add 74K configurations. 2007-02-20 Thiemo Seufer Chao-Ying Fu * config/tc-mips.c (mips_set_options, mips_opts, file_ase_dspr2, ISA_SUPPORTS_DSPR2_ASE, MIPS_CPU_ASE_DSPR2): Add DSP R2 ASE support. (macro_build): Add case '2'. (macro): Expand M_BALIGN to nop, packrl.ph or balign. (validate_mips_insn): Add support for balign instruction. (mips_ip): Handle DSP R2 instructions. Support balign instruction. (OPTION_DSPR2, OPTION_NO_DSPR2, OPTION_COMPAT_ARCH_BASE, md_parse_option, mips_after_parse_args): Add -mdspr2 and -mno-dspr2 command line options. (s_mipsset): Add support for .set dspr2 and .set nodspr2 directives. (md_show_usage): Add -mdspr2 and -mno-dspr2 help output. * doc/c-mips.texi, doc/as.texinfo: Document -mdspr2, -mno-dspr2, .set dspr2, .set nodspr2. 2007-02-20 Nathan Sidwell * config/tc-m68k.c (mcf5210a_ctrl, mcf52235_ctrl, mcf5225_ctrl): New. (m68k_cpus): Add 5210a..5211a, 52230..52235 5224..5225. 2007-02-18 Alan Modra * write.c (TC_FX_SIZE_SLACK): Define. (write_relocs): Reinstate check for fixup within frag. * config/tc-bfin.h (TC_FX_SIZE_SLACK): Define. * config/tc-h8300.h (TC_FX_SIZE_SLACK): Define. * config/tc-mmix.h (TC_FX_SIZE_SLACK): Define. * config/tc-sh.h (TC_FX_SIZE_SLACK): Define. * config/tc-xstormy16.h (TC_FX_SIZE_SLACK): Define. 2007-02-17 Mark Mitchell Nathan Sidwell Vladimir Prus * configure.in (--with-bugurl): New option. * configure: Regenerate. * dep-in.sed: Remove bin-bugs.h. * Makefile.am (REPORT_BUGS_TO): Define. (INCLUDES): Define REPORT_BUGS_TO. (DEP_INCLUDES): Likewise. ($(OBJS)): No longer depend on bin-bugs.h. * Makefile.in: Regenerate. * doc/Makefile.in: Regenerate. * as.c (show_usage): Don't print empty REPORT_BUGS_TO. * as.h: Remove include of bin-bugs.h. 2007-02-17 Alan Modra * write.c: White space fixes. (fixup_segment): Move symbol_mri_common_p adjustments.. (write_relocs): ..and symbol_equated_reloc_p adjustments.. (adjust_reloc_syms): ..to here. 2007-02-16 Alan Modra * subsegs.c (subseg_change, subseg_get): Use xcalloc rather than xmalloc, memset. Don't bother assigning NULL to known zero mem. (subseg_set_rest): Remove unnecessary cast. * write.c: Include libbfd.h. Replace PTR with void * throughout. Remove unnecessary forward declarations and casts. (set_symtab): Delete extern bfd_alloc. (fixup_segment): Move. 2007-02-15 Nathan Sidwell * config/m68k-parse.h (m68k_register): Add ROMBAR0, ASID. * config/tc-m68k.c (mcfv4e_ctrl): Add ColdFire specific names. (mcf5475_ctrl, mcf5485_ctrl): New. (m68k_cpus): Use mcf5485_ctrl and mcf5485_ctrl for those families. (m68k_ip): Add ASID, MMUBAR, ROMBAR0 handling. (init_table): Add asid, mmubar, adjust rombar0. 2007-02-14 Alan Modra * config/tc-i386.h (Seg2ShortForm, Seg3ShortForm): Delete. * config/tc-i386.c: Wrap overly long lines, whitespace fixes. (process_operands): Move old Seg2ShortForm and Seg3ShortForm code, and test for these insns using a combination of opcode_modifier and operand_types. 2007-02-07 Paul Brook * configure.tgt: Add arm*-*-uclinux-*eabi. 2007-02-05 Dave Brolley Richard Sandiford DJ Delorie Stan Cox Jim Blandy Nick Clifton Jim Wilson Frank Ch. Eigler Graydon Hoare Ben Elliston John Healy Richard Henderson * Makefile.am (CPU_TYPES): Add mep. (TARGET_CPU_CFILES): Add tc-mep.c. (TARGET_CPU_HFILES): Add tc-mep.h. (DEPTC_mep_elf): New variable. (DEPTC_mep_coff): Likewise. (DEPOBJ_mep_coff, DEPOBJ_mep_elf, DEP_mep_coff, DEP_mep_elf): Likewise. * configure.in: Support mep. * configure.tgt: Likewise. * config/tc-mep.c: New file. * config/obj-elf.c: New file. * config/tc-mep.c: New file. * config/tc-mep.h: New file. * testsuite/gas/mep: New testsuite with content. * Makefile.in: Regenerate. * configure: Regenerate. 2007-02-05 Dave Brolley * cgen.c (gas_cgen_install_complex_reloc): Removed. (complex_reloc_installation_howto): Removed. 2007-02-05 Dave Brolley Graydon Hoare DJ Delorie Catherine Moore Michael Chastain Frank Ch. Eigler * symbols.c (use_complex_relocs_for): New, to decide when to use complex relocs. Add signed RELC support. (resolve_symbol_value): Call use_complex_relocs_for. Unconditionally encode expression symbols as mangled complex relocation symbols (when compiled with -DOBJ_COMPLEX_RELOC). (symbol_relc_make_sym,value,expr): New traversal/conversion routines. * cgen.c (gas_cgen_md_apply_fix3): Only set signed_p if RELC. Call encode_addend with new args. Modify to get start, length from ifield whenever it is set. Also change condition on which self-describing relocs are encoded. Add hook into gas_cgen_encode_addend. (queue_fixup_recursively): Add signed RELC support. Change from masked expr to trunc flag. Restore assignment of sub-field value to temporary in fixups array. Reflect changed meaning of last arg to queue_fixup_recursively. (fixup): Add cgen_maybe_multi_ifield member. (make_right_shifted_expr): New function. (queue_fixup): Change to recursive function that fragments fixups if operand has a multi-ifield. (gas_cgen_parse_operand): Add RELC code to wrap expressions in symbols, call weak_operand_overflow_check, and fragment call queue_fixup with operand fields. (gas_cgen_finish_insn) Modify to manage ifield pointer. (weak_operand_overflow_check): New function to try to select insns correctly. (gas_cgen_encode_addend): New function for relc. (gas_cgen_install_complex_reloc): Likewise. (gas_cgen_tc_gen_reloc): Add hook into gas_cgen_install_complex_reloc. * write.h (struct fix): Add msb_field_p to fx_cgen sub-struct. Add cgen_maybe_multi_ifield field to fx_cgen substructure. * cgen.h (GAS_CGEN_MAX_FIXUPS): Bump from 3 up to 32. * symbols.h (symbol_relc_make_sym,value,expr): New prototypes. 2007-02-03 DJ Delorie * config/tc-m32c.c (m32c_cons_fix_new): New. Added to support 3 byte relocs. * config/tc-m32c.h (TC_CONS_FIX_NEW): Define. (m32c_cons_fix_new): Prototype. 2007-02-02 Bob Wilson * config/tc-xtensa.c (xg_build_to_insn): Use tinsn_init. (xg_expand_assembly_insn, istack_push_space, istack_pop): Likewise. 2007-02-02 Bob Wilson * config/tc-xtensa.c (SUFFIX_MAP, suffix_relocs): New. (xtensa_elf_suffix): Use suffix_relocs instead of local mapping table. (map_suffix_reloc_to_operator): New. (map_operator_to_reloc): New. (expression_maybe_register): Fix incorrect test of return value from xtensa_elf_suffix. Rearrange to use map_suffix_reloc_to_operator. (xg_assemble_literal, convert_frag_immed): Use map_operator_to_reloc. 2007-02-02 Bob Wilson * config/xtensa-istack.h (struct tinsn_struct): Delete fixup field. (tinsn_get_tok): Delete prototype. * config/tc-xtensa.c (tinsn_get_tok): Delete. 2007-02-02 Bob Wilson * config/xtensa-relax.h (struct build_instr): Delete id field. * config/xtensa-relax.c (widen_spec_list): Remove zeros from LITERAL and LABEL tokens. (append_literal_op, append_label_op): Remove litnum/labnum arguments; set op_data fields to zero. (parse_id_constant): Delete. (build_transition): Remove code to handle numbered literals and labels. 2007-02-02 Bob Wilson * config/xtensa-relax.c (build_transition): Remove code after as_fatal. (build_transition_table): Likewise. 2007-02-01 Bob Wilson * config/tc-xtensa.c (xg_add_opcode_fix, md_apply_fix): Delete use of fx_tcbit. * config/tc-xtensa.h (TC_FORCE_RELOCATION_LOCAL): Remove. 2007-02-02 Alan Modra * write.h (struct fix ): Move. (struct fix ): Rename to tcbit2. * write.c (fix_new_internal): Adjust. (TC_FORCE_RELOCATION_LOCAL): Don't test fx_plt. * config/tc-arm.h (TC_FORCE_RELOCATION_LOCAL): Likewise. * config/tc-cris.h (TC_FORCE_RELOCATION_LOCAL): Likewise. * config/tc-i386.h (TC_FORCE_RELOCATION_LOCAL): Likewise. * config/tc-i960.h (TC_FORCE_RELOCATION_LOCAL): Likewise. * config/tc-sh.h (TC_FORCE_RELOCATION_LOCAL): Likewise. * config/tc-sh64.h (TC_FORCE_RELOCATION_LOCAL): Likewise. * config/tc-sparc.h (TC_FORCE_RELOCATION_LOCAL): Likewise. * config/tc-msp430.c (msp430_force_relocation_local): Likewise. * config/tc-ia64.c (emit_one_bundle): Don't set fx_plt. * config/tc-ia64.h (TC_FORCE_RELOCATION_LOCAL): Don't test fx_plt. Instead, compare fx_r_type. * config/tc-xtensa.c (xg_add_opcode_fix, md_apply_fix): Use fx_tcbit in place of fx_plt. * config/tc-xtensa.h (TC_FORCE_RELOCATION_LOCAL): Define. * doc/internals.texi (TC_FORCE_RELOCATION_LOCAL): Remove reference to fx_plt. 2007-01-30 Nick Clifton * as.c (main): Mark symbols created via the --defsym command line option as volatile so that they can be overridden later on by a .set directive. This maintains compatibility with the behaviour of earlier versions of the assembler. * doc/as.texinfo (--defsym): Document that the defined symbol's value can be overridden via a .set directive. 2007-01-28 H.J. Lu * config/tc-i386.c (swap_imm_operands): Renamed to ... (swap_2_operands): This. Take 2 ints. (md_assemble): Updated. (swap_operands): Call swap_2_operands to swap 2 operands. 2007-01-24 DJ Delorie * config/tc-m32c.c (md_pseudo_table): Add .3byte. 2007-01-22 Nick Clifton PR gas/3871 * tc-score.c: Remove unnecessary uses of _(). Make the err_msg[] a file level local array in order to save storage space. Remove unnecessary sprintf()s. 2007-01-18 Mei Ligang PR gas/3871 * config/tc-score.c : Using _() for const string. Do not assign inst.error with a local string pointer. (md_section_align): Pad section. 2007-01-13 H.J. Lu * config/tc-i386.c (build_modrm_byte): Check number of operands when procssing memory/register operand. 2007-01-12 Nick Clifton PR gas/3856 * macro.c (expand_irp): Do not ignore spaces inside quoted strings. 2007-01-12 Alan Modra * config/tc-spu.h (TC_RELOC_RTSYM_LOC_FIXUP): Delete. * config/tc-m32r.h (TC_RELOC_RTSYM_LOC_FIXUP): Delete. * config/tc-mn10300.h (TC_RELOC_RTSYM_LOC_FIXUP): Delete. (TC_FORCE_RELOCATION): Define. (TC_FORCE_RELOCATION_LOCAL): Define. * config/tc-mn10300.c (mn10300_fix_adjustable): Adjust. 2007-01-12 Alan Modra * input-file.c (input_file_open): Check fgets return. 2007-01-11 Paul Brook * config/tc-arm.c (do_t_add_sub): Use Rd and Rs. 2007-01-11 Nick Clifton PR gas/3707 * config/tc-arm.c (md_begin): Cope with an NULL mcpu_fpu_opt variable. * config/tc-mcore.c (md_number_to_chars): Use number_to_chars_{big|little}endian. 2007-01-08 Kazu Hirata * config/tc-m68k.c (m68k_archs, m68k_cpus): Treat Fido as an architecture by itself. (m68k_ip): Don't issue a warning for tbl instructions on fido. (m68k_elf_final_processing): Treat Fido as an architecture by itself. 2007-01-08 Kai Tietz * configure.tgt: Renamed target x86_64-*-mingw64 to x86_64-*-mingw* 2007-01-05 H.J. Lu * config/tc-i386.c (set_intel_syntax): Update set_intel_syntax depending on allow_naked_reg. 2007-01-04 Paul Brook * config/tc-arm.c (do_cpsi): Set mmod bit for 2 argument form. 2007-01-04 H.J. Lu PR gas/3830 * config/tc-i386.c (register_prefix): New. (set_intel_syntax): Set set_intel_syntax to "" if register prefix isn't needed. (check_byte_reg): Use register_prefix for error message. (check_long_reg): Likewise. (check_qword_reg): Likewise. (check_word_reg): Likewise. 2007-01-04 Julian Brown * config/tc-arm.c (do_neon_shl_imm): Swap rN, rM. (do_neon_qshl_imm): Likewise. (do_neon_rshl): New function. Handle rounding variants of v{q}shl-by-register. (insns): Use do_neon_rshl for vrshl, vqrshl. 2007-01-04 Paul Brook * config/tc-arm.c (NEON_ENC_TAB): Fix encoding of vclt, vcle, vaclt and vacle. 2007-01-03 H.J. Lu * config/tc-i386.c (swap_operands): Remove branches. 2007-01-03 H.J. Lu * config/tc-i386.c: Update copyright year. * config/tc-i386.h: Likewise. 2007-01-03 H.J. Lu * config/tc-i386.c (smallest_imm_type): Return unsigned int instead of int. 2007-01-03 H.J. Lu * config/tc-i386.c: Convert to ISO C90 formatting * config/tc-i386.h: Likewise. 2007-01-03 David Daney * config/tc-mips.c (md_show_usage): Clean up -mno-shared documentation. For older changes see ChangeLog-2006 Local Variables: mode: change-log left-margin: 8 fill-column: 74 version-control: never End: