blob: dc7b1e79f1102d93d979198cfd47003a3cd5f4c7 [file] [log] [blame]
2007-12-29 H.J. Lu <>
* config/tc-i386.c (md_show_usage): Add -mmnemonic, -msyntax,
-mindex-reg, -mnaked-reg and -mold-gcc.
2007-12-27 John David Anglin <>
* config/tc-hppa.h (DWARF2_CIE_DATA_ALIGNMENT): Wrap negative
number in parens.
2007-12-23 H.J. Lu <>
* config/tc-i386.c (set_intel_mnemonic): New.
(intel_mnemonic): Likewise.
(old_gcc): Likewise.
(OPTION_MOLD_GCC): Likewise.
(md_pseudo_table): Add .intel_mnemonic and .att_mnemonic.
(match_template): Don't allow AT&T/Intel mnemonic if Intel/AT&T
mnemonic is specified. Don't allow old gcc support if old_gcc
is 0.
(md_longopts): Add -mmnemonic, -msyntax, -mindex-reg,
-mmnaked-reg and -mold-gcc.
(md_parse_option): Handle OPTION_MMNEMONIC, OPTION_MSYNTAX,
* doc/c-i386.texi: Docoument -mmnemonic, -msyntax, --mnaked-reg
and AT&T mnemonic vs. Intel mnemonic.
2007-12-20 Bob Wilson <>
* 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 <>
* config/tc-i386.c (output_insn): Use ARRAY_SIZE.
(lex_got): Likewise.
2007-12-17 H.J. Lu <>
* 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 <>
* config/tc-xtensa.c (xg_symbolic_immeds_fit): Relax for weak
references but not weak definitions.
2007-12-12 Bob Wilson <>
* config/tc-xtensa.c (xg_symbolic_immeds_fit): Do not relax calls to
weak symbols if longcalls are disabled.
2007-12-11 Sterling Augustine <>
Bob Wilson <>
* 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
2007-12-11 Alan Modra <>
* config/tc-m32r.c (md_begin): Mark .sbss as being bss style section.
2007-12-10 Richard Sandiford <>
* 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 <>
* 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 <>
* 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 <>
* config/tc-ppc.c (ppc_tc): Allow a space between toc symbol
name and bracket.
2007-11-30 Bob Wilson <>
* config/tc-xtensa.h (md_allow_eh_opt): Define.
2007-11-29 Mark Shinwell <>
* 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 <>
* 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 <>
* config/tc-alpha.c (assemble_insn): Don't segv on NULL reloc_operand.
2007-11-19 Bob Wilson <>
* 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
(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 <>
* 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 <>
* 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
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
(match_template): Likewise.
2007-11-01 H.J. Lu <>
* config/tc-i386.h (LONG_DOUBLE_MNEM_SUFFIX): Use a non-ascii
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
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
2007-10-24 H.J. Lu <>
* configure: Regenerated.
2007-10-24 Alan Modra <>
Run "make dep-am".
* Regenerate.
* 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
* config/tc-mn10300.h (md_allow_local_subtract): 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
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
(md_convert_frag): Just call abort.
* config/tc-i860.c (md_estimate_size_before_relax): Change error
* config/tc-i860.h (md_convert_frag): Just call abort.
* config/tc-ip2k.c (md_estimate_size_before_relax): Change error
(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
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,
* 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<cc>
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
2007-10-11 H.J. Lu <>
* doc/c-i386.texi: Update which instruction's operands are
2007-10-11 Nick Clifton <>
PR gas/5161
* config/tc-ia64.c: Allow for translations of error and warning
* po/gas.pot: Regenerate.
PR gas/5158
* config/tc-h8300.c (tc_gen_reloc): Allow for translation of error
* 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
* (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/<foo>-desc.h" into
cgen-desc.h when foo-desc.h does not exit.
Run make dep-am.
* Regenerate.
* doc/ Regenerate.
* po/ 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
* 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<cc> 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
(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
(parse_args): Conditionalize handling of -t/--itbl options upon
HAVE_ITBL_CPU. Remove OPTION_INSTTBL and replace its use with
2007-09-25 H.J. Lu <>
* config/tc-i386.c (output_insn): Use to
check opcode length.
2007-09-25 Nathan Sidwell <>
* config/tc-m68k.c (LONG_BRANCH_VIA_COND): 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
(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
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
(i386_index_check): Likewise.
2007-09-17 H.J. Lu <>
PR gas/5035
* config/obj-coff.c (obj_coff_endef): Remove checking size of
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
2007-09-14 H.J. Lu <>
* config/tc-i386.c (build_modrm_byte): Adjust comment line
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
(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 <>
* Run "make dep-am".
* Regenerate.
2007-09-08 H.J. Lu <>
* (AC_CHECK_HEADERS): Add limits.h.
* configure: Regenerated.
* 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.
* config/tc-i386.h (arch_entry): Updated to i386_cpu_flags
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
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.
* (GAS_CFILES): Add remap.c
(GENERIC_OBJS): Add remap.o.
Regenerate dependencies.
* 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.
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.
(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
2007-08-12 Matthias Klose <>
* doc/ 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
* 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
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
* 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 <state 5>): 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
2007-07-02 Alan Modra <>
* Run "make dep-am".
* Regenerate.
* aclocal.m4: Regenerate.
* Regenerate.
* doc/ Regenerate.
* po/ 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/ Likewise.
* 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
(arm_md_end): Remove attributes contents setting now done
2007-06-29 M R Swami Reddy <>
* Add CR16 related entry.
* 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/ Added c-cr16.texi
* doc/ 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.
* 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 <>
* (ACLOCAL_AMFLAGS): Add -I ../config -I ../bfd.
* acinclude.m4: Don't include m4 files.
Remove libtool kludge.
* Regenerated.
* doc/ Likewise.
* aclocal.m4: Likewise.
* configure: Likewise.
2007-06-11 Sterling Augustine <>
Bob Wilson <>
* config/tc-xtensa.c (XTENSA_PROP_INSN_NO_TRANSFORM): Renamed to...
(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
(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
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 <>
* Regnerate.
* configure: Regenerate.
* aclocal.m4: Regenerate.
* doc/ 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
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
2007-05-02 Alan Modra <>
PR 4448
* config/tc-ppc.c (ppc_insert_operand): Don't increase min for
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
(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 <>
* Run "make dep-am".
* Regenerate.
2007-04-23 Nathan Sidwell <>
* config/tc-m68k.c (mcf54455_ctrl): 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
* 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.
* (--enable-checking): New.
* configure: Regenerate.
* 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
(mcf5272_ctrl): Add RAMBAR0, replace add RAMBAR with RAMBAR_ALT.
(m68k_cpus): Adjust 5206, 5206e & 5307 entries.
(m68k_ip) <Case J>: 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 <>
* Run "make dep-am".
* 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 <>
* 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
2007-03-26 Anatoly Sokolov <>
* config/tc-avr.c (mcu_types): Add support for at90pwm1, at90usb82,
at90usb162, atmega325p, atmega329p, atmega3250p and atmega3290p
* 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
* itbl-ops.h (enum e_processor): Initialise the e_nprocs field
* 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
(neon_cmode_for_move_imm): Reject non-float immediates for float
(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.
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 <anton@mips.complang.tuw>
PR gas/4124
* config/tc-alpha.c (emit_ustX): Fix ustq code generation.
2007-03-21 H.J. Lu <>
* Run dep-am.
* 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
(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 <>
* Run "make dep-am".
* Regenerated.
* config/tc-i386.c: Include "opcodes/i386-opc.h" instead of
(md_begin): Check reg_name != NULL for the last entry in
* config/tc-i386.h: Move many entries to opcode/i386.h and
* (need_opcodes): Set true for i386.
* configure: Regenerated.
2007-03-15 H.J. Lu <>
* (REPORT_BUGS_TO): Removed.
* Regenerated.
* (--with-bugurl): Removed.
* configure: Regenerated.
* doc/ (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/ 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.
* gas/symbols.c (copy_symbol_attributes): Use
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
(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 #<line>"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 <>
* Run "make dep-am".
* Regenerate.
* po/ Regenerate.
2007-03-07 Joseph Myers <>
* (REPORT_BUGS_TEXI): Define to Texinfo version of
bug-reporting URL.
* doc/ (gasver.texi): Define BUGURL.
* doc/as.texinfo: Use BUGURL.
*, configure, doc/ 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): 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,
(macro_build): Add case '2'.
(macro): Expand M_BALIGN to nop, or balign.
(validate_mips_insn): Add support for balign instruction.
(mips_ip): Handle DSP R2 instructions. Support balign instruction.
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 <
Joseph Myers <>
* (--with-bugurl): New option.
* configure: Regenerate.
* dep-in.sed: Remove bin-bugs.h.
* (REPORT_BUGS_TO): Define.
(DEP_INCLUDES): Likewise.
($(OBJS)): No longer depend on bin-bugs.h.
* Regenerate.
* doc/ 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): 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 <>
* (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.
* 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.
* 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
(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
(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
* config/tc-xtensa.h (TC_FORCE_RELOCATION_LOCAL): Remove.
2007-02-02 Alan Modra <>
* write.h (struct fix <fx_pcrel_adjust, fx_size>): Move.
(struct fix <fx_plt>): 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
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.
* 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
* config/tc-mcore.c (md_number_to_chars): Use
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
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
(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
For older changes see ChangeLog-2006
Copyright (C) 2006 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.
Local Variables:
mode: change-log
left-margin: 8
fill-column: 74
version-control: never