+2007-12-20 Bob Wilson <bob.wilson@acm.org>
+
+ * config/tc-xtensa.c (xtensa_elf_cons): Set frag flags for
+ expressions without suffixes.
+ (get_frag_property_flags): Preserve is_no_transform flag for frags
+ not marked as either instructions or literals.
+
+2007-12-17 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/tc-i386.c (output_insn): Use ARRAY_SIZE.
+ (lex_got): Likewise.
+
+2007-12-17 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/tc-i386.c (output_insn): Use FRAG_APPEND_1_CHAR
+ instead of frag_more/md_number_to_chars.
+ (md_short_jump_size): Removed.
+ (md_long_jump_size): Likewise.
+ (md_create_short_jump): Likewise.
+ (md_create_long_jump): Likewise.
+
+2007-12-13 Bob Wilson <bob.wilson@acm.org>
+
+ * config/tc-xtensa.c (xg_symbolic_immeds_fit): Relax for weak
+ references but not weak definitions.
+
+2007-12-12 Bob Wilson <bob.wilson@acm.org>
+
+ * config/tc-xtensa.c (xg_symbolic_immeds_fit): Do not relax calls to
+ weak symbols if longcalls are disabled.
+
+2007-12-11 Sterling Augustine <sterling@tensilica.com>
+ Bob Wilson <bob.wilson@acm.org>
+
+ * config/tc-xtensa.c (frag_format_size): Handle frags that expand to
+ wide branches.
+ (get_aligned_diff): For RELAX_ALIGN_NEXT_OPCODE, skip to the next
+ non-empty frag to find the LOOP instruction. Change comma typo to
+ a semicolon.
+ (relax_frag_immed, convert_frag_immed): Rename wide_insn variable to
+ from_widen_insn.
+
+2007-12-11 Alan Modra <amodra@bigpond.net.au>
+
+ * config/tc-m32r.c (md_begin): Mark .sbss as being bss style section.
+
+2007-12-10 Richard Sandiford <rsandifo@nildram.co.uk>
+
+ * config/tc-mips.h (mips_nop_opcode): Declare.
+ (NOP_OPCODE): Define.
+ (mips_segment_info): New structure.
+ (TC_SEGMENT_INFO_TYPE): Use it instead of insn_label_list.
+ * config/tc-mips.c (label_list): Adjust for new TC_SEGMENT_INFO_TYPE.
+ (mips_record_mips16_mode): New function.
+ (install_insn): Call it.
+ (mips_align): Likewise. Turn the fill argument into an "int *".
+ Use frag_align_code for code segments if no fill data is given.
+ (s_align): Adjust call accordingly.
+ (mips_nop_opcode): New function.
+ (mips_handle_align): Use the first variable byte to decide which
+ nop sequence is needed. Use md_number_to_chars and mips16_nop_insn.
+
+2007-12-07 Bob Wilson <bob.wilson@acm.org>
+
+ * config/tc-xtensa.c (O_pcrel): Define.
+ (suffix_relocs): Add pcrel suffix.
+ (md_pseudo_table): Add 4byte and 2byte directives.
+ (xtensa_elf_cons): Pass correct pcrel argument to fix_new_exp.
+ (xg_assemble_literal): Likewise. Check for O_pcrel.
+ (expression_maybe_register): Reorganize. Handle BFD_RELOC_32_PCREL.
+ (xg_valid_literal_expression): Allow O_pcrel.
+ (md_pcrel_from, md_apply_fix): Handle BFD_RELOC_32_PCREL.
+ (tc_gen_reloc): Fix punctuation in error message.
+
+2007-12-06 Bob Wilson <bob.wilson@acm.org>
+
+ * config/tc-xtensa.c (xg_force_frag_space): Delete.
+ (xg_finish_frag, xg_assemble_literal_space): Replace calls to it.
+ (xtensa_create_property_segments, xtensa_create_xproperty_segments):
+ Set output_section for new property sections. Use subseg_set and
+ seg_info instead of retrieve_segment_info. Adjust arguments to
+ add_xt_block_frags and add_xt_prop_frags. Use standard functions
+ to create frags and fix records.
+ (retrieve_segment_info): Delete.
+ (add_xt_block_frags, add_xt_prop_frags): Replace calls to
+ retrieve_segment_info. Remove unused xt_block_sec arguments.
+
+2007-12-04 Alan Modra <amodra@bigpond.net.au>
+
+ * config/tc-ppc.c (ppc_tc): Allow a space between toc symbol
+ name and bracket.
+
+2007-11-30 Bob Wilson <bob.wilson@acm.org>
+
+ * config/tc-xtensa.h (md_allow_eh_opt): Define.
+
+2007-11-29 Mark Shinwell <shinwell@codesourcery.com>
+
+ * config/tc-mips.c (mips_cpu_info_table): Add loongson2e
+ and loongson2f entries.
+ * doc/c-mips.texi: Document -march=loongson{2e,2f} options.
+
+2007-11-29 Martin Schwidefsky <schwidefsky@de.ibm.com>
+
+ * config/tc-s390.c (md_begin): If the -mesa option is specified
+ add zarch opcodes to the hash table only if there is no variant
+ that is available for the esa mode as well.
+
+2007-11-26 Thomas Ogrisegg <tom-bugs@gas.fnord.at>
+
+ * config/tc-alpha.c (assemble_insn): Don't segv on NULL reloc_operand.
+
+2007-11-19 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa-istack.h (tinsn_struct): Replace linenum field
+ with loc_directive_seen and debug_line.
+ * config/tc-xtensa.c: Include xtensa-istack.h after dwarf2dbg.h.
+ (xg_build_to_insn): Copy the new fields instead of linenum.
+ (xg_build_token_insn): Likewise. Abort on INSTR_LABEL_DEF and move
+ common code out of the switch.
+ (md_assemble): Set new tinsn fields from DWARF information. Call
+ dwarf2_consume_line_info.
+ (xg_assemble_vliw_tokens): Update the code to select the "best" line
+ number to use new information. Call dwarf2_gen_line_info instead
+ of dwarf2_emit_insn.
+
+2007-11-19 Bob Wilson <bob.wilson@acm.org>
+
+ * dwarf2dbg.h (dwarf2_loc_directive_seen): New.
+ * dwarf2dbg.c (loc_directive_seen): Make external and rename to...
+ (dwarf2_loc_directive_seen): ...this.
+ (dwarf2_emit_insn, dwarf2_consume_line_info)
+ (dwarf2_emit_label, dwarf2_directive_loc): Use new name.
+
+2007-11-19 Bob Wilson <bob.wilson@acm.org>
+
+ * dwarf2dbg.c (dwarf2_emit_label): Use dwarf2_consume_line_info.
+
+2007-11-19 Bob Wilson <bob.wilson@acm.org>
+
+ * 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 <ths@mips.com>
+
+ * 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 <ths@mips.com>
+
+ * doc/as.texinfo: Document the new attribute value.
+
+2007-11-16 Eric B. Weddington <eric.weddington@atmel.com>
+
+ * config/tc-avr.c (mcu_types): Add ATmega32HVB device.
+ * doc/c-avr.texi: Likewise.
+
+2007-11-16 Eric B. Weddington <eric.weddington@atmel.com>
+
+ * config/tc-avr.c (mcu_types): Add ATmega1284P device.
+ * doc/c-avr.texi: Likewise.
+
+2007-11-14 Tristan Gingold <gingold@adacore.com>
+
+ * config/tc-ia64.c (AR_RUC): Defined.
+ (ar): Add "ar.ruc".
+ (specify_resource): Handle AR_RUC like AR_ITC.
+
+2007-11-13 Nick Clifton <nickc@redhat.com>
+
+ * 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 <nickc@redhat.com>
+
+ 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 <gingold@adacore.com>
+
+ * 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 <hongjiu.lu@intel.com>
+
+ * config/tc-i386.c (match_template): Re-order suffix check.
+
+2007-11-07 Bob Wilson <bob.wilson@acm.org>
+
+ * config/tc-xtensa.c (relaxable_section): Check for .eh_frame.
+
+2007-11-07 Eric B. Weddington <eweddington@cso.atmel.com>
+
+ * config/tc-avr.c (mcu_types): Add ATtiny88 device.
+ * doc/c-avr.texi: Likewise.
+
+2007-11-07 Anatoly Sokolov <aesok@post.ru>
+
+ * 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 <gingold@adacore.com>
+
+ * 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 <paul@codesourcery.com>
+
+ * config/tc-arm.c (do_mull): Allow overlapping Rm for armv6.
+
+2007-11-06 Nick Clifton <nickc@redhat.com>
+
+ * 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 <dannysmith@users.sourceforge.net>
+
+ * 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 <sterling@tensilica.com>
+
+ * 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 <hongjiu.lu@intel.com>
+
+ * config/tc-i386.c (md_assemble): Replace no_xsuf with
+ no_ldsuf.
+ (match_template): Likewise.
+
+2007-11-01 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/tc-i386.h (LONG_DOUBLE_MNEM_SUFFIX): Use a non-ascii
+ letter.
+
+2007-11-01 H.J. Lu <hongjiu.lu@intel.com>
+
+ * 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 <eweddington@cso.atmel.com>
+
+ * 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 <nickc@redhat.com>
+
+ * 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 <nickc@redhat.com>
+
+ * doc/as.texinfo (Section): Replace "subsegment" with
+ "subsection".
+
+2007-10-27 H.J. Lu <hongjiu.lu@intel.com>
+
+ 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 <hongjiu.lu@intel.com>
+
+ * configure.in: Move AM_PROG_LIBTOOL after AC_GNU_SOURCE.
+ * configure: Regenerated.
+
+2007-10-24 Alan Modra <amodra@bigpond.net.au>
+
+ * 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 <nickc@redhat.com>
+
+ * 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 <amodra@bigpond.net.au>
+
+ * 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 <carlos@systemhalted.org>
+
+ * config/tc-hppa.c (pa_ip): Fix comment typo.
+ (pa_comm): Likewise.
+
+2007-10-18 Nick Clifton <nickc@redhat.com>
+
+ 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 <nickc@redhat.com>
+
+ 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.
+