2008-03-26 Bernd Schmidt From Jie Zhang * config/bfin-parse.y (asm_1): Check AREGS in comparison instructions. And call yyerror when comparing PREG with DREG. (check_macfunc_option): New. (check_macfuncs): Check option by calling check_macfunc_option. Fix comparison always true warnings. Both scalar instructions of vector instruction must share the same mode option. Only allow option mode at the end of the second instruction of the vector. (asm_1): Check option by calling check_macfunc_option. 2008-03-19 Andreas Krebbel * config/tc-s390.c (md_parse_option): z10 option added. 2008-03-17 Ralf Wildenhues * aclocal.m4: Regenerate. * configure: Likewise. * Makefile.in: Likewise. * doc/Makefile.in: Likewise. 2008-03-17 Adrian Bunk PR 5946 * config/tc-hppa.c (is_same_frag): Delete. 2008-03-14 Sterling Augustine * config/tc-xtensa.h (xtensa_relax_statesE): Update comment for RELAX_LOOP_END_ADD_NOP. 2008-03-13 Evandro Menezes PR gas/5895 * read.c (s_mexit): Warn if attempting to exit a macro when not inside a macro definition. 2008-03-13 Alan Modra * Makefile.am: Run "make dep-am". * Makefile.in: Regenerate. * configure: Regenerate. 2008-03-09 Paul Brook * config/tc-arm.c (arm_cpu_option_table): Add cortex-a9. * doc/c-arm.texi: Add cortex-a9. 2008-03-09 Paul Brook * config/tc-arm.c (fpu_vfp_ext_d32): New vairable. (parse_vfp_reg_list, encode_arm_vfp_reg): Use it. (arm_option_cpu_value): Add vfpv3-d16, vfpv2 and vfpv3. (aeabi_set_public_attributes): Handle Tag_VFP_arch=VFPV3-D16. * doc/c-arm.texi: Document new ARM FPU variants. 2008-03-07 Paul Brook * config/tc-arm.c (md_apply_fix): Use correct offset range. 2008-03-07 Alan Modra * config/tc-ppc.c (ppc_setup_opcodes): Tidy. Add code to test for strict ordering of powerpc_opcodes, but disable for now. 2008-03-04 Paul Brook * config/tc-arm.c (arm_ext_barrier, arm_ext_msr): New. (arm_ext_v7m): Rename... (arm_ext_m): ... to this. Include v6-M. (do_t_add_sub): Allow narrow low-reg non flag setting adds. (do_t_mrs, do_t_msr, aeabi_set_public_attributes): Use arm_ext_m. (md_assemble): Allow wide msr instructions. (insns): Add classifications for v6-m instructions. (arm_cpu_option_table): Add cortex-m1. (arm_arch_option_table): Add armv6-m. (cpu_arch): Add ARM_ARCH_V6M. Fix numbering of other v6 variants. 2008-03-03 Sterling Augustine Bob Wilson * config/tc-xtensa.c (xtensa_num_pipe_stages): New. (md_begin): Initialize it. (resources_conflict): Use it. 2008-03-03 Sterling Augustine * config/tc-xtensa.h (RELAX_XTENSA_NONE): New. 2008-03-03 Denys Vlasenko H.J. Lu PR gas/5543 * read.c (pseudo_set): Don't allow global register symbol. * symbols.c (S_SET_EXTERNAL): Don't allow register symbol global. 2008-03-03 H.J. Lu PR gas/5543 * write.c (write_object_file): Don't allow symbols which were equated to register. Stop if there is an error. 2008-03-01 Alan Modra * config/tc-ppc.h (struct _ppc_fix_extra): New. (ppc_cpu): Declare. (TC_FIX_TYPE, TC_INIT_FIX_DATA): Define. * config/tc-ppc.c (ppu_cpu): Make global. (ppc_insert_operand): Add ppu_cpu parameter. (md_assemble): Adjust for above change. (md_apply_fix): Pass tc_fix_data.ppc_cpu to ppc_insert_operand. 2008-02-22 Nick Clifton * config/tc-arm.c (do_bx): Only test EF_ARM_EABI_VERSION on ELF targeted ARM ports, otherwise just skip generating the reloc. 2008-02-18 H.J. Lu * doc/c-i386.texi: Update -march= and .arch. 2008-02-18 Nick Clifton * config/tc-mn10300.c (has_known_symbol_location): New function. Do not regard weak symbols as having a known location. (md_estimate_size_before_relax): Use new function. (md_pcrel_from): Do not compute a pcrel against a weak symbol. 2008-02-18 Jan Beulich * config/tc-i386.c (match_template): Disallow 'l' suffix when currently selected CPU has no 32-bit support. (parse_real_register): Do not return registers not available on currently selected CPU. 2008-02-16 H.J. Lu * config/tc-i386.c (process_immext): Fix format. 2008-02-16 H.J. Lu * config/tc-i386.c (inoutportreg): New. (process_immext): New. (md_assemble): Use it. (update_imm): Use imm16 and imm32s. (i386_att_operand): Use inoutportreg. 2008-02-14 H.J. Lu * config/tc-i386.c (operand_type_all_zero): New. (operand_type_set): Likewise. (operand_type_equal): Likewise. (cpu_flags_all_zero): Likewise. (cpu_flags_set): Likewise. (cpu_flags_equal): Likewise. (UINTS_ALL_ZERO): Removed. (UINTS_SET): Likewise. (UINTS_CLEAR): Likewise. (UINTS_EQUAL): Likewise. (cpu_flags_match): Updated. (smallest_imm_type): Likewise. (set_cpu_arch): Likewise. (md_assemble): Likewise. (optimize_imm): Likewise. (match_template): Likewise. (process_suffix): Likewise. (update_imm): Likewise. (process_drex): Likewise. (process_operands): Likewise. (build_modrm_byte): Likewise. (i386_immediate): Likewise. (i386_displacement): Likewise. (i386_att_operand): Likewise. (parse_real_register): Likewise. (md_parse_option): Likewise. (i386_target_format): Likewise. 2008-02-14 Dimitry Andric PR gas/5712 * config/tc-arm.c (s_arm_unwind_save): Advance the input line pointer past the comma after parsing a floating point register name. 2008-02-14 Hakan Ardo PR gas/2626 * config/tc-avr.c (mcu_types): Change the ISA tyoe of the attiny26 to AVR_ISA_2xxe. (avr_operand): Disallow post-increment addressing in the lpm instruction for the attiny26. 2008-02-13 Jan Beulich * config/tc-i386.c (parse_real_register): Don't return 'FLAT' if not in Intel mode. (i386_intel_operand): Ignore segment overrides in immediate and offset operands. (intel_e11): Range-check i.mem_operands before use as array index. Filter out FLAT for uses other than as segment override. (intel_get_token): Remove broken promotion of "FLAT:" to mean "offset FLAT:". 2008-02-13 Jan Beulich * config/tc-i386.c (intel_e09): Also special-case 'bound'. 2008-02-13 Jan Beulich * config/tc-i386.c (allow_pseudo_reg): New. (parse_real_register): Check for NULL just once. Allow all register table entries when allow_pseudo_reg is non-zero. Don't allow any registers without type when allow_pseudo_reg is zero. (tc_x86_regname_to_dw2regnum): Replace with ... (tc_x86_parse_to_dw2regnum): ... this. (tc_x86_frame_initial_instructions): Adjust for above change. * config/tc-i386.h (tc_regname_to_dw2regnum): Remove. (tc_parse_to_dw2regnum): New. (tc_x86_regname_to_dw2regnum): Replace with ... (tc_x86_parse_to_dw2regnum): ... this. * dw2gencfi.c (tc_parse_to_dw2regnum): New, broken out of ... (cfi_parse_reg): ... this. Use tc_parse_to_dw2regnum. Adjust error handling. 2008-02-12 Nick Clifton * config/tc-tic4x.c (tic4x_insn_insert): Add const qualifier to argument. (tic4x_insn_add): Likewise. (md_begin): Drop cast that was discarding a const qualifier. * config/tc-d30v.c (get_reloc): Add const qualifier to op argument. (build_insn): Drop cast that was discarding a const qualifier. 2008-02-11 H.J. Lu * config/tc-i386.c (cpu_arch): Add .xsave. (md_show_usage): Add .xsave. * doc/c-i386.texi: Add xsave to -march=. 2008-02-07 Alan Modra * read.c (s_weakref): Don't pass unadorned NULL to concat. * config/tc-i386.c (set_cpu_arch, md_parse_option): Likewise. 2008-02-05 Sterling Augustine * config/tc-xtensa.c (relax_frag_immed): Change internal consistency checks into assertions. When relaxation produces an operation that does not fit in the current FLIX instruction, make sure that the operation is relaxed as needed to account for being placed following the current instruction. 2008-02-04 H.J. Lu PR 5715 * configure: Regenerated. 2008-02-04 Adam Nemet * config/tc-mips.c (mips_cpu_info_table): Add Octeon. 2008-01-31 Marc Gauthier * configure.tgt (xtensa*-*-*): Recognize processor variants. 2008-01-25 Kai Tietz * read.c: (emit_expr): Correct for mingw use of printf size specifier. 2008-01-24 Bob Wilson * doc/c-xtensa.texi (Xtensa Syntax): Clarify handling of opcodes that can only be encoded in FLIX instructions but are not specified as such. (Xtensa Automatic Alignment): Remove obsolete comment about debugging labels. 2008-01-24 H.J. Lu * NEWS: Mention new command line options for x86 targets. 2008-01-23 H.J. Lu * config/tc-i386.c (md_show_usage): Replace tabs with spaces. 2008-01-23 Eric B. Weddington * config/tc-avr.c (mcu_types): Change opcode set for at86rf401. 2008-01-23 H.J. Lu * config/tc-i386.c (md_show_usage): Show more processors for -march=/-mtune=. 2008-01-22 H.J. Lu * config/tc-i386.c (i386_target_format): Remove cpummx2. 2008-01-22 H.J. Lu * config/tc-i386.c (XXX_PREFIX): Moved from tc-i386.h. (XXX_MNEM_SUFFIX): Likewise. (END_OF_INSN): Likewise. (templates): Likewise. (modrm_byte): Likewise. (rex_byte): Likewise. (DREX_XXX): Likewise. (drex_byte): Likewise. (sib_byte): Likewise. (processor_type): Likewise. (arch_entry): Likewise. (cpu_sub_arch_name): Remove const. (cpu_arch): Add .vmx and .smx. (set_cpu_arch): Append cpu_sub_arch_name. (md_parse_option): Support -march=CPU[,+EXTENSION...]. (md_show_usage): Updated. * config/tc-i386.h (XXX_PREFIX): Moved to tc-i386.c. (XXX_MNEM_SUFFIX): Likewise. (END_OF_INSN): Likewise. (templates): Likewise. (modrm_byte): Likewise. (rex_byte): Likewise. (DREX_XXX): Likewise. (drex_byte): Likewise. (sib_byte): Likewise. (processor_type): Likewise. (arch_entry): Likewise. * doc/as.texinfo: Update i386 -march option. * doc/c-i386.texi: Update -march= for ISA. 2008-01-18 Bob Wilson * config/tc-xtensa.c (xtensa_leb128): New function. (md_pseudo_table): Use it for sleb128 and uleb128. (is_leb128_expr): New internal flag. (xtensa_symbol_new_hook): Check new flag. 2008-01-16 Eric B. Weddington * config/tc-avr.c (mcu_types): Change opcode set for avr3, at90usb82, at90usb162. * doc/c-avr.texi: Change architecture grouping for at90usb82, at90usb162. These changes support the new avr35 architecture group in gcc. 2008-01-15 H.J. Lu * config/tc-i386.c (md_assemble): Also zap movzx and movsx suffix for AT&T syntax. 2008-01-14 H.J. Lu * config/tc-i386.c (match_reg_size): New. (match_mem_size): Likewise. (operand_size_match): Likewise. (operand_type_match): Also clear all size fields. (match_template): Skip Intel syntax when in AT&T syntax. Call operand_size_match to check operand size. (i386_att_operand): Set the mem field to 1 for memory operand. (i386_intel_operand): Likewise. 2008-01-12 H.J. Lu PR gas/5534 * config/tc-i386.c (_i386_insn): Update comment. (operand_type_match): Also clear unspecified. (operand_type_register_match): Likewise. (parse_operands): Initialize unspecified. (i386_intel_operand): Likewise. (match_template): Check memory and accumulator operand size. (i386_att_operand): Clear unspecified on register operand. (intel_e11): Likewise. (intel_e09): Set operand size and clean unspecified for "XXX PTR". 2008-01-11 Andreas Schwab * read.c (s_space): Declare `repeat' as offsetT. 2008-01-10 H.J. Lu * config/tc-i386.c (match_template): Check processor support first. 2008-01-10 H.J. Lu * config/tc-i386.c (match_template): Continue if processor doesn't match. 2008-01-09 Alexandre Oliva * config/tc-ia64.c (ia64_convert_frag): Zero-initialize room for unwind personality function address. 2008-01-09 Bob Wilson * dwarf2dbg.c (out_sleb128): Delete. (size_fixed_inc_line_addr, emit_fixed_inc_line_addr): New. (out_fixed_inc_line_addr): Delete. (relax_inc_line_addr, dwarf2dbg_estimate_size_before_relax): Call new size_fixed_inc_line_addr if DWARF2_USE_FIXED_ADVANCE_PC is set. (dwarf2dbg_convert_frag): Likewise for emit_fixed_inc_line_addr. (process_entries): Remove calls to out_fixed_inc_line_addr. When DWARF2_USE_FIXED_ADVANCE_PC is set, call relax_inc_line_addr. * read.h (emit_expr_fix): New prototype. * read.c (emit_expr): Move code to emit_expr_fix and use it here. (emit_expr_fix): New. 2008-01-09 H.J. Lu * config/tc-i386.c (match_template): Check register size only when size of operands can be encoded the canonical way. 2008-01-08 H.J. Lu * config/tc-i386.c (i386_operand): Renamed to ... (i386_att_operand): This. (parse_operands): Updated. 2008-01-05 H.J. Lu * doc/c-i386.texi: Update .att_mnemonic and .intel_mnemonic. * config/tc-i386.c (set_intel_mnemonic): Set intel_mnemonic only. (md_assemble): Remove Intel mode workaround. (match_template): Check support for old gcc, AT&T mnemonic and Intel Syntax. (md_parse_option): Don't set intel_mnemonic to 0 for OPTION_MOLD_GCC. 2008-01-04 H.J. Lu * config/tc-i386.h: Update copyright to 2008. 2008-01-04 Nick Clifton * config/tc-ppc.c (parse_cpu): Preserve the settings of the PPC_OPCODE_ALTIVEC and PPC_OPCODE_SPE flags. 2008-01-03 H.J. Lu * config/tc-i386.c (md_assemble): Use !intel_mnemonic instead of SYSV386_COMPAT. 2008-01-03 H.J. Lu * gas/config/tc-i386.c (cpu_arch_flags_not): Removed. (cpu_flags_not): Likewise. (cpu_flags_match): Updated to check 64bit and arch. (set_code_flag): Remove cpu_arch_flags_not. (set_16bit_gcc_code_flag): Likewise. (set_cpu_arch): Likewise. (md_begin): Likewise. (parse_insn): Call cpu_flags_match to check 64bit and arch. (match_template): Likewise. 2008-01-03 Jakub Jelinek * config/tc-i386.c (process_drex): Initialize modrm_reg and modrm_regmem to 0 instead of None. 2008-01-03 H.J. Lu * config/tc-i386.c (match_template): Use the xmmword field instead of no_xsuf. 2008-01-02 H.J. Lu * config/tc-i386.c (process_suffix): Fix a typo. 2008-01-02 H.J. Lu PR gas/5534 * config/tc-i386.c (match_template): Handle XMMWORD_MNEM_SUFFIX. Check memory size in Intel mode. (process_suffix): Handle XMMWORD_MNEM_SUFFIX. (intel_e09): Likewise. * config/tc-i386.h (XMMWORD_MNEM_SUFFIX): New. 2008-01-02 Catherine Moore * config/tc-mips.c (mips_ip): Check operands on jalr instruction. For older changes see ChangeLog-2007 Local Variables: mode: change-log left-margin: 8 fill-column: 74 version-control: never End: