X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=gas%2FChangeLog;h=3f759e08a80f30e7e0a7dd8172dd9bfc55a59a93;hb=910600e9c7e78f59a8e89638016b70837a1ea622;hp=4bd00a34b5e69207dfbd28f290b0fdf2665c71dc;hpb=b3ce1bf78e82453aa76e77b95abbd676caa3a7ab;p=deliverable%2Fbinutils-gdb.git diff --git a/gas/ChangeLog b/gas/ChangeLog index 4bd00a34b5..3f759e08a8 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,6800 +1,585 @@ -2005-12-05 John David Anglin +2006-04-05 Richard Sandiford + Daniel Jacobowitz - Bug gas/1948 - * symbols.c (colon): Also check if now_seg is bss_section when a symbol - is being redefined. + * config/tc-sparc.c (sparc_target_format): Handle TE_VXWORKS. + (GOTT_BASE, GOTT_INDEX): New. + (tc_gen_reloc): Don't alter relocations against GOTT_BASE and + GOTT_INDEX when generating VxWorks PIC. + * configure.tgt (sparc*-*-vxworks*): Remove this special case; + use the generic *-*-vxworks* stanza instead. -2005-12-02 Arnold Metselaar +2006-04-04 Alan Modra - * config/tc-z80.c (emit_ldreg): fix bug in ld rr, + PR 997 + * frags.c (frag_offset_fixed_p): New function. + * frags.h (frag_offset_fixed_p): Declare. + * expr.c (expr): Use frag_offset_fixed_p when simplifying subtraction. + (resolve_expression): Likewise. -2005-11-26 Arnold Metselaar +2006-04-03 Sterling Augustine - * config/tc-z80.c (z80_start_line_hook): issue an error when - redefining a symbol with equ - * doc/as.texinfo(equ): mention difference with .equiv - * doc/as.texinfo(err): fix typo - * doc/c-z80.texi(equ): redefining a symbol with equ is no longer - allowed + * config/tc-xtensa.c (init_op_placement_info_table): Check for formats + of the same length but different numbers of slots. -2005-11-24 John David Anglin +2006-03-30 Andreas Schwab - Bug gas/1896 - * config/tc-hppa.c (hppa_fix_adjustable): Don't reject for reduction - R_HPPA relocations that are 32-bits wide. - -2005-11-23 Daniel Jacobowitz - Thiemo Seufer - - * config/tc-mips.c (append_insn): Handle BFD_RELOC_16_PCREL_S2. - (macro_build): Complain for invalid branch displacements. - (mips_validate_fix): Delete. - (md_apply_fix): Re-add pcrel support for branches. Use consistent - text for misaligned branch targets. - (tc_gen_reloc: Re-add pcrel support for branches. Handle strange - BFD pcrel processing. Remove error for unresolved branches. - * config/tc-mips.h (TC_VALIDATE_FIX, mips_validate_fix): Delete. - -2005-11-22 James E Wilson - - * config/tc-ia64.c (emit_one_bundle): Perform last_slot < 0 check - even when manual_bundling isn't set. - - * config/tc-ia64.c (slot_index): Emit an error instead of a warning - when the frag chain is broken by section switching. - -2005-11-18 Jie Zhang - - * config/bfin-defs.h (IS_BREG, IS_LREG): New macros. - * config/bfin-parse.y (asm_1): Check register type for load immediate - instruction. - -2005-11-17 Alexandre Oliva - - * config/tc-ppc.c (ppc_frob_file_before_adjust): Do not reference - dotname. - * write.c (write_object_file): Do not remove used weakrefd. - -2005-11-17 Jan Beulich - - * dw2gencfi.c (dot_cfi): Put argument parsing for cases - DW_CFA_restore and DW_CFA_undefined in a loop. - -2005-11-17 Jan Beulich - - - * symbols.h (S_CLEAR_VOLATILE): Declare. - * symbols.c (colon): Also accept redefinable symbols for - redefinition. Clone them before modifying. - (S_CLEAR_VOLATILE): Define. - * cond.c (s_ifdef): Also test for equated symbols. - * read.c (s_comm_internal): Also exclude non-redefinable - equated symbols. Clone redefinable ones before modifying. - (s_weakref): Clone redefinable symbols before modifying. - * doc/internals.texi: Document sy_volatile, sy_forward_ref, - S_IS_VOLATILE, S_SET_VOLATILE, S_CLEAR_VOLATILE, - S_IS_FORWARD_REF, and S_SET_FORWARD_REF. - -2005-11-16 Alan Modra - - * config/tc-hppa.c (pa_comm): Set bfd_com_section segment. - -2005-11-16 Alan Modra - - * configure.tgt (i386-*-gnu*): Set em=gnu. - * config/te-gnu.h: New file. - * config/tc-i386.c: Don't use '/' as comment char for TE_GNU. - -2005-11-16 Alan Modra - - * config/tc-ppc.c (ppc_pe_comm): Set bfd_com_section segment. - * config/tc-alpha.c (s_alpha_comm): Likewise. Also, remove - redundant check. - * read.c (s_lsym): Remove non-BFD assembler sym handling. - -2005-11-16 Alan Modra - - * read.c (s_comm_internal): Set bfd_com_section segment. - (s_mri_common): Likewise. - * write.c (write_object_file): Remove non-BFD assembler common - sym handling. - -2005-11-15 Daniel Jacobowitz - - * config/tc-arm.c (s_arm_unwind_save_core): Don't emit an extra - opcode if r4-r15 are not saved. - -2005-11-15 Alan Modra - - * symbols.c (S_GET_VALUE): Remove non-BFD assembler recursion guard. - -2005-11-14 Jan Beulich - - * config/tc-ia64.c (AR_FCR, AR_EFLAG, AR_CSD, AR_SSD, AR_CFLG, - AR_FSR, AR_FIR, AR_FDR, AR_CCV, AR_EC): Define. - (ar): Use AR_* instead of literals. - (CR_DCR, CR_ITM, CR_IVA, CR_PTA, CR_GPTA, CR_LID, CR_ITV, - CR_PMV, CR_CMCV): Define. - (cr): Use CR_* instead of literals. - -2005-11-14 Jan Beulich - - * config/tc-ia64.c (md): Rename regsym to indregsym and move - it to the end of the structure. - (ar): Field regnum is unsigned. - (cr): Likewise: - (indirect_reg): Likewise. - (declare_register_set): Parameter regnum is unsigned. - (declare_register): Parameter numregs and base_regnum are - unsigned. So is the local loop variable. - (md_begin): Restrict scope of local variable regnum, which - also is unsigned. Replace loops with function calls where - possible. Re-order things so that register groups are kept - together. Remove all uses of regsym except for indirect - registers. Replace use of regsym by indregsym for indirect - registers. - (ia64_optimize_expr): Replace use of regsym by indregsym for - indirect registers, with appropriate bias. - -2005-11-14 David Ung - - * config/tc-mips.c (mips16_ip): Add handling of 'm' and 'M' codes - for the MIPS16e save/restore instructions. - -2005-11-11 Jan Beulich - - * doc/Makefile.am: Make asconfig.texi writeable before trying - to write to it. - * doc/Makefile.in: Refresh. - -2005-11-10 Jan Beulich - - * config/tc-i386.c (intel_e11): Don't special-case segment - registers in brackets. - -2005-11-10 Nick Clifton - - * config/tc-arm.c (BAD_ADDR_MODE): Define. - (arm_reg_parse_multi): Return NULL rather than FAIL. - (arm_reg_parse): Fix comment, the function returns FAIL rather - than NULL if it is unable to parse the register name. - (do_ldrex): Use BAD_ADDR_MODE. - Change error message for PC-relative addressing. - (do_strex): Likewise. - (do_t_ldrex): Use BAD_ADDR_MODE. - (do_t_strex): Likewise. - -2005-11-08 Jean-Jacques Metayer - - * config/tc-sparc.c (isoctal): Fix thinko. - -2005-11-08 Arnold Metselaar - - * expr.c (operand ): Use DOLLAR_AMBIGU rather than - flag_mri_m68k as condition for parsing the '$' as a prefix. - * as.h (DOLLAR_AMBIGU): Define if needed. - -2005-11-08 Nathan Sidwell - - Add ms2 support. - * config/tc-ms1.c (ms1_mach_bitmask): Initialize to MS1. - (ms1_architectures): Add ms2. - (md_parse_option): Add ms2. - (md_show_usage): Add ms2. - (md_assemble): Add JAL_HAZARD detection logic. - (md_cgen_lookup_reloc): Add MS1_OPERAND_LOOPSIZE case. - * doc/c-ms1.texi: New. - * doc/all.texi: Add MS1. - * doc/Makefile.am (CPU_DOCS): Add c-ms1.texi. - * doc/Makefile.in: Rebuilt. - * doc/Makefile: Rebuilt. - -2005-11-07 Steve Ellcey - - * configure: Regenerate after modifying bfd/warning.m4. - -2005-11-07 John David Anglin - - PR gas/1804 - * config/tc-hppa.c (md_apply_fix): Use number_to_chars_bigendian to - output constant data. - -2005-11-07 Mark Mitchell - - * doc/Makefile.am (asconfig.texi): Set top_srcdir. - * doc/Makefile.in: Regenerated. - * doc/as.texinfo: Document "@FILE". - -2005-11-07 Nick Clifton - - PR binutils/1568 - * config/obj-coff.c (obj_coff_section): Set readonly flag with the - 'x' attribute. Remember the actions of the 'w' and 'n' attributes - and do not allow the 'x','s' or 'd' attributes to change them. - -2005-11-07 John Levon - - * config/tc-i386.h (tc_comment_chars): Define. - * config/tc-i386.c (line_comment_chars): Use '/' unconditionally. - (i386_comment_chars): Add. - (md_parse_options): Process OPTION_DIVIDE. - (md_show_usage): Describe --divide option. - * doc/c-i386.texi: Document --divide option. - -2005-11-07 Arnold Metselaar - - * expr.c (op_encoding): Map '=' to O_SINGLE_EQ, if defined. - * config/tc-z80.h: Define O_SINGLE_EQ as O_eq. - -2005-11-07 Alan Modra - - * macro.c (buffer_and_nest): Skip labels regardless of - NO_PSEUDO_DOT and flag_m68k_mri. - -2005-11-07 Arnold Metselaar - - * expr.c (integer_constant): Match only 'B' as binary suffix if - NUMBERS_WITH_SUFFIX and LOCAL_LABELS_FB. Allow both 'b' and 'B' - otherwise. - -2005-11-04 Alexandre Oliva - - * read.c (s_weakref): Do not permit redefinitions. - * symbols.c (colon): Do not permit redefinitions of equated - symbols. - -2005-11-01 Thiemo Seufer - - PR gas/1299 - * Makefile.am: Disable -Werror for the itbl-lex.o rule. - * Makefile.in: Regenerate. - -2005-11-01 Thiemo Seufer - - * config/tc-mips.c (md_parse_option): Fix typo in comment. - -2005-10-30 Mark Mitchell - - * as.c (show_usage): Document "@FILE". - -2005-10-30 H.J. Lu - - * Makefile.am (OBJ_FORMATS): Remove vms. - Run "make dep-am". - * Makefile.in: Regenerated. - - * dep-in.sed: Replace " ./" with " ". - -2005-10-28 Dave Brolley - - Contribute the following change: - 2005-09-19 Dave Brolley - - * config/tc-m32c.c (default_isa): New static variable. - (m32c_isa): Now of type CGEN_BITSET. - (md_begin): Pass &m32c_isa to m32c_cgen_cpu_open. - -2005-10-28 Paul Brook - - * config/tc-arm.c (aeabi_set_public_attributes): Use selected_cpu - instead of mcpu_cpu_opt. - -2005-10-27 Sterling Augustine - - * config/tc-xtensa.c (find_vinsn_conflicts): Change error messages to - refer to "ports" instead of "queues". - (check_t1_t2_reads_and_writes): Pass correct interface values to - xtensa_interface_inout. - -2005-10-27 Jan Beulich - - * read.c (assign_symbol): Also consider equates already defined. - * symbols.c (symbol_clone): Also clone the underlying BFD symbol. - * config/obj-coff.h (obj_symbol_clone_hook): New. - (coff_obj_symbol_clone_hook): Declare. - * config/obj-coff.c (coff_obj_symbol_clone_hook): New. - -2005-10-26 DJ Delorie - - * config/tc-m32c.c (md_relax_table, subtype_mappings, - md_convert_frag): Add jsr.w support. - - * config/tc-m32c.c (md_assemble): Don't use errmsg as the format - itself. - (md_cgen_lookup_reloc): Add m32c bitbase operands. Add 8-s24 - and imm-8-HI operands. - -2005-10-26 Paul Brook - - * config/tc-arm.c (insns): Correct "sel" entry. - -2005-10-26 Jan Beulich - - * config/tc-i386.c (i386_operand): Don't check register prefix here. - (parse_real_register): Rename from parse_register. - (parse_register): New. - (i386_parse_name): New. - (md_operand): New. - (intel_e11): Don't tolerate registers in offset expressions anymore. - (intel_get_token): Don't check register prefix here. Copy the actual - register token, not the canonical register name. - * config/tc-i386.h (md_operand): Delete. - (i386_parse_name): Declare. - (md_parse_name): Define. - -2005-10-25 Arnold Metselaar - - * Makefile.am: Add Z80 cpu. - * Makefile.in: Regenerated. - * app.c (do_scrub_chars): Correctly scrub "ex af,af'" - and disallow newlines in quoted strings. - * configure.tgt: Add z80-*-coff. - * config/obj-coff.h: Add format "coff-z80". - * doc/Makefile.am: Add c-z80.texi. - * doc/Makefile.in: Regenerated. - * doc/all.texi: Add Z80. - * doc/c-z80.texi: New file - * doc/as.texinfo: Add z80 options and some z80-related remarks. - * config/tc-z80.c: New file - * config/tc-z80.h: New file - * NEWS: Mention new support. - -2005-10-25 H.J. Lu - - * write.c (adjust_reloc_syms): Undo the change made on - 2005-04-26 to allow local symbol set to undefined symbol. - -2005-10-24 H.J. Lu - - * Makefile.am (bfin-parse.tab.h): Removed. - (bfin-parse.h): Added. - * Makefile.in: Regenerated. - -2005-10-25 Alan Modra - - * po/POTFILES.in: Regenerate. - * po/gas.pot: Regenerate. - -2005-10-24 Bernd Schmidt - - * config/tc-bfin.c (Expr_Node_Gen_Reloc): If have symbol + constant, - make a single reloc with an offset rather than a stack. - * config/tc-bfin.h (MD_APPLY_SYM_VALUE): Define to 0. - -2005-10-24 Alexandre Oliva - - * read.c (potable): Add weakref. - (s_weakref): New. - * read.h (s_weakref): Declare. - * struc-symbol.h (struct symbol): Add sy_weakrefr and sy_weakrefd. - * symbols.c (colon): Clear weakrefr. - (symbol_find_exact): Rename to, and reimplement in terms of... - (symbol_find_exact_noref): ... new function. - (symbol_find): Likewise... - (symbol_find_noref): ... ditto. - (resolve_symbol_value): Resolve weakrefr without setting their - values. - (S_SET_WEAK): Call hook. - (S_GET_VALUE): Follow weakref link. - (S_SET_VALUE): Clear weakrefr. - (S_IS_WEAK): Follow weakref link. - (S_IS_WEAKREFR, S_SET_WEAKREFR, S_CLEAR_WEAKREFR): New. - (S_IS_WEAKREFD, S_SET_WEAKREFD, S_CLEAR_WEAKREFD): New. - (symbol_set_value_expression, symbol_set_frag): Clear weakrefr. - (symbol_mark_used): Follow weakref link. - (print_symbol_value_1): Print weak, weakrefr and weakrefd. - * symbols.h (symbol_find_noref, symbol_find_exact_noref): Declare. - (S_IS_WEAKREFR, S_SET_WEAKREFR, S_CLEAR_WEAKREFR): Declare. - (S_IS_WEAKREFD, S_SET_WEAKREFD, S_CLEAR_WEAKREFD): Declare. - * write.c (adust_reloc_syms): Follow weakref link. Do not - complain if target is undefined. - (write_object_file): Likewise. Remove weakrefr symbols. Drop - unreferenced weakrefd symbols. - * config/obj-coff.c (obj_frob_symbol): Do not force WEAKREFD - symbols EXTERNAL. - (pecoff_obj_set_weak_hook, pecoff_obj_clear_weak_hook): New. - * config/obj-coff.h (obj_set_weak_hook, obj_clear_weak_hook): Define. - * doc/as.texinfo: Document weakref. - * doc/internals.texi: Document new struct members, internal - functions and hooks. - -2005-10-24 Jie Zhang - - * Makefile.am (bfin-parse.h): Renamed from bfin-parse.tab.h. - (EXTRA_DIST): Add bfin-parse.h and bfin-lex.c. - * Makefile.in: Regenerate. - * config/bfin-lex.l: Include bfin-parse.h instead of bfin-parse.tab.h. - * config/tc-bfin.c (md_chars_to_number): Change the type of first - argument from unsigned char * to char * to remove signedness warnings. - -2005-10-24 Jan Beulich - - * config/tc-ia64.c (enum reg_symbol): Delete IND_MEM. - (dot_rot): Change type of num_* variables. Check for positive count. - (ia64_optimize_expr): Re-structure. - (md_operand): Check for general register. - -2005-10-24 Jan Beulich - - * config/tc-ia64.c (declare_register): Call symbol_create. - (md_begin): Remove local variables total, ar_base, and cr_base. - Start loops for registers at their respective first one. Don't - update md.regsym for alias names. Generate alias name tp for r13. - -2005-10-21 DJ Delorie - - * config/tc-m32c.c (md_cgen_lookup_reloc): Add more relocs. Print - names unstead of numbers. - -2005-10-19 David Ung - - * config/tc-mips.c (append_insn): Convert MIPS16 jr/jalr jumps - into jrc/jalrc versions if ISA_MIPS32+ and not doing the swap, - hence avoiding to emit a nop. - -2005-10-19 Jie Zhang - - * config/tc-bfin.c (md_begin): Let the lex_type of '(' be - LEX_BEGIN_NAME. - (bfin_start_line_hook): Remove the workaround for LSETUP(. - (bfin_name_is_register): Remove the workarounds for LSETUP( - and SAA(. - (bfin_start_label): Ditto. - -2005-10-18 Bob Wilson - - * config/tc-xtensa.c (xtensa_end_directive): Restore - default_lit_sections regardless of use_literal_section. - -2005-10-18 Jie Zhang - - * Makefile.am (bfin-lex.c): Update ylwrap invocation. - * Makefile.in: Regenerated. - -2005-10-18 Arnold Metselaar - - * doc/as.texinfo (.loc) Fix placement of '@end table'. - -2005-10-17 Bob Wilson - - * config/xtensa-istack.h (TInsn): Replace dwarf2_line_info with an - unsigned line number. Do not include "dwarf2dbg.h". - * config/tc-xtensa.c (md_pseudo_table): Remove entry for "loc". - (xtensa_dwarf2_directive_loc, xtensa_dwarf2_emit_insn): Delete. - (xg_build_to_insn, xg_build_token_insn): Update TInsn uses. - (md_assemble): Use as_where instead of dwarf2_where. - (xg_assemble_vliw_tokens): Use unsigned line numbers instead of - dwarf2_line_infos. Change to call new_logical_line followed by - dwarf2_emit_insn. - -2005-10-14 Mike Frysinger - - * doc/as.texinfo (Section): Add missing ']' to .section example. - -2005-10-12 John David Anglin - - PR binutils/941 - * config/tc-hppa.c (pa_ip): Use as_bad instead of as_fatal when an - unknown opcode is found. - -2005-10-12 Mark Mitchell - - * NEWS: Mention @file. - -2005-10-12 Nick Clifton - - * config/tc-avr.c: Convert to ISO C90 format. Fix formatting and - generally tidy up the code. - * config/tc-avr.h: Likewise. - -2005-10-12 Jan Beulich - - * config/tc-ia64.c (dot_reg_val): Use expression_and_evaluate. - (dot_pred_rel): Likewise. - (parse_operand): Likewise. - (ia64_unrecognized_line): Likewise. - (md_operand): Likewise. - -2005-10-11 Jan Beulich - - * expr.h (enum expr_mode): New. - (expression): Pass third argument to expr. - (expression_and_evaluate): New. - (deferred_expression): New. - (expr): Add third parameter. - (resolve_expression): New. - * struc-symbol.h (struct symbol): New members sy_volatile and - sy_forward_ref. - * symbols.c, symbols.h (symbol_clone): New. - (symbol_clone_if_forward_ref): New. - (snapshot_symbol): New. - (S_IS_VOLATILE): New. - (S_IS_FORWARD_REF): New. - (S_SET_VOLATILE): New. - (S_SET_FORWARD_REF): New. - * as.c (macro_expr): Use expression_and_evaluate. - * cond.c (s_if): Likewise. - (s_elseif): Likewise. - * dw2gencfi.c (cfi_parse_reg): Likewise. - * expr.c (operand): Add second parameter. Optionally call - deferred_expression. Pass mode argument to itself and md_parse_name. - Check mode before trying to evaluate symbol. Call - symbol_clone_if_forward_ref for both operands. - (expr): Add third parameter. Pass mode to operand and itself. - Optionally call resolve_expression. - (resolve_expression): New. - (get_single_number): Pass second argument to operand. - * read.c (potable): New entry for .eqv. - (read_a_source_file): Handle new == operator. - (get_absolute_expr): Use expression_and_evaluate. - (s_lsym): Likewise. - (assign_symbol): Rename second parameter. Call symbol_clone on - legal and illegal redefinition. Call S_SET_VOLATILE and - S_SET_FORWARD_REF depending on mode. - (s_set): Update description. - (s_space): Call resolve_expression. - (pseudo_set): Optionally call deferred_expression. Check - S_IS_FORWARD_REF before trying to simplify/resolve an expression. - (equals): Handle ==. - * config/tc-ia64.h (md_parse_name): Add mode parameter. - * config/tc-arc.c (arc_parse_cons_expression): Likewise. - * config/tc-m32r.h (md_parse_name): Likewise. - (m32r_parse_name): Likewise. - * config/tc-mmix.h (md_parse_name): Likewise. - * config/tc-mn10300.h (md_parse_name): Likewise. - (mn10300_parse_name): Likewise. - * config/tc-ppc.h (md_parse_name): Likewise. - * config/tc-sh.h (md_parse_name): Likewise. - (sh_parse_name): Likewise. - * config/tc-sh64.h (md_parse_name): Likewise. - (sh64_consume_datalabel): Likewise. - * config/tc-tic54x.h (md_parse_name): Likewise. - * config/tc-m32r.c (m32r_parse_name): Add mode parameter. Check it - before trying to evaluate symbol. - * config/tc-mn10300.c (mn10300_parse_name): Likewise. - * config/tc-sh.c (sh_parse_name): Likewise. - * config/tc-sh64.c (sh64_consume_datalabel): Add mode parameter. Pass - second argument to operandf. Pass mode parameter to sh_parse_name. - * doc/as.texinfo: Document .eqv and the == assignment operator. - -2005-10-10 Ian Lance Taylor - - * Makefile.am (EXTRA_DIST): Remove bfin-lex.l and bfin-defs.h. - * Makefile.in: Regenerate. - -2005-10-10 Arnold Metselaar - - * expr.c (operator): Allow "!=" as a synonym for "<>". - * doc/as.texinfo (Infix Op): Mention "!=". - -2005-10-08 John David Anglin - - * config/tc-hppa.c (strict): Don't initialize. Update comment. - (pa_ip): Promote from PA 1.0 to 1.1 immediately when 1.1 match is - found. Simplify handling of "ma" and "mb" completers. - -2005-10-08 Paul Brook - - * config/tc-arm.c: Don't provide fallback default for CPU_DEFAULT. - (arm_arch_used, thumb_arch_used, selected_cpu, selected_cpu_name): - New variables. - (arm_cpu_option_table): Add canonical_name. - (arm_cpus): Populate canonical_name field. - (s_arm_eabi_attribute, s_arm_arch, s_arm_cpu, s_arm_fpu, - aeabi_set_public_attributes, arm_md_end): New functions. - (md_pseudo_table): Add "cpu", "arch", "fpu" and "eabi_attribute". - (md_assemble): Set thumb_arch_used and arm_arch_used. - (md_begin): Set defaut cpu if CPU_DEFAULT not defined. - * config/tc-arm.h (md_end): Define. - * doc/c-arm.texi: Document .cpu, .arch, .fpu and .eabi_attribute. - -2005-10-06 Khem Raj - NIIBE Yutaka - - * config/tc-sh.c (allow_dollar_register_prefix): New variable. - (parse_reg_without_prefix): New function. - (parse_reg): Check for '$' register prefix if --allow-reg-prefix is - set. - (option md_longopts): Add allow-reg-prefix option. - * doc/c-sh.texi: Document --allow-reg-prefix option. - * NEWS: Mention the new switch. - -2005-10-03 Arnold Metselaar - - * doc/as.texinfo (Infix Ops): '<' and '>' are not shift - operators. - -2005-09-30 Sterling Augustine - Bob Wilson - - * config/tc-xtensa.c (xtensa_frob_label): Disallow labels in bundles. - -2005-09-30 H.J. Lu - - * Makefile.am: Run "make dep-am". - * Makefile.in: Regenerated. - * aclocal.m4: Likewise. - -2005-09-30 Mark Mitchell - - * as.c (main): Use expandargv. - -2005-09-30 Jan Beulich - - * config/tc-tic4x.c (tic4x_set): Advance input_line_pointer past - (removed) comma. - -2005-09-30 Catherine Moore - - * Makefile.am: Bfin support. - * Makefile.in: Regenerated. - * aclocal.m4: Regenerated. - * configure: Regenerated. - * configure.in: Bfin support. - * configure.tgt: Bfin support. - * config/bfin-aux.h: New file. - * config/bfin-defs.h: New file. - * config/bfin-lex.l: New file. - * config/bfin-parse.y: New file. - * config/tc-bfin.c: New file. - * config/tc-bfin.h: New file. - * doc/Makefile.am: Recognize c-bfin.texi. - * doc/Makefile.in: Regenerated. - * doc/all.texi: Bfin support. - * doc/as.texinfo: Likewise. - * doc/c-bfin.texi: Document bfin-specific syntax and - directives. - -2005-09-30 Paul Brook - - * config/tc-arm.c (opcode_tag): Add OT_cinfix3_legacy. - (opcode_lookup): Handle OT_cinfix3_legacy. Revert earlier change for - normal infix conditions. - (C3E): Include Thumb-2 definition. - (CL, cCL): Define. - (insns): Use them for legacy mnemonics. - -2005-09-30 Matthias Kurz - - * asintl.h: Prevent the inclusion of from the Solaris - version of when ENABLE_NLS is not defined. - -2005-09-29 Jan Beulich - - * config/tc-ia64.c (parse_operands): Always parse first operand of - alloc. - -2005-09-29 Arnold Metselaar - Alan Modra - - * app.c (do_scrub_chars): Match open and close quote of strings. - Remove redundant EOF test in case 7. - -2005-09-28 Jan Beulich - - * config/tc-i386.c (reloc): Disable signedness check for 4-byte - relocations in 16- and 32-bit modes. - (i386_displacement): Make pc-relative branch handling dependent - upon operand (rather than address) size. - -2005-09-28 Jan Beulich - - * dw2gencfi.c (dot_cfi): Call ignore_rest_of_line when not fully - parsing the input. - (dot_cfi_startproc): Likewise. - (dot_cfi_endproc): Likewise. Also check no extra input was given. - (dot_cfi_escape): Likewise. - -2005-09-28 Jan Beulich - - * config/tc-i386.h (x86_cons_fix_new): Declare unconditionally. - (TC_CONS_FIX_NEW): Define unconditionally. - (x86_pe_cons_fix_new): Remove. - * config/tc-i386.c (signed_cons): New. - (md_pseudo_table): Add slong. - (x86_cons_fix_new): Declare unconditionally. - (x86_pe_cons_fix_new): Merge into x86_cons_fix_new. - (tc_gen_reloc): Also consider BFD_RELOC_X86_64_32S for gotpc - conversion. - -2005-09-28 Arnold Metselaar - - * app.c (do_scrub_chars ): Check for full - buffer after copying string. - -2005-09-27 Paul Brook - - * config/arm.c (arm_cpus): Add more cpu names. - * doc/c-arm.texi: Document them. - -2005-09-21 Alan Modra - - * read.c (pseudo_set): Don't set undefined symbols to expr_section. - -2005-09-20 Richard Henderson - - * dwarf2dbg.c (process_entries): Fix uninitialized variable warning. - -2005-09-20 Richard Henderson - - * dwarf2dbg.c (struct line_entry): Replace frag and frag_ofs - with label. - (dwarf2_loc_mark_labels): New. - (dwarf2_gen_line_info_1): Split out of ... - (dwarf2_gen_line_info): ... here. Create the temp symbol here. - (dwarf2_emit_label): New. - (dwarf2_directive_loc_mark_labels): New. - (out_set_addr): Take a symbol instead of frag+ofs. - (relax_inc_line_addr): Likewise. - (emit_inc_line_addr): Assert delta non-negative. - (process_entries): Remove dead code. Update to work with temp - symbols instead of frag+ofs. - * dwarf2dbg.h (dwarf2_directive_loc_mark_labels): Declare. - (dwarf2_emit_label, dwarf2_loc_mark_labels): Declare. - * config/obj-elf.c (elf_pseudo_tab): Add loc_mark_labels. - * config/obj-elf.h (obj_frob_label): New. - * config/tc-alpha.c (alpha_define_label): Call dwarf2_emit_label. - * config/tc-arm.c, config/tc-hppa.c, config/tc-m68k.c, - config/tc-mips.c, config/tc-ppc.c, config/tc-sh.c, config/tc-xtensa.c: - Similarly in the respective tc_frob_label implementation functions. - * config/tc-i386.c (md_pseudo_table): Move file and loc to - non-elf section; add loc_mark_labels. - * config/tc-ia64.c (struct label_fix): Add dw2_mark_labels. - (ia64_flush_insns): Check for marked labels; emit line entry if so. - (emit_one_bundle): Similarly. - (ia64_frob_label): Record marked labels. - * config/tc-m68hc11.h (tc_frob_label): Remove. - * config/tc-ms1.c (md_pseudo_table): Remove file and loc. - * config/tc-sh.h (tc_frob_label): Pass sym to sh_frob_label. - * config/tc-sh64.h (tc_frob_label): Likewise. - * doc/as.texinfo (LNS directives): Docuement .loc_mark_blocks. - -2005-09-20 Alan Modra - - * read.c (pseudo_set): Set segment of expression syms to expr_section. - -2005-09-14 Jan Beulich - - * config/tc-i386.c (tc_x86_regname_to_dw2regnum): Add selector - registers, floating point control and status words, and mxcsr as - well as (for 64-bit code) segment base registers and rflags. - -2005-09-09 Dmitry Diky - - * config/tc-msp430.c (msp430_operands): Undo last changes. Instead... - (msp430_relax_frag): add a guard check to ensure that final fr_subtype - has been reached. - -2005-09-08 Chao-ying Fu - - * doc/as.texinfo: Document -mdsp and -mno-dsp options. - * doc/c-mips.texi: Likewise, and document ".set dsp" and ".set nodsp" - directives. - -2005-09-08 Paul Brook - - * config/tc-arm.c (do_smi, do_t_smi): Rename ... - (do_smc, do_t_smc): ... to this. - (insns): Remane smi to smc. - (md_apply_fix, tc_gen_reloc): Rename BFD_RELOC_ARM_SMI to - BFD_RELOC_ARM_SMC. - -2005-09-07 Richard Henderson - - * dwarf2dbg.c (dwarf2_where): Set line->isa. - (dwarf2_set_isa): New. - (dwarf2_directive_loc): Rearrange to allow all options on one line. - * dwarf2dbg.h (dwarf2_set_isa): Declare. - * doc/as.texinfo: Update .loc documentation. - -2005-09-07 Richard Henderson - - * dwarf2dbg.c: Include safe-ctype.h. - (DWARF2_LINE_OPCODE_BASE): Bump to 13. - (current): Initialize. - (dwarf2_emit_insn): Clear DWARF2_FLAG_BASIC_BLOCK, - DWARF2_FLAG_PROLOGUE_END, DWARF2_FLAG_EPILOGUE_BEGIN. - (dwarf2_directive_file): Cope with invalid filename. - (dwarf2_directive_loc): Add handling for basic_block, prologue_end, - epilogue_begin, is_stmt, isa. - (emit_inc_line_addr): Move line_delta == 0, addr_delta == 0 special - case down lower. - (process_entries): Handle isa, DWARF2_FLAG_PROLOGUE_END, - and DWARF2_FLAG_EPILOGUE_BEGIN. - (out_debug_line): Emit sizes for DW_LNS_set_prologue_end, - DW_LNS_set_epilogue_begin, DW_LNS_set_isa. - * dwarf2dbg.h (DWARF2_FLAG_IS_STMT): Rename from DWARF2_FLAG_BEGIN_STMT. - (DWARF2_FLAG_BASIC_BLOCK): Rename from DWARF2_FLAG_BEGIN_BLOCK. - (DWARF2_FLAG_PROLOGUE_END, DWARF2_FLAG_EPILOGUE_BEGIN): New. - (struct dwarf2_line_info): Add isa member. - * doc/as.texinfo (LNS directives): New node. - -2005-09-07 David Ung - - * config/tc-mips.c (append_insn): Undo last change. Instead add - guard to suppress calling frag_grow if the current instruction is - one that allows a delay slot. - -2005-09-06 Chao-ying Fu - - * config/tc-mips.c (mips_set_options): Add ase_mt for MT instructions. - (mips_opts): Add -1 to initialize ase_mt. - (file_ase_mt): New variable for -mmt. - (CPU_HAS_MT): New define. - (validate_mips_insn): Add supports for +t, +T, !, $, *, &, g operand - formats. - (mips_ip): Check ase_mt to enable MT instructions. - Handle !, $, *, &, +T, +t, g operand formats. - For "mftc1", "mfthc1", "cftc1", "mttc1", "mtthc1", "cttc1", we allow - odd float registers. - (OPTION_MT, OPTION_NO_MT): New define. - (OPTION_COMPAT_ARCH_BASE): Change because of inserting MT define. - (md_parse_option): Parse OPTION_MT and OPTION_NO_MT. - (mips_after_parse_args): Set ase_mt based on CPU. - (s_mipsset): Handle ".set mt" and ".set nomt". - (mips_elf_final_processing): Remind of adding new flag for MT ASE. - (md_show_usage): Show usage of -mmt and -mno-mt. - * doc/as.texinfo: Document -mmt and -mno-mt options. - * doc/c-mips.texi: Likewise, and document ".set mt" and ".set nomt" - directives. - -2005-09-06 Paul Brook - - * config/tc-arm.c (arm_it): Add relax field. - (T16_32_TAB): Add addi, addis, add_pc, add_sp, dec_sp, inc_sp, - b, bcond, ldr_pc, ldr_pc2, ldr_sp, str_sp, subi, subis. - (do_t_add_sub, do_t_addr, do_t_branch, do_t_ldst, - do_t_mov_cmp): Allow relaxation. - (output_relax_insn): New function. - (put_thumb32_insn): New function. - (output_inst): Use new functions. - (md_assemble): Don't throw error on relaxable instructions. - (insns): Change "b" entry from TCE(...) to tCE(...). - (md_estimate_size_before_relax): Return 2. - (md_convert_frag, relax_immediate, relax_adr, relax_addsub, - relax_branch, arm_relax_frag): New functions. - (arm_force_relocation): Return 0 for Thumb-2 immediate operand - relocations. - * config/tc-arm.h (md_convert_frag): Remove definition. - (md_relax_frag): Define. - (arm_relax_frag): Add prototype. - -2005-09-02 Paul Brook - - * config/tc-arm.c (do_rn_rd): Enforce SWP operand constraints. - -2005-09-02 Paul Brook - - * config/tc-arm.c (encode_arm_cp_address): Use - BFD_RELOC_ARM_T32_CP_OFF_IMM in thumb mode. - (do_iwmmxt_wldstbh): Use BFD_RELOC_ARM_T32_CP_OFF_IMM_S2 in thumb - mode. - (md_assemble): Only allow coprocessor instructions when Thumb-2 is - available. - (cCE, cC3): Define. - (insns): Use them for coprocessor instructions. - (md_pcrel_from_section): Handle BFD_RELOC_ARM_T32_CP_OFF_IMM. - (get_thumb32_insn): New function. - (put_thumb32_insn): New function. - (md_apply_fix): Handle BFD_RELOC_ARM_T32_CP_OFF_IMM and - BFD_RELOC_ARM_T32_CP_OFF_IMM_S2. - -2005-09-02 Paul Brook - - * config/tc-arm.c (opcode_lookup): Look for infix opcode when - incorrect suffix matches. - -2005-09-01 David Ung - - * config/tc-mips.c (append_insn): Correctly handle mips16 case - when the frags are different for the 2 instructions we want to - swap. If the lengths of the 2 instructions are not the same, we - won't do the swap but emit an nop. - -2005-09-01 Dmitry Diky - - * config/tc-msp430.c (msp430_operands): Emit dwarf2_emit_insn() - as appropriate. Change frag_variant() to frag_var() for relaxes. - -2005-08-29 Nick Clifton - - * write.c (generic_force_reloc): Do not call S_FORCE_RELOC if - there is no symbol. - -2005-08-26 Jan Beulich - - * config/tc-i386.c (intel_e09): Set JumpAbsolute when seeing a PTR- - qualified operand of a branch. - (intel_bracket_expr): Set JumpAbsolute here... - (intel_e11): ... rather than here. - -2005-08-26 Christian Groessler - - * configure.tgt: Set bfd_gas also for z8k cpu. - * config/tc-z8k.c (s_segm): Use bfd_set_arch_mach to set machine - type. - (newfix): Adapt to bfd reloc types. - (build_bytes): Adapt to bfd reloc types. Ensure that enough space - is available in the current frag. - (md_convert_frag): Adapt function parameters. - (tc_gen_reloc): New function. - (md_section_align): Use bfd_get_section_alignment. - (md_apply_fix): Adapt to bfd reloc types. Fix handling of - BFD_RELOC_Z8K_IMM4L, BFD_RELOC_8, BFD_RELOC_16, and BFD_RELOC_32 - relocations. - * config/tc-z8k.h (TARGET_ARCH): Define. - (tc_fix_adjustable): Define. - -2005-08-25 Chao-ying Fu - - * config/tc-mips.c (mips_set_options): Add ase_dsp for DSP instructions. - (mips_opts): Add -1 to initialize ase_dsp. - (file_ase_dsp): New variable for -mdsp. - (CPU_HAS_DSP): New define. - (validate_mips_insn): Add supports for 3, 4, 5, 6, 7, 8, 9, 0, ', :, @ - operand formats. - (mips_ip): Add min_range and max_range for checking singed numbers. - Check ase_dsp to enable DSP instructions. - Handle 3, 4, 5, 6, 7, 8, 9, 0, ', :, @ operand formats. - (OPTION_DSP, OPTION_NO_DSP): New define. - (OPTION_COMPAT_ARCH_BASE): Change because of inserting DSP define. - (md_parse_option): Parse OPTION_DSP and OPTION_NO_DSP. - (mips_after_parse_args): Set ase_dsp based on CPU. - (s_mipsset): Handle ".set dsp" and ".set nodsp". - (mips_elf_final_processing): Remind of adding new flag for DSP ASE. - (md_show_usage): Show usage of -mdsp and -mno-dsp. - -2005-08-23 David Ung - - * config/tc-mips.c (mips_cpu_info_table): Add 5kf to the table of - cpu names. - -2005-08-23 Alan Modra - - PR 1036 - * config/tc-ppc.c (ppc_symbol_chars): Add '%' and '['. - -2005-08-23 Phil Edwards - - * configure.tgt (*-*-vxworks): Match vxworks* instead. - -2005-08-22 Jan Beulich - - * config/tc-i386.c (object_64bit): New. - (i386_target_format): Initialize it. - (output_disp): Use object_64bit for relocation type determination. - (output_imm): Likewise. - (i386_validate_fix): Likewise. - (tc_gen_reloc): Likewise. - (lex_got): Likewise. Remove static mode_name. Change array size - of gotrel's rel field, and adjust its initializer. Adjust diagnostic. - (x86_cons): Use object_64bit for deciding whether quad fields can - have relocations. - -2005-08-18 Christian Groessler - - * config/tc-h8300.h: Remove TC_RELOC_MANGLE/tc_reloc_mangle. - * config/tc-mcore.h: Likewise. - * config/tc-z8k.h: Likewise. - * config/tc-z8k.c: Likewise. - * config/tc-sh.h: Remove TC_RELOC_MANGLE and - sh_coff_reloc_mangle declaration. - * config/tc-sh.c: (md_apply_fix): Fix comment for case - BFD_RELOC_SH_USES. - -2005-08-18 Kaz Kojima - - * config/tc-sh64.c (sh64_target_format): Check preset_target_arch - to confirm that no ISA is specified. - -2005-08-18 Nick Clifton - - * write.c (relax_segment): Count the number of frags being - processed and use this to compute a maximum limit on the number of - iterations that will be allowed when attempting to relax the - segment. - -2005-08-17 Danny Smith - - * config/obj-coff.c (obj_coff_weak): Set auxiliary record - of NT weak externals to IMAGE_WEAK_EXTERN_SEARCH_NOLIBRARY. - -2005-08-16 Alan Modra - - * config/tc-ppc.c (ppc_set_cpu): Don't select 64-bit based on - default cpu. - -2005-08-15 Paul Brook - - * config/tc-arm.c (do_t_mov_cmp): Fix encoding of i16-bit conditional - instructions. - (do_t_mvn_tst, do_t_neg, do_t_shift): Ditto. - -2005-08-15 Daniel Jacobowitz - - * config/tc-ppc.c (parse_cpu): Add -me300 support. - (md_show_usage): Likewise. - * doc/c-ppc.texi (PowerPC-Opts): Document it. - -2005-08-12 Martin Schwidefsky - - * config/tc-s390.c (md_parse_option): Add cpu type z9-109. - (md_gather_operands): Add support for optional operands. - -2005-08-12 Dmitry Diky - * config/tc-msp430.c (msp430_enable_relax): New flag. - (msp430_enable_polys): Likewise. - (OPTION_RELAX): New option. - (OPTION_POLYMORPHS): Likewise. - (md_longopts): New long options. - (md_show_usage): Updated. - (md_parse_option): Add new options handler. - (msp430_operands): Add check if polymorph insns are enabled. - (msp430_force_relocation_local): New function. - (md_apply_fix): Now delete relocs according to new flags combination. - (msp430_relax_frag): Convert long branches to short branches only if - flag msp430_enable_relax is set. - * config/tc-msp430.h (TC_FORCE_RELOCATION_LOCAL): Defined. - (msp430_force_relocation_local): Likewise. - * doc/c-msp430.texi: Describe new options. - -2005-08-11 Ian Lance Taylor - - * Makefile.am ($(srcdir)/make-gas.com): Remove target. - (stamp-mk.com): Likewise. - (EXTRA_DIST): Remove make-gas.com from list. - (MOSTLYCLEANFILES): Remove stamp-mk.com from list. - * Makefile.in: Regenerate. - -2005-08-11 Hans-Peter Nilsson - - * subsegs.c (subseg_change): Move declaration of seginfo to before - first statement. - -2005-08-11 Alan Modra - - * README-vms: Delete. - * config-gas.com: Delete. - * makefile.vms: Delete. - * vmsconf.sh: Delete. - * config/atof-tahoe.c: Delete. - * config/m88k-opcode.h: Delete. - * config/obj-bout.c: Delete. - * config/obj-bout.h: Delete. - * config/obj-hp300.c: Delete. - * config/obj-hp300.h: Delete. - * config/tc-a29k.c: Delete. - * config/tc-a29k.h: Delete. - * config/tc-h8500.c: Delete. - * config/tc-h8500.h: Delete. - * config/tc-m88k.c: Delete. - * config/tc-m88k.h: Delete. - * config/tc-tahoe.c: Delete. - * config/tc-tahoe.h: Delete. - * config/tc-tic80.c: Delete. - * config/tc-tic80.h: Delete. - * config/tc-w65.c: Delete. - * config/tc-w65.h: Delete. - * config/te-aux.h: Delete. - * config/te-delt88.h: Delete. - * config/te-delta.h: Delete. - * config/te-dpx2.h: Delete. - * config/te-hp300.h: Delete. - * config/te-ic960.h: Delete. - * config/vms-a-conf.h: Delete. - * doc/c-a29k.texi: Delete. - * doc/c-h8500.texi: Delete. - * doc/c-m88k.texi: Delete. - * README: Remove obsolete examples, and list of supported targets. - * Makefile.am: Remove a29k, h8500, m88k, tahoe, tic80, w65, - bout and hp300 support. - (DEP_FLAGS): Don't define BFD_ASSEMBLER. - * configure.in: Remove --enable-bfd-assembler, need_bfd, - primary_bfd_gas. - * configure.tgt: Remove a29k, h8300-coff, h8500-*, i960 non-elf, - m68k non bfd, m88k, or32-coff, tic80-*, vax non-bfd, w65k-*, *-nindy. - * as.c: Remove all non-BFD_ASSEMBLER code, support for above targets. - * as.h: Likewise. - * dw2gencfi.c: Likewise. - * dwarf2dbg.c: Likewise. - * ehopt.c: Likewise. - * input-file.c: Likewise. - * listing.c: Likewise. - * literal.c: Likewise. - * messages.c: Likewise. - * obj.h: Likewise. - * output-file.c: Likewise. - * read.c: Likewise. - * stabs.c: Likewise. - * struc-symbol.h: Likewise. - * subsegs.c: Likewise. - * subsegs.h: Likewise. - * symbols.c: Likewise. - * symbols.h: Likewise. - * tc.h: Likewise. - * write.c: Likewise. - * write.h: Likewise. - * config/aout_gnu.h: Likewise. - * config/obj-aout.c: Likewise. - * config/obj-aout.h: Likewise. - * config/obj-coff.c: Likewise. - * config/obj-coff.h: Likewise. - * config/obj-evax.h: Likewise. - * config/obj-ieee.h: Likewise. - * config/tc-arm.c: Likewise. - * config/tc-arm.h: Likewise. - * config/tc-avr.c: Likewise. - * config/tc-avr.h: Likewise. - * config/tc-crx.h: Likewise. - * config/tc-d10v.h: Likewise. - * config/tc-d30v.h: Likewise. - * config/tc-dlx.h: Likewise. - * config/tc-fr30.h: Likewise. - * config/tc-frv.h: Likewise. - * config/tc-h8300.c: Likewise. - * config/tc-h8300.h: Likewise. - * config/tc-hppa.h: Likewise. - * config/tc-i370.h: Likewise. - * config/tc-i386.c: Likewise. - * config/tc-i386.h: Likewise. - * config/tc-i860.h: Likewise. - * config/tc-i960.c: Likewise. - * config/tc-i960.h: Likewise. - * config/tc-ip2k.h: Likewise. - * config/tc-iq2000.h: Likewise. - * config/tc-m32c.h: Likewise. - * config/tc-m32r.h: Likewise. - * config/tc-m68hc11.h: Likewise. - * config/tc-m68k.c: Likewise. - * config/tc-m68k.h: Likewise. - * config/tc-maxq.c: Likewise. - * config/tc-maxq.h: Likewise. - * config/tc-mcore.c: Likewise. - * config/tc-mcore.h: Likewise. - * config/tc-mn10200.h: Likewise. - * config/tc-mn10300.c: Likewise. - * config/tc-mn10300.h: Likewise. - * config/tc-ms1.h: Likewise. - * config/tc-msp430.c: Likewise. - * config/tc-msp430.h: Likewise. - * config/tc-ns32k.c: Likewise. - * config/tc-ns32k.h: Likewise. - * config/tc-openrisc.h: Likewise. - * config/tc-or32.c: Likewise. - * config/tc-or32.h: Likewise. - * config/tc-ppc.c: Likewise. - * config/tc-ppc.h: Likewise. - * config/tc-s390.h: Likewise. - * config/tc-sh.c: Likewise. - * config/tc-sh.h: Likewise. - * config/tc-sparc.c: Likewise. - * config/tc-tic30.c: Likewise. - * config/tc-tic30.h: Likewise. - * config/tc-tic4x.c: Likewise. - * config/tc-tic4x.h: Likewise. - * config/tc-tic54x.c: Likewise. - * config/tc-tic54x.h: Likewise. - * config/tc-v850.h: Likewise. - * config/tc-vax.c: Likewise. - * config/tc-vax.h: Likewise. - * config/tc-xstormy16.h: Likewise. - * config/tc-xtensa.h: Likewise. - * config/tc-z8k.c: Likewise. - * config/tc-z8k.h: Likewise. - * config/vms-a-conf.h - * doc/Makefile.am: Likewise. - * doc/all.texi: Likewise. - * doc/as.texinfo: Likewise. - * doc/internals.texi: Likewise. - * doc/Makefile.in: Regenerate. - * Makefile.in: Regenerate. - * configure: Regenerate. - * config.in: Regenerate. - * po/POTFILES.in: Regenerate. - -2005-08-09 Nick Clifton - - PR 1070 - * macro.c (getstring): Do not treat round parentheses exactly the - same as angle brackets - the parentheses need to be preserved and - passed on to the macro processing code. - -2005-08-08 Nick Clifton - - * config/tc-msp430.c (MSP430_ISA_21): Define. - (mcu_types): Add entries for msp430x21xx variants. - -2005-08-08 Nick Clifton - - PR 1070 - * macro.c (getstring): Treat round parentheses in the same way as - angle brackets. - (get_any_string): Likewise. - -2005-08-07 H.J. Lu - - PR gas/1118 - * as.c (parse_args): Handle -al=. - -2005-08-07 Nick Clifton - - * read.c (s_app_line): Accept a line number of 0 for compatibility - with gcc's output for assembler-with-cpp files. - -2005-08-05 Paul Brook - - * config/tc-arm.c (current_it_mask, current_cc): New variables. - (do_t_add_sub): Use correct encodings inside IT block. - (do_t_arit3c): Ditto. - (do_t_it): Simplify logic. Set current_it_mask and current_cc. - (md_assemble): Verify conditional suffixes agains IT blocks. - -2005-08-05 Paul Brook - - * config/tc-arm.c (encode_thumb32_immediate): Only accept shifted - constants. - (encode_thumb32_shifted_operand): Prohibit register shifts. - (encode_thumb32_addr_mode): Fix typo. - (insns): Correct thumb2 ldm and stm opcodes. - -2005-08-02 Khem Raj - - * config/tc-arm.c (do_iwmmxt_wldstd): Correct the offset range for - WLDRD/WSTRD instruction. - -2005-08-02 Alan Modra - - * config/tc-ppc.c (md_apply_fix ): Don't warn on overflow - if emitting a reloc. - -2005-07-29 Thiemo Seufer - - * config/tc-mips.c (s_mips_globl): Allow multiple symbols per .globl. - -2005-07-29 Paul Brook - - * config/tc-arm.c (T16_32_TAB): Add "addr". Fix encoding of push and - pop. - (do_t_addr): Implement 32-bit variant. - (do_t_push_pop): Make some errors warnings. Handle single register - 32-bit case. - (insns): Use tCE for adr. - (md_pcrel_from_section): Handle BFD_RELOC_ARM_T32_ADD_PC12. - (md_apply_fix): Ditto. - -2005-07-29 Paul Brook - - * config/tc-arm.c (parse_tb): New function. - (enum operand_parse_code): Add OP_TB. - (parse_operands): Handle OP_TB. - (do_t_add_sub_w, do_t_tb): New functions. - (insns): Add entries for addw, subw, tbb and tbh. - (md_apply_fix): Handle BFD_RELOC_ARM_T32_IMM12. - -2005-07-29 Kazuhiro Inaoka - - * config/tc-m32r.c (m32r_check_fixup): Fixed X_op check. - -2007-07-27 H.J. Lu - - * config/tc-i386.c (handle_large_common): Declare only for ELF. - -2005-07-27 Jan Beulich - - * config/tc-ia64.h (unw_r_record): Change type of fr_mem to unsigned - int. - (unw_p_record): Remove unused/redundant fields imask and rmask. - Combine spoff and pspoff into a union. Combine gr and br into a - union. Change type of grmask and brmask to unsigned char. Change type - of frmask to unsigned int. - (unw_x_record): Combine spoff, pspoff, and treg into a union. - * config/tc-ia64.c (unwind): New field 'pending_saves'. - (check_pending_save): New. - (alloc_record): Clear out entire record. - (output_psp_gr): Use renamed structure fields. - (output_psp_sprel): Likewise. - (output_rp_gr): Likewise. - (output_rp_br): Likewise. - (output_rp_psprel): Likewise. - (output_rp_sprel): Likewise. - (output_pfs_gr): Likewise. - (output_pfs_psprel): Likewise. - (output_pfs_sprel): Likewise. - (output_preds_gr): Likewise. - (output_preds_psprel): Likewise. - (output_preds_sprel): Likewise. - (output_spill_base): Likewise. - (output_unat_gr): Likewise. - (output_unat_psprel): Likewise. - (output_unat_sprel): Likewise. - (output_lc_gr): Likewise. - (output_lc_psprel): Likewise. - (output_lc_sprel): Likewise. - (output_fpsr_gr): Likewise. - (output_fpsr_psprel): Likewise. - (output_fpsr_sprel): Likewise. - (output_priunat_gr): Likewise. - (output_priunat_psprel): Likewise. - (output_priunat_sprel): Likewise. - (output_bsp_gr): Likewise. - (output_bsp_psprel): Likewise. - (output_bsp_sprel): Likewise. - (output_bspstore_gr): Likewise. - (output_bspstore_psprel): Likewise. - (output_bspstore_sprel): Likewise. - (output_rnat_gr): Likewise. - (output_rnat_psprel): Likewise. - (output_rnat_sprel): Likewise. - (output_spill_psprel): Likewise. - (output_spill_sprel): Likewise. - (output_spill_reg): Likewise. - (output_fr_mem): Likewise. Allocate one unwind record per set mask - bit. - (output_frgr_mem): Likewise. - (output_gr_mem): Likewise. - (output_br_mem): Likewise. - (output_gr_gr): Likewise. - (output_br_gr): Likewise. - (fixup_unw_records): Likewise. - (process_one_record): Use renamed structure fields. For gr_gr and - br_gr, collect mask from chain of records before output. - (in_prologue): Simplify and eliminate early returns. Call - check_pending_save. - (in_body): Simplify and eliminate early returns. - (dot_body): Call check_pending_save. - (md_assemble): Update comment. Deal with pending saves. - -2005-07-26 Jan Beulich - - * config/tc-i386.c (optimize_imm): Calculate candidate immediates - mask from guessed suffix, but mask out other immediate types only - if at least on candidate is valid for the insn. - -2005-07-25 DJ Delorie - - * config/tc-m32c.c (md_cgen_lookup_reloc): Add 8 bit operands. - Support %mod() modifiers from opcodes. - * doc/c-m32c.texi (M32C-Modifiers): New section. - -2005-07-25 Jan Hubicka - H.J. Lu - - * config/obj-elf.c: Include "elf/x86-64.h" if TC_I386 is - defined. - (elf_com_section_ptr): New. - (elf_begin): Set elf_com_section_ptr to bfd_com_section_ptr. - (elf_common_parse): Make it global. Use elf_com_section_ptr - instead of bfd_com_section_ptr. - (obj_elf_change_section): Handle x86-64 large bss sections. - - * config/obj-elf.h (elf_com_section_ptr): New. - (elf_common_parse): New. - - * config/tc-i386.c (handle_large_common): New. - (md_pseudo_table): Add "largecomm". - (x86_64_section_letter): New. - (x86_64_section_word): New. - - * config/tc-i386.h (x86_64_section_word): New. - (x86_64_section_letter): New. - (md_elf_section_letter): New. Defined. - (md_elf_section_word): Likewise. - -2005-07-21 Ralf Corsepius - - * configure.tgt: Remove i386-*-rtemself*. - Remove sparc-*-rtemself*. - -2005-07-21 Ben Elliston - - * config/tc-m68k.h: Remove TE_LYNX conditional code. - -2005-07-21 Paul Brook - - * config/tc-arm.c (encode_thumb32_addr_mode): Don't set - inst.reloc.pc_rel. - -2005-07-20 Tavis Ormandy - - * messages.c: Use vsnprintf instead of vsprintf. - -2005-07-20 Kazuhiro Inaoka - - * config/tc-m32r.c (tc_gen_reloc): Check BFD_RELOC_32_PCREL and - BFD_RELOC_16_PCREL to Support R_M32R_REL32. - -2005-07-18 Nick Clifton - - * configure.tgt: Restore alpha ordering to list of arches. - -2005-07-18 John David Anglin - - * tc-hppa.c (pa_ip): Reject match for '#' immediate if not pa20. - -2005-07-18 Jan Beulich - - * config/tc-i386.c (md_begin): Use IS_ELF. - (tc_i386_fix_adjustable): Likewise. - (md_estimate_size_before_relax): Likewise. - (md_apply_fix): Likewise. - (i386_target_format): Likewise. - (lex_got): Define to NULL when not ELF or when LEX_AT. Check IS_ELF. - (i386_immediate): Remove #ifdef LEX_AT. - (i386_displacement): Likewise. - * config/tc-i386.h (x86_cons): Prototype only when ELF and when not - LEX_AT. - -2005-07-18 Jan Beulich - - * config/tc-i386.c (reloc): Convert to ISO C90. Change first - parameter to unsigned. Parameter sign now is tristate - zero/ - positive mean unsigned/signed, negative means signedness doesn't - matter. Check field size, - signedness, and pcrel-ness are in agreement between relocated field - and relocation type. Adjust diagnostics. - (optimize_imm): And type mask of operand instead of overwriting it. - (lex_got): Convert to ISO C90. Add third parameter. Add new field to - local structure and initialize gotrel accordingly. Pass caller as - mask of types that the operator can match. - (x86_cons_fix_new): Let reloc know that signedness of relocation - doesn't matter. - (x86_pe_cons_fix_new): Likewise. - (x86_cons): Pass additional argument to lex_got. - (i386_immediate): New local variable 'types'. Pass its address as - additional argument to lex_got. Mask out operand types not supported - befoe returning. - (i386_displacement): Likewise. Set bigdisp to all types supported in - 64-bit mode, combining the previously split initialization. - -2005-07-18 Jan Beulich - - * config/tc-i386.c (parse_insn): Reject prefix if unavailable in - current mode. - -2005-07-16 John David Anglin - - * config/tc-hppa.c (pa_ip): Search entire mnemonic before considering - promoted match. - -2005-07-16 Alan Modra - - * Makefile.am: Run "make dep-am". - * Makefile.in: Regenerate. - -2007-07-15 H.J. Lu - - * gas/config/tc-i386.h (CpuVMX): New. - (CpuUnknownFlags): Add CpuVMX. - -2005-07-14 Jim Blandy - - Add support for the Renesas M32C. - * Makefile.am (CPU_TYPES): List m32c. - (TARGET_CPU_CFILES): List config/tc-m32c.c. - (TARGET_CPU_HFILES): List config/tc-m32c.h. - * configure.in: Add case for m32c. - * configure.tgt: Add cases for m32c and m32c-*-elf. - * configure: Regenerated. - * config/tc-m32c.c, config/tc-m32c.h: New files. - * doc/Makefile.am (CPU_DOCS): Add c-m32c.texi. - * doc/Makefile.in: Regenerated. - * doc/all.texi: Set M32C. - * doc/as.texinfo: Add text for the M32C-specific options and line - comment characters, and refer to c-m32c.texi. - * doc/c-m32c.texi: New file. - -2005-07-14 Nick Clifton - - PR 1069 - * config/tc-crx.c (reset_vars): Use strncpy to prevent overflowing - the ins_parse buffer. - -2005-07-10 Ralf Corsepius - - * configure.tgt: Remove a29k-*-rtems*, hppa*-*-rtems*,i386-go32-rtems*, - i386-*-rtemscoff*, sparc-*-rtemsaout*. - -2005-07-10 H.J. Lu - - * config/tc-i386.c (optimize_disp): Optimize signed 32bit - displacements. - -2005-07-08 Ben Elliston - - * frags.h: Remove ANSI_PROTOTYPES conditional code. - * config/obj-elf.h: Likewise. - * config/tc-h8300.h: Likewise. - * config/tc-h8500.h: Likewise. - * config/tc-i370.h: Likewise. - * config/tc-i386.h: Likewise. - * config/tc-m68hc11.h: Likewise. - * config/tc-m68k.h: Likewise. - * config/tc-ppc.h: Likewise. - * config/tc-s390.h: Likewise. - * config/tc-sh.h: Likewise. - * config/tc-sparc.h: Likewise. - * config/tc-tic30.c: Likewise. - * config/tc-w65.h: Likewise. - * config/tc-xtensa.h: Likewise. - -2005-07-08 Hans-Peter Nilsson - - PR gas/1049 - * config/tc-cris.h (MD_APPLY_SYM_VALUE): Define. - -2005-07-07 Kaveh R. Ghazi - - * config/tc-tic30.c (debug): Add format attribute. Fix format - bugs. - -2005-07-06 H.J. Lu - - * config/tc-i386.c (cpu_arch): Add sse3. - - * config/tc-i386.h (CpuSSE3): Renamed from ... - (CpuPNI): This. Defined as CpuSSE3. - - * doc/c-i386.texi: Document .sse3. - -2005-07-06 Jan Beulich - - * config/tc-ia64.c (nop): Use zero for L-unit pseudo-nop. - -2005-07-05 Nick Clifton - - * config/tc-pdp11.c (md_apply_fix): Cast first argument to - md_chars_to_numbers to an unsigned pointer in order to avoid a - compile time warning. - -2005-07-05 Paul Brook - - * config/tc-ppc.c (ppc_target_format): Add VxWorks. - -2005-07-05 Aldy Hernandez - - * config/tc-ms1.c: New. - * config/tc-ms1.h: New. - * testsuite/gas/ms1/allinsn.d: New. - * testsuite/gas/ms1/allinsn.s: New. - * testsuite/gas/ms1/badinsn.s: New. - * testsuite/gas/ms1/badinsn1.s: New. - * testsuite/gas/ms1/badoffsethigh.s: New. - * testsuite/gas/ms1/badoffsetlow.s: New. - * testsuite/gas/ms1/badorder.s: New. - * testsuite/gas/ms1/badreg.s: New. - * testsuite/gas/ms1/badsignedimmhigh.s: New. - * testsuite/gas/ms1/badsignedimmlow.s: New. - * testsuite/gas/ms1/badsyntax.s: New. - * testsuite/gas/ms1/badsyntax1.s: New. - * testsuite/gas/ms1/badunsignedimmhigh.s: New. - * testsuite/gas/ms1/badunsignedimmlow.s: New. - * testsuite/gas/ms1/errors.exp: New. - * testsuite/gas/ms1/ldst.s: New. - * testsuite/gas/ms1/misc.d: New. - * testsuite/gas/ms1/misc.s: New. - * testsuite/gas/ms1/ms1-16-003.d: New. - * testsuite/gas/ms1/ms1-16-003.s: New. - * testsuite/gas/ms1/ms1.exp: New. - * testsuite/gas/ms1/msys.d: New. - * testsuite/gas/ms1/msys.s: New. - * testsuite/gas/ms1/relocs.d: New. - * testsuite/gas/ms1/relocs.exp: New. - * testsuite/gas/ms1/relocs1.s: New. - * testsuite/gas/ms1/relocs2.s: New. - -2005-07-05 Jan Beulich - - * config/tc-i386.h (CpuSVME): New. - (CpuUnknownFlags): Include CpuSVME. - * config/tc-i386.c (cpu_arch): Add .pacifica and .svme. Add opteron - as alias of sledgehammer. - (md_assemble): Include invlpga in the check for insns with two source - operands. - (process_operands): Include SVME insns in the check for ignored - segment overrides. Adjust diagnostic. - (i386_index_check): Special-case SVME insns with memory operands. - -2005-07-04 Khem Raj - Nick Clifton - - * tc-arm.c (struct arm_it): Make operands.imm signed to match its - use an immediate value. - (parse_vfp_reg_list): Make the 2nd parameter an unsigned pointer - since the register field of the operands structure is unsigned. - (s_arm_unwind_save_vfp): Make "reg" unsigned. - (parse_operands): Make the 2ns parameter an unsigned pointer to - match its use. - (do_ldrd): When using the imm field of the operands structure as a - second register field, treat it as unsigned. - -2005-07-04 Alan Modra - - PR 1004 - * config/obj-elf.c (obj_elf_change_section): Use backend - get_sec_type_attr. - -2005-07-01 Jan Beulich - - * config/tc-ia64.c (line_separator_chars): Add '{' and '}'. - (output_spill_psprel, output_spill_psprel_p): Combine. - (output_spill_sprel, output_spill_sprel_p): Combine. - (output_spill_reg, output_spill_regp_p): Combine. - (process_one_record): Handle psp_psprel. - (parse_predicate_and_operand): New. - (convert_expr_to_ab_reg): Two new parameters. Return void. Always - initialize output values. Emit diagnostic case here. - (convert_expr_to_xy_reg): Likewise. Don't allow r0, f0, and f1. - (add_unwind_entry): New second parameter. Allow first parameter to - be NULL. Parse optional tag, emit warning about further support for - it otherwise being missing. Check end-of-line when requested. - (dot_fframe): Clear operand when wrong. Allow tag. - (dot_vframe): Likewise. - (dot_vframesp): Likewise. Rename parameter, issue warning when psp - relative. - (dot_vframepsp): Remove. - (dot_altrp): Clear operand when wrong. Allow tag. - (dot_save): Likewise. Let default case also go through - add_unwind_entry. - (dot_savemem): Likewise. - (dot_restore): Don't return when wrong operand. Allow tag. - (dot_spillreg, dot_spillreg_p): Combine. Simplify by using - parse_predicate_and_operand and the new arguments to - convert_expr_to_ab_reg and convert_expr_to_xy_reg. Don't return - when wrong operand. Allow tag. - (dot_restorereg, dot_restorereg_p): Likewise. - (dot_spillmem, dot_spillmem_p): Likewise. - (dot_saveg): Clear operand when wrong. Perform tighter operand - checks. Allow tag. - (dot_savef): Likewise. - (dot_saveb): Likewise. - (dot_savegf): Likewise. - (dot_spill): Remove end-of-line check. Combine. Simplify by using - parse_predicate_and_operand and the new arguments to - convert_expr_to_ab_reg and convert_expr_to_xy_reg. Don't return - when wrong operand. Allow tag. - (popcount): New. - (dot_label_state): Don't return when wrong operand. - (dot_copy_state): Likewise. - (dot_unwabi): Likewise. Check if in prologue. - (dot_body): Don't call demand_empty_rest_of_line. - (dot_prologue): Type of mask and grsave is unsigned. Perform tighter - operand checks. - (md_pseudo_table): Also use dot_restorereg for .restorereg.p. Also - use dot_spillreg for .spillreg.p. Also use dot_spillmem for - .spillpsp.p and .spillsp.p. Also use dot_vframesp for .vframepsp. - (parse_operand): New second parameter. Don't deal with '}' here - anymore. Don't advance past end-of-line. - (parse_operands): Pass second argument to parse_operand. - (ia64_start_line): Prevent out-of-bounds access through - input_line_pointer. Deal with '}' here. - (ia64_unrecognized_line): Don't deal with '}' here. - (dot_alias): Use ignore_rest_of_line not its deprecated alias - discard_rest_of_line. - -2005-06-30 Zack Weinberg - - * config/tc-arm.c (T_OPCODE_BRANCH, encode_arm_addr_mode_2) - (encode_arm_addr_mode_3, encode_arm_cp_address, do_blx, do_t_blx) - (do_t_branch, insns [b, bl]): Don't encode pipeline offset. - (do_branch): Always set inst.reloc.pc_rel. - (s_arm_elf_cons): Disallow use of (plt) suffix. - (do_adrl): Adjust X_add_number unconditionally. - (md_pcrel_from): Rename md_pcrel_from_section, add second segT - argument. Handle all adjustment for pipeline offset here. - (md_apply_fix): No need to undo work of md_pcrel_from. No - need to extract pre-encoded pipeline adjustments from various - branch instructions. Generally, assume instructions are already - all-bits-zero in the field being fixed up. Remove all OBJ_ELF - special cases. Handle BFD_RELOC_ARM_PLT32 like - BFD_RELOC_ARM_PCREL_BRANCH. - (tc_gen_reloc): Remove OBJ_ELF special case. - * config/tc-arm.c: Define MD_PCREL_FROM_SECTION. - -2005-06-30 Ben Elliston - - * Makefile.am (check-DEJAGNU): Don't search for expect. - * Makefile.in: Regenerate. - -2005-06-30 Ben Elliston - - * Makefile.am (EXPECT): Set to expect. - (RUNTEST): Likewise, set to runtest. - * Makefile.in: Regenerate. - -2005-06-23 Ben Elliston - - * config/m68k-parse.h: Use ISO C90. - * config/m68k-parse.y: Likewise. - * config/tc-m68k.h: Likewise. - -2005-06-20 H.J. Lu - - PR 1013 - * config/tc-i386.c (md_assemble): Don't call optimize_disp on - movabs. - (optimize_disp): Optimize only if possible. Don't use 64bit - displacement on non-constants and do same on constants if - possible. - -2005-06-17 Jan Beulich - - * config/tc-i386.c (reloc): Also handle BFD_RELOC_64_PCREL. - (tc_i386_fix_adjustable): Include BFD_RELOC_X86_64_GOTOFF64, - BFD_RELOC_X86_64_DTPOFF64, and BFD_RELOC_X86_64_TPOFF64. - (output_disp): Do GOTPC conversion also for BFD_RELOC_X86_64_32S - and BFD_RELOC_32_PCREL. Use BFD_RELOC_X86_64_GOTPC32 instead of - aborting. - (output_imm): Do GOTPC conversion also for BFD_RELOC_X86_64_32S. - Use BFD_RELOC_X86_64_GOTPC32 instead of aborting. - (tc_gen_reloc): Do GOTPC conversion also for BFD_RELOC_32_PCREL. - Use BFD_RELOC_X86_64_GOTPC32 instead of aborting. Also handle - BFD_RELOC_X86_64_GOTOFF64, BFD_RELOC_X86_64_GOTPC32, - BFD_RELOC_X86_64_DTPOFF64, and BFD_RELOC_X86_64_TPOFF64. Also - convert 8-byte pc-relative relocations. - (lex_got): Use BFD_RELOC_X86_64_GOTOFF64 for 64-bit @gotoff. - (i386_validate_fix): Likewise. - (x86_cons): Also handle quad values in 64-bit mode. - (i386_displacement): Also handle BFD_RELOC_X86_64_GOTOFF64. - (md_apply_fix): Include BFD_RELOC_X86_64_DTPOFF64 and - BFD_RELOC_X86_64_TPOFF64 in the TLS check. Also convert BFD_RELOC_64 - to pc-relative variant. Also check for BFD_RELOC_64_PCREL. - -2005-06-13 Zack Weinberg - - * config/tc-arm.c (find_real_start): Check S_IS_LOCAL on - symbolP as well as for names with a leading dot. Use ACONCAT. - (md_apply_fix): For branch relocations, only replace value - with fixP->fx_offset (under #ifdef OBJ_ELF) when !fixP->fx_done. - (arm_force_relocation): Remove #ifdef OBJ_ELF case. - * config/tc-arm.h (LOCAL_LABEL): Remove unnecessary parentheses. - (LOCAL_LABEL_PREFIX): Don't define. - -2005-06-10 Alan Modra - - * config/tc-hppa.c (pa_block): Allocate just one byte for the - fill pattern. - -2005-06-08 James E Wilson - - PR 994 - * config/tc-ia64.c (slot_index): Revert last change. If first_frag - is NULL, then emit a warning, and return the current index. - -2005-06-08 Tomas Hurka - - PR 991 - * config/tc-m68k.c (m68k_ip): Test for insn compatiblity using a - temporary copy of the operands array so that changes can be safely - backed out if the insn does not match. - (m68k_compare_opcode): Shortcut the test when the parameters are - the same. Return 1 if the names match but the second opcode is - further on in the array than the first. - -2005-06-08 Nick Clifton - - PR 994 - * config/tc-ia64.c (slot_index): Check for a NULL first_frag. - -2005-06-08 Kazuhiro Inaoka - - * config/tc-m32r.c (use_parallel): Change default value from 1 to 0. - -2005-06-07 Aldy Hernandez - Michael Snyder - Stan Cox - - * configure.in: Add ms1 case. - - * configure: Regenerate. - - * configure.tgt: Add ms1 case. - -2005-06-07 Bob Wilson - - * config/tc-xtensa.h (resource_table): Change units to unsigned chars. - * config/tc-xtensa.c (new_resource_table): Likewise. - (resize_resource_table): Likewise. - (release_resources): Fix assertion for unsigned values. - -2005-06-07 Zack Weinberg - - * cgen.c, cgen.h, tc.h, write.c, config/obj-coff.c - * config/tc-a29k.c, 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-cris.c, config/tc-crx.c, 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.h - * config/tc-frv.c, config/tc-frv.h, config/tc-h8300.c - * config/tc-h8500.c, 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-ip2k.c, config/tc-ip2k.h, config/tc-iq2000.c - * config/tc-iq2000.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-m88k.c, config/tc-maxq.c - * config/tc-mcore.c, config/tc-mcore.h, config/tc-mips.c - * config/tc-mips.h, config/tc-mmix.c, config/tc-mn10200.c - * config/tc-mn10300.c, config/tc-msp430.c, config/tc-ns32k.c - * config/tc-openrisc.h, config/tc-or32.c, config/tc-or32.h - * config/tc-pdp11.c, 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-sh64.c, config/tc-sh.c - * config/tc-sh.h, config/tc-sparc.c, config/tc-sparc.h - * config/tc-tahoe.c, config/tc-tic30.c, config/tc-tic4x.c - * config/tc-tic54x.c, config/tc-tic80.c, config/tc-v850.c - * config/tc-v850.h, config/tc-vax.c, config/tc-vax.h - * config/tc-w65.c, config/tc-xstormy16.c, config/tc-xstormy16.h - * config/tc-xtensa.c, config/tc-z8k.c: - Replace all instances of the string "_apply_fix3" with - "_apply_fix". - * po/POTFILES.in, po/gas.pot: Regenerate. - -2005-06-08 Alan Modra - - * Makefile.am: Run "make dep-am". - (POTFILES): Remove GAS_CFILES. - * Makefile.in: Regenerate. - -2005-06-07 David Ung - - * config/tc-mips.c (mips_cpu_info_table): Add cpu names m4k, 24k, - 24kc, 24kf and 24kfx under MIPS32 release 2. - -2005-06-04 Nick Clifton - - * config/tc-arm.c (CE, C3, CM, UE, UF): Redefine without reference - to their Thumb-enabled equivalents. - -2005-06-01 Maciej W. Rozycki - - * config/tc-mips.c (load_register): Add leading "0x" to the - output of sprintf_vma(). - (macro): Likewise. - -2005-06-01 Nick Clifton - - * config/tc-arm.c (TxCE, TxC3, TxCM, TUE, TUF): Remove redundant - test for the presence of thumb version of the parsing functions - since they must always exist and the test generates a compile time - warning message. - -2005-05-31 Richard Henderson - - * config/tc-alpha.c (O_lituse_jsrdirect): New. - (alpha_reloc_op): Add it. - (debug_exp): Handle it. - (DUMMY_RELOC_LITUSE_JSRDIRECT): New. - (emit_insn): Handle it. - * doc/c-alpha.texi (Alpha-Relocs): Document lituse_jsrdirect. - -2005-05-31 Christian Groessler - - * write.c (dump_section_relocs): Convert to ISO-C. - (write_relocs): Avoid signed/unsigned and fprintf argument - warnings in debug code. - -2005-05-26 Zack Weinberg - - * config/tc-arm.h (TC_FIX_TYPE): Change to int. - (TC_INIT_FIX_DATA): Initialize to 0, not NULL. - * config/tc-arm.c (fix_new_arm): Remove now-unnecessary cast. - (md_apply_fix3): Delete fix_is_thumb variable; refer to - fixP->tc_fix_data directly in the sole place it was used. - Explicitly truncate value, *valP, fixP->fx_addnumber, and - fixP->fx_offset to 32 bits, for consistent behavior between 32- - and 64-bit hosts. - -2005-05-27 Jan Beulich - - * config/tc-ia64.c (struct proc_pending): New. - (unwind): Replace proc_start with proc_pending. - (unwind_diagnostic): Check unwind.proc_pending.sym. - (dot_proc): Replace unwind.proc_start with unwind.proc_pending.sym. - Check if previous proc not closed. Record all entry points. - (dot_endp): Replace unwind.proc_start with unwind.proc_pending.sym. - Set symbol sizes for entry points recorded in dot_proc. Check - arguments for consistency with respective .proc's. - (md_assemble): Replace unwind.proc_start with - unwind.proc_pending.sym. - -2005-05-27 Jan Beulich - - * config/tc-ia64.c (emit_one_bundle): Restrict scope of ptr, end_ptr, - and last_ptr. Check all in-use slots for first one with non-NULL - unwind_record. Don't reload end_ptr before second update round. - -2005-05-26 James E Wilson - - * config/tc-ia64.c (extra_goodness): Update comment. - (md_begin): Add debugging code to print best_template table. - -2005-05-25 Jan Beulich - - * config/tc-ia64.c (md_begin): Don't try to match slot 2 of an MLX - template. - -2005-05-25 Jan Beulich - - * config/tc-ia64.c (ia64_gen_real_reloc_type): Also handle - BFD_RELOC_UNUSED when determining the width of the reloc. - -2005-05-25 Jan Beulich - - * config/tc-ia64.c (dot_endp): Clear out all three pointers in unwind - section entry. - -2005-05-25 Jan Beulich - - * config/tc-ia64.c (dot_radix): Rewrite. - -2005-05-25 Jan Beulich - - * config/tc-ia64.c (struct unw_rec_list): Remove next_slot_number - and next_slot_frag. - (alloc_record): Remove references to next_slot_number and - next_slot_frag. - (emit_one_bundle): Likewise. - -2005-05-22 Nick Clifton - - * config/tc-v850.c (md_apply_fix3): Pass the address of the - message buffer when invoking the insert function. - -2005-05-21 John David Anglin - - * config/tc-hppa.c (pa_ip): Promote architecture from PA 1.0 to 1.1 - only if an instruction match is found. - -2005-05-20 Bob Wilson - - * config/tc-xtensa.c (xg_assemble_vliw_tokens): Change subtraction - to addition in argument to xtensa_dwarf2_emit_insn. - -2005-05-19 Zack Weinberg - - * Makefile.am: Have 'all' depend on 'info'. - * Makefile.in: Regenerate. - -2005-05-19 Alan Modra - - * config/tc-ppc.c (ppc_force_relocation): Add BFD_RELOC_24_PLT_PCREL. - -2005-05-19 Anton Blanchard - - * config/tc-ppc.c (parse_cpu): Handle "-mpower5". - (md_show_usage): Document it. - (ppc_setup_opcodes): Insert POWER5 mnemonics. - * doc/c-ppc.texi (PowerPC-Opts): Document "-mpower5". - -2005-05-19 Jan Beulich - - * config/tc-ia64.c (dot_endp): Don't use global symbol for unwind - relocations in unwind section. - -2005-05-18 Nick Clifton - - * config/tc-v850.c (md_apply_fix3): Only use the insertion routine - if one exists. Ignore any error messages it may produce, just - allow it to perform the insertion. - -2005-05-17 Zack Weinberg - - * hash.c (hash_lookup): Add len parameter. All callers changed. - (hash_find_n): New interface. - * hash.h: Prototype hash_find_n. - * sb.c: Include as.h. - (scrub_from_sb, sb_to_scrub, scrub_position): New statics. - (sb_scrub_and_add_sb): New interface. - * sb.h: Prototype sb_scrub_and_add_sb. - * input-scrub.c (input_scrub_include_sb): Use sb_scrub_and_add_sb. - - * config/tc-arm.h (TC_FORCE_RELOCATION_LOCAL): Remove - reference to BFD_RELOC_ARM_GOT12 which is never generated. - * config/tc-arm.c: Rewrite, adding Thumb-2 support. - -2005-05-17 Daniel Jacobowitz - - * doc/Makefile.am (gasver.texi): Don't use $<. - * doc/Makefile.in: Regenerated. - -2005-05-17 Nick Clifton - - PR 876 - * symbols.c (resolve_symbol_value): Do not move symbols whose - value expression has not been resolved or finalized into the - absolute section as this will confuse other parts of the assembler - into thinking that their value is zero. - -2005-05-17 Jan Beulich - - * read.c (_find_end_of_line): New. - (find_end_of_line): New. - (HANDLE_CONDITIONAL_ASSEMBLY): Use it. - (read_a_source_file): Use it. - (s_globl): Use it. - (s_macro): Use it. - (get_line_sb): Use it. - (s_errwarn): Replace discard_rest_of_line by ignore_rest_of_line. - (s_comm_internal): Likewise. - (s_lsym): Likewise. - (s_macro): Likewise. - (s_ignore): Use ignore_rest_of_line. - * read.h (find_end_of_line): Prototype. - (discard_rest_of_line): Remove prototype. #define to - ignore_rest_of_line. - -2005-05-17 Nick Clifton - - * config/tc-v850,h (TC_FIX_TYPE): Define. - (TC_INIT_FIX_TYPE): Define. - * config/tc-v850.c (md_assemble): When creating a fix record the - operand in the tc_fix_data field. - (md_apply_fix3): When applying a resolved fix use the operand's - insertion procedure to store the value, if the operand has been - recorded. - -2005-05-15 Daniel Jacobowitz - - * Makefile.am (m68k-parse.c, itbl-parse.c): Update ylwrap - invocation. - * Makefile.in: Regenerated. - -2005-05-13 Sterling Augustine - Bob Wilson - - * config/tc-xtensa.c (xtensa_insnbuf_set_operand): Clarify error - message. - (xtensa_mark_zcl_first_insns): Fix incorrect nesting of conditional - for handling RELAX_CHECK_ALIGN_NEXT_OPCODE. - -2005-05-11 Alan Modra - - * config/tc-ppc.c (md_apply_fix3): Allow pcrel forms of BFD_RELOC_16, - BFD_RELOC_LO16, BFD_RELOC_HI16 and BFD_RELOC_HI16_S. - -2005-05-10 Michael Matz - - * frags.c (frag_grow): Don't be too greedy in allocating memory. - - * config/tc-hppa.c (pa_block): Check arguments to .block[z]. - -2005-05-10 Hans-Peter Nilsson - - PR binutils/886 - * config/tc-mmix.c (mmix_handle_mmixal): Rearrange slightly. - Handle label-without-colon before ordinary dot-pseudo as an - ordinary label. Don't leak memory for label-without-colon alone - on a line. Don't mmixal-munge operands for dot-pseudos. - -2005-05-10 Jan Beulich - - * macro.c (get_any_string): Remove the two last parameters. Replace - references to the former expand parameter by using macro_alternate. - Simplify loop condition for checking for end-of-string. - (get_string): Remove redunant call to sb_skip_white. - (do_formals): Remove two last arguments to get_any_string. - (macro_expand): Likewise. - (expand_irp): Likewise. - -2005-05-10 Jan Beulich - - * read.c (s_macro): Move local variable 'local' to smaller scope. - Call sb_kill on it when done. - -2005-05-09 Jan Beulich - - * config/tc-i386.c (optimize_disp): Discard displacement entirely - when zero and not required by encoding constraints. - -2005-05-09 H.J. Lu - - PR 936 - * config/tc-sh64.c (sh64_fake_label): New. - - * config/tc-sh64.h (TC_FAKE_LABEL): New. - - * doc/internals.texi (TC_FAKE_LABEL): Document. - - * write.c (TC_FAKE_LABEL): New. - (adjust_reloc_syms): Use it. - (write_object_file): Likewise. - -2005-05-09 Jan Beulich - - * config/tc-i386.c (parse_insn): Disallow use of prefix separator - and comma in Intel mode. - -2005-05-09 Jan Beulich - - * config/tc-i386.c (tc_x86_regname_to_dw2regnum): Correct 64-bit mode - names to match ABI. Add more registers for 32-bit and 64-bit modes. - Make name array static and const. Adjust lookup to account for NULL - entries (standing for unused register numbers). - -2005-05-09 Jan Beulich - - * config/tc-i386.c (parse_insn): Consider all matching instructions - when checking for string instruction after string-only prefix. - -2005-05-07 H.J. Lu - - PR 940 - * config/tc-ia64.c (start_unwind_section): Properly check - comdat group with SHF_GROUP. - -2005-05-06 Bob Wilson - - * doc/c-xtensa.texi (Literal Directive): Spelling correction. - -2005-05-06 Bob Wilson - - * config/tc-xtensa.c: Remove excess whitespace. - * config/tc-xtensa.h: Likewise. - * config/xtensa-istack.h: Likewise. - * config/xtensa-relax.c: Likewise. - * config/xtensa-relax.h: Likewise. - -2005-05-06 Nick Clifton - - * sb.h: Fix formatting of comments. - * sb.c: Fix formatting of comments. - -2005-05-06 Jan Beulich - - * sb.h (sb_add_buffer): Reintroduce. - * sb.c (sb_add_buffer): Likewise. - -2005-05-06 Jan Beulich - - * macro.c (new_formal, del_formal): New. - (do_formals): Use new_formal. Check for and parse qualifier. Warn if - required argument has default value. Stop looking for more formal - when there was a vararg one. - (macro_expand_body): Use new_formal and del_formal. - (macro_expand): Likewise. Initialize local variable err. Don't - return immediately when encountering an error. Warn when keyword - argument already had a value assigned. Eliminate duplicate clearing - of argument value. When current positional argument matches parameter - of vararg type, assign to it all the remaining arguments. Issue error - when required parameter does not have value. - (free_macro): Use del_formal. - (expand_irp): Initialize formal type. Free buffers associated with - formal prior to returning. - * macro.h (struct formal_struct): Add new field 'type' with new - enumeration type 'formal_type'. - * doc/as.texinfo: Document macro parameter qualifiers. - * NEWS: Mention new functionality. - -2005-05-06 Jan Beulich - - * cond.c (s_ifb): New. - * read.c (potable): Add s_ifb as handler for .ifb and .ifnb. - * read.h (s_ifb): Prototype. - * doc/as.texinfo: Document .ifb and .ifnb. - -2005-05-05 Steve Ellcey - - * config/tc-ia64.c (MIN): Undef. - -2005-05-05 Paul Brook - - * config/tc-i386.h (ELF_TARGET_FORMAT): Define for TE_VXWORKS. - -2005-05-05 Matt Thomas - - * config/tc-vax.c (md_assemble): Don't assume a valueT is 4 - bytes. - -2005-05-05 Nick Clifton - - * Update the address and phone number of the FSF organization in - the GPL notices in the following files: - COPYING, app.c, as.c, as.h, asintl.h, atof-generic.c, bignum.h, - bit_fix.h, cgen.c, cgen.h, cond.c, debug.c, depend.c, dw2gencfi.c, - dw2gencfi.h, dwarf2dbg.c, dwarf2dbg.h, ecoff.c, ecoff.h, ehopt.c, - emul-target.h, emul.h, expr.c, expr.h, flonum-copy.c, - flonum-konst.c, flonum.h, frags.c, frags.h, hash.c, hash.h, - input-file.c, input-file.h, input-scrub.c, itbl-lex.h, itbl-lex.l, - itbl-ops.c, itbl-ops.h, itbl-parse.y, listing.c, listing.h, - literal.c, macro.c, macro.h, 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/atof-ieee.c, - config/atof-vax.c, config/itbl-mips.h, config/m68k-parse.h, - config/m68k-parse.y, config/m88k-opcode.h, config/obj-aout.c, - config/obj-aout.h, config/obj-bout.c, config/obj-bout.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-hp300.c, - config/obj-hp300.h, config/obj-ieee.c, config/obj-ieee.h, - config/obj-multi.h, config/obj-som.c, config/obj-som.h, - config/tc-a29k.c, config/tc-a29k.h, config/tc-alpha.c, - config/tc-alpha.h, config/tc-arc.c, config/tc-arc.h, - config/tc-arm.h, config/tc-avr.c, config/tc-avr.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-h8500.c, config/tc-h8500.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-m32r.c, config/tc-m32r.h, config/tc-m68851.h, - config/tc-m68hc11.c, config/tc-m68hc11.h, config/tc-m68k.c, - config/tc-m68k.h, config/tc-m88k.c, config/tc-m88k.h, - config/tc-maxq.c, config/tc-maxq.h, config/tc-mcore.c, - config/tc-mcore.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-ns32k.c, - config/tc-ns32k.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-sh.c, config/tc-sh.h, - config/tc-sh64.c, config/tc-sh64.h, config/tc-sparc.c, - config/tc-sparc.h, config/tc-tahoe.c, config/tc-tahoe.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-tic80.c, config/tc-tic80.h, config/tc-v850.c, - config/tc-v850.h, config/tc-vax.c, config/tc-vax.h, - config/tc-w65.c, config/tc-w65.h, config/tc-xstormy16.c, - config/tc-xstormy16.h, config/tc-xtensa.c, config/tc-xtensa.h, - config/tc-z8k.c, config/tc-z8k.h, config/te-386bsd.h, - config/te-freebsd.h, config/te-hp300.h, config/te-hppa.h, - config/te-ic960.h, config/te-irix.h, config/te-nbsd.h, - config/te-netware.h, config/te-sparcaout.h, config/te-sun3.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, doc/fdl.texi - -2005-05-05 Nick Clifton - - * config/tc-arm.c (arm_opts): Make -mlittle-endian switch set - the target_big_endian variable to false. - -2005-05-04 Alan Modra - - * config/obj-ecoff.c (ecoff_frob_file_before_fix): Correct section - list traversal. Use bfd_section_list_prepend. - * config/tc-mmix.c (mmix_frob_file): Don't needlessly iterate - over the section list. - * config/tc-xtensa.c (xtensa_remove_section): Delete. - (xtensa_insert_section): Delete. - (xtensa_move_seg_list_to_beginning): Use bfd_section_list_remove - and bfd_section_list_prepend. - (xtensa_reorder_seg_list): Use bfd_section_list_remove and - bfd_section_list_insert_after. - -2005-05-03 Nick Clifton - - * config/obj-ecoff.c (ecoff_frob_file_before_fix): Fix invocations - of bfd_section_list... macros. - * config/tc-mmix.c (mmix_frob_file): Likewise. - * config/tc-xtensa.c (xtensa_remove_section): Likewise. - (xtensa_insert_section): Likewise. - - * macro.c (macro_hash): Remove static. - * macro.h (macro_hash): Provide an external declaration. - -2005-05-02 H.J. Lu - - * write.c (write_object_file): Use bfd_section_double_list_remove - to remove sections. - -2005-05-02 Daniel Jacobowitz - - * doc/Makefile.am (gasver.texi): Correct quoting. - * doc/Makefile.in: Regenerated. - -2005-04-29 Ralf Corsepius - - * configure.tgt: Add h8300*-*-rtemscoff. - Switch h8300*-*-rtems* to elf. - -2005-04-29 H.J. Lu - - * hash.c: Undo the last change. - * hash.h: Likewise. - -2005-04-29 Daniel Jacobowitz - - * doc/Makefile.am (gasver.texi): Depend on bfd/configure instead - of Makefile. - (DISTCLEANFILES): Remove. - (MAINTAINERCLEANFILES): Add asconfig.texi. - * aclocal.m4, Makefile.in, doc/Makefile.in: Regenerated. - -2005-04-29 Ben Elliston - - * Makefile.am (GAS_CFILES): Remove bignum-copy.c. - (GENERIC_OBJS): Likewise, remove bignum-copy.o. - (bignum-copy.o): Remove. - * Makefile.in: Regenerate. - * makefile.vms (OBJS): Remove bignum-copy.obj. - * symbols.h (local_symbol_make): Remove declaration. - (verify_symbol_chain_2): Likewise. - * symbols.c (local_symbol_make): Make static. - (max_indent_level): Likewise. - (verify_symbol_chain_2): Remove. - * macro.c (macro_hash): Make static. - * messages.c (fprint_value): Remove. - * read.h (get_absolute_expr): Remove. - (emit_leb128_expr): Likewise. - (do_s_func): Likewise. - * read.c (do_s_func): Make static. - (emit_leb128_expr): Likewise. - (get_absolute_expr): Likewise. - * as.h (as_howmuch): Remove declaration. - (fprint_value): Likewise. - * as.c (myname): Make static. - * input-scrub.c (as_howmuch): Remove. - (as_1_char): Likewise. - * input-file.h (input_file_is_open): Remove. - * input-file.c (input_file_is_open): Likewise. - * expr.h (expr_build_unary): Remove declaration. - (expr_build_binary): Likewise. - * expr.c (expr_build_unary): Remove. - (expr_build_binary): Likewise. - * hash.h (hash_replace): Remove declaration. - (hash_delete): Likewise. - * hash.c (hash_replace): Remove. - (hash_delete): Likewise. - * bignum-copy.c (bignum_copy): Move from here .. - * config/tc-vax.c (bignum_copy): .. to here. - * bignum.h (LOG_TO_BASE_2_OF_10): Remove. - (bignum_copy): Remove extern declaration. - * sb.h (string_count): Remove extern declaration. - (sb_build, sb_add_buffer, sb_print, sb_print_at): Likewise. - (sb_name): Likewise. - * sb.c (dsize): Replace preprocessor macro with static int. - (string_count): Make static. - (sb_build, sb_add_buffer, sb_print, sb_print_at): Likewise. - (sb_name): Likewise. - * config/obj-coff.c (dim_index): Make static. - * config/tc-i386.c (GOT_symbol): Likewise. - (output_invalid_buf): Likewise. - * doc/internals.texi (Warning and error messages): Remove the - prototype for fprint_value. - -2005-04-27 Ben Elliston - - * link.cmd: Remove. - -2005-04-26 H.J. Lu - - * config/obj-multi.h (FAKE_LABEL_NAME): Defined. - - * read.c (pseudo_set): Disallow symbol set to common symbol. - - PR 857 - * write.c (write_object_file): Report common symbol name when - disallowing local symbol set to common symbol. - (adjust_reloc_syms): Disallow local symbol set to undefined - symbol. - -2005-04-25 Jan Beulich - - * macro.c (macro_expand_body): Replace locals indicator parameters - with actual macro_entry. New local variables macro_line and err. - Don't return when encountering an error, just record the fact. - Detect local symbol name colliding with parameter. Track line number - inside of macro expansion. - (do_formals): Move local variable name to wider scope. Check - parameter of the same name doesn't already exist. In MRI mode, also - check it doesn't collide with the argument count pseudo-parameter). - (define_macro): Add file and line number parameters. Remove local - variable namestr. New local variable error. Initialize macro_entry - members file, line, and name. Don't return when encountering an - error, just record the fact. Use %s in some diagnostics for read.c - to insert the macro name. Free macro_entry on error. - (macro_expand): Pass macro_entry to macro_epand_body. Don't return - when encountering an error, just record the fact. - (expand_irp): Don't return when encountering an error, just record - the fact. - * macro.h (macro_struct): New members name, file, and line. - (define_macro): Add file and line number parameters. - * read.c (s_macro): Pass file and line to define_macro. Tag warning - regarding pseudo-op redefinition with the file/line that macro - definition started at. - -2005-04-22 Bob Wilson - - * config/tc-xtensa.c (LOOKAHEAD_ALIGNER): Delete macro. - (future_alignment_required): Remove ifdefs that use it. - -2005-04-22 Bob Wilson - - * config/tc-xtensa.c (xg_get_build_instr_size): Remove. - (xg_is_narrow_insn, xg_expand_narrow): Remove. Merge into... - (xg_is_single_relaxable_insn): ...here. Add "targ" and "narrow_only" - parameters. - (xg_assembly_relax, xg_find_narrowest_format, relaxation_requirements, - convert_frag_narrow): Use new version of xg_is_single_relaxable_insn. - -2005-04-21 Christian Groessler - - * config/tc-z8k.c (md_assemble): Fix buffer overrun in operand[] - array. - -2005-04-20 H.J. Lu - - * config/obj-aout.h (S_IS_EXTERN): Removed. - * config/obj-bout.h (S_IS_EXTERN): Likewise. - * config/obj-coff.h (S_IS_EXTERN): Likewise. - * symbols.c (S_IS_EXTERN): Likewise. - * symbols.h (S_IS_EXTERN): Likewise. - - * config/tc-alpha.c (tc_gen_reloc): Replace S_IS_EXTERN with - S_IS_EXTERNAL. - * config/tc-d10v.c (md_apply_fix3): Likewise. - * config/tc-ia64.c (ia64_fix_adjustable): Likewise. - * config/tc-iq2000.c (iq2000_fix_adjustable): Likewise. - * config/tc-m32r.c (m32r_fix_adjustable): Likewise. - * config/tc-mmix.c (mmix_adjust_symtab): Likewise. - * config/tc-sh64.c (shmedia_frob_file_before_adjust): Likewise. - (shmedia_md_convert_frag): Likewise. - * symbols.c (print_symbol_value_1): Likewise. - * write.c (write_object_file): Likewise. - -2005-04-20 Nick Clifton - - * config/tc-xtensa.c (get_aligned_diff): Change type of - branch_align to offsetT so that its signedness matches that of - target_size. - - * config/tc-mips.c (macro): Use sprintf_vma to convert a > 32 bit - number into a readable string. - (load_register): Likewise. - -2005-04-20 Andreas Schwab - - * config/tc-ia64.c (specify_resource): Initialize all of tmpl. - -2005-04-19 David S. Miller - - * config/tc-sparc.c (md_assemble): If sparc_ip gives us a - NULL insn, exit early. Remove now spurious NULL checks. - (sparc_ip): Use as_bad for unknown opcode errors, set *pinsn - to NULL and exit. - -2005-04-19 Jan Beulich - - * symbols.h (symbol_find_base): Remove prototype. - * symbols.c (save_symbol_name): Remove code section conditional upon - STRIP_UNDERSCORE. - (symbol_find): Remove. - (symbol_find_base): Rename to symbol_find. - * subsegs.c (section_symbol): Replace use of symbol_find_base with - symbol_find. - * config/obj-coff.c (tag_insert): Remove code section conditional - upon STRIP_UNDERSCORE. - (obj_coff_def): Likewise. - (obj_coff_endef): Replace use of symbol_find_base with symbol_find. - (coff_frob_symbol): Likewise. - (yank_symbols): Likewise. - (c_section_symbol): Likewise. - * config/obj-coff.h (DO_NOT_STRIP): Remove. - * config/tc-arm.c (symbol_locate): Remove code section conditional - upon STRIP_UNDERSCORE. - * config/tc-h8300.h (DO_NOT_STRIP): Remove. - * config/tc-h8500.h (DO_NOT_STRIP): Remove. - * config/tc-sh.h (DO_NOT_STRIP): Remove. - * config/tc-w65.h (DO_NOT_STRIP): Remove. - * config/tc-z8k.h (DO_NOT_STRIP): Remove. - -2005-04-19 Andreas Schwab - - * config/tc-ia64.c (md_assemble): Fix error message for wrong - access to application registers. - -2005-04-19 Jan Beulich - - * config/te-sysv32.h: Remove. - * Makefile.am (TARG_ENV_HFILES): Remove reference to - config/te-sysv32.h. - * Makefile.in (TARG_ENV_HFILES): Likewise. - -2005-04-19 Jan Beulich - - PR/847 - * config/tc-ia64.c (ia64_canonicalize_symbol_name): Re-allow zero- - length symbols. - -2005-04-18 Mark Kettenis - - * config/tc-i386.c (md_begin): Allow hyphens in mnemonics. - -2005-04-18 Maciej W. Rozycki - - * config/tc-mips.c (normalize_constant_expr): Don't check for - HAVE_32BIT_GPRS. - (check_absolute_expr): Only call normalize_constant_expr() if - HAVE_32BIT_GPRS. - (mips_ip): Likewise. - - * config/tc-mips.c (check_absolute_expr): Fix formatting. - -2005-04-18 Jan Beulich - - * macro.c (free_token): New, freeing all the memory associated with a - macro. - (do_formals): Move initializers to ... - (define_macro): ... here. - (delete_macro): Convert passed in name to lower case. Warn when - purging macro that doesn't exist. Use hash_jam instead of hash_delete. - -2005-04-15 Maciej W. Rozycki - - * config/tc-mips.c (normalize_constant_expr): Fix formatting. - -2005-04-15 Jan Beulich - - * config/obj-elf.c (obj_elf_struct): New. - (elf_pseudo_table). Use it for .offset and .struct. - -2005-04-14 Bob Wilson - Sterling Augustine - - * config/tc-xtensa.c (get_aligned_diff): Handle target_size larger - than the section alignment. - -2005-04-14 Bob Wilson - H.J. Lu - - * config/tc-xtensa.h (struct xtensa_frag_type): Add lit_frchain field. - * config/tc-xtensa.c (xg_translate_sysreg_op, - xtensa_translate_old_userregs_ops, - xtensa_find_unaligned_branch_targets, - xtensa_find_unaligned_loops, xtensa_fix_close_loop_end_frags, - relax_frag_add_nop): Support 64-bit host. - (xtensa_mark_literal_pool_location, xtensa_move_literals): Use - tc_frag_data lit_frchain and lit_seg fields instead of fr_var. - -2005-04-14 Mark Kettenis - - * configure.tgt: Add support for OpenBSD/sparc ELF. - - * configure.tgt: Set emulation for mips-*-openbsd*. - Remove broken mips-dec-openbsd* config. - * configure.in: Set default ABI for mips64-*-openbsd*. - * configure: Regenerate. - -2005-04-14 Maciej W. Rozycki - - * config/tc-mips.c (macro) [ldd_std]: Don't attempt the GP - optimization for constant addresses. - -2005-04-14 Nick Clifton - - * as.c (main): Move parse_args before symbol_begin and frag_init - so that the hash table size can be set before it is used. - * hash.c: Use an unsigned long type for the size of the hash - tables. - * hash.h (set_gas_hash_table_size): Update the prototype. - -2005-04-14 Alan Modra - - * Makefile.am (NO_WERROR): Define. Use instead of -Wno-error. - * acinclude.m4: Include ../bfd/warning.m4. - * configure.in: Invoke AM_BINUTILS_WARNINGS. - * Makefile.in: Regenerate. - * configure: Regenerate. - * doc/Makefile.in: Regenerate. - -2005-04-13 Maciej W. Rozycki - - * config/tc-mips.c (IS_ZEXT_32BIT_NUM): New macro. - (normalize_address_expr): New function to sign-extend address - offsets that fit into 32 bits in 32-bit mode. - (macro_build_ldst_constoffset): Use normalize_address_expr() - instead of a handcoded sequence. - (load_register): Likewise. Report oversized numbers in a useful - way. - (macro) [ld_st, ldd_std]: Reject all oversized offsets, not only - for constant addresses. Report oversized numbers in a useful way. - (mips_ip): Use normalize_address_expr() for addresses. - -2005-04-12 Mark Kettenis - - * config/tc-i386.c (output_insn): Handle VIA PadLock instructions - similar to other instructions now that they're marked as ImmExt. - -2005-04-12 Nick Clifton - - * hash.c (DEFAULT_SIZE): Delete. Replace with: - (gas_hash_table_size): New static variable. - (set_gas_hash_table_size): New function: Records a requested size - for the hash tables. - (get_gas_hash_table_size): New function: Return a prime number - near the requested size of the hash table. - (hash_new): Use get_gas_hash_table_size. - * hash.h: Add a prototype for set_gas_hash_table_size. - * as.c (show_usage): Add description of new switches: --hash-size - and --reduce-memory-overheads. - (option_values): Add OPTION_HASH_TABLE_SIZE and - OPTION_REDUCE_MEMORY_OVERHEADS. - (std_longpopts): Add entries for the new options. - (parse_args): Handle the new options. - * Makefile.am: Add a dependency of as.c on hash.h. - * Makefile.in: Regenerate. - * doc/as.texinfo: Document the new switches. - * NEWS: Mention the new switches. - -2005-04-12 Nick Clifton - - PR gas/818 - * config/tc-hppa.c (pre_defined_registers): Fix %farg[0-3] - synonyms. - -2005-04-12 Alan Modra - - * Makefile.am: Run "make dep-am". - * Makefile.in: Regenerate. - -2005-04-11 Sterling Augustine - Bob Wilson - - * config/tc-xtensa.c (check_t1_t2_reads_and_writes): Fix typo. - -2005-04-11 Mark Kettenis - - * configure.tgt (generic_target): Add support for OpenBSD/i386 ELF. - -2005-04-11 Jan Beulich - - * NEWS: Mention these changes and their effects. - * macro.c (get_token): Use is_name_beginner/is_part_of_name/ - is_name_ender. - (check_macro): Likewise. - (buffer_and_nest): Likewise. Permit multiple labels. Don't discard - labels together with the closing pseudo-op. - (macro_expand_body): Adjust comment. Range-check input before use. - Adjust mis-spelled diagnostic. Use is_name_beginner. - * read.c (try_macro): New. - (read_a_source_file): New static variable last_eol. Don't list - macro expansion lines more than once. Call try_macro. - (s_macro): Set section of line_label to absolute instead of undefined. - * doc/as.texinfo: Add information on the caveats of these changes. - -2005-04-11 Alan Modra - - * symbols.c (symbol_X_add_number): Change return type to "offsetT *". - * symbols.h (symbol_X_add_number): Update prototype. - -2005-04-10 Eric Christopher - - * symbols.c (symbol_X_add_number): Fix warning. - -2005-04-10 H.J. Lu - - * config/tc-m68k.c (md_begin): Support 64bit host. - (get_num): Support 64bit BFD on 32bit host. - -2005-04-10 H.J. Lu - - * config/tc-mips.c (md_apply_fix3): Fix typos in BFD_RELOC_64. - -2005-04-09 Alan Modra - - * read.c (assign_symbol): Remove const from parm. Fix xcalloc - call. Don't do the COFF hacks for multi-emulation gas. Move - demand_empty_rest_of_line back to caller. - (s_set, equals): demand_empty_rest_of_line here. - - PR gas/827 - * as.h (rs_dummy): Define. - * symbols.c (symbol_X_add_number): New function. - * symbols.h (symbol_X_add_number): Declare. - * stabs.c (aout_process_stab): Tidy symbol frag setting. - * read.c (assign_symbol): New function, split out from s_set. - Use symbol_find_or_make. Leave fr_type of dummy frag as rs_dummy. - Fix COFF hacks for multi-emulation gas. - (s_set): Call assign_symbol. Remove "register" keyword. - (set_zero_frag): New function. - (pseudo_set): Always check for assignment to section syms. - Always set segment and frag of symbol, and likewise extern for - aout/bout. Handle assignment of sym=sym+/-const specially. Don't - special case exp.X_add_number non-zero for O_symbol expressions. - (equals): Use assign_symbol. - -2005-04-08 Bob Wilson - - * config/tc-xtensa.c (xtensa_create_xproperty_segments): Skip - SEC_MERGE sections. - -2005-04-06 H.J. Lu - - * config/tc-i386.c (tc_gen_reloc): Don't turn - BFD_RELOC_X86_64_32S into BFD_RELOC_32. - -2005-04-06 Nick Clifton - - * po/rw.po: New translation: Kinyarwanda - * configure.in (ALL_LINGUAS): Add rw - * configure: Regenerate. - -2005-04-05 Sterling Augustine - Bob Wilson - - * config/tc-xtensa.c (branch_align_power): New. - (xtensa_find_unaligned_branch_targets, get_aligned_diff, - future_alignment_required): Use branch_align_power to check section - alignment as well as xtensa_fetch_width when aligning branch targets. - -2005-04-05 Bob Wilson - - * config/tc-xtensa.c: Warning fixes throughout. - (xtensa_fetch_width): Change to unsigned. - (assemble_nop, xtensa_find_unaligned_branch_targets, - xtensa_find_unaligned_loops, xg_assemble_vliw_tokens, - is_narrow_branch_guaranteed_in_range, xtensa_fix_close_loop_end_frags, - min_bytes_to_other_loop_end, unrelaxed_frag_min_size, - unrelaxed_frag_max_size, xtensa_fix_short_loop_frags, - count_insns_to_loop_end, unrelaxed_frag_min_insn_count, - get_text_align_max_fill_size, get_text_align_nop_count, - get_text_align_nth_nop_size, get_noop_aligned_address, - get_aligned_diff, convert_frag_align_next_opcode, - convert_frag_immed_finish_loop, xtensa_create_property_segments, - xtensa_create_xproperty_segments, xt_block_aligned_size): Clean up - types, avoiding size_t and using offsetT and addressT appropriately. - (get_text_align_power): Clean up types. Avoid incorrect bound. - (get_text_align_fill_size): Clean up types. Restructure for clarity. - -2005-04-04 H.J. Lu - - * config/tc-ia64.c (start_unwind_section): Undo the change - of 2004-08-18. - (generate_unwind_image, dot_endp): Likewise. - -2005-04-01 David Mosberger - - * config/tc-ia64.c (ia64_handle_align): Move le_nop and - le_nop_stop arrays and initializers to file scope. - (md_begin): When generating code for anything other than - Itanium 1, use MMI instead of MFI NOP bundles as a filler. - -2005-04-01 Jan Beulich - - * config/tc-i386.c (output_imm): Also set sign flag for 64-bit push - immediates. - -2005-04-01 Jan-Benedict Glaw - - * NEWS: Mention [fdgh]_floating. - * config/atof-vax.c: Fix some whitespace. - * config/tc-vax.c (md_pseudo_table): Add "[fdgh]_floating". - -2005-04-01 Nick Clifton - - * configure.in: Add a check for providing a prototype - for getopt() which is compatible with the one in - include/getopt.h. If so then define HAVE_DECL_GETOPT. - * configure: Regenerate. - * config.in (HAVE_DECL_GETOPT): Add. - -2005-04-01 Jan Beulich - - * config/tc-i386.c (s_bss): Call obj_elf_section_change_hook. - -2005-04-01 Jan Beulich - - * config/tc-i386.c (md_apply_fix3): Also handle BFD_RELOC_X86_64_32S. - (tc_gen_reloc): Handle BFD_RELOC_X86_64_32S in the default case. - -2005-03-30 Julian Brown - - * config/tc-arm.c (arm_adjust_symtab): Rename - bfd_elf32_is_arm_mapping_symbol_name to bfd_is_arm_mapping_symbol_name. - -2005-03-30 Julian Brown - - * config/tc-arm.c (mapping_state): Change documentation in function - comment to cross-reference spec instead. Change type of mapping symbols - to BSF_NO_TYPE. - (arm_adjust_symtab): Don't change type of mapping symbols here. - -2005-03-30 Aaron W. LaFramboise - - * as.h [NEED_DECLARATION_FFS] (ffs): Prototype and alphabetize. - * config.in: Regenerate. - * configure: Regenerate. - * configure.in: Check for ffs decl and alphabetize. - -2005-03-29 Daniel Jacobowitz - Phil Blundell - - * config/tc-arm.c (arm_parse_reloc): Add TLS relocations. - (md_apply_fix3): Mark TLS symbols. - (tc_gen_reloc): Handle TLS relocations. - (arm_fix_adjustable): Ignore TLS relocations. - (s_arm_elf_cons): Support expressions after decorated symbols. - -2005-03-29 Julian Brown - - * config/tc-arm.c (marked_pr_dependency): New bitmap, bit N indicates - whether personality routine index N has been output for this section. - (mapping_state): tc_segment_info_data now struct not enum. - (arm_elf_change_section): Likewise, and marked_pr_dependency is now - handled on section change. - (create_unwind_entry): Previous code to output dependency removed. - (s_arm_unwind_fnend): Output dependency if it hasn't been done already - for this section. - * config/tc-arm.h (TC_SEGMENT_INFO_TYPE): Redefined as struct - arm_segment_info_type. - (arm_segment_info_type): New struct. - -2005-03-28 Sterling Augustine - Bob Wilson - - * config/tc-xtensa.c (do_align_targets): Update comment. - (xtensa_frob_label): Compute "freq" before possibly switching frags. - Insert a LOOP_END frag before every loop target, and do not overload - DESIRE_ALIGN_IF_TARGET frags with loop end information. - (xg_assemble_vliw_tokens): Use do_align_targets. - (xtensa_fix_target_frags): Remove code to convert a - DESIRE_ALIGN_IF_TARGET frag to a LOOP_END frag when there is a - negatable branch at the end of a loop. - (frag_can_negate_branch): Delete. - -2005-03-28 David Mosberger - H.J. Lu - - PR 803 - NEWS: Mention "-mtune=[itanium1|itanium2]". - - * config/tc-ia64.c (md): Add tune. - (md_parse_option): Accepted "-mtune=[itanium1|itanium2]". - (md_show_usage): Add "-mtune=[itanium1|itanium2]". - (extra_goodness): Prefer M- and I-unit NOPs for itanium2. F and - B unit NOPs are discouraged for McKinley-derived cores. - (md_begin): Don't hardcode the "extra_goodness()" function in - the comment... - (ia64_init): Set md.tune to itanium2. - - * doc/as.texinfo: Add -mtune=[itanium1|itanium2]". - * doc/c-ia64.texi: Likewise. - -2005-03-27 Ian Lance Taylor - - * config/obj-coff.c (coff_frob_symbol): When crashing because of a - bad C_EFCN symbol, print its name. - -2005-03-25 Bob Wilson - - * config/tc-xtensa.c (use_longcalls): Delete. - (xg_symbolic_immeds_fit): Check for direct calls and return TRUE if - the use_longcalls flag is set. Do this before checking the segment. - (xg_expand_assembly_insn): Rearrange to use new do_expand flag. Never - expand direct calls at this point. - (xtensa_set_frag_assembly_state): Set use_longcalls flag. - (xtensa_find_unmarked_state_frags): Likewise. - (md_assemble): Do not disable longcalls by setting is_specific_opcode. - (xg_assemble_vliw_tokens): Switch frags when use_longcalls changes. - (convert_frag_immed): Remove unnecessary check of is_specific_opcode. - * config/tc-xtensa.h (xtensa_frag_type): Add use_longcalls flag. - -2005-03-25 Hans-Peter Nilsson - - * config/tc-mmix.c, config/tc-mmix.h: Convert to ISO C90. - -2005-03-25 Hans-Peter Nilsson - - * config/tc-cris.h: Convert to ISO C90. - * config/tc-cris.c: Ditto. - (md_estimate_size_before_relax): Remove obsolete comment for - parameter "segment_type". - (md_begin): Document reason for cast of hash_insert argument. - (md_atof): Correct type of parameter "type". - -2005-03-24 Nick Clifton - - * write.h (bit_fix_new): Remove redundant prototype. - * config/atof-ieee.c: Convert to ISO-C90 and fix formatting. - * config/obj-aout.c: Convert to ISO-C90 and fix formatting. - * config/obj-aout.h: Convert to ISO-C90 and fix formatting. - * config/obj-bout.c: Convert to ISO-C90 and fix formatting. - * config/obj-bout.h: Convert to ISO-C90 and fix formatting. - * config/obj-ecoff.c: Convert to ISO-C90 and fix formatting. - * config/obj-ecoff.h: Convert to ISO-C90 and fix formatting. - * config/obj-som.c: Convert to ISO-C90 and fix formatting. - * config/obj-som.h: Convert to ISO-C90 and fix formatting. - * config/tc-a29k.c: Convert to ISO-C90 and fix formatting. - * config/tc-a29k.h: Convert to ISO-C90 and fix formatting. - * config/tc-alpha.c: Convert to ISO-C90 and fix formatting. - * config/tc-alpha.h: Convert to ISO-C90 and fix formatting. - * config/tc-arc.c: Convert to ISO-C90 and fix formatting. - * config/tc-arc.h: Convert to ISO-C90 and fix formatting. - * config/tc-d10v.c: Convert to ISO-C90 and fix formatting. - * config/tc-d10v.h: Convert to ISO-C90 and fix formatting. - * config/tc-d30v.c: Convert to ISO-C90 and fix formatting. - * config/tc-d30v.h: Convert to ISO-C90 and fix formatting. - * config/tc-dlx.c: Convert to ISO-C90 and fix formatting. - * config/tc-dlx.h: Convert to ISO-C90 and fix formatting. - * config/tc-fr30.c: Convert to ISO-C90 and fix formatting. - * config/tc-fr30.h: Convert to ISO-C90 and fix formatting. - * config/tc-h8500.c: Convert to ISO-C90 and fix formatting. - * config/tc-h8500.h: Convert to ISO-C90 and fix formatting. - * config/tc-i370.c: Convert to ISO-C90 and fix formatting. - * config/tc-i370.h: Convert to ISO-C90 and fix formatting. - * config/tc-i960.c: Convert to ISO-C90 and fix formatting. - * config/tc-ip2k.c: Convert to ISO-C90 and fix formatting. - * config/tc-ip2k.h: Convert to ISO-C90 and fix formatting. - * config/tc-m32r.c: Convert to ISO-C90 and fix formatting. - * config/tc-m32r.h: Convert to ISO-C90 and fix formatting. - * config/tc-m88k.c: Convert to ISO-C90 and fix formatting. - * config/tc-m88k.h: Convert to ISO-C90 and fix formatting. - * config/tc-mcore.c: Convert to ISO-C90 and fix formatting. - * config/tc-mcore.h: Convert to ISO-C90 and fix formatting. - * config/tc-mn10200.c: Convert to ISO-C90 and fix formatting. - * config/tc-ns32k.c: Convert to ISO-C90 and fix formatting. - * config/tc-ns32k.h: Convert to ISO-C90 and fix formatting. - * config/tc-openrisc.c: Convert to ISO-C90 and fix formatting. - * config/tc-openrisc.h: Convert to ISO-C90 and fix formatting. - * config/tc-or32.c: Convert to ISO-C90 and fix formatting. - * config/tc-or32.h: Convert to ISO-C90 and fix formatting. - * config/tc-pdp11.h: Convert to ISO-C90 and fix formatting. - * config/tc-pj.c: Convert to ISO-C90 and fix formatting. - * config/tc-pj.h: Convert to ISO-C90 and fix formatting. - * config/tc-tahoe.c: Convert to ISO-C90 and fix formatting. - * config/tc-tic80.c: Convert to ISO-C90 and fix formatting. - * config/tc-tic80.h: Convert to ISO-C90 and fix formatting. - * config/tc-v850.c: Convert to ISO-C90 and fix formatting. - * config/tc-v850.h: Convert to ISO-C90 and fix formatting. - * config/tc-w65.c: Convert to ISO-C90 and fix formatting. - * config/tc-w65.h: Convert to ISO-C90 and fix formatting. - * config/tc-xstormy16.c: Convert to ISO-C90 and fix formatting. - * config/tc-xstormy16.h: Convert to ISO-C90 and fix formatting. - -2005-03-23 Jim Blandy - - * config/tc-arm.c (arm_adjust_symtab): Fetch elf_sym's binding - attributes properly. - -2005-03-23 Mike Frysinger - Nick Clifton - - * configure.tgt: Accept any C library to accompany a GNU Linux - implementation, not just the GNU C library. - * configure.in: Likewise. - * configure: Regenerate. - -2005-03-23 Nick Clifton - - * config/tc-tic30.c: Convert to ISO C90 formatting. - * config/tc-tic30.h: Convert to ISO C90 formatting. - * config/tc-pdp11.c: Convert to ISO C90 formatting. - * config/atof-vax.c: Convert to ISO C90 formatting. - -2005-03-21 Maciej W. Rozycki - - * config/tc-mips.c (mips_frob_file): Sort BFD_RELOC_MIPS16_LO16 - relocations correctly as well. - (mips_fix_adjustable): Don't make BFD_RELOC_MIPS16_LO16 - relocations in mergeable sections section-relative either. - -2005-03-21 Bob Wilson - - * config/tc-xtensa.c (md_apply_fix3): Recognize XTENSA_PLT relocations. - -2005-03-21 Nick Clifton - - * config/tc-sh.c (sh_elf_final_processing): Fix compile time - warning by providing a prototype for sh_symbian_find_elf_flags. - - * cgen.c (gas_cgen_parse_operand): Fix typo introduced by - previous delta. - -2005-03-21 Alan Modra - - * configure.tgt: Handle setting of bfd_gas for fmt=multi targets - along with other formats that set bfd_gas. Remove unnecessary - setting of bfd_gas. Delete strongarm cases in generic_target - switch. - -2005-03-21 Alan Modra - - PR gas/780 - * config/tc-m68k.c (TRUNC, SEXT): Define. - (issbyte, isubyte, issword, isuword, isbyte, isword): Use the above. - (m68k_ip): Truncate or sign extend expressions as appropriate. - (get_num): Likewise. - (md_apply_fix3): Use SEXT. - -2005-03-21 Alan Modra - - * Makefile.am (OBJ_FORMAT_CFILES): Prune config/obj-vms.c. - (OBJ_FORMAT_HFILES): Prune config/obj-vms.h. - (obj-vms.o): Delete rule. - Run "make dep-am". - * Makefile.in: Regenerate. - * aclocal.m4: Regenerate. - * doc/Makefile.in: Regenerate. - * po/POTFILES.in: Regenerate. - -2005-03-18 C Jaiprakash - - * config/tc-m68k.c (m68k_elf_final_processing): Set file specific - flag for coldfire v4e. - -2005-03-17 Bob Wilson - - * config/tc-xtensa.c (xg_apply_tentative_value): Rename to - xg_apply_fix_value and return a value to indicate success. - (md_pcrel_from): Skip check of fx_done. Return 0 if not PC-relative. - (xtensa_force_relocation): Remove checks for VTABLE relocs. - (xtensa_validate_fix_sub): New. - (xtensa_fix_adjustable): Remove check for external or weak symbols. - (tc_gen_reloc): Move code to handle difference of symbols and code to - apply tentative fix values to ... - (md_apply_fix3): ...here. Enable standard overflow checks for simple - 8, 16, and 32 bit relocations. Apply fixes for slot-specific - relocations when linkrelax flag is not set. - * config/tc-xtensa.h (xtensa_validate_fix_sub): Add prototype. - (TC_FORCE_RELOCATION_SUB_SAME, TC_VALIDATE_FIX_SUB): Define. - -2005-03-17 Jan Beulich - - * config/tc-i386.c (i386_scale): Beautify error message. - (Intel syntax comments): Update. - (struct intel_parser_s): Add fields in_offset, in_bracket, and - next_operand. - (intel_e04_1, intel_e05_1, intel_e05_1, intel_e09_1, intel_e10_1): - Remove declarations. - (intel_bracket_expr): Declare. - (i386_intel_operand): Initialize new intel_parser fields. Wrap most - of the function body in a loop allowing to split an operand into two. - Replace calls to malloc and checks of it returning non-NULL with - calls to xmalloc/xstrdup. - (intel_expr): SHORT no longer handled here. Add comment indicating - comparison ops need implementation. - (intel_e04, intel_e04_1): Combine, replace recursion with loop. - Check right operand of - does not specify a register when parsing - the address of a memory reference. - (intel_e05, intel_e05_1): Combine, replace recursion with loop. - Check operands do not specify a register when parsing the address of - a memory reference. - (intel_e06, intel_e06_1): Likewise. - (intel_e09, intel_e09_1): Combine, replace recursion with loop. Also - handle SHORT as well as unary + and -. Don't accept : except for - segment overrides or in direct far jump/call insns. - (intel_brack_expr): New. - (intel_e10, intel_e10_1): Combine, replace recursion with loop. Use - intel_brack_expr. - (intel_e11): Replace chain of if/else-if by switch, alloing fall- - through in certain cases. Use intel_brack_expr. Add new diagnostics. - Allow symbolic constants as register scale value. - (intel_get_token): Replace call to malloc and check of return value - with call to xmalloc. Change handling for FLAT to match MASM's. - (intel_putback_token): Don't try to back up/free current token if - that is T_NIL. - -2005-03-16 Daniel Jacobowitz - - * configure.tgt: Set emulation for arm-*-eabi*. - * config/tc-arm.c (meabi_flags): Check EABI_DEFAULT. - * config/te-armeabi.h: New file. - * config/te-armlinuxeabi.h (EABI_DEFAULT): Define. - * config/te-symbian.h: Include "te-armeabi.h". - -2005-03-16 Nick Clifton - - * cgen.c (gas_cgen_parse_operand): Copy opinfo parameter into a - local variable in case it is clobbered by the setjmp. - -2005-03-16 Nick Clifton - Ben Elliston - - * configure.in (werror): New switch: Add -Werror to the - compiler command line. Enabled by default. Disable via - --disable-werror. - * configure: Regenerate. - -2005-03-16 Nick Clifton - - * config/obj-coff.h: Convert to ISO C90 formatting. - * config/obj-coff.c: Convert to ISO C90 formatting. - -2005-03-15 Zack Weinberg - - * config/tc-arm.c (do_mla): Rename to do_mlas, take second - is_mls parameter; do not diagnose Rm==Rd when is_mls. - (do_mla, do_mls, five_bit_unsigned_immediate, bfci_lsb_and_width) - (do_bfc, do_bfi, do_bfx, do_rbit, do_mov16, do_ldsttv4): New functions. - (insns): Add ARMv6T2 instructions: - bfc bfi mls movw movt rbit sbfx ubfx ldrht ldrsht ldrsbt strht. - (arm_archs): Add V6T2 variants. - -2005-03-15 Nick Clifton - - * NEWS: Add cutoff for changes in 2.16 release. - -2005-03-15 Jan Beulich - - * expr.c (operand): Merge handling of unary + into that for unary - -, !, and ~. - -2005-03-14 Eric Christopher - - * config/tc-mips.c: Include dw2gencfi.h. - (mips_cfi_frame_initial_instructions): New. - * config/tc-mips.h (TARGET_USE_CFIPOP): Define. - (tc_cfi_frame_initial_instructions): Ditto. - (DWARF2_DEFAULT_RETURN_COLUMN): Ditto. - (DWARF2_CIE_DATA_ALIGNMENT): Ditto. - * Makefile.am: Update dependencies. - * Makefile.in: Regenerate. - -2005-03-15 Alan Modra - - * po/es.po: Commit new Spanish translation. - -2005-03-14 Alan Modra - - * po/tr.po: Commit new Turkish translation. - -2005-03-12 Zack Weinberg - - * config/tc-arm.c (tinsns): Add ARMv6K instructions sev, wfe, - wfi, yield. - -2005-03-11 Daniel Jacobowitz - - * config-gas.com: Mark vax-vms as obsolete. - * configure.in: Remove fmt=vms support. - * config.in: Regenerate. - * configure: Regenerate. - * config/obj-vms.h, config/obj-vms.c, config/vms-conf.h: Remove. - -2005-03-10 Sterling Augustine - Bob Wilson - - * config/tc-xtensa.c (finish_vinsn): Include the last instruction slot - when checking if xg_resolve_literals needs to be called. - * config/tc-xtensa.h: Fix spelling typo in a comment. - -2005-03-10 Jan Beulich - - * config/tc-tic54x.h (tic54x_macro_info): Change parameter type. - * config/tc-tic54x.c (tic54x_macro_info): Likewise. Replace hand- - crafted structure declarations with the types from macro.h. - -2005-03-09 Richard Sandiford - - * config/tc-mips.c (s_cpsetup): Use '__gnu_local_gp' instead of '_gp' - for -mno-shared optimization. - -2005-03-09 Richard Sandiford - - * config/tc-mips.c (MAX_VR4130_NOPS, MAX_DELAY_NOPS): New macros. - (MAX_NOPS): Bump to 4. - (mips_fix_vr4130): New variable. - (nops_for_vr4130): New function. - (nops_for_insn): Use MAX_DELAY_NOPS rather than MAX_NOPS. Use - nops_for_vr4130 if working around VR4130 errata. - (OPTION_FIX_VR4130, OPTION_NO_FIX_VR4130): New macros. - (md_longopts): Add -mfix-vr4130 and -mno-fix-vr4130. - (md_parse_option): Handle them. - (md_show_usage): Print them. - * doc/c-mips.texi: Document -mfix-vr4130 and -mno-fix-vr4130. - -2005-03-09 Richard Sandiford - - * config/tc-mips.c (append_insn): Remove cop_interlocks test from - branch delay code. - -2005-03-09 Richard Sandiford - - * config/tc-mips.h (mips_flush_pending_output): Delete. - (mips_emit_delays): Declare. - (md_flush_pending_output): Use mips_emit_delays. - * config/tc-mips.c (mips_no_prev_insn): Remove parameter; always forget - the previous instructions. - (md_begin, append_insn, md_parse_option): Update callers. - (mips_emit_delay): Remove parameter. Move INSNS != 0 code to - start_noreorder. - (mips_align, s_change_sec, s_cons, s_float_cons, s_gpword) - (s_gpdword): Update callers. - (start_noreorder, end_noreorder): New functions. - (macro, macro2, mips16_macro, s_mipsset): Use them instead of - manipulating mips_opts or prev_nop_frag directly. - (mips_flush_pending_output): Delete. - -2005-03-09 Richard Sandiford - - * config/tc-mips.c (mips_move_labels): New function, taken from... - (append_insn, mips_emit_delays): ...here. - -2005-03-09 Richard Sandiford - - * config/tc-mips.c (MAX_NOPS): New macro. - (history): Resize to 1 + MAX_NOPS. - (fix_vr4120_class): New enumeration. - (vr4120_conflicts): New variable. - (init_vr4120_conflicts): New function. - (md_begin): Call it. - (insn_uses_reg): Constify first argument. - (classify_vr4120_insn, insns_between, nops_for_insn, nops_for_sequence) - (nops_for_insn_or_target): New functions. - (append_insn): Use the new nops_for_* functions instead of inline - delay checks. Generalize prev_nop_frag handling to handle an - arbitrary history length. Insert nops into the history buffer - once the number of nops in prev_nop_frag is fixed. - (emit_delays): Use nops_for_insn instead of inline delay checks. - -2005-03-09 Richard Sandiford - - * config/tc-mips.c (append_insn): Remove now-redundant nops != 0 - check from branch delay code. Remove unnecessary check for branches. - -2005-03-09 Richard Sandiford - - * config/tc-mips.c (dummy_opcode): Delete. - (nop_insn, mips16_nop_insn): New variables. - (NOP_INSN): New macro. - (insn_length, create_insn, install_insn, move_insn, add_fixed_insn) - (add_relaxed_insn, insert_into_history, emit_nop): New functions. - (md_begin): Initialize nop_insn and mips16_nop_insn. - (append_insn): Use the new emit_nop function to add nops, recording - them in the history buffer. Use add_fixed_insn or add_relaxed_insn - to reserve room for the instruction and install_insn to install the - final form. Use insert_into_history to record the instruction in - the history buffer. Use move_insn to do delay slot filling. - (mips_emit_delays): Use add_fixed_insn instead of the emit_nop macro. - (macro_build, mips16_macro_build, macro_build_lui, mips_ip) - (mips16_ip): Use create_insn to initialize mips_cl_insns. - -2005-03-09 Richard Sandiford - - * config/tc-mips.c (INSERT_BITS, EXTRACT_BITS, INSERT_OPERAND) - (EXTRACT_OPERAND, MIPS16_INSERT_OPERAND, MIPS16_EXTRACT_OPERAND): New. - (insn_uses_reg, reg_needs_delay, append_insn, macro_build) - (mips16_macro_build, macro_build_lui, mips16_macro, mips_ip) - (mips16_ip): Use the new macros instead of explicit masks and shifts. - -2005-03-09 Richard Sandiford - - * config/tc-mips.c (mips_cl_insn): Replace the valid_p, delay_slot_p - and extended_p fields with a single fixed_p field. - (append_insn, mips_no_prev_insn): Adjust accordingly. - -2005-03-09 Richard Sandiford - - * config/tc-mips.c (mips_cl_insn): Replace reloc_type array with - a single mips16_absolute_jump_p bit. - (append_insn): Adjust accordingly. - -2005-03-09 Richard Sandiford - - * config/tc-mips.h (mips_cl_insn): Move definition to... - * config/tc-mips.c (mips_cl_insn): ...here. Add new fields: - frag, where, fixp, reloc_type, valid_p, noreorder_p, delay_slot_p - and extended_p. - (history): New variable. - (prev_insn, prev_prev_insn, prev_insn_valid, prev_insn_frag) - (prev_insn_where, prev_insn_reloc_type, prev_insn_fixp) - (prev_insn_is_delay_slot, prev_insn_unreordered, prev_insn_extended) - (prev_prev_insn_unreordered): Delete. - (reg_needs_delay, append_insn, mips_no_prev_insn, mips_emit_delays) - (macro_start): Replace uses of prev_insn* with the equivalent history[] - field. - -2005-03-08 Daniel Jacobowitz - - * doc/Makefile.am: Update as.info dependencies. - * aclocal.m4, Makefile.in, doc/Makefile.in: Regenerated. - -2005-03-08 Jan Beulich - - * doc/as.texinfo: Add sentence to indicate redefining a macro is an - error, and point to .purgem documentation if someone really needs - re-definitions. - * NEWS: Mention macro redefinition is now an error. - -2005-03-08 Jan Beulich - - * config/tc-ia64.c (emit_one_bundle): Track last slot user insn was - emitted to. Add more precise diagnostics for non-fitting insns based - on that. Eliminate now superfluous special casing of MLX. Clear out - slot information when dropping an insn. - -2005-03-08 Jan Beulich - - * config/tc-ia64.c (parse_section_name): Rename to... - (cross_section): In addition to separating the name from the rest of - the arguments, also carry out the operation. - (dot_xdata): Use cross_section. - (dot_float_cons): Likewise. - (dot_xstringer): Likewise. - (dot_xdata_ua): Likewise. - (dot_float_cons_ua): Likewise. Pass float_cons, not stmt_float_cons. - -2005-03-05 Alan Modra - - * po/gas.pot: Regenerate. - -2005-03-04 David Daney - - * config/tc-mips.c (macro_build_lui): Use '__gnu_local_gp' - instead of '_gp' for -mno-shared optimization. - (s_cpload): Ditto. - (s_abicalls): Document it in the comment. - (md_show_usage): Document the -mno-shared option. - -2005-03-04 Richard Sandiford - - * config/tc-mips.c (mips_set_options): Add sym32 field. - (mips_opts): Initialize it. - (HAVE_32BIT_ADDRESSES): Set to true if pointers are 32 bits wide. - (HAVE_64BIT_ADDRESSES): Redefine as !HAVE_32BIT_ADDRESSES. - (HAVE_32BIT_SYMBOLS, HAVE_64BIT_SYMBOLS): New macros. - (load_address): Use HAVE_64BIT_SYMBOLS instead of HAVE_64BIT_ADDRESSES - when deciding whether to use a symbolic %highest/%higher expansion. - (macro): Likewise. Remove o64/n32 linux hack. Always use - ADDRESS_ADD*_INSN for address addition in the expansion of "dla" - and "la". Handle constants separately from symbolic expressions in - the "ld_st:" case, using 64-bit arithmetic if HAVE_64BIT_ADDRESSES - and using load_register to load the high part of the address. - (OPTION_MSYM32, OPTION_NO_MSYM32): New macros. - (OPTION_ELF_BASE): Bump by 2. - (md_longopts): Add entries for -msym32 and -mno-sym32. - (md_parse_option): Handle them. - (usage): Document them. - (s_mipsset): Handle ".set sym32" and ".set nosym32". - (s_cpload, s_cpsetup): Use HAVE_64BIT_SYMBOLS instead of - HAVE_64BIT_ADDRESSES to detect 64-bit values of "_gp". - * doc/c-mips.texi: Document ".set sym32", ".set nosym32", - -msym32 and -mno-sym32. - -2005-03-03 Thiemo Seufer - - * config/tc-mips.c (load_address): Implement GP optimization - for 64bit address space non-PIC. Fix formatting. - (macro): Likewise. Simplify code. - (md_parse_option): Don't bail out if -G 0 is set for PIC code. - (mips_after_parse_args): Simplify code. - -2005-03-03 Nick Clifton - - * expr.c (operand): Remove redundant code enclosed by #ifdef - RELAX_PAREN_GROUPING....#endif. - - * config/tc-mn10200.c (tc_gen_reloc): Handle the case where the - reloc is the difference of two symbols defined in the same - section. - - * config/tc-iq2000.c (line_comment_chars): Include the # character - as otherwise this breaks #APP/#NO_APP processing. - -2005-03-03 Ramana Radhakrishnan - - * config/tc-arc.c(md_assemble): Remove dead code for handling - immediate indexing of ld and st . - -2005-03-02 Daniel Jacobowitz - Joseph Myers - - * config/tc-mips.c (percent_op): Add %tlsgd, %tlsldm, %dtprel_hi, - %dtprel_lo, %tprel_hi, %tprel_lo, and %gottprel. - (parse_relocation): Check for a word break after a relocation - operator. - (md_apply_fix3): Handle TLS relocations, and mark thread-local - symbols. - -2005-03-02 Alan Modra - - * config/tc-ppc.c (ppc_fix_adjustable ): Remove bogus checks. - -2005-03-02 Jan Beulich - - * as.c (main): Use unlink_if_ordinary instead of unlink. - * messages.c (as_fatal): Likewise. - -2005-03-02 Jan Beulich - - * config/tc-i386.c (build_modrm_byte): Add lock prefix for cr8...15 - accesses. - (parse_register): Allow cr8...15 in all modes. - -2005-03-02 Jan Beulich - - * config/tc-i386.c (intel_e11): If not followed by T_PTR, treat T_BYTE - etc. like normal symbol references (T_ID). - -2005-03-02 Alan Modra - - * symbols.c (fb_label_name): Fix silly thinko in last change. - -2005-03-02 Alan Modra - - * expr.c (integer_constant): Remove TARGET_WORD_SIZE hack. - * config/tc-m68k.h (TARGET_WORD_SIZE): Delete. - - * symbols.c (fb_label_name): Allow an augend of 2 for mmix. - -2005-03-01 Ramana Radhakrishnan - - PR gas/708 - * config/tc-arc.c (md_assemble): Initialize suffix for extension - suffixes also. - -2005-03-01 Alan Modra - - * config/obj-coff.c (fixup_segment): Delete sy_mri_common assertion. - - * as.h (assert): Warning fix. - * expr.c (expr): Correct assertion. - * read.c (s_comm_internal): Remove assertion. - * write.c (relax_segment): Enable vma assertion only for BFD_ASSEMBLER. - (fixup_segment): Remove assertion. - * config/tc-dlx.c (machine_ip): Remove untrue assertions. - (md_apply_fix3): Likewise. - * config/tc-i370.c (md_begin): Correct assertion. - (i370_macro): Warning fix for assertion. - -2005-03-01 Alan Modra - - * configure.in (AC_C_BIGENDIAN): Invoke. - * configure: Regenerate. - * write.c (write_object_file ): Don't use sizeof - host variable to set string header size. - * config/obj-aout.c (obj_header_append): Don't use host structs. - (obj_symbol_to_chars): Likewise. - (obj_emit_strings): Likewise. Use the passed in output pointer. - * config/obj-aout.h (H_GET_FILE_SIZE): Include H_GET_LINENO_SIZE. - * config/obj-bout.c (obj_emit_relocations): Use md_reloc_size, - not sizeof host struct. - (obj_header_append, obj_symbol_to_chars): Don't use host structs. - (obj_emit_strings): Likewise. - * config/obj-bout.h (EXEC_BYTES_SIZE): Define. - (N_TXTOFF, H_GET_FILE_SIZE, H_GET_HEADER_SIZE): Use instead of - sizeof host struct. - (H_SET_SYMBOL_TABLE_SIZE): Hard code sym size rather than using - sizeof host struct. - (host_number_to_chars): Define. - * config/obj-hp300.c (hp300_header_append): Don't use sizeof - host internal struct to set header sizes. - * config/tc-i960.c (md_number_to_field): Warning fix. - (md_ri_to_chars): Use host byte order. - (get_cdisp, md_apply_fix3): Warning fix. - * config/tc-m68k.c (md_assemble): Don't use sizeof host short. - -2005-02-28 Ramana Radhakrishnan - - * doc/c-arc.texi: Update documentation about ARC's extension - instructions. - -2005-02-27 Svein E. Seldal - - * config/tc-tic4x.c (tic4x_gen_to_words): Changed mail - address for myself. - -2005-02-23 Alan Modra - - * cgen.c: Warning fixes. - * config/tc-arc.c: Likewise. - * config/tc-arm.c: Likewise. - * config/tc-avr.c: Likewise. - * config/tc-d10v.c: Likewise. - * config/tc-d30v.c: Likewise. - * config/tc-frv.c: Likewise. - * config/tc-frv.h: Likewise. - * config/tc-h8300.c: Likewise. - * config/tc-h8500.c: Likewise. - * config/tc-i370.c: Likewise. - * config/tc-i960.c: Likewise. - * config/tc-ia64.c: Likewise. - * config/tc-ip2k.c: Likewise. - * config/tc-m68hc11.c: Likewise. - * config/tc-maxq.c: Likewise. - * config/tc-mcore.c: Likewise. - * config/tc-mips.c: Likewise. - * config/tc-msp430.c: Likewise. - * config/tc-pj.c: Likewise. - * config/tc-ppc.c: Likewise. - * config/tc-ppc.h: Likewise. - * config/tc-s390.c: Likewise. - * config/tc-sh.c: Likewise. - * config/tc-sh64.c: Likewise. - * config/tc-tic4x.c: Likewise. - * config/tc-tic80.c: Likewise. - * config/tc-v850.c: Likewise. - * config/tc-vax.c: Likewise. - * config/tc-w65.c: Likewise. - * config/tc-xstormy16.c: Likewise. - * config/tc-z8k.c: Likewise. - -2005-02-22 Catherine Moore - - * read.c (read_a_source_file): Reinstate TC_EQUAL_IN_INSN test. - * doc/internals.texi (TC_EQUAL_IN_INSN): Reinstate. - -2005-02-22 Eric Christopher - - * config/tc-mips.c (struct proc): Change isym to - func_sym. New member func_end_sym. - (s_mips_ent): Update. - (s_mips_end): Ditto. Add code to compute function size. - -2005-02-22 Alan Modra - - * read.c: Warning fixes. - * config/obj-elf.c: Likewise. - -2005-02-22 Maciej W. Rozycki - - * config/tc-mips.c (append_insn): Call dwarf2_emit_insn() before - emitting insn. - -2005-02-21 H.J. Lu - - * config/obj-coff.c (obj_coff_section): Replace SEC_SHARED with - SEC_COFF_SHARED. - - * config/tc-tic54x.c (tic54x_bss): Replace SEC_BLOCK with - SEC_TIC54X_BLOCK. - (demand_empty_rest_of_line): Likewise. - (tic54x_sblock): Likewise. - (tic54x_clink): Replace with SEC_CLINK with SEC_TIC54X_CLINK. - -2005-02-21 Alan Modra - - * read.c (address_bytes): New function. - (TC_ADDRESS_BYTES): Default for BSD_ASSEMBLER to address_bytes. - (potable): Add "dc.a". - (cons_worker): Handle "dc.a". - * doc/internals.texi (TC_ADDRESS_BYTES): Document. - -2005-02-21 Alan Modra - - * input-file.c (input_file_open): Rearrange to avoid warning. - -2005-02-19 Alan Modra - - * config/tc-hppa.h (TC_EQUAL_IN_INSN): Delete. - * read.c (read_a_source_file): Remove TC_EQUAL_IN_INSN test. - * doc/internals.texi (TC_EQUAL_IN_INSN): Delete. - -2005-02-18 Thiemo Seufer - - * config/tc-mips.c (macro_build_ldst_constoffset): Fail on $at - uses after .set noat. - (load_address): Likewise. - (macro): Likewise. Don't try to avoid $at use by sacrificing - the target register before it is stored, it won't work. - -2005-02-17 James E Wilson - - * config/tc-ia64.c (emit_one_bundle): Stop filling a bundle if we - see an instruction that specifies a template. - -2005-02-18 Alan Modra - - * config/tc-openrisc.c (openrisc_relax_frag): Delete unused function. - * config/tc-sparc.c (sparc_ip): Make op_exp static to silence warnings. - * config/tc-tic80.c (build_insn): Init insn[1] to silence warning. - -2005-02-17 H.J. Lu - - * NEWS: Mention "-mhint.b=[ok|warning|error]". - - * config/tc-ia64.c (md): Add hint_b. - (emit_one_bundle): Handle md.hint_b for "hint". - (md_parse_option): Accepted "-mhint.b=[ok|warning|error]". - (md_show_usage): Add "-mhint.b=[ok|warning|error]". - (ia64_init): Set md.hint_b to error. - (md_assemble): Handle md.hint_b for "hint.b". - - * doc/as.texinfo: Add "-mhint.b=[ok|warning|error]". - * doc/c-ia64.texi: Likewise. - -2005-02-17 Alan Modra - - * tc.h (struct relax_type, relax_typeS): Move from here.. - * as.h: ..to here. Make rlx_forward and rlx_backward an offsetT. - * ecoff.c (ecoff_new_file): Add appfile param. - * ecoff.h (ecoff_new_file): Likewise. - * itbl-lex.h: New file. - * itbl-lex.l: Include itbl-lex.h. - * itbl-parse.y: Likewise. - (insntbl_line, yyparse, yylex): Move to itbl-lex.h. - * read.c (s_app_file_string): Mark appfile possibly unused. - * subsegs.c (seg_not_empty_p): Make sec possibly unused. - * subsegs.h (struct seg_info_trash): Delete. - (seg_info): Use segment_info_type instead. - * config/obj-coff.c (struct filename_list): Make filename const char *. - * config/obj-ecoff.h (obj_app_file): Pass app to ecoff_new_file. - * config/obj-elf.c (elf_file_symbol): Similarly. - * config/tc-a29k.c (md_apply_fix3): Make val a valueT. Don't use - signed right shift. - * config/tc-arc.c (md_operand): Warning fix. - * config/tc-arm.c (arm_parse_reloc): Only define when OBJ_ELF. - (md_begin): Rearrange #if defined OBJ_COFF || defined OBJ_ELF. - * config/tc-cris.h (TC_IMPLICIT_LCOMM_ALIGNMENT): Use do while. - * config/tc-frv.c (frv_force_relocation): Warning fix. - * config/tc-m68k.c (md_parse_option): Delete unused var. - * config/tc-mcore.c (mylog2): Rename from log2 throughout. - * config/tc-sparc.c: Likewise. - (s_common): Warning fix. - * config/tc-mips.c (append_insn): Use unsigned long long expressions. - * config/tc-mmix.c (PUSHJSTUB_MAX, PUSHJSTUB_MIN): Define from - addressT. - * config/tc-s390.c (s390_insn): Delete test of unsigned >= 0. - * config/tc-sh.c (sh_cfi_frame_initial_instructions, - sh_regname_to_dw2regnum): Only define for OBJ_ELF. - * config/tc-tic4x.c (tic4x_insert_reg): Use ISLOWER. - (tic4x_do_align): Use TIC_NOP_OPCODE. - * config/tc-tic4x.h (TIC_NOP_OPCODE): Rename from NOP_OPCODE. - * config/tc-vax.c: Include netinet/in.h. - (tc_headers_hook): Formatting. - * config/tc-xstormy16.c (md_pcrel_from_section): Correct parens. - -2005-02-17 Jan Beulich - - * config/tc-ia64.c (ia64_parse_name): Don't advance 'name' when - parsing inN, locN, outN. Set 'idx' to offset register number starts - at. Don't handle numbers with leading zeroes or beyond 95. Remove - pointless cast. - -2005-02-16 Thiemo Seufer - - * config/tc-mips.c (load_address): Fix formatting. - (macro): Don't use AT if .set noat is in effect. Fix formatting. - Catch macros which are unexpandable without AT. Remove duplicate - zeroing of used_at. - (macro2): Remove duplicate zeroing of used_at. - -2005-02-16 Alan Modra - - * dw2gencfi.c (output_cie, output_fde): Use DW_CFA_nop rather - than zero. - -2005-02-15 Nigel Stephens - Maciej W. Rozycki - - * config/tc-mips.c (reloc_needs_lo_p): Handle - BFD_RELOC_MIPS16_HI16_S. - (fixup_has_matching_lo_p): Handle BFD_RELOC_MIPS16_LO16. - (append_insn): Add BFD_RELOC_MIPS16_GPREL, BFD_RELOC_MIPS16_HI16_S - and BFD_RELOC_MIPS16_LO16 to relocs to suppress overflow - complaints on. - (mips16_ip): Resolve BFD_RELOC_MIPS16_HI16_S, - BFD_RELOC_MIPS16_HI16 and BFD_RELOC_MIPS16_LO16 for constants. - Call my_getSmallExpression() to parse percent operators. - (percent_op_match, mips_percent_op): Separate definitions. - (mips16_percent_op): Define percent operators for the MIPS16 mode. - (parse_relocation): Handle the MIPS16 mode using - mips16_percent_op. - (md_apply_fix3): Handle BFD_RELOC_MIPS16_HI16, - BFD_RELOC_MIPS16_HI16_S and BFD_RELOC_MIPS16_LO16. - -2005-02-15 Jan Beulich - - * config/tc-ia64.c (md_apply_fix3): Call ia64_gen_real_reloc_type - instead of explicitly dealing with the translation; exclude - relocations that are already pcrel, however. - -2005-02-15 Jan Beulich - - * config/tc-ia64.c: Include limits.h (if available). - (gr_values[0]): Set path to INT_MAX. - (dot_reg_val): Don't allow changing value of r0. Limit range of - general registers at r127. - (specify_resource): Default resource index is -1. Don't set resource - index (in case IA64_RS_RSE) without setting the specific flag. - (note_register_values): Check operand is O_constant before tracking - input value of moves. Add tracking for dep.z with constant inputs. - (print_dependency): Resource index of specific resource may be zero. - (check_dependencies): Likewise. - -2005-02-15 Jan Beulich - - * config/tc-ia64.c (parse_operands): New local variables reg1, reg2, - reg_class. Check operands and emit diagnostics for illegal use of - registers. - -2005-02-15 Jan Beulich - - * config/tc-ia64.c (ia64_gen_real_reloc_type): Define and initialize - new variables type, suffix, and width. Handle - BFD_RELOC_IA64_DIR(32|64)[LM]SB in FUNC_LT_FPTR_RELATIVE case. - Handle BFD_RELOC_IA64_DIR64[LM]SB in FUNC_TP_RELATIVE case. Add - FUNC_DTP_MODULE case. Handle BFD_RELOC_IA64_DIR32[LM]SB in - FUNC_DTP_RELATIVE case. Return incoming relocation type if - BFD_RELOC_IA64_IPLT[LM]SB in FUNC_IPLT_RELOC case. Generate warning - if unable to translate relocation type, using the new variables. - -2005-02-15 Jan Beulich - - * config/tc-ia64.h (ia64_symbol_chars): Declare. - (ty_symbol_chars): Define. - * config/tc-ia64.c (ia64_symbol_chars): Define. - -2005-02-15 Jan Beulich - - * config/tc-ia64.c (ia64_parse_name): Only update next character if - input_line_pointer was advanced. - -2005-02-14 Kaz Kojima - - * config/tc-sh.c (md_apply_fix3): Add parentheses around & - within |. - -2005-02-13 Jan Beulich - - * config/tc-ia64.c (md_parse_option): Handle -xnone and -xdebugn. - (md_show_usage): Add -xnone, -xdebugn, and -xdebugx. Relocate default - indicator. - (ia64_init): Set md.detect_dv. - (ia64_start_line): New static variable warned. Warn only once when - encountering explicit stops in automatic mode. - * doc/c-ia64.texi: Describe -xnone, -xdebugn, and -xdebugx. - * NEWS: Mention new default mode. - -2005-02-13 Jan Beulich - - * config/tc-ia64.c (dot_rot): Add comment that name strings should - be freed when wiping out previous state. Canonicalize names before - use. Free name string when detecting redefinition. - (dot_pred_rel): Call generic expression parser to process arguments. - Handle O_register case for individual predicates and O_subtract for - ranges. - (ia64_parse_name): Canonicalize name before looking it up in dynamic - register hash. - (ia64_canonicalize_symbol_name): Strip off all trailing # characters. - Warn if multiple found, issue error if resulting symbol name has zero - length. - (dot_alias): Canonicalize name before use. - -2005-02-11 H.J. Lu - - * config/tc-ia64.c (unwind_diagnostic): Return -1 for warning - and 0 for error. - (in_procedure): Return -1 for warning. - (in_prologue): Likewise. - (in_body): Likewise. - -2005-02-11 H.J. Lu - - * config/tc-ia64.c (dot_xdata): Undo the last change. - (dot_float_cons): Likewise. - (dot_xstringer): Likewise. - (dot_xdata_ua): Likewise. - (dot_float_cons_ua): Likewise. - -2005-02-11 H.J. Lu - - * NEWS: Mention "-munwind-check=[warning|error]". - - * config/tc-ia64.c (md): Add unwind_check. - (unwind_diagnostic): New. - (in_procedure): Call unwind_diagnostic when a directive isn't - in procedure. - (in_prologue): Call unwind_diagnostic when a directive isn't in - prologue. - (in_body): Call unwind_diagnostic when a directive isn't in - body region. - (dot_endp): Set md.unwind_check to error before calling - in_procedure and restore it after. When the name is missing or - couldn't be found, use the one from the last .proc if - md.unwind_check isn't error. Warn if md.unwind_check is - warning. - (md_parse_option): Handle "-munwind-check=[warning|error]". - (md_show_usage): Add "-munwind-check=[warning|error]". - (ia64_init): Set md.unwind_check to warning. - - * doc/as.texinfo: Add "-munwind-check=[none|warning|error]". - * doc/c-ia64.texi: Likewise. - -2005-02-11 Jan Beulich - - * config/tc-ia64.h (LEX_AT): Include LEX_BEGIN_NAME. - (LEX_QM): Likewise. - (ia64_parse_name): New third parameter. - (md_parse_name): Pass third argument. - * config/tc-ia64.c (pseudo_func): Placeholders use NULL as name. - (md_operand): Handling of '@'-prefixed symbols moved from here... - (ia64_parse_name): ...to here. - -2005-02-11 Jan Beulich - - * config/tc-ia64.c (md): Remove last_groups and group_idx. - (errata_nop_necessary_p): Remove declaraction and definition. - (emit_one_bundle): Don't call errata_nop_necessary_p. Don't - update md.group_idx. Don't reset md.last_groups. - -2005-02-11 Jan Beulich - - * config/tc-ia64.c (parse_section_name): Handle non-quoted first - argument. - (dot_xdata): Free section name after use. - (dot_float_cons): Likewise. - (dot_xstringer): Likewise. - (dot_xdata_ua): Likewise. - (dot_float_cons_ua): Likewise. - (md_pseudo_table): Add xdata16 and xdata16.ua. - -2005-02-10 H.J. Lu - - * doc/all.texi: Add IA64. - * doc/as.texinfo: Likewise. - - * doc/c-ia64.texi: Fix typos. - -2005-02-10 Julian Brown - - * config/tc-arm.c (do_t_ldmstm): Change BFD_RELOC_NONE to - BFD_RELOC_UNUSED. - (do_t_push_pop): Likewise. - (md_assemble): Likewise. - (md_apply_fix3): Handle BFD_RELOC_NONE correctly, make - BFD_RELOC_UNUSED same as previous meaning of BFD_RELOC_NONE. - (create_unwind_entry): Output dependency on the required personality - routines. - -2005-02-07 Nathan Sidwell - - * as.h (seg_not_empty_p): Return int, not bfd_boolean. - * subsegs.c (seg_not_empty_p): Likewise. - -2005-02-07 Inderpreet Singh - - * config/tc-maxq.c (md_estimate_size_before_relax): Correct the - relative jump calculation. - - - * write.c (write_object_file): Recognize warning-symbol construct - and skip object- and target- handling for the second symbol. - -2005-02-02 Jan Beulich - - * config/tc-ia64.c (dot_pred_rel): Update comment. Handle @-prefixed - designators along with quoted ones. Free copy of quoted designator - when done. - -2005-02-01 Ben Elliston - - * config/atof-ieee.c, config/obj-coff.c, config/obj-elf.c, - config/obj-ieee.c, config/obj-som.c, config/obj-vms.c, - config/tc-a29k.c, config/tc-alpha.c, config/tc-arc.c, - config/tc-arm.c, config/tc-d30v.c, config/tc-dlx.c, - config/tc-fr30.c, config/tc-h8300.c, config/tc-h8500.c, - config/tc-i370.c, config/tc-i386.c, config/tc-i960.c, - config/tc-ia64.c, config/tc-m32r.c, config/tc-m32r.h, - config/tc-m68hc11.c, config/tc-m68hc11.h, config/tc-mips.c, - config/tc-mn10200.c, config/tc-msp430.c, config/tc-ns32k.c, - config/tc-openrisc.c, config/tc-or32.c, config/tc-pdp11.c, - config/tc-pj.c, config/tc-sparc.h, config/tc-tic54x.c, - config/tc-tic80.c, config/tc-v850.c, config/tc-w65.c, - config/tc-xtensa.c, config/tc-z8k.c, config/xtensa-relax.c: Remove - #if 0'd code throughout. - -2005-01-31 Nick Clifton - - * as.c (parse_args): Bump copyright date reported by --version to - 2005. - -2005-01-31 Nick Clifton - - * configure.tgt: Remove obsolete targets m68k-lynxos, sparc-lynxos - and vax-vms. - -2005-01-31 Jan Beulich - - * macro.c (buffer_and_nest): Allow 'from' being NULL; handle anything - that can end with .endr in that case. Make requiring/permitting - pseudo-ops without leading dot closer to the logic in read.c serving - the same purpose. - (expand_irp): Don't pass a mnemonic to buffer_and_nest as it will be - ignored. - -2005-01-31 Jan Beulich - - * macro.c (do_formals): Adjust to no longer accept empty parameter - names. - (define_macro): Adjust to no longer accept empty macro name, garbage - following the parameters, or macros that were previously defined. - * read.c (s_bad_end): Declare. - (potable): Add endm. Handler for endr and endm is s_bad_end. - (s_bad_end): Rename from s_bad_endr. Adjust to handle both .endm - and .endr. - * read.h (s_bad_endr): Remove. - -2005-01-31 Jan Beulich - - * config/tc-ia64.c (parse_operands): Parse all specified operands, - immediately discarding (but counting) those exceeding the maximum - possible amount. Track whether output and input operand counts ever - matched, and use this to better indicate which of the operands/ - operand types was wrong; specifically don't default to pointing to - the first operand. - -2005-01-31 Jan Beulich - - * config/tc-ia64.c (unwind): Remove proc_end (now an automatic - variable in dot_endp). Add body and insn. Make prologue, - prologue_mask, body, and insn bitfields. - (fixup_unw_records): Remove spurious new-lines from end of diagnostic - messages. - (in_procedure, in_prologue, in_body): New. - (dot_fframe, dot_vframe, dot_vframesp, dot_vframepsp, dot_save, - dot_restore, dot_restorereg, dot_restorereg_p, dot_handlerdata, - dot_unwentry, dot_altrp, dot_savemem, dot_saveg, dot_savef, dot_saveb, - dot_savegf, dot_spill, dot_spillreg, dot_spillmem, dot_spillreg_p, - dot_spillmem_p, dot_label_state, dot_copy_state, dot_unwabi, - dot_personality): Use the appropriate one of the above. - (dot_proc): Clear unwind.proc_start; set to current location only if - none of the entry points were valid. Check for non-zero-length entry - point names. Check that entry points aren't defined, yet. Clear - unwind.prologue, unwind.body, and unwind.insn. - (dot_body): Call in_procedure. Check that first directive in procedure - had no insns emitted before. Set unwind.body. - (dot_prologue): Call in_procedure. Check that not already in prologue. - Check that first directive in procedure had no insns emitted before. - Clear unwind.body. - (dot_endp): Call in_procedure. Declare proc_end. Check for non-zero- - length entry point names. Check that entry points became defined. - (md_assemble): Set unwind.insn once unwind.proc_start is defined. - -2005-01-31 Jan Beulich - - * config/tc-ia64.c (emit_one_bundle): Snapshot manual bundling state - before actually using it. Don't generate an error in manual bundling - mode when looking at an insn requiring slot 2 but not yet at slot 2. - Don't generate an error in manual bundling mode when looking at an - insn required to be last in its group but the required slot hasn't - been reached, yet. Allow conversion from MII to MI;I for bundle - consisting of only 2 insns with the stop between them. Suppress - various meaningless errors resulting from detecting earlier ones. - -2005-01-31 Jan Beulich - - * config/tc-ia64.c (parse_operands): Also handle alloc without first - input being ar.pfs. - -2005-01-28 Christian Groessler - - * config/tc-z8k.c (md_assemble): Improve error detection. - -2005-01-28 Jan Beulich - - * config/tc-ia64.c (ia64_estimate_size_before_relax): Allocate space - for personality routine pointer only if there is one. - (ia64_convert_frag): Likewise. - (generate_unwind_image): Likewise. - -2005-01-27 Christian Groessler - - * config/tc-z8k.c (INSERT): Remove, not used anywhere. - (md_apply_fix3): Make relative branches out of range an error - instead of a warning. Display correct line number for out of - range branches/calls/memory accesses. - -2005-01-27 Nathan Sidwell - - * dwarf2dbg.c (dwarf2_finish): Correct logic for determining when - to emit .debug_line and other debug sections. - * as.h (seg_not_empty_p): Declare. - * subsegs.c (seg_not_empty_p): New predicate. - -2005-01-27 Andrew Cagney - - * configure: Regenerate to track ../gettext.m4 change. - -2005-01-27 Jan Beulich - - * config/tc-ia64.c (emit_one_bundle): Change "?imbf??" to "?ibmfxx". - -2005-01-27 Jan Beulich - - * config/tc-ia64.c (emit_one_bundle): Add late resolution of move - to/from application registers dynamic insns. - (md_assemble): Defer resolution of move to/from application registers - dynamic insns when they can be issued on either the I- or M-units. - -2005-01-25 Alexandre Oliva - - * config/tc-frv.c (md_apply_fix3): Mark TLS symbols as such. - 2004-12-10 Alexandre Oliva - * config/tc-frv.c (frv_pic_ptr): Add tlsmoff support. - 2004-11-10 Alexandre Oliva - * cgen.c (gas_cgen_parse_operand): Handle - CGEN_PARSE_OPERAND_SYMBOLIC. - * config/tc-frv.c (md_cgen_lookup_reloc): Handle TLS relocations. - (frv_force_relocation): Likewise. Fix handling of PIC - relocations. - (md_apply_fix3): Likewise. - -2005-01-21 Ben Elliston - - * as.h: Remove #if 0'd code. - * atof-generic.c (atof_generic): Likewise. - * ecoff.c (ecoff_directive_frame): Likewise. - * frags.h (FRAG_APPEND_1_CHAR): Likewise. - * itbl-ops.c (itbl_add_reg): Likewise. - * listing.c (calc_hex): Likewise. - * read.c (MASK_CHAR): Likewise. - * subsegs.c (subsegs_print_statistics): Likewise. - * symbols.c (indent): Likewise. - * write.c (write_relocs): Likewise. - (write_object_file): Likewise. - (relax_frag): Likewise. - -2005-01-20 Nick Clifton - - * as.c (std_longopts): Add an entry for "--a" in order to prevent - getopt_long_only() from considering -a as an abbreviation for - --alternate. - (parse_args): Fix the parsing of -a=. - -2005-01-20 Alan Modra - - PR gas/684 - * read.c (s_incbin): Adjust default count for skip. Check validity - of count and skip rigorously. - -2005-01-19 Fred Fish - - * config/tc-mips.c (dummy_opcode): Add init for new struct member. - -2005-01-19 Richard Sandiford - - * read.c (convert_to_bignum): New function, split out from... - (emit_expr): ...here. Handle the case where X_add_number is - positive and the input value is negative. - (output_big_sleb128): Fix setting of continuation bit. Check whether - the final byte needs to be sign-extended. Fix size-shrinking loop. - (emit_leb128_expr): When generating a signed leb128, see whether the - sign of an O_constant's X_add_number matches the sign of the input - value. Use a bignum if not. - -2005-01-17 Andrew Stubbs - - * tc-sh.c (md_begin,md_parse_option): Change arch_sh1_up to - arch_sh_up in order to match the external name and make the - testsuite's job easier. - -2005-01-14 H.J. Lu - - PR 659 - * config/tc-i386.c (i386_scale): Disallow 0 scale. - -2005-01-12 Nick Clifton - - * config/tc-iq2000.c (s_iq2000_set): Fix thinko parsing - ignored_arguments array. - -2005-01-10 H.J. Lu - - * write.c (write_object_file): Disallow a symbol equated to - common symbol. - -2005-01-10 Inderpreet Singh - - * tc-maxq.c: Replace constants 10 and 20 with bfd_mach_maxq10 and - bfd_mach_maxq20. - (md_pseudo_table): Add new pseudo ops for maxq10 and maxq20. - (maxq_target): New function: Set the machine type. - -2005-01-06 Paul Brook - - * config/tc-arm.c (FPU_DEFAULT): Define for TE_VXWORKS. - (md_begin): Handle TE_VXWORKS for FP defaults. - (md_apply_fix3): Correct rela offsets. - (elf32_arm_target_format): Add VxWorks targets. - -2005-01-06 Paul Brook - - * configure.tgt: Set em=vxworks for *-*-vxworks. - * config/te-vxworks.h: New File. - -2005-01-06 Paul Brook - - * config/tc-arm.c (arm_cpus): Correct arch field for arm1026ej-s. - -2005-01-04 Dmitry Diky - - * config/tc-msp430.c (md_apply_fix3): Fix offset calculation for - global label. - -2005-01-03 David Mosberger - - * config/tc-ia64.c (md): Add member "loc_directive_seen". - (dot_loc): New function. - (md_pseudo_table): Add entry to map .loc to dot_loc(). - (emit_one_bundle): Only call dwarf2_gen_line_info() if we have - seen a .loc directive or we're generating DWARF2 debug info for - assembly source. - -2004-12-29 Alan Modra - - PR gas/619 - * read.c (s_comm_internal): Don't zero end of name until size - expression has been parsed. - -2004-12-25 Marek Michalkiewicz - - * config/tc-avr.c (mcu_types): Move attiny{13,2313} from avr4 to avr2. - -2004-12-23 Tomer Levi - - * config/tc-crx.c: Support 'bcop' relaxation (dealt as in 'cmp&branch' - case). - -2004-12-22 Ian Lance Taylor - - * configure.tgt: New. - * configure.in: Move setting of cpu_type, fmt, etc., to - configure.tgt. - * Makefile.am (CONFIG_STATUS_DEPENDENCIES): Add - $(srcdir)/configure.tgt. - * configure, Makefile.in: Rebuild. - -2004-12-22 Klaus Rudolph - - * config/tc-avr.c: Add support for the new R_AVR_LDI, R_AVR_6 and - R_AVR_6_ADIW relocs for the LDI, ADIW/SBIW and LDD/STD - instructions. - (avr_offset_expression): New function to parse offsets for LDI - instructions. - (avr_operand): Use it. - (md_apply_fix3): Generate the relocs. - -2004-12-16 Andrew Stubbs - - * config/tc-sh64.c (shmedia_md_apply_fix3): Add missing - BFD_RELOC_SH_IMMS10BY8 relocation. - - * config/tc-sh64.c (shmedia_build_Mytes): Emit an error message rather - than just ignoring bad code. - -2004-12-16 Richard Sandiford - - * config/tc-v850.c (handle_lo16): New function. - (v850_reloc_prefix): Use it to check lo(). - (md_assemble, md_apply_fix3): Handle BFD_RELOC_V850_LO16_SPLIT_OFFSET. - -2004-12-14 P.J. Darcy - - * configure.in: Add s390x-ibm-tpf support. - * configure: Regenerate. - -2004-12-15 Jan Beulich - - * config/obj-elf.c (obj_elf_change_section): Only set type and - attributes on new sections. Emit warning when type of re-declared - section doesn't match. - -2004-12-15 Jan Beulich - - * dw2gencfi.c (dot.cfi.startproc): Clear cur_cfa_offset so - '.cfi_startproc simple' doesn't inherit the old value. - -2004-12-15 Jan Beulich - - * dw2gencfi.c (output_cfi_insn): Adjust DW_CFA_def_cfa_sf generation - to emit a signed and factored offset. Adjust DW_CFA_def_cfa_offset_sf - generation to emit a factored offset. - -2004-12-10 Ian Lance Taylor - - * config/tc-mips.c (macro) [M_LA_AB]: Give an error for a offset - which is too large in the case of NO_PIC without 64-bit - addresses. - - * config/tc-mips.c (mips_in_shared): New static variable. - (macro_build_lui): Permit "_gp" if !mips_in_shared. - (md_longopts): Add -mshared and -mno-shared. - (md_parse_option): Handle OPTION_MSHARED and OPTION_MNO_SHARED. - (s_cpload): Implement !mips_in_shared case. - (s_cpsetup): Likewise. - * doc/c-mips.texi (MIPS Opts): Document -mno-shared. - * NEWS: Mention -mno-shared. - -2004-12-09 Paul Brook - - * config/tc-arm.c (s_arm_unwind_fnend): Use R_ARM_PREL31 relocation - for function start. - -2004-12-09 Ian Lance Taylor - - * config/tc-mips.c (append_insn): If we emit a nop during a relax - sequence, increase the size of the sequence. - - * config/tc-mips.c (mips_cpu_info_table): Change "9000" entry to - use CPU_RM9000. - -2004-12-07 Ben Elliston - - * read.c (s_align): Use an align_limit temporary to allay a GCC - signed/unsigned comparison warning. - -2004-12-01 Mark Mitchell - - * Makefile.am (TARG_ENV_HFILES): Add te-armlinuxeabi.h. - * configure.in: Use it for arm*-*-linux-gnueabi*. - * config/tc-arm.c: Allow emulation file to set FPU_DEFAULT. - * config/te-armlinuxeabi.h: New file. - * Makefile.in: Regenerated. - * aclocal.m4: Likewise. - * configure: Likewise. - * doc/Makefile.in: Regenerated. - -2004-12-02 Bob Wilson - - * config/tc-xtensa.c (xtensa_switch_section_emit_state): Use subseg_set. - (xtensa_restore_emit_state): Likewise. - -2004-12-02 Alan Modra - - * read.c (ALIGN_LIMIT): Define, increasing limit for BFD_ASSEMBLER. - (s_align): Use it. - -2004-11-30 Tero Niemela - - * Makefile.am: Change LOCALEDIR to $(datadir)/share. - * Makefile.in: Regenerate. - -2004-11-29 Tomer Levi - - * config/tc-crx.c: Major code cleanup. Remove unused variables and - functions, give functions a meaningful name, add comments. - (check_range): New function - Replace operand size calculation - with range checking. - (assemble_insn): Update Algorithm, improve error issuing. - (enum op_err): New. - (process_label_constant): Bug fix regarding COP_BRANCH_INS relocation - handling. - -2004-11-29 Kazuhiro Inaoka - - * config/tc-m32r.c (md_pcrel_from_section): Fixed a pcrel relocte - miss between different section in the same module. - (tc_gen_reloc): Likewise. - -2004-11-25 Theodore A. Roth - - * gas/config/tc-avr.c (mcu_types): Add support for atmega165, - atmega325, atmega3250, atmega645 and atmega6450. - -2004-11-25 Jan Beulich - - * config/tc-i386.c (optimize_imm): Adjust immediates to only those - permissible for the selected instruction suffix. - (process_suffix): For DefaultSize instructions, suppressing the - guessing of a 'q' suffix if the instruction doesn't support it is - pointless, because only an 'l' suffix can be guessed in this place. - -2004-11-24 Nick Clifton - - * config/tc-iq2000.c: Remove support for IQ10 processor. - Convert to ISO C90 formatting. - * config/tc-iq2000.h: Likewise. - -2004-11-23 Nick Clifton - - * config/tc-mn10300.c (md_relax_table): More fixes to the offsets - in this table. They should be correct now. - -2004-11-23 Jan Beulich - - * config/tc-i386.h (CpuMMX2): Declare. Artificial classifier to - indicate the MMX extensions added by both SSE and 3DNow!A. - (Cpu3dnowA): Declare. - (CpuUnknownFlags): Update. - * config/tc-i386.c (cpu_sub_arch_name): Declare. - (cpu_arch): i586 and pentium do not imply MMX. i686 and pentiumpro do - neither imply SSE nor MMX. k6 implies MMX. k6_2 additionally implies - 3DNow!. Athlon additionally implies 3DNow!A. Several new - entries (those starting with a dot are for sub-arch specification). - (set_cpu_arch): Handle sub-arch specifications. - (parse_insn): Distinguish between instructions not supported because - of insufficient CPU features and because of 64-bit mode. - * doc/c-i386.texi: Describe enhanced .arch directive. - -2004-11-22 Bob Wilson - - * config/tc-xtensa.c (xg_add_opcode_fix): Set fx_no_overflow. - -2004-11-22 Bob Wilson - - * dwarf2dbg.c (dwarf2_finish): Don't write a .debug_line section - without a corresponding .debug_info section. - -2004-11-22 Hans-Peter Nilsson - - * read.c (potable): Add "error" and "warning". - (s_errwarn): New function. - * read.h (s_errwarn): Declare. - * doc/as.texinfo (Error, Warning): Document .error and .warning. - -2004-11-22 Nick Clifton - - * config/tc-tic54x.c (tic54x_adjust_symtab): Adjust call to - c_dot_file_symbol. - -2004-11-19 Alan Modra - - * config/tc-msp430.c (struct rcodes_s, MSP430_RLC, msp430_rcodes, - struct hcodes_s, msp430_hcodes): From include/opcode/msp430.h. - -2004-11-19 Alan Modra - - * config/obj-coff.c (c_dot_file_symbol): Add "app" param. - (coff_adjust_symtab): Adjust call. - (crawl_symbols): Likewise. - * config/obj-coff.h (c_dot_file_symbol): Add "app" param. - (obj_app_file): Adjust. - -2004-11-18 Inderpreet Singh - - * configure.in: Enable bfd_assember for the MAXQ port. - * configure: Regenerate. - -2004-11-12 Bob Wilson - Sterling Augustine - - * config/tc-xtensa.c (finish_vinsn): Clear pending instruction if - there is a conflict. - (check_t1_t2_reads_and_writes): Check for both reads and writes to - interfaces that are related as determined by xtensa_interface_class_id. - -2004-11-12 Nick Clifton - - * config/tc-mn10300.c (md_relax_table): Fix off by one negative - offsets for conditional branches. - -2004-11-11 Bob Wilson - - * config/tc-xtensa.c (MAX_IMMED6): Change value to 65. - -2004-11-10 Bob Wilson - - * config/tc-xtensa.c (update_next_frag_state): Always add a NOP if - relaxing at the end of a loop. Don't mark frags as UNREACHABLE or - MAYBE_UNREACHABLE. - (relax_frag_immed): Update call to update_next_frag_state. - -2004-11-10 Alan Modra - - * obj.h (struct format_ops ): Add int param. - * read.h (s_app_file_string): Likewise. - * read.c (s_app_file_string): Likewise. - (s_app_file): Adjust s_app_file_string call. - * config/tc-mips.c (s_mips_file): Likewise. - * config/obj-coff.h (obj_app_file): Add app param. - * config/obj-ecoff.h (obj_app_file): Likewise. - * config/obj-multi.h (obj_app_file): Likewise. - * config/obj-elf.h (elf_file_symbol): Likewise. - * config/obj-elf.c (elf_file_symbol): Only emit one file symbol - if called for # preprocessor lines. - -2004-11-08 H.J. Lu - - PR 528 - * symbols.c (resolve_symbol_value): Convert weak symbols only - for Windows PECOFF. - (symbol_equated_reloc_p): Don't equate weaks when relocating - only for Windows PECOFF. - -2004-11-08 Tomer Levi - - * config/tc-crx.c (print_insn): Check and set insn_addr. - * config/tc-crx.h (md_frag_check): Define. - -2004-11-08 Inderpreet Singh - Vineet Sharma - - * configure.in: Add support for new target maxq-coff. - * configure: Regenerate. - * NEWS: Mention new support. - * config/tc-maxq.c: New file. - * config/tc-maxq.h: New file. - * config/obj-coff.h: Add support for maxq-coff. - -2004-11-08 Aaron W. LaFramboise - - * symbols.c (any_external_name): Define. - (resolve_symbol_value): Convert weak symbols. - (S_SET_EXTERNAL): Support any_external_name. - (S_SET_NAME): Qualify parameter const. - (symbol_equated_reloc_p): Equate to weaks when relocating. - * symbols.h (S_SET_NAME): Qualfiy parameter const. - * tc.h (any_external_name): Declare. - * config/obj-coff.c ("coff/pe.h"): Include for BFD - assemblers also. - (weak_is_altname): Declare and define. - (weak_name2altname): Same. - (weak_altname2name): Same. - (weak_uniquify): Same. - (weak_altprefix): Define. - (obj_coff_weak): Change .weak syntax and handling. - (coff_frob_symbol): Fix PE weak symbol alternates. - * config/obj-coff.h (USE_UNIQUE): Define. - * config/tc-i386.c (md_apply_fix3): Assume weak symbols - are in another segment. - (tc_gen_reloc): Remove broken addend hack. - doc/as.texinfo: Update. - -2004-11-05 Sterling Augustine - - * config/tc-xtensa.c (total_frag_text_expansion): New. - (md_estimate_size_before_relax): Use it. - (find_address_of_next_align_frag): Likewise. - -2004-11-05 Tomer Levi - - * config/tc-crx.c: Rename argument types. - (processing_arg_number): Rename to 'cur_arg_num'. - (get_number_of_bits): Rename to 'set_operand_size'. - (get_operandtype): Rename to 'parse_operand', totally rewrite. - (set_cons_rparams): Rename to 'set_operand', totally rewrite. - (set_indexmode_parameters): Remove function, integrate its code into - 'set_operand'. - (set_operand_size): Get rid of 'Operand Number' function parameter - - use global variable 'cur_arg_num' instead. - Use a local 'argument' pointer to reference the current argument. - (parse_operand): Likewise. - (set_operand): Likewise. - (process_label_constant): Likewise. - -2004-11-04 Bob Wilson - - * config/tc-xtensa.c: Remove XTENSA_SECTION_RENAME ifdefs. - (add_section_rename): Delete. Inlined into... - (build_section_rename): ...here. Use xstrdup instead of strdup. - (xtensa_section_rename): Drop "const" from argument and return types. - (md_show_usage): Indent to match show_usage(). - * config/tc-xtensa.h: Remove XTENSA_SECTION_RENAME ifdefs. - (tc_canonicalize_section_name): Define. - (md_elf_section_rename): Remove unused macro. - * doc/as.texinfo (Overview): Document Xtensa --rename-section option. - * doc/c-xtensa.texi (Xtensa Options): Likewise. - (Frame Directive): Delete. - -2004-11-04 Daniel Jacobowitz - - * configure.in: Remove arm-*-oabi and thumb-*-oabi. - * config/tc-arm.c (target_oabi): Delete. - (md_apply_fix3, elf32_arm_target_format): Remove target_oabi checks. - (arm_opts): Remove moabi. - * doc/as.texinfo (Overview): Remove documentation of -moabi. - * doc/c-arm.texi (ARM Options): Likewise. - * configure: Regenerated. - -2004-11-04 Hans-Peter Nilsson - - * configure.in (crisv32): Recognize. AC_DEFINE_UNQUOTED - DEFAULT_CRIS_ARCH. Handle crisv32-*-linux-gnu* like - cris-*-linux-gnu* and crisv32-*-* like cris-*-*. - * configure: Regenerate. - * config/tc-cris.c (enum cris_archs): New. - (cris_mach, cris_arch_from_string, s_cris_arch, get_sup_reg) - (cris_insn_ver_valid_for_arch): New functions. - (DEFAULT_CRIS_ARCH): New macro, default to cris_any_v0_v10. - (cris_arch): New variable. - (md_pseudo_table): New pseudo .arch. - (err_for_dangerous_mul_placement): Initialize according to - DEFAULT_CRIS_ARCH. - (STATE_COND_BRANCH): Renamed from STATE_CONDITIONAL_BRANCH. - All users changed. - (STATE_COND_BRANCH_V32, STATE_COND_BRANCH_COMMON) - (STATE_ABS_BRANCH_V32, STATE_LAPC, BRANCH_BF_V32, BRANCH_BB_V32) - (BRANCH_WF_V32, BRANCH_WB_V32): New. - (BRANCH_BF, BRANCH_BB, BRANCH_WF, BRANCH_WB): Don't undef after - use in md_cris_relax_table. - (md_cris_relax_table): Add entries for STATE_COND_BRANCH_V32, - STATE_COND_BRANCH_COMMON, STATE_ABS_BRANCH_V32, STATE_LAPC. - Update and improve head comment. - (OPTION_PIC): Define in terms of previous option, OPTION_US. - (OPTION_MULBUG_ABORT_ON, OPTION_MULBUG_ABORT_OFF): Similar. - (OPTION_ARCH): New. - (md_longopts): New option --march=... - (cris_any_v0_v10_long_jump_size, crisv32_long_jump_size): New - macros. - (md_long_jump_size): Initialize in terms of DEFAULT_CRIS_ARCH. - (HANDLE_RELAXABLE): New macro. - (md_estimate_size_before_relax): Use HANDLE_RELAXABLE for common - cases. Check for weak symbols and assume not relaxable. Handle - STATE_COND_BRANCH_V32, STATE_COND_BRANCH_COMMON, - STATE_ABS_BRANCH_V32, STATE_LAPC. Use new variable symbolP, not - fragP->fr_symbol. - (md_convert_frag): Handle STATE_COND_BRANCH_V32, - STATE_COND_BRANCH_COMMON, STATE_ABS_BRANCH_V32, STATE_LAPC. - (cris_create_short_jump): Adjust for CRISv32. - (cris_relax_frag): Handle new states. - (md_create_long_jump): Ditto. Emit error for common_v10_v32. - (md_begin): Define symbols "..asm.arch.cris.v32", - "..asm.arch.cris.v10", "..asm.arch.cris.common_v10_v32" and - "..asm.arch.cris.any_v0_v10". Use cris_insn_ver_valid_for_arch - when entering opcode table entry points. - (md_assemble): Adjust branch handling for CRISv32. Handle LAPC - relaxation. In fix_new_exp call for main insn, pass 1 for pcrel - parameter for 8, 16 and 32-bit pc-relative insns and LAPC. - (cris_process_instruction): Initialize out_insnp->insn_type to - CRIS_INSN_NONE, not CRIS_INSN_NORMAL. - : New - cases. - : Check that modified_char == '.'. - : Consume the rest of the line. - When operands don't match, skip over subsequent insns with - non-matching version specifier but same mnemonic. - : Immediate operands for - special registers in CRISv32 are always 32 bit long. - : - New cases. - (get_gen_reg): Only recognize "PC" when followed by "+]" for v32 - and compatible. Recognize "ACR" for v32, unless followed by "+". - (get_spec_reg): Consider cris_arch when looking up register. - (get_autoinc_prefix_or_indir_op): Don't recognize assignment for - v32 or compatible. - (get_3op_or_dip_prefix_op): Check for ']' after seeing '[rN+'. - (cris_get_expression): Restore input_line_pointer if failing "early". - (get_flags): Consider cris_arch and recognize flags accordingly. - (branch_disp): Adjust for CRISv32. - (gen_cond_branch_32): Similar. Emit error for common_v10_v32. - (cris_number_to_imm): Use as_bad_where, not as_bad. Remove - related FIXME. Don't insist on BFD_RELOC_32_PCREL fixup to be - resolved. Don't enter zeros in object file for - BFD_RELOC_32_PCREL. - - : New case. - (md_parse_option): Break out "return 1". - New case. - (tc_gen_reloc): - - - : New cases. - Addends for non-zero fx_pcrel are too in fx_offset. - (md_show_usage): Show --march=. - (md_apply_fix3): Adjust val for BFD_RELOC_CRIS_LAPCQ_OFFSET. - (md_pcrel_from): BFD_RELOC_CRIS_LAPCQ_OFFSET is PC-relative too. - (s_syntax) : Properly constify member operand. - * config/tc-cris.h (TARGET_MACH): Define. - (cris_mach): Declare. - * doc/as.texinfo (Overview) : Add --march=... - * doc/c-cris.texi (CRIS-Symbols): New node for built-in symbols. - (CRIS-Opts): Document --march=... - (CRIS-Pseudos): Document .arch. - -2004-11-04 Jan Beulich - - * config/tc-i386.c (set_intel_syntax): Allow % in symbol names when - intel syntax and no register prefix, allow $ in symbol names when - intel syntax. - (set_16bit_gcc_code_flag): Replace literal 'l' by LONG_MNEM_SUFFIX. - (intel_float_operand): Add fourth return value indicating math control - operations. Make classification more precise. - (md_assemble): Complain if memory operand of mov[sz]x has no size - specified. - (parse_insn): Translate word operands to floating point instructions - operating on integers as well as control instructions to short ones - as expected by AT&T syntax. Translate 'd' suffix to short one only for - floating point instructions operating on non-integer operands. - (match_template): Remove fldcw special case. Adjust q-suffix handling - to permit it on fild/fistp/fisttp in AT&T mode. - (process_suffix): Don't guess DefaultSize insns' suffix from - stackop_size for certain floating point control instructions. Guess - suffix for branch and [ls][gi]dt based on flag_code. Split error - messages for Intel and AT&T syntax, and make the condition more strict - for the former. Adjust suppressing of generation of operand size - overrides. - (intel parser): Allow the full set of MASM operators. Add FWORD, TBYTE, - OWORD, and XMMWORD operand size specifiers (TBYTE replaces XWORD). Add - more error checking. - * config/tc-i386.h (BYTE_PTR WORD_PTR DWORD_PTR QWORD_PTR XWORD_PTR - SHORT OFFSET_FLAT FLAT NONE_FOUND): Remove unused defines. - -2004-11-03 Hans-Peter Nilsson - - * symbols.c (colon) [!WORKING_DOT_WORD]: Don't declare - md_short_jump_size, md_long_jump_size. - * write.c [!WORKING_DOT_WORD]: Ditto. - * tc.h [!WORKING_DOT_WORD]: Declare them here. Drop const - qualifier. - * config/tc-cris.h (md_short_jump_size, md_long_jump_size): Don't - declare. - * config/tc-cris.c (md_short_jump_size, md_long_jump_size): Drop - const qualifier in these definitions. - * config/tc-i370.c, config/tc-m68k.c, config/tc-pdp11.c, - config/tc-s390.c, config/tc-tahoe.c, config/tc-vax.c: Ditto. - -2004-11-02 Nick Clifton - - * dwarf2dbg.c (dwarf2_finish): Check for the existence of a file - table before deciding to produce a .debug_line section to match up - with a user provided .debug_info section. - -2004-10-28 Tomer Levi - - * config/tc-crx.c (getreg_image): Bug fix, a return value was - mistakenly omitted from CRX_C_REGTYPE and CRX_CS_REGTYPE cases. - -2004-10-27 Tomer Levi - - * config/tc-crx.c: Remove global variable 'post_inc_mode'. - (get_flags): New function. - (get_number_of_bits): Edit comments, update numeric values to - supported sizes. - (process_label_constant): Don't support the colon - format (SYMBOL:[s|m|l]). - (set_cons_rparams): Support argument type 'arg_rbase'. - (get_operandtype): Bug fix in 'rbase' operand type parsing. - (handle_LoadStor): Bug fix, first handle post-increment mode. - (getreg_image): Remove redundant code, update according to latest - CRX spec. - (print_constant): Bug fix relate to 3-word instructions. - (assemble_insn): Bug fix, when matching instructions, verify also - instruction type (not only mnemonic). - Add various error checking. - (preprocess_reglist): Support HI/LO and user registers. - -2004-10-25 David Mosberger-Tang - - * config/tc-ia64.c (fixup_unw_records): Don't let the "t" value - in an epilogue directive go negative. - -2004-10-25 H.J. Lu - - PR 474 - * config/tc-ia64.c (emit_one_bundle): Decrement md.num_slots_in_use - after reporting template error during manual bundling. Reported - by Michael Dupont, michaelx.dupont@intel.com. - -2004-10-25 Daniel Jacobowitz - - * Makefile.am: Run dep-am. - * aclocal.m4: Regenerate with automake 1.9.2. - * Makefile.in: Regenerate with automake 1.9.2. - * doc/Makefile.in: Likewise. - - * config/tc-arm.c: Include "dw2gencfi.h". - (tc_arm_regname_to_dw2regnum, tc_arm_frame_initial_instructions): - New functions. - * config/tc-arm.h (TARGET_USE_CFIPOP, DWARF2_DEFAULT_RETURN_COLUMN) - (DWARF2_CIE_DATA_ALIGNMENT, tc_regname_to_dw2regnum) - (tc_cfi_frame_initial_instructions): Define. - (tc_arm_regname_to_dw2regnum, tc_arm_frame_initial_instructions): - Add prototypes. - -2004-10-21 Tomer Levi - - * config/tc-crx.c (assemble_insn): Check unsigned immediate - operands validity. - Update coprocessor id to be unsigned immediate. - -2004-10-18 Aaron W. LaFramboise - - * config/tc-i386.c (O_secrel): Delete. - (tc_pe_dwarf2_emit_offset): New function. - * config/tc-i386.h (O_secrel): Define as O_md1. - (TC_DWARF2_EMIT_OFFSET): Define. - -2004-10-18 Nick Clifton - - * config/tc-xstormy16.c (xstormy16_cons_fix_new): Accept and - ignore @fptr() directives for 4-byte fixups. - -2004-10-15 Alan Modra - - * Makefile.am: Run "make dep-am" - * Makefile.in: Regenerate. - -2004-10-14 Bob Wilson - - * doc/c-xtensa.texi (Xtensa Options, Absolute Literals Directive): - Remove comments about placement of literal pools. - (Literal Directive): Update description of literal placement. - (Literal Prefix Directive): Remove statement that this does not apply - to absolute-mode literals. Describe new section naming scheme. - -2004-10-12 Bob Wilson - - * config/tc-xtensa.c (xtensa_frequency_pseudo): Use set_subseg_freq. - (is_entry_opcode, is_movi_opcode, is_the_loop_opcode, is_jx_opcode, - is_windowed_return_opcode): Delete. - (xtensa_frob_label): Use get_subseg_target_freq. - (md_assemble): Inline call to is_entry_opcode. - (xtensa_handle_align): Inline call to get_frag_is_literal. - (relaxation_requirements): Inline call to is_jx_opcode. - (emit_single_op): Inline call to is_movi_opcode. - (xg_assemble_vliw_tokens): Inline calls to get_frag_is_insn, - get_frag_is_no_transform, is_entry_opcode, and - set_frag_is_specific_opcode. Use get_subseg_total_freq. - (xtensa_fix_a0_b_retw_frags, xtensa_fix_b_j_loop_end_frags, - xtensa_fix_close_loop_end_frags, relax_frag_immed, convert_frag_immed): - Inline calls to get_frag_is_no_transform. - (next_instrs_are_b_retw): Inline call to is_windowed_return_opcode. - (xtensa_fix_short_loop_frags): Inline calls to is_the_loop_opcode and - get_frag_is_no_transform. - (convert_frag_immed_finish_loop): Inline calls to get_expression_value - and set_frag_is_no_transform. - (get_expression_value): Delete. - (subseg_map struct): Rename cur_total_freq to total_freq. Rename - cur_target_freq to target_freq. - (get_subseg_info): Split out code to create a new map entry into ... - (add_subseg_info): ... this new function. - (get_last_insn_flags): Check if get_subseg_info succeeded. - (set_last_insn_flags): Call add_subseg_info if needed. - (get_subseg_total_freq, get_subseg_target_freq, set_subseg_freq): New. - (xtensa_reorder_segments): Compute last_sec while counting sections. - Remove call to get_last_sec. - (get_last_sec): Delete. - (cache_literal_section): Inline call to retrieve_literal_seg and its - callees, seg_present and add_seg_list. - (retrieve_literal_seg, seg_present, add_seg_list): Delete. - (get_frag_is_insn, get_frag_is_no_transform, - set_frag_is_specific_opcode, set_frag_is_no_transform): Delete. - * config/tc-xtensa.h (MAX_SLOTS): Reduce from 31 to 15. - -2004-10-12 Bob Wilson - - * config/tc-xtensa.c: Use ISO C90 formatting. - * config/tc-xtensa.h: Likewise. - * config/xtensa-istack.h: Likewise. - * config/xtensa-relax.c: Likewise. - * config/xtensa-relax.h: Likewise. - -2004-10-12 Paul Brook - - * config/tc-arm.c (md_begin): Change EF_ARM_EABI_VER3 to - EF_ARM_EABI_VER4. - (arm_eabis): Ditto. - * doc/c-arm.texi: Document that we actually support -meabi=4, not - -meabi=3. - -2004-10-08 Bob Wilson - - * doc/as.texinfo (VTableEntry, VTableInherit): Add "directive" to index - entries. - (Acknowledgements): Use "GAS" instead of AS variable. - -2004-10-08 Daniel Jacobowitz - - * config/tc-i386.c: Include "elf/x86-64.h". - (i386_elf_section_type): New function. - * config/tc-i386.h (md_elf_section_type): Define. - (i386_elf_section_type): New prototype. - -2004-10-08 Linus Nielsen Feltzing - - * config/m68k-parse.h (enum m68k_register): New control register, - MBAR2 (for MCF5249) - * config/tc-m68k.c: Correct control register set for MCF5249. - -2004-10-07 Bob Wilson - Sterling Augustine - - * config/tc-xtensa.c (absolute_literals_supported): New global flag. - (UNREACHABLE_MAX_WIDTH): Define. - (XTENSA_FETCH_WIDTH): Delete. - (cur_vinsn, xtensa_fetch_width, xt_saved_debug_type, past_xtensa_end, - prefer_const16, prefer_l32r): New global variables. - (LIT4_SECTION_NAME): Define. - (lit4_state struct): Add lit4_seg_name and lit4_seg fields. - (XTENSA_PROP_*, GET_XTENSA_PROP_*, SET_XTENSA_PROP_*): Define. - (frag_flags struct): New. - (xtensa_block_info struct): Move from tc-xtensa.h. Add flags field. - (subseg_map struct): Add cur_total_freq and cur_target_freq fields. - (bitfield, bit_is_set, set_bit, clear_bit): Define. - (MAX_FORMATS): Define. - (op_placement_info struct, op_placement_table): New. - (O_pltrel, O_hi16, O_lo16): Define. - (directiveE enum): Rename directive_generics to directive_transform. - Delete directive_relax. Add directive_schedule, - directive_absolute_literals, and directive_last_directive. - (directive_info): Rename "generics" to "transform". Delete "relax". - Add "schedule" and "absolute-literals". - (directive_state): Adjust entries to match changes in directive_info. - (xtensa_relax_statesE, RELAX_IMMED_MAXSTEPS): Move to tc-xtensa.h. - (xtensa_const16_opcode, xtensa_movi_opcode, xtensa_movi_n_opcode, - xtensa_l32r_opcode, xtensa_nop_opcode, xtensa_rsr_lcount_opcode): New. - (xtensa_j_opcode, xtensa_rsr_opcode): Delete. - (align_only_targets, software_a0_b_retw_interlock, - software_avoid_b_j_loop_end, maybe_has_b_j_loop_end, - software_avoid_short_loop, software_avoid_close_loop_end, - software_avoid_all_short_loops, specific_opcode): Delete. - (warn_unaligned_branch_targets): New. - (workaround_a0_b_retw, workaround_b_j_loop_end, workaround_short_loop, - workaround_close_loop_end, workaround_all_short_loops): Default FALSE. - (option_[no_]link_relax, option_[no_]transform, - option_[no_]absolute_literals, option_warn_unaligned_targets, - option_prefer_l32r, option_prefer_const16, option_target_hardware): - New enum values. - (option_[no_]align_only_targets, option_literal_section_name, - option_text_section_name, option_data_section_name, - option_bss_section_name, option_eb, option_el): Delete. - (md_longopts): Add entries for: [no-]transform, [no-]absolute-literals, - warn-unaligned-targets, prefer-l32r, prefer-const16, [no-]link-relax, - and target-hardware. Delete entries for [no-]target-align-only, - literal-section-name, text-section-name, data-section-name, and - bss-section-name. - (md_parse_option): Handle new options and remove old ones. Accept but - ignore [no-]density options. Warn for [no-]generics and [no-]relax - and treat them as [no-]transform. - (md_show_usage): Add new options and remove old ones. - (xtensa_setup_hw_workarounds): New. - (md_pseudo_table): Change "word" entry to use xtensa_elf_cons. Add - "long", "short", "loc" and "frequency" entries. - (use_generics): Rename to ... - (use_transform): ... this function. Add past_xtensa_end check. - (use_longcalls): Add past_xtensa_end check. - (code_density_available, can_relax): Delete. - (do_align_targets): New. - (get_directive): Accept dashes in directive names. Warn about - [no-]generics and [no-]relax directives and treat them as - [no-]transform. - (xtensa_begin_directive): Call md_flush_pending_output only for some - directives. Check for directives inside instruction bundles. Warn - about deprecated ".begin literal" usage. Warn and ignore [no-]density - directives. Handle new directives. Check generating_literals flag - for literal_prefix. - (xtensa_end_directive): Check for directives inside instruction - bundles. Warn and ignore [no-]density directives. Handle new - directives. Call xtensa_set_frag_assembly_state. - (xtensa_loc_directive_seen, xtensa_dwarf2_directive_loc, - xtensa_dwarf2_emit_insn): New. - (xtensa_literal_position): Call md_flush_pending_output. Do not check - use_literal_section flag. - (xtensa_literal_pseudo): Call md_flush_pending_output. Handle absolute - literals. Use xtensa_elf_cons to parse the expression. - (xtensa_literal_prefix): Do not check use_literal_section. Support - ".lit4" sections for absolute literals. Change prefix convention to - replace ".text" (or ".t" in a linkonce section). No need to call - subseg_set. - (xtensa_frequency_pseudo, xtensa_elf_cons, xtensa_elf_suffix): New. - (expression_end): Handle closing braces and colons. - (PLT_SUFFIX, plt_suffix): Delete. - (expression_maybe_register): Use new xtensa-isa.h functions. Use - xtensa_elf_suffix instead of checking for plt suffix, and handle O_lo16 - and O_hi16 expressions as well. - (tokenize_arguments): Handle closing braces and colons. - (parse_arguments): Use new xtensa-isa.h functions. Handle "invisible" - operands and paired register syntax. - (get_invisible_operands): New. - (xg_translate_sysreg_op): Handle new Xtensa LX RSR/WSR/XSR syntax. Use - new xtensa-isa.h functions. - (xtensa_translate_old_userreg_ops, xtensa_translate_zero_immed): New. - (xg_translate_idioms): Check if inside bundle. Use use_transform. - Handle new Xtensa LX RSR/WSR/XSR syntax. Remove code to widen density - instructions. Use xtensa_translate_zero_immed. - (operand_is_immed, operand_is_pcrel_label): Delete. - (get_relaxable_immed): Use new xtensa-isa.h functions. - (get_opcode_from_buf): Add slot parameter. Use new xtensa-isa.h - functions. - (xtensa_print_insn_table, print_vliw_insn): New. - (is_direct_call_opcode): Use new xtensa-isa.h functions. - (is_call_opcode, is_loop_opcode, is_conditional_branch_opcode, - is_branch_or_jump_opcode): Delete. - (is_movi_opcode, decode_reloc, encode_reloc, encode_alt_reloc): New. - (opnum_to_reloc, reloc_to_opnum): Delete. - (xtensa_insnbuf_set_operand, xtensa_insnbuf_get_operand): Use new - xtensa-isa.h functions. Operate on one slot of an instruction. - (xtensa_insnbuf_set_immediate_field, is_negatable_branch, - xg_get_insn_size): Delete. - (xg_get_build_instr_size): Use xg_get_single_size. - (xg_is_narrow_insn, xg_is_single_relaxable_insn): Update calls to - xg_build_widen_table. Use xg_get_single_size. - (xg_get_max_narrow_insn_size): Delete. - (xg_get_max_insn_widen_size, xg_get_max_insn_widen_literal_size, - xg_is_relaxable_insn): Update calls to xg_build_widen_table. Use - xg_get_single_size. - (xg_build_to_insn): Record the loc field. Handle OP_OPERAND_HI16U and - OP_OPERAND_LOW16U. Check xg_valid_literal_expression. - (xg_expand_to_stack, xg_expand_narrow): Update calls to - xg_build_widen_table. Use xg_get_single_size. - (xg_immeds_fit): Use new xtensa-isa.h functions. Update call to - xg_check_operand. - (xg_symbolic_immeds_fit): Likewise. Also handle O_lo16 and O_hi16, and - treat weak symbols conservatively. - (xg_check_operand): Use new xtensa-isa.h functions. - (is_dnrange): Delete. - (xg_assembly_relax): Inline previous calls to tinsn_copy. - (xg_finish_frag): Specify separate relax states for the frag and slot0. - (is_branch_jmp_to_next, xg_add_branch_and_loop_targets): Use new - xtensa-isa.h functions. - (xg_instruction_matches_option_term, xg_instruction_matches_or_options, - xg_instruction_matches_options): New. - (xg_instruction_matches_rule): Handle O_register expressions. Call - xg_instruction_matches_options. - (transition_rule_cmp): New. - (xg_instruction_match): Update call to xg_build_simplify_table. - (xg_build_token_insn): Record loc fields. - (xg_simplify_insn): Check is_specific_opcode field and - density_supported flag. - (xg_expand_assembly_insn): Skip checking code_density_available. Use - new xtensa-isa.h functions. Call use_transform instead of can_relax. - (xg_assemble_literal): Add error handling for O_big. Call - record_alignment. Handle O_pltrel. - (xg_valid_literal_expression): New. - (xg_assemble_literal_space): Add slot parameter. Remove call to - set_expr_symbol_offset. Add call to record_alignment. Update call to - xg_finish_frag. - (xg_emit_insn): Delete. - (xg_emit_insn_to_buf): Add format parameter. Update calls to - xg_add_opcode_fix and xtensa_insnbuf_to_chars. - (xg_add_opcode_fix): Change opcode parameter to tinsn and add format - and slot parameters. Handle new "alternate" relocations for absolute - literals and CONST16 instructions. Check for bad uses of O_lo16 and - O_hi16. Use new xtensa-isa.h functions. - (xg_assemble_tokens): Delete. - (is_register_writer): Use new xtensa-isa.h functions. - (is_bad_loopend_opcode): Check for xtensa_rsr_lcount_opcode instead of - old-style RSR from LCOUNT. - (next_frag_opcode): Delete. - (next_frag_opcode_is_loop, next_frag_format_size, frag_format_size, - update_next_frag_state): New. - (update_next_frag_nop_state): Delete. - (next_frag_pre_opcode_bytes): Use next_frag_opcode_is_loop. - (xtensa_mark_literal_pool_location): Check use_literal_section flag and - the state of the absolute-literals directive. Add calls to - record_alignment and xtensa_set_frag_assembly_state. Call - xtensa_switch_to_non_abs_literal_fragment instead of - xtensa_switch_to_literal_fragment. - (build_nop): New. - (assemble_nop): Use build_nop. Update call to xtensa_insnbuf_to_chars. - (get_expanded_loop_offset): Change check for undefined opcode to an - assertion. - (xtensa_set_frag_assembly_state, relaxable_section, - xtensa_find_unmarked_state_frags, xtensa_find_unaligned_branch_targets, - xtensa_find_unaligned_loops, xg_apply_tentative_value): New. - (md_begin): Update call to xtensa_isa_init. Initialize linkrelax to 1. - Set lit4_seg_name. Call xg_init_vinsn. Initialize new global opcodes. - Call init_op_placement_info_table and xtensa_set_frag_assembly_state. - (xtensa_init_fix_data): New. - (xtensa_frob_label): Reset label symbol to the current frag. Check - do_align_targets and generating_literals flag. Propagate frequency - info to new alignment frag. Call xtensa_set_frag_assembly_state. - (xtensa_unrecognized_line): New. - (xtensa_flush_pending_output): Check if inside a bundle. Add a call - to xtensa_set_frag_assembly_state. - (error_reset_cur_vinsn): New. - (md_assemble): Remove check for literal frag. Remove call to - istack_init. Call use_transform instead of use_generics. Parse - explicit instruction format specifiers. Move code for - a0_b_retw_interlock workaround to xg_assemble_vliw_tokens. Call - error_reset_cur_vinsn on errors. Add call to get_invisible_operands. - Add dwarf2_where call. Remote automatic alignment for ENTRY - instructions. Move call to xtensa_clear_insn_labels to the end. - Rearrange to handle bundles. - (xtensa_cons_fix_new): Delete. - (xtensa_handle_align): New. - (xtensa_frag_init): Call xtensa_set_frag_assembly_state. Remove - assignment to is_no_density field. - (md_pcrel_from): Use new xtensa-isa.h functions. Use decode_reloc - instead of reloc_to_opnum. Handle "alternate" relocations. - (xtensa_force_relocation, xtensa_check_inside_bundle, - xtensa_elf_section_change_hook): New. - (xtensa_symbol_new_hook): Delete. - (xtensa_fix_adjustable): Check for difference of symbols with an - offset. Check for external and weak symbols. - (md_apply_fix3): Remove cases for XTENSA_OP{0,1,2} relocs. - (md_estimate_size_before_relax): Return expansion for the first slot. - (tc_gen_reloc): Handle difference of symbols by producing - XTENSA_DIFF{8,16,32} relocs and by writing the value of the difference - into the output. Handle new XTENSA_SLOT*_OP relocs by storing the - tentative values into the output when linkrelax is set. - (XTENSA_PROP_SEC_NAME): Define. - (xtensa_post_relax_hook): Call xtensa_find_unmarked_state_frags. - Create literal tables only if using literal sections. Create new - property tables instead of old instruction tables. Check for unaligned - branch targets and loops. - (finish_vinsn, find_vinsn_conflicts, check_t1_t2_reads_and_writes, - new_resource_table, clear_resource_table, resize_resource_table, - resources_available, reserve_resources, release_resources, - opcode_funcUnit_use_unit, opcode_funcUnit_use_stage, - resources_conflict, xg_find_narrowest_format, relaxation_requirements, - bundle_single_op, emit_single_op, xg_assemble_vliw_tokens): New. - (xtensa_end): Call xtensa_flush_pending_output. Set past_xtensa_end - flag. Update checks for workaround options. Call - xtensa_mark_narrow_branches and xtensa_mark_zcl_first_insns. - (xtensa_cleanup_align_frags): Add special case for branch targets. - Check for and mark unreachable frags. - (xtensa_fix_target_frags): Remove use of align_only_targets flag. - Use RELAX_LOOP_END_BYTES in special case for negatable branch at the - end of a zero-overhead loop body. - (frag_can_negate_branch): Handle instructions with multiple slots. - Use new xtensa-isa.h functions - (xtensa_mark_narrow_branches, is_narrow_branch_guaranteed_in_range, - xtensa_mark_zcl_first_insns): New. - (xtensa_fix_a0_b_retw_frags, xtensa_fix_b_j_loop_end_frags): Error if - transformations are disabled. - (next_instrs_are_b_retw): Use new xtensa-isa.h functions. Handle - multislot instructions. - (xtensa_fix_close_loop_end_frags, xtensa_fix_short_loop_frags): - Likewise. Also error if transformations are disabled. - (unrelaxed_frag_max_size): New. - (unrelaxed_frag_min_insn_count, unrelax_frag_has_b_j): Use new - xtensa-isa.h functions. - (xtensa_sanity_check, is_empty_loop, is_local_forward_loop): Use - xtensa_opcode_is_loop instead of is_loop_opcode. - (get_text_align_power): Replace as_fatal with assertion. - (get_text_align_fill_size): Iterate instead of using modulus when - use_nops is false. - (get_noop_aligned_address): Assert that this is for a machine-dependent - RELAX_ALIGN_NEXT_OPCODE frag. Use next_frag_opcode_is_loop, - xg_get_single_size, and frag_format_size. - (get_widen_aligned_address): Rename to ... - (get_aligned_diff): ... this function. Add max_diff parameter. - Remove handling of rs_align/rs_align_code frags. Use - next_frag_format_size, get_text_align_power, get_text_align_fill_size, - next_frag_opcode_is_loop, and xg_get_single_size. Compute max_diff - and pass it back to caller. - (xtensa_relax_frag): Use relax_frag_loop_align. Add code for new - RELAX_SLOTS, RELAX_MAYBE_UNREACHABLE, RELAX_MAYBE_DESIRE_ALIGN, - RELAX_FILL_NOP, and RELAX_UNREACHABLE frag types. Check relax_seen. - (relax_frag_text_align): Rename to ... - (relax_frag_loop_align): ... this function. Assume loops can only be - in the first slot of an instruction. - (relax_frag_add_nop): Use assemble_nop instead of constructing an OR - instruction. Remove call to frag_wane. - (relax_frag_narrow): Rename to ... - (relax_frag_for_align): ... this function. Extend to handle - RELAX_FILL_NOP and RELAX_UNREACHABLE, as well as RELAX_SLOTS with - RELAX_NARROW for the first slot. - (find_address_of_next_align_frag, bytes_to_stretch): New. - (future_alignment_required): Use find_address_of_next_align_frag and - bytes_to_stretch. Look ahead to subsequent frags to make smarter - alignment decisions. - (relax_frag_immed): Add format, slot, and estimate_only parameters. - Check if transformations are enabled for b_j_loop_end workaround. - Use new xtensa-isa.h functions and handle multislot instructions. - Update call to xg_assembly_relax. - (md_convert_frag): Handle new RELAX_SLOTS, RELAX_UNREACHABLE, - RELAX_MAYBE_UNREACHABLE, RELAX_MAYBE_DESIRE_ALIGN, and RELAX_FILL_NOP - frag types. - (convert_frag_narrow): Add segP, format and slot parameters. Call - convert_frag_immed for branch instructions. Adjust calls to - tinsn_from_chars, tinsn_immed_from_frag, and xg_emit_insn_to_buf. Use - xg_get_single_size and xg_get_single_format. - (convert_frag_fill_nop): New. - (convert_frag_immed): Add format and slot parameters. Handle multislot - instructions and use new xtensa-isa.h functions. Update calls to - tinsn_immed_from_frag and xg_assembly_relax. Check if transformations - enabled for b_j_loop_end workaround. Use build_nop instead of - assemble_nop. Check is_specific_opcode flag. Check for unreachable - frags. Use xg_get_single_size. Handle O_pltrel. - (fix_new_exp_in_seg): Remove check for old plt flag. - (convert_frag_immed_finish_loop): Update calls to tinsn_from_chars and - xtensa_insnbuf_to_chars. Call tinsn_immed_from_frag. Change check - for loop opcode to an assertion. Mark all frags up to the end of the - loop as not transformable. - (get_last_insn_flags, set_last_insn_flags): Use get_subseg_info. - (get_subseg_info): New. - (xtensa_move_literals): Call xtensa_set_frag_assembly_state. Add null - check for dest_seg. - (xtensa_switch_to_literal_fragment): Rewrite to handle absolute - literals and use xtensa_switch_to_non_abs_literal_fragment otherwise. - (xtensa_switch_to_non_abs_literal_fragment): New. - (cache_literal_section): Add is_code parameter and pass it through to - retrieve_literal_seg. - (retrieve_literal_seg): Add is_code parameter and use it to set the - flags on the literal section. Handle case where head parameter is 0. - (get_frag_is_no_transform, set_frag_is_specific_opcode, - set_frag_is_no_transform): New. - (xtensa_create_property_segments): Add end_property_function parameter - and pass it through to add_xt_block_frags. Call bfd_get_section_flags - and skip SEC_DEBUGGING and !SEC_ALLOC sections. - (xtensa_create_xproperty_segments, section_has_xproperty): New. - (add_xt_block_frags): Add end_property_function parameter and call it - if it is non-zero. Call xtensa_frag_flags_init. - (xtensa_frag_flags_is_empty, xtensa_frag_flags_init, - get_frag_property_flags, frag_flags_to_number, - xtensa_frag_flags_combinable, xt_block_aligned_size, - xtensa_xt_block_combine, add_xt_prop_frags, - init_op_placement_info_table, opcode_fits_format_slot, - xg_get_single_size, xg_get_single_format): New. - (istack_push): Inline call to tinsn_copy. - (tinsn_copy): Delete. - (tinsn_has_invalid_symbolic_operands): Handle O_hi16 and O_lo16 and - CONST16 opcodes. Handle O_big, O_illegal, and O_absent. - (tinsn_has_complex_operands): Handle O_hi16 and O_lo16. - (tinsn_to_insnbuf): Use xg_get_single_format and new xtensa-isa.h - functions. Handle invisible operands. - (tinsn_to_slotbuf): New. - (tinsn_check_arguments): Use new xtensa-isa.h functions. - (tinsn_from_chars): Add slot parameter. Rewrite using xg_init_vinsn, - vinsn_from_chars, and xg_free_vinsn. - (tinsn_from_insnbuf): New. - (tinsn_immed_from_frag): Add slot parameter and handle multislot - instructions. Handle symbol differences. - (get_num_stack_text_bytes): Use xg_get_single_size. - (xg_init_vinsn, xg_clear_vinsn, vinsn_has_specific_opcodes, - xg_free_vinsn, vinsn_to_insnbuf, vinsn_from_chars, expr_is_register, - get_expr_register, set_expr_symbol_offset_diff): New. - * config/tc-xtensa.h (MAX_SLOTS): Define. - (xtensa_relax_statesE): Move from tc-xtensa.c. Add - RELAX_CHECK_ALIGN_NEXT_OPCODE, RELAX_MAYBE_DESIRE_ALIGN, RELAX_SLOTS, - RELAX_FILL_NOP, RELAX_UNREACHABLE, RELAX_MAYBE_UNREACHABLE, and - RELAX_NONE types. - (RELAX_IMMED_MAXSTEPS): Move from tc-xtensa.c. - (xtensa_frag_type struct): Add is_assembly_state_set, - use_absolute_literals, relax_seen, is_unreachable, is_specific_opcode, - is_align, is_text_align, alignment, and is_first_loop_insn fields. - Replace is_generics and is_relax fields by is_no_transform field. - Delete is_text and is_longcalls fields. Change text_expansion and - literal_expansion to arrays of MAX_SLOTS entries. Add arrays of - per-slot information: literal_frags, slot_subtypes, slot_symbols, - slot_sub_symbols, and slot_offsets. Add fr_prev field. - (xtensa_fix_data struct): New. - (xtensa_symfield_type struct): Delete plt field. - (xtensa_block_info struct): Move definition to tc-xtensa.h. Add - forward declaration here. - (xt_section_type enum): Delete xt_insn_sec. Add xt_prop_sec. - (XTENSA_SECTION_RENAME): Undefine. - (TC_FIX_TYPE, TC_INIT_FIX_DATA, TC_FORCE_RELOCATION, NO_PSEUDO_DOT, - tc_unrecognized_line, md_do_align, md_elf_section_change_hook, - HANDLE_ALIGN, TC_LINKRELAX_FIXUP, SUB_SEGMENT_ALIGN): Define. - (TC_CONS_FIX_NEW, tc_symbol_new_hook): Delete. - (unit_num_copies_func, opcode_num_units_func, - opcode_funcUnit_use_unit_func, opcode_funcUnit_use_stage_func): New. - (resource_table struct): New. - * config/xtensa-istack.h (MAX_INSN_ARGS): Increase from 6 to 10. - (TInsn struct): Add keep_wide, loc, fixup, record_fix, subtype, - literal_space, symbol, sub_symbol, offset, and literal_frag fields. - (tinsn_copy): Delete prototype. - (vliw_insn struct): New. - * config/xtensa-relax.c (insn_pattern_struct): Add options field. - (widen_spec_list): Add option conditions for density and boolean - instructions. Add expansions using CONST16 and conditions for using - CONST16 vs. L32R. Use new Xtensa LX RSR/WSR syntax. Add entries for - predicted branches. - (simplify_spec_list): Add option conditions for density instructions. - Add entry for NOP instruction. - (append_transition): Add cmp function pointer parameter and use it to - insert the new entry in order. - (operand_function_LOW16U, operand_function_HI16U): New. - (xg_has_userdef_op_fn, xg_apply_userdef_op_fn): Handle - OP_OPERAND_LOW16U and OP_OPERAND_HI16U. - (enter_opname, split_string): Use xstrdup instead of strdup. - (init_insn_pattern): Initialize new options field. - (clear_req_or_option_list, clear_req_option_list, - clone_req_or_option_list, clone_req_option_list, parse_option_cond): - New. - (parse_insn_pattern): Parse option conditions. - (transition_applies): New. - (build_transition): Use new xtensa-isa.h functions. Fix incorrectly - swapped last arguments in calls to append_constant_value_condition. - Call clone_req_option_list. Add warning about invalid opcode. - Handle LOW16U and HI16U function names. - (build_transition_table): Add cmp parameter and use it in calls to - append_transition. Use new xtensa-isa.h functions. Check - transition_applies before adding entries. - (xg_build_widen_table, xg_build_simplify_table): Add cmp parameter and - pass it through to build_transition_table. - * config/xtensa-relax.h (ReqOrOptionList, ReqOrOption, ReqOptionList, - ReqOption, transition_cmp_fn): New types. - (OpType enum): Add OP_OPERAND_LOW16U and OP_OPERAND_HI16U. - (transition_rule struct): Add options field. - * doc/as.texinfo (Overview): Update Xtensa options. - * doc/c-xtensa.texi (Xtensa Options): Delete --[no-]density, - --[no-]relax, and --[no-]generics options. Update descriptions of - --text-section-literals and --[no-]longcalls. Add - --[no-]absolute-literals and --[no-]transform. - (Xtensa Syntax): Add description of syntax for FLIX instructions. - Remove use of "generic" and "specific" terminology for opcodes. - (Xtensa Registers): Generalize the syntax description to include - user-defined register files. - (Xtensa Automatic Alignment): Update. - (Xtensa Branch Relaxation): Mention limitation of unconditional jumps. - (Xtensa Call Relaxation): Linker can now remove most of the overhead. - (Xtensa Directives): Remove confusing rules about precedence. - (Density Directive, Relax Directive): Delete. - (Schedule Directive): New. - (Generics Directive): Rename to ... - (Transform Directive): ... this node. - (Literal Directive): Update for absolute literals. Missing - literal_position directive is now an error. - (Literal Position Directive): Update for absolute literals. - (Freeregs Directive): Delete. - (Absolute Literals Directive): New. - (Frame Directive): Minor editing. - * Makefile.am (DEPTC_xtensa_elf, DEPOBJ_xtensa_elf, DEP_xtensa_elf): - Update dependencies. - * Makefile.in: Regenerate. - -2004-10-07 Richard Sandiford - - * config/tc-mips.c (append_insn): Use fix_new rather than fix_new_exp - to build the second and third fixups for a composite relocation. - (macro_read_relocs): New function. - (macro_build): Use it. - (s_cpsetup): Pass all three composite relocation codes to macro_build. - Simplify fragging code accordingly. - (s_gpdword): Use fix_new rather than fix_new_exp for the second part - of the composite relocation. Set fx_tcbit in both fixups. - -2004-10-07 Richard Sandiford - - * config/tc-mips.c (append_insn): Set fx_tcbit for composite relocs. - (md_apply_fix3): Don't treat composite relocs as done. - -2004-10-07 Jan Beulich - - * macro.c (macro_expand_body): When ELF, use .LL rather than LL as - prefix for symbol names generated from the LOCAL macro directive. - - * dw2gencfi.c (select_cie_for_fde): When separating CIE out from - FDE, treat a DW_CFA_remember_state as we do a DW_CFA_advance_loc. - -2004-10-07 Tomer Levi - - * config/tc-crx.c (preprocess_reglist): Handle Co-processor - Special registers. - (md_assemble): Add error checking for Co-Processor instructions. - (get_cinv_parameters): Add 'b' option to invalidate the - branch-target cache. - -2004-10-05 Paul Brook - - * config/tc-arm.c (unwind): New variable. - (vfp_sp_encode_reg): New function. - (vfp_sp_reg_required_here): Use it. - (vfp_sp_reg_list, vfp_dp_reg_list): Remove. - (vfp_parse_reg_list): New function. - (s_arm_unwind_fnstart, s_arm_unwind_fnend, s_arm_unwind_cantunwind, - s_arm_unwind_personality, s_arm_unwind_personalityindex, - s_arm_unwind_handlerdata, s_arm_unwind_save, s_arm_unwind_movsp, - s_arm_unwind_pad, s_arm_unwind_setfp, s_arm_unwind_raw): New - functions. - (md_pseudo_table): Add them. - (do_vfp_reg2_from_sp2): Use vfp_parse_reg_list and vfp_sp_encode_reg. - (do_vfp_sp2_from_reg2, vfp_sp_ldstm, vfp_dp_ldstm): Ditto. - (set_section, add_unwind_adjustsp, flush_pending_unwind, - finish_unwind_opcodes, start_unwind_section, create_unwind_entry, - require_hashconst, add_unwind_opcode): New functions. - * doc/c-arm.texi: Document unwinding opcodes. - * NEWS: Mention the new feature. - -2004-10-04 Eric Christopher - - * config/tc-mips.c (md_apply_fix3): Remove erroneous assert. - -2004-10-01 H.J. Lu - - * config/tc-ppc.c (md_apply_fix3): Call S_SET_THREAD_LOCAL for - TLS relocations. - * config/tc-s390.c (md_apply_fix3): Likewise. - * config/tc-sparc.c (md_apply_fix3): Likewise. - -2004-10-01 Paul Brook - - * config/tc-arm.c (arm_elf_section_type): New function. - (arm_elf_change_section): Set section link for exidx sections. - * config/tc-arm.h (arm_elf_section_type): Add prototype. - (md_elf_section_type): Define. - -2004-10-01 Bill Farmer - - * config/tc-pdp11.c (md_apply_fix3): Change to sign of the SOB - instruction's offset. - -2004-10-01 Adam Nemet - - * (TARGET_FORMAT): Remove LynxOS COFF definition. - -2004-10-01 Ravi Ramaseshan - - * config/tc-arc.c (tc_gen_reloc): Don't assume fixP->fx_addsy is an - asymbol *, instead use symbol_get_bfdsym. - -2004-09-30 Linus Nielsen Feltzing - - * config/tc-m68k.c (select_control_regs): Add mcf5249. - -2004-09-30 Paul Brook - - * config/tc-arm.c (do_smi, do_nop): New functions. - (insns): Add ARMv6ZK instructions. - (md_apply_fix3): Handle BFD_RELOC_ARM_SMI. - (tc_gen_reloc): Ditto. - (arm_cpus): Add mpcore and arm1176. - (arm_archs): Add armv6{k,z,zk}. - * doc/c-arm.texi: Document new cores and architectures. - -2004-09-30 Nick Clifton - - * config/tc-arm.c: Use ISO C90 formatting. - -2004-09-30 Vladimir Ivanov - - * config/tc-arm.c (mav_reg_required_here): Allow REG_TYPE_CN - as alternative when REG_TYPE_MVF, REG_TYPE_MVD, REG_TYPE_MVFX or - REG_TYPE_MVDX is expected. - -2004-09-29 Marc Bevand - - * doc/c-i386.texi (i386-Mnemonics): Fix typo. - -2004-09-21 James E Wilson - - * config/tc-ia64.c (ENCODED_PSP_OFFSET): New. - (output_rp_psprel, output_pfs_psprel, output_preds_psprel, - output_spill_base, output_unat_psprel, output_lc_psprel, - output_fpsr_psprel, output_priunat_psprel, output_bsp_psprel, - output_bsprestore_psprel, output_rnat_psprel, output_spill_psprel, - output_spill_psprel_p): Use it. - -2004-09-20 Tomer Levi - - * config/tc-crx.c (handle_LoadStor): New function. - Handle load/stor unique instructions before parsing. - -2004-09-17 Paul Brook - - * config/tc-arm.c (s_arm_rel31): New funciton. - (md_pseudo_table): Add .rel31. - (md_apply_fix3): Handle BFD_RELOC_ARM_TARGET2, - BFD_RELOC_32_PCREL and BFD_RELOC_ARM_PREL31. - (tc_gen_reloc): Handle BFD_RELOC_ARM_PREL31 and BFD_RELOC_ARM_TARGET2. - (arm_fix_adjustable): Return 0 for BFD_RELOC_ARM_TARGET2. - (arm_parse_reloc): Add (target2). - -2004-09-17 Alan Modra - - * Makefile.am: Run "make dep-am". - * Makefile.in: Regenerate. - * aclocal.m4: Regenerate. - * configure: Regenerate. - * doc/Makefile.in: Regenerate. - * po/POTFILES.in: Regenerate. - * po/gas.pot: Regenerate. - -2004-09-14 Hideki IWAMOTO - - * config/tc-mmix.c [!LLONG_MIN]: Correct #elsif to #elif. - [!LLONG_MAX]: Ditto. - -2004-09-13 Paul Brook - - * config/tc-arm.c: Rename RELABS to TARGET1. - -2004-09-13 Alan Modra - - * messages.c (as_internal_value_out_of_range): Cast values passed - to as_bad_where or as_warn_where to proper type. - -2004-09-11 Theodore A. Roth - - * config/tc-avr.c: Add support for - atmega48, atmega88, atmega168, attiny13, attiny2313, at90can128. - -2004-09-09 Alan Modra - - * dw2gencfi.c (select_cie_for_fde): When separating CIE out - from FDE, treat a CFI_escape as we do a DW_CFA_advance_loc. - -2004-09-08 Paul Brook - - * config/obj-elf.c (obj_elf_section_type): Handle init_array, - fini_array and preinit_array section types. - * config/tc-ia64.c (ia64_elf_section_type): Remove init_array - and fini_array. - * doc/as.texinfo: Document extra section types. - -2004-09-02 Mark Mitchell - - * Makefile.am (TARG_ENV_HFILES): Add te-symbian.h. - * Makefile.in: Regenerated. - * configure.in: Set em for arm*-*-symbianelf*. - * configure: Regenerated. - * config/tc-arm.c (elf32_arm_target_format): Use Symbian target - vectors when appropriate. - * config/te-symbian.h: New file. - -2004-09-03 Tomer Levi - - * config/tc-crx.c (gettrap): Exception vector can be case - insensitive. - (process_label_constant): Fix a 32-bit displacement bug in branch - instructions. - (get_operandtype) : Bug fix, wrong operand was used. - (process_label_constant): Initialize relocation type to - BFD_RELOC_NONE - -2004-09-01 Richard Earnshaw < reanrsha@arm.com> - - * tc-arm.c (arm_cpus, arm_fpus): Allow -s as well as s - for synthesizable cores. - - * doc/c-arm.texi (ARM Options): Document canonical names of CPUs. - -2004-08-25 Dmitry Diky - - * config/tc-msp430.c: Clean-up the code. - (md_relax_table): New relax table. - (mcu_types): Sort MCU types. - (md_pseudo_table): Add .profiler pseudo handler. - (pow2value): New function. - (msp430_profiler): New function. - (msp430_operands): Add new insns handlers. - (msp430_srcoperand): Add register operand handler, allow complex - expressions. - (md_estimate_size_before_relax): Rewritten. - (md_convert_frag): Rewritten. - (msp430_relax_frag): New function. - * config/tc-msp430.h (md_relax_frag): define macro - * doc/c-msp430.texi: Update information. - -2004-08-24 Nick Clifton - - * as.c (std_shortopts): Allow -g to take an optional argument. - (parse_args): Pass any switch starting with -g on to the backend - for parsing. - -2004-08-18 Mark Mitchell - - * configure.in (arm*-*-symbianelf*): New target. - (arm*-*-eabi*): Likewise. - * configure: Regenerated. - -2004-08-18 Thiemo Seufer - * config/tc-mips.c (append_insn): Handle delay slots in branch likely - correctly. - -2004-08-18 Jakub Jelinek - - * config/tc-ia64.c (start_unwind_section): Add linkonce_empty - argument, don't do anything if current section is not - .gnu.linkonce.t.* and linkonce_empty is set. - (generate_unwind_image, dot_endp): Adjust callers, call - start_unwind_section (*, 1) if nothing will be put into the - section. - -2004-08-17 Nick Clifton - - * as.c (MD_DEBUG_FORMAT_SELECTOR): Provide default definition. - (show_usage): Add -g. - (std_longopts): Add --gen-debug. Alpha sort the table. - (parse_args): Print an error message if a switch is not handled. - Handle the -g switch, calling md_debug_format_selector() if - necessary. - * NEWS: Mention new feature. - * doc/as.texinfo: Document new switch. - * doc/internals.texi: Document behaviour of md_parse_option. - - * config/tc-arm.c (md_parse_option): Do not issue an error message - if the switch is not recognised. - * config/tc-m68k.c (md_parse_option): Likewise. - * config/tc-pdp11.c (md_parse_option): Likewise. - * config/tc-v850.c (md_parse_option): Likewise. - - * as.h: Fix up formatting. - * tc.h: Likewise. - -2004-08-16 Nick Clifton - - * macro.c (macro_set_alternate): Use ISO C90 formatting. - - * configure.in: Sort architecture based tables alphabetically. - * configure: Regenerate. - -2004-08-16 Alan Modra - - * config/tc-ppc.c (tc_ppc_regname_to_dw2regnum ): Replace - { "cc", 68 }, with { "cr", 70 }. - -2004-08-13 Jan Beulich - Nick Clifton - - * as.c: Add and handle new --alternate command line option. - * macro.c (macro_set_alternate): New. - * macro.h (macro_set_alternate): Declare. - * read.c: Add and handle new .altmacro and .noaltmacro directives. - * doc/as.texinfo: Document new command line option and pseudo-ops - as well as insert documentation originating from gasp about - alternate macro syntax. - * NEWS: Mention new command line option and pseudo-ops. - -2004-08-10 Mark Mitchell - - * expr.c (operand): Handle the "~", "-", and "!" operators applied - to bignums. - -2004-08-06 Paul Brook - - * config/tc-arm.c (md_apply_fix3, tc_gen_reloc, arm_parse_reloc): - Handle new relocations. - * include/elf/arm.h (elf_arm_reloc_type): Add new EABI relocations. - -2004-08-05 Bob Wilson - - * write.c (relax_segment): Use was_address instead of address when - setting fr_fix field for align frag due to backwards .org. - -2004-07-29 Alexandre Oliva - - Introduce SH2a support. - 2004-02-24 Corinna Vinschen - * config/tc-sh.c (get_specific): Change arch_sh2a_up to - arch_sh2a_nofpu_up. - 2004-02-24 Corinna Vinschen - * config/tc-sh.c (md_parse_option): Add sh2a-nofpu ISA handling. - 2004-02-20 Corinna Vinschen - * config/tc-sh.c (sh_elf_final_processing): Move sh2a recognition - to end of conditional expression. - 2004-02-20 Corinna Vinschen - * config/tc-sh.c: Add sh2a-nofpu support. - 2003-12-29 DJ Delorie - * tc-sh.c: Add sh2a support. - (parse_reg): Add tbr. - (parse_at): Support @@(disp,tbr). - (get_specific): Support sh2a opcodes. - (insert4): New, for 4 byte relocs. - (build_Mytes): Support sh2a opcodes. - (md_apply_fix3_Mytes): Support sh2a opcodes. - 2003-12-02 Michael Snyder - * config/tc-sh.c (md_parse_option): Handle sh2a. - (sh_elf_final_processing): Ditto. - -2004-07-27 Jason Thorpe - - * config/tc-hppa.h (TARGET_FORMAT): Set to "elf32-hppa-netbsd" - for TE_NetBSD. - -2004-07-27 Alan Modra - - * config/tc-ppc.c (ppc_frob_file_before_adjust): Warn if .toc too big. - (ppc_arch): Expand comment. - -2004-07-27 Tomer Levi - - * config/tc-crx.c: Support evaluating the difference between two - symbols. - * config/tc-crx.h: Likewise. - -2004-07-26 H.J. Lu - - * config/tc-ia64.c (start_unwind_section): Set the linked-to - section. - (ia64_elf_section_change_hook): Set the linked-to section for - SHT_IA_64_UNWIND. - -2004-07-26 Dmitry Diky - - * config/tc-msp430.c: Add new subtargets: msp430x1610, - msp430x1611, msp430x1612, msp430x415, msp430x417, msp430xG437, - msp430xG438, msp430xG439. - -2004-07-25 Daniel Jacobowitz - - * doc/as.texinfo (Section, PushSection): Correct documentation - for ELF. - -2004-07-21 Jan Beulich - - * config/tc-i386.c (optimize_imm): Adjust immediates to only those - permissible for the selected instruction suffix. - (match_template): Don't permit 64-bit general purpose operands in - 32-bit mode. - (finalize_imm): Permit 64-bit immediates. - (build_modrm_byte): Don't treat 32-bit addressing in 64-bit mode - specially except for the width of the used base and/or index - registers. For 32-bit displacements, use sign-extended - relocations only when using 64-bit addressing. - Force zero displacement on rip-relative addressing when there is - no other displacement. - (i386_index_check): Don't treat 32-bit addressing in 64-bit mode - specially except for the width of the used base and/or index - registers. - (parse_register): Disallow Reg64 registers in 32-bit mode. - - * config/tc-i386.c: For DefaultSize instructions, don't guess a 'q' - suffix if the instruction doesn't support it. - -2004-07-20 Maciej W. Rozycki - - * config/tc-mips.c (append_insn): Handle constant expressions with - no associated relocation. - (mips_ip): Cancel the expression after use for the Q format - specifier. - (parse_relocation): Return no relocation for unsupported - operators. - (my_getSmallExpression): Return no relocation if no relocation - operators are used. - -2004-07-19 John David Anglin - - * config/obj-som.c (adjust_stab_sections): Add prototype. - (obj_som_compiler, obj_som_version, obj_som_copyright, - adjust_stab_sections): Add ATTRIBUTE_UNUSED to unused arguments. - * config/tc-hppa.c (update_subspace): Likewise. - (is_defined_subspace): Amplify comment. - * config/obj-som.h (som_frob_file): Add prototype. - -2004-07-19 Christopher Faylor - H.J. Lu - - * subsegs.c (section_symbol): Don't create a new segment when - existing segment is undefined. - -2004-07-16 Richard Earnshaw - - * config/tc-arm.c: Include include/opcode/arm.h. - (ARM_EXT_*, ARM_ARCH_*, ARM_ANY, ARM_ALL, COPROC_ANY): Delete. - (FPU_FPA_EXT_* FPU_VFP_EXT_*, FPU_ANY, FPU_NONE, FPU_MAVERICK): Delete. - (FPU_ARCH_*): Delete. - * Makefile.am: Update dependencies. - * Makefile.in: Regenerate. - -2004-07-15 Nick Clifton - - * configure.in: Accept armbe as a big-endian arm configuration. - * configure: Regenerate. - -2004-07-13 Thomas Nystrom - - * config/tc-i386.c (T_SHIFTOP): New constant. - (intel_e05_1): Handle '&', '|' and T_SHIFTOP. - (intel_el1): Handle '~'. - (intel_get_token): Handle '<>', '&', '|' and '~'. - -2004-07-13 Nick Clifton - - (md_assemble): Remove spurious newline from end of as_bad error - message. - (intel_e05_1): Likewise. - (intel_e11): Likewise. - (intel_match_token): Likewise. - -2004-07-11 Andreas Schwab - - * config/tc-m68k.c: Convert to C90. Remove redundant - declarations. Indentation fixup. - [M68KCOFF]: Include "obj-coff.h" instead of declaring - obj_coff_section ourselves. - -2004-07-09 James E Wilson - - * config/tc-ia64.c (default_big_endian): New. - (dot_byteorder, md_begin): Use it. - (md_parse_option): Set it. - -2004-07-09 Nick Clifton - - * configure.in: Change sh-sybmian-elf to sh-*-symbianelf. - * configure: Regenerate. - * NEWS: Change sh-sybmian-elf to sh-*-symbianelf. - * config/tc-sh.c (sh_elf_final_processing): Use renamed version of - sh_find_elf_flags if necessary. - -2004-07-08 Richard Sandiford - - * config/tc-mips.c (mips_fix_adjustable): If the full addend is - going to be split into more than one in-place addend, return 0 - for relocations against mergeable sections. Associate comments - with code. - -2004-07-07 Tomer Levi - - * Makefile.am (CPU_TYPES): Add crx. - (TARGET_CPU_CFILES): Add config/tc-crx.c. - (TARGET_CPU_HFILES): Add config/tc-crx.h. - (DEPTC_crx_elf): New target. - (DEPOBJ_crx_elf): Likewise. - (DEP_crx_elf): Likewise. - * Makefile.in: Regenerate. - * configure.in: Add crx* target. - * configure: Regenerate. - * config/tc-crx.c: New file. - * config/tc-crx.h: New file. - * NEWS: Mention new target. - -2004-07-06 Nick Clifton - - * config.in: Undefine TARGET_SYMBIAN by default. - * configure.in: - * configure: Regenerate. Add sh-symbian-elf target. If - selected define TARGET_SYMBIAN. - * config/tc-sh.h (TARGET_FORMAT): Select a Symbian target - format if TARGET_SYMBIAN has been defined. - - * output-file.c (output_file_create): Report the target format - chosen when bfd_openw reports that it is invalid. - - * config/obj-coff.c (coff_pseudo_table): Only define the weak - pseudo for BFD based assemblers. - -2004-07-05 Andrew Stubbs - - gas: - * config/tc-sh.c (md_assemble): Change isspace to ISSPACE. - (md_parse_option): Remove redundant -isa testing. - Make bfd_arch variable const. - (md_show_usage): Make bfd_arch variable const. - -2004-07-03 James E Wilson - - * config/tc-ia64.c (emit_one_bundle): Check and set insn_addr. - * config/tc-ia64.h (md_frag_check): Define. - -2004-07-03 Aaron W. LaFramboise - - * config/obj-coff.c (obj_coff_weak): New .weak syntax for PE weak - externals. - * doc/as.texinfo (Weak): Document PE weak symbols. - -2004-07-03 Richard Sandiford - - * config/tc-mips.c (HAVE_IN_PLACE_ADDENDS): New macro. - (reloc_needs_lo_p): Only return true if HAVE_IN_PLACE_ADDENDS. - (mips_frob_file): Rework so that only a single pass through the - relocs is needed. Allow %lo()s to have higher offsets than their - corresponding %hi()s or %got()s. - -2004-07-02 Nick Clifton - - * config/tc-arm.c (md_apply_fix3:BFD_RELOC_ARM_IMMEDIATE): Do not - allow values which have come from undefined symbols. - Always consider this fixup to have been processed as a reloc - cannot be generated for it. - -2004-07-02 Alan Modra - - * frags.h (struct frag): Add has_code and insn_addr fields. - * write.c (cvt_frag_to_fill): Invoke md_frag_check. - * config/tc-ppc.c (md_assemble): Check and set insn_addr. - * config/tc-ppc.h (md_frag_check): Define. - -2004-06-28 Maciej W. Rozycki - - * doc/Makefile.am (info): Rename goal to... - (info-local): ... this, to preserve implicit dependencies. - * doc/Makefile.in: Regenerate with automake 1.8.5. - -2004-06-25 Kazuhiro Inaoka - - * config/tc-m32r.c (md_convert_frag): Changed for @PLT. - (m32r_cgen_record_fixup_exp): Changed for @GOTOFF, @GOT. - (m32r_fix_adjustable): Changed for @GOTOFF, @GOT, @PLT. - (tc_gen_reloc): Likewise. - (m32r_end_of_match): Add for @GOTOFF, @GOT, @PLT. - (m32r_parse_name): Likewise. - (m32r_cgen_parse_fix_exp): Likewise. - * config/tc-m32r.h (md_parse_name): Define for @GOTOFF, @GOT, @PLT. - (O_PIC_reloc): Likewise. - (TC_CGEN_PARSE_FIX_EXP): Likewise.. - * cgen.c (gas_cgen_parse_operand): Add TC_CGEN_PARSE_FIX_EXP - for @GOTOFF, @GOT, @PLT. - -2004-06-21 Jan Beulich - - * gas/symbols.c: While discarding ordinary local absolute symbols - when --strip-local-absolute is in effect, retain file symbols. - -2004-06-20 Andreas Schwab - - * config/tc-m68k.c (mri_chip): Replace current_chip, not augment. - (md_parse_option): Likewise. - -2004-06-17 Jan Beulich - - * config/tc-i386.c: Deal with LEX_QM the same way as with LEX_AT. - * config/te-netware.h: New file. - * config/te-ppcnw.h: Delete: Obsolete. - * configure.in: Eliminate ill NetWare targets. Make generic - NetWare target use proper emulation. - * Makefile.am: Eliminate reference to obsolete te-ppcnw.h, add - reference to new te-netware.h. - * configure: Regenerate. - * Makefile.in: Regenerate. - -2004-06-15 Martin Schwidefsky - - * config/tc-s390.c (s390_insn): Avoid incorrect signed/unsigned - comparison in .insn pseudo operation. - -2004-06-15 Alan Modra - - * config/obj-coff.c (coff_adjust_section_syms): Use - bfd_get_section_size instead of bfd_get_section_size_before_reloc. - (coff_frob_section): Likewise. - * config/tc-mips.c (md_apply_fix3): Likewise. - * config/obj-elf.c (elf_frob_file): Use bfd_set_section_size. - (elf_frob_file_after_relocs): Likewise. - -2004-06-10 John David Anglin - - * config/tc-hppa.c (log2): Rename to exact_log2. - (pa_next_subseg): Delete unused function. - (create_new_space): Mark unused arguments with ATTRIBUTE_UNUSED. - (create_new_subspace): Likewise. - - Bug gas/213 - * config/tc-hppa.c (hppa_fix_adjustable): Allow reduction of fake - labels. Fix warning. - -2004-05-28 DJ Delorie - - * config/tc-mn10300.h (tc_fix_adjustable): Define. - * config/tc-mn10300.c (mn10300_fix_adjustable): Don't adjust debug - or non-merged symbols. - -2004-05-28 H.J. Lu - - * config/tc-ia64.c (remove_marked_resource): Save, clear and - restore the old slot when inserting srlz.i/srlz.d. - -2004-05-28 Andrew Stubbs - - * Makefile.am: Regenerate dependecies. - * Makefile.in: Regenerate. - * config/tc-sh.c (valid_arch): Make unsigned. - (preset_target_arch): Likewise. - (md_begin): Use new architecture flags system. - (get_specific): Likewise. - (assemble_ppi): Likewise. - (md_assemble): Likewise. Also fix error check for bad opcodes. - (md_parse_option): Likewise. Also generate -isa values according - to the table in bfd/cpu-sh.c instead of just constants. Also - allow -up ISA variants. - (sh_elf_final_processing): Replace if-else chain with a call to - sh_find_elf_flags(). - -2004-05-28 Peter Barada - - * config/gc-m68k.c(m68k_ip): Convert mode 5 addressing - with zero offset into mode 2 addressing to save a word. - -2004-05-27 H.J. Lu - - * config/tc-ia64.c (ar_is_in_integer_unit): Removed. - (ar_is_only_in_integer_unit): New. - (ar_is_only_in_memory_unit): New. - (generate_unwind_image): Silence gcc on 32bit host. - (md_assemble): Use ar_is_only_in_integer_unit instead of - ar_is_in_integer_unit. Check AR access. - -2004-05-27 Peter Barada - - * config/tc-m68k.c (md_begin): Sort the opcode table into - alphabetical order. - (m68k_compare_opcode): New function to do the sorting. - -2004-05-24 Peter Barada - - * config/m68k-parse.y(operand): Allow for MAC/EMAC mask - addressing on MIT style operands. - * config/m68k-parse.y(yylex): Allow '-&' for predecrement - w/mask addressing. - * config/tc-m68k.c(install_operand): Comment 'G' and 'H' type - operands. - -2004-05-23 Alan Modra - - * expr.c (operand, operator): Don't reject '++' and '--'. - -2004-05-20 Richard Sandiford - - * config/tc-mips.c (append_insn): Use ISA-encoded addresses in MIPS16 - dwarf tables. - -2004-05-17 Adam Nemet - - * configure.in: Add ppc-*-lynxos*. Update i386-*-lynxos* to ELF. - * configure: Regenerate. - -2004-05-13 Paul Brook - - * dw2gencfi.c (output_cie): Handle dwarf3 format CIE entries. - -2004-05-13 Joel Sherrill - - * configure.in (or32-*-rtems*): Switch to elf. + * configure.in: Fix help string for --enable-targets option. * configure: Regenerate. -2004-05-13 Nick Clifton - - * po/fr.po: Updated French translation. - -2004-05-11 Nick Clifton - - * doc/as.texinfo (Section): Document G and T flags to .section - directive. Document the extra arguments that the G flag - requires. Document the #tls flag. - -2004-05-11 H.J. Lu - - * subsegs.c (section_symbol): Create a new section symbol if - the existing one doesn't match. - * symbols.c (symbol_set_bfdsym): Don't reset BFD section symbol. - -2004-05-07 Richard Sandiford - - * config/tc-mips.c (append_insn, mips_emit_delays): Extend -mfix-vr4120 - to cope with VR4181A errata MD(1) and MD(4). - -2004-05-07 Brian Ford - - * NEWS: Mention .secrel32 for pe[i]-i386. - -2004-05-07 Alexandre Oliva - - * config/tc-frv.h (MAX_MEM_FOR_RS_ALIGN_CODE): New. - (HANDLE_ALIGN): New. - -2004-05-06 Daniel Jacobowitz - - * Makefile.am (DIST_SUBDIRS): Define. - * aclocal.m4: Regenerate with automake 1.8.4. - * Makefile.in: Likewise. - * doc/Makefile.in: Likewise. - -2004-05-06 David Mosberger-Tang - - * config/tc-ia64.c (dot_serialize): Declare. - (dot_serialize): New function. - (md_pseudo_table): Add ".serialize.data" and - ".serialize.instruction" directives. - -2004-05-06 Nick Clifton - - * messages (as_internal_value_out_of_range): Print a message about - a value being out of range. Be consistent about whether the - values are printed in decimal or hexadecimal. - (as_warn_value_out_of_range): Generate a warning message about an - out of range value. - (as_bad_value_out_of_range): Generate an error message about an - out of range value. - * as.h: Prototype the new functions. - * config/tc-alpha.c (insert_operand): Use new function. - * config/tc-arc.c (arc_insert_operand): Likewise. - * config/tc-mn10200.c (mn10200_insert_operand): Likewise. - * config/tc-mn10300.c (mn10300_insert_operand): Likewise. - * config/tc-ppc.c (ppc_insert_operand): Likewise. - * config/tc-s390.c (s390_insert_operand): Likewise. - * config/tc-v850.c (v850_insert_operand): Likewise. - -2004-05-05 Alexandre Oliva - - * configure.in: Set em=linux for frv-*-*linux*. - * configure: Rebuilt. - * config/tc-frv.h (TARGET_FORMAT): Use elf32-frvfdpic if... - (frv_md_fdpic_enabled): New. - * config/tc-frv.c (frv_md_fdpic_enabled): New. - (DEFAULT_FDPIC): New. - (frv_flags): Use DEFAULT_FDPIC. - (frv_pic_flag): Likewise. - (OPTION_NOPIC): New. - (md_longopts): Add -mnopic. +2006-03-28 Nathan Sidwell + + * gas/config/tc-m68k.c (find_cf_chip): Merge into ... + (m68k_ip): ... here. Use for all chips. Protect against buffer + overrun and avoid excessive copying. + + * config/tc-m68k.c (m68000_control_regs, m68010_control_regs, + m68020_control_regs, m68040_control_regs, m68060_control_regs, + mcf_control_regs, mcf5208_control_regs, mcf5213_control_regs, + mcf5329_control_regs, mcf5249_control_regs, mcf528x_control_regs, + mcfv4e_control_regs, m68010_control_regs): Rename and reorder to ... + (m68000_ctrl, m68010_ctrl, m68020_ctrl, m68040_ctrl, m68060_ctrl, + mcf_ctrl, mcf5208_ctrl, mcf5213_ctrl, mcf5235_ctrl, mcf5249_ctrl, + mcf5216_ctrl, mcf5250_ctrl, mcf5271_ctrl, mcf5272_ctrl, + mcf5282_ctrl, mcfv4e_ctrl): ... these. + (mcf5275_ctrl, mcf5329_ctrl, mcf5373_ctrl): New. + (struct m68k_cpu): Change chip field to control_regs. + (current_chip): Remove. + (control_regs): New. + (m68k_archs, m68k_extensions): Adjust. + (m68k_cpus): Reorder to be in cpu number order. Adjust. + (CPU_ALLOW_MC, CPU_ALLOW_NEGATION): Remove. + (find_cf_chip): Reimplement for new organization of cpu table. + (select_control_regs): Remove. + (mri_chip): Adjust. + (struct save_opts): Save control regs, not chip. + (s_save, s_restore): Adjust. + (m68k_lookup_cpu): Give deprecated warning when necessary. + (m68k_init_arch): Adjust. + (md_show_usage): Adjust for new cpu table organization. + +2006-03-25 Bernd Schmidt + + * config/bfin-defs.h (Expr_Node_Type enum): Add Expr_Node_GOT_Reloc. + * config/bfin-lex.l: Recognize GOT17M4 and FUNCDESC_GOT17M4. + * config/bfin-parse.y: Include "libbfd.h", "elf/common.h" and + "elf/bfin.h". + (GOT17M4, FUNCDESC_GOT17M4): New tokens of type . + (any_gotrel): New rule. + (got): Use it, and create Expr_Node_GOT_Reloc nodes. + * config/tc-bfin.c: Include "libbfd.h", "elf/common.h" and + "elf/bfin.h". + (DEFAULT_FLAGS, bfin_flags, bfin_pic_flag): New. + (bfin_pic_ptr): New function. + (md_pseudo_table): Add it for ".picptr". + (OPTION_FDPIC): New macro. + (md_longopts): Add -mfdpic. (md_parse_option): Handle it. - (md_show_usage): Add -mfdpic and -mnopic. - -2004-05-05 Peter Barada - - * config/tc-m68k.c: Add find_cf_chip to print list of valid - chips for invalid coldfire instructions, rename selectors - for ColdFire sub-variants, add 521x,5249,547x,548x and aliases, - add current_chip to track which chip is referred to(including save/restore), - use current_chip to select control registers, not current_arch. - (md_show_usage): Add new chips. - * doc/c-m68k.texi: Document new command line switches. - -2004-05-05 Jakub Jelinek - - * tc-s390.h (md_do_align, HANDLE_ALIGN): Remove. - (NOP_OPCODE): Define. - (s390_align_code): Remove prototype. - * tc-s390.c (s390_align_code): Remove. - -2004-05-04 H.J. Lu - - * config/tc-ia64.c (make_unw_section_name): Removed. - (start_unwind_section): New function. - (generate_unwind_image): Take const segT instead of const - char *. - (dot_handlerdata): Adjusted. - (dot_endp): Likewise. - -2004-05-02 H.J. Lu - - * config/obj-elf.c (obj_elf_change_section): Allow the - ".note.GNU-stack" section has SHF_EXECINSTR. - -2004-05-02 H.J. Lu - - * config/obj-elf.c (get_section): Return bfd_boolean. - (obj_elf_change_section): Call bfd_get_section_by_name_if - instead of bfd_map_over_sections. - -2004-04-30 H.J. Lu - - * config/obj-elf.c (get_section): New function. - (obj_elf_change_section): Support multiple sections with same - name. - -2004-04-30 Nick Clifton - - * config/tc-arm.c (create_register_alias): Fix typo checking for - case sensitive register aliases. - (co_proc_number): Use error message string in all_reg_maps[] - array. - (cp_reg_required_here): Likewise. - (fp_reg_required_here): Likewise. - -2004-04-29 Brian Ford - - * dwarf2dbg.c (dwarf2_finish): Add SEC_DEBUGGING to section flags. - -2004-04-28 Chris Demetriou - - * config/tc-mips.c (HAVE_32BIT_ADDRESSES, append_insn, macro_build) - (load_address, macro, mips_ip, md_parse_option) - (mips_force_relocation, mips_validate_fix, md_apply_fix3) - (s_change_sec, pic_need_relax, tc_gen_reloc): Remove all - embedded-PIC handling, and update comments. - (SWITCH_TABLE): Remove. - * config/tc-mips.h (DIFF_EXPR_OK): Delete. - (enum mips_pic_level): Remove EMBEDDED_PIC. - (EXTERN_FORCE_RELOC): Remove embedded-PIC handling. - (TC_FORCE_RELOCATION): Update comment. - * ecoff.c (ecoff_build_lineno): Add comment about some code that - might be safe to remove now that MIPS embedded-PIC is gone. - -2004-04-28 John David Anglin - - * config/obj-som.c (obj_som_init_stab_section): Add new arguments in - call to obj_set_subsection_attributes. - (obj_som_init_stab_section): Likewise. - * config/tc-hppa.c (default_subspace_dict): Add comdat field. - (pa_def_subspaces): Provide comdat default. - (pa_subspace): Handle new "comdat" parameter. Set SEC_LINK_ONCE and - not SEC_IS_COMMON if section is comdat, common or dup_common. Update - calls to create_new_subspace and update_subspace to pass comdat flag. - (create_new_subspace, update_subspace): Add new comdat argument. Use - it in calls to obj_set_subsection_attributes. - * doc/c-hppa.texi (.subspa, .nsubspa): Document new comdat parameter - and use of comdat, common and dup_comm parameters. - -2004-04-26 H.J. Lu - - * config/obj-elf.c (obj_elf_change_section): Check if the old - group name is NULL before comparison. - -2004-04-23 Chris Demetriou - - * config/tc-mips.h (mips_dwarf2_addr_size): Prototype. - -2004-04-23 Thiemo Seufer - - * config/tc-mips.c (s_mipsset): Set default CPU type for .set mipsN. - -2004-04-23 Chris Demetriou - - * config/tc-mips.c (md_longopts): Remove -membedded-pic option. - (OPTION_MEMBEDDED_PIC): Remove. - (OPTION_TRAP, OPTION_BREAK, OPTION_EB, OPTION_EL) - (OPTION_FP32, OPTION_GP32, OPTION_CONSTRUCT_FLOATS) - (OPTION_NO_CONSTRUCT_FLOATS, OPTIONS_FP64, OPTION_GP64) - (OPTION_RELAX_BRANCH, OPTION_NO_RELAX_BRANCH) - (OPTION_ELF_BASE): Renumber. - (md_parse_option): Remove OPTION_MEMBEDDED_PIC handling. - (md_show_usage): Remove mention of -membedded-pic. - * doc/as.texinfo: Remove mention of -membedded-pic. - -2004-04-23 Thiemo Seufer - - * config/tc-mips.h (USE_GLOBAL_POINTER_OPT): Remove. - * config/tc-mips.c (RDATA_SECTION_NAME, mips_target_format): Remove - a.out support. - (md_begin, mips_ip, md_parse_option, s_change_sec, s_option, - s_abicalls, nopic_need_relax, tc_gen_reloc): Remove uses of - USE_GLOBAL_POINTER_OPT. - -2004-04-22 Thiemo Seufer - - * config/tc-mips.c (macro): One more use of load_delay_nop. - -2004-04-22 Atsushi Nemoto - - * config/tc-mips.c (load_delay_nop): New function. - (load_address, macro): Use load_delay_nop() to build a nop - which can be omitted with gpr_interlocks. - -2004-04-22 Thiemo Seufer - - * config/tc-mips.c (hilo_interlocks, gpr_interlocks, - cop_interlocks): Remove superfluous CPU entries. - -2004-04-22 Paul Brook - - * config/tc-arm.c (mav_parse_offset): Value must be multiple of 4. - -2004-04-22 Peter Barada - - * NEWS: Added support for EMAC instructions and MAC/EMAC - Motorola syntax. - * config/m68k-parse.h: Add ACC[123], ACCEXT{01,23}, MAC/EMAC - scale factor tokens, trailing_ampersand to mark mask addressing - for MAC/EMAC instructions. - * config/m68k-parse.y: Add options_ampersand clause, '<<', - '>>'. - (yylex): Handle '>', '<', and '&' following '+'. - * config/tc-m68k.c: Set mcfmac/mcfemac on appropriate ColdFire - architectures in archs[]. - (m68k-ip): Add '4', 'e', 'g', 'i', cases to handle mask addressing - for MAC/EMAC instructions, ACC[0123], ACCEXT{01,23}, and '<<'/'>>' - respectively. - (m68k_ip): Handle trailing '&' on MAC/EMAC insns. - (install_operand): Fix 'n' case, Add 'F', 'f', 'G', 'H', 'I', ']' - cases. - Add EMAC operands to init_table[]. - -2004-04-22 Bruno De Bus - - * config/tc-arm.h (enum mstate): Move here, add MAP_UNDEFINED - state. - (TC_SEGMENT_INFO_TYPE): Define to enum mstate. - * config/tc-arm.c (enum mstate): Delete from here. - (mapping_state): Remove the static mapstate variable and instead - store the state in the segment. This allows a per-section mapping - state. Handle and ignore MAP_UNDEFINED states. - (arm_elf_change_section): Get the current mapping state from the - new section. - (s_ltorg): Set the mapping state to MAP_DATA. - (arm_cleanup): Use arm_elf_change_section to get the mapping state - for each pool as it is emitted. - -2004-04-22 Nick Clifton - - * config/tc-arm.h: Formatting tidy ups. - -2004-04-20 Chris Demetriou - - * NEWS: Note that MIPS -membedded-pic option is deprecated. - -2004-04-20 DJ Delorie - - * config/tc-i386.h [TE_PE] (TC_CONS_FIX_NEW): Define. - * config/tc-i386.c (md_pseudo_table) [TE_PE]: Add "secrel32". - [TE_PE] (O_secrel): Define. - [TE_PE] (x86_pe_cons_fix_new): New. - [TE_PE] (pe_directive_secrel): Likewise. - (tc_gen_reloc) [TE_PE]: Support BFD_RELOC_32_SECREL. - -2004-04-19 Eric Christopher - - * config/tc-mips.c (mips_dwarf2_addr_size): Revert part - of previous patch for fix in gcc. - -2004-04-19 Jakub Jelinek - - * config/tc-xtensa.c (xg_assembler_literal): Fix a typo. - -2004-04-19 Nathan Sidwell - - * read.c (do_align): Call md_flush_pending_output, if defined. - -2004-04-16 Alan Modra - - * expr.c (operand): Correct checks for ++ and --. - -2004-04-14 H.J. Lu - - * config/tc-generic.c: Add some comments. + (md_begin): Set BFD flags. + (md_apply_fix3, bfin_fix_adjustable): Handle new relocs. + (bfin_gen_ldstidxi): Adjust to match the trees that the parser gives + us for GOT relocs. + * Makefile.am (bfin-parse.o): Update dependencies. + (DEPTC_bfin_elf): Likewise. + * Makefile.in: Regenerate. -2004-04-14 Richard Sandiford +2006-03-25 Richard Sandiford + + * config/tc-m68k.c (m68k_cpus): Change cpu_cf5208 entries to use + mcfemac instead of mcfmac. + +2006-03-22 Richard Sandiford + Daniel Jacobowitz + Phil Edwards + Zack Weinberg + Mark Mitchell + Nathan Sidwell + + * config/tc-mips.c (mips_target_format): Handle vxworks targets. + (md_begin): Complain about -G being used for PIC. Don't change + the text, data and bss alignments on VxWorks. + (reloc_needs_lo_p): Don't return true for R_MIPS_GOT16 when + generating VxWorks PIC. + (load_address): Extend SVR4_PIC handling to VXWORKS_PIC. + (macro): Likewise, but do not treat la $25 specially for + VxWorks PIC, and do not handle jal. + (OPTION_MVXWORKS_PIC): New macro. + (md_longopts): Add -mvxworks-pic. + (md_parse_option): Don't complain about using PIC and -G together here. + Handle OPTION_MVXWORKS_PIC. + (md_estimate_size_before_relax): Always use the first relaxation + sequence on VxWorks. + * config/tc-mips.h (VXWORKS_PIC): New. + +2006-03-21 Paul Brook + + * config/tc-arm.c (md_apply_fix): Fix typo in offset mask. + +2006-03-21 Sterling Augustine + + * config/tc-xtensa.c (enforce_three_byte_loop_align): New flag. + (xtensa_setup_hw_workarounds): Set this new flag for older hardware. + (get_loop_align_size): New. + (xtensa_end): Skip xtensa_mark_narrow_branches when not aligning. + (xtensa_mark_zcl_first_insns): Prevent widening of first loop frag. + (get_text_align_power): Rewrite to handle inputs in the range 2-8. + (get_noop_aligned_address): Use get_loop_align_size. + (get_aligned_diff): Likewise. + +2006-03-21 Paul Brook + + * config/tc-arm.c (insns): Correct opcodes for ldrbt and strbt. + +2006-03-20 Paul Brook + + * config/tc-arm.c (BAD_BRANCH, BAD_NOT_IT): Define. + (do_t_branch): Encode branches inside IT blocks as unconditional. + (do_t_cps): New function. + (do_t_blx, do_t_bkpt, do_t_branch23, do_t_bx, do_t_bxj, do_t_cpsi, + do_t_czb, do_t_it, do_t_setend, do_t_tb): Add IT constaints. + (opcode_lookup): Allow conditional suffixes on all instructions in + Thumb mode. + (md_assemble): Advance condexec state before checking for errors. + (insns): Use do_t_cps. + +2006-03-20 Paul Brook + + * config/tc-arm.c (output_relax_insn): Call dwarf2_emit_insn before + outputting the insn. + +2006-03-18 Jan-Benedict Glaw + + * config/tc-vax.c: Update copyright year. + * config/tc-vax.h: Likewise. - * doc/c-mips.texi (-m{no-,}fix-vr4120): Renamed from - -{no-}mfix-vr4122-bugs. - * config/tc-mips.c (mips_fix_vr4120): Renamed from mips_fix_4122_bugs. - (append_insn, mips_emit_delays): Update accordingly. - (OPTION_FIX_VR4120, OPTION_NO_FIX_VR4120): Renamed from *VR4122. - (md_longopts): Change -{no-,}mfix-vr4122-bugs to -m{no-,}fix-vr4120. - (md_parse_option): Update after above changes. - (md_show_usage): Add -mfix-vr4120. +2006-03-18 Jan-Benedict Glaw -2004-04-13 Bob Wilson + * config/tc-vax.c (md_chars_to_number): Used only locally, so + make it static. + * config/tc-vax.h (md_chars_to_number): Remove obsolete declaration. - * doc/as.texinfo (Sub-Sections): Conditionalize COFF-specific use - of .section directive; add a reference to the ELF .subsection - directive. +2006-03-17 Paul Brook -2004-04-13 Kazuhiro Inaoka + * config/tc-arm.c (insns): Add ldm and stm. - * config/tc-m32r.c (md_assemble): Fixed infinite loop bug - in parallel. +2006-03-17 Ben Elliston -2004-04-11 Thiemo Seufer + PR gas/2446 + * doc/as.texinfo (Ident): Document this directive more thoroughly. - * Makefile.am: Remove mips from aout targets. - * Makefile.in: Regenerate. - * configure.in: Remove mips-dec-bsd* target. - * configure: Regenerate. +2006-03-16 Paul Brook -2004-04-07 Alan Modra + * config/tc-arm.c (insns): Add "svc". - PR 96 - * config/tc-ppc.c (ppc_elf_suffix): Add valid32 and valid64 fields - to struct map_bfd. Adjust MAP macro, and define MAP32, MAP64. - Update "mapping". Restrict some @ modifiers to 32 bit. +2006-03-13 Bob Wilson -2004-04-01 Asgari Jinia - Dhananjay Deshpande + * config/tc-xtensa.c (xg_translate_sysreg_op): Remove has_underbar + flag and avoid double underscore prefixes. - * config/tc-sh.c (dont_adjust_reloc_32): New variable. - (sh_fix_adjustable): Avoid adjusting BFD_RELOC_32 when - dont_adjust_reloc_32 is set. - (md_longopts): Add option -renesas. - (md_parse_option, md_show_usage): Likewise. - * doc/c-sh.texi: Likewise. +2006-03-10 Paul Brook -2004-04-01 Dave Korn + * config/tc-arm.c (md_begin): Handle EABIv5. + (arm_eabis): Add EF_ARM_EABI_VER5. + * doc/c-arm.texi: Document -meabi=5. - * config/tc-dlx.c (md_assemble): set fx_no_overflow flag for - hi16 and lo16 fixS structs. - (md_assemble): generate bit_fixS for RELOC_DLX_LO16 in - exactly the same way as for RELOC_DLX_REL16. - (machine_ip): properly respect LO flag in the_insn and - output RELOC_DLX_LO16 rather than RELOC_DLX_16. - (md_apply_fix3): apply RELOC_DLX_LO16. +2006-03-10 Ben Elliston -2004-03-30 Stan Shebs + * app.c (do_scrub_chars): Simplify string handling. - Remove long-obsolete MPW support. - * mpw-config.in, mpw-make.sed, mac-as.r: Remove files. - * configure.in: Remove mention of ppc-*-mpw* config. - * configure.in: Likewise. +2006-03-07 Richard Sandiford + Daniel Jacobowitz + Zack Weinberg + Nathan Sidwell + Paul Brook + Ricardo Anguiano + Phil Edwards -2004-03-30 Nick Clifton + * config/tc-arm.c (md_apply_fix): Install a value of zero into a + BFD_RELOC_ARM_OFFSET_IMM field if we're going to generate a RELA + R_ARM_ABS12 reloc. + (tc_gen_reloc): Keep the original fx_offset for RELA pc-relative + relocs, but adjust by md_pcrel_from_section. Create R_ARM_ABS12 + relocations for BFD_RELOC_ARM_OFFSET_IMM on RELA targets. - * config/tc-arm.c (meabi_flags): Make its use conditional upon - OBJ_ELF being defined. +2006-03-06 Bob Wilson -2004-03-27 Alan Modra + * config/tc-xtensa.c (xtensa_post_relax_hook): Generate literal tables + even when using the text-section-literals option. - * config/obj-aout.c (obj_aout_type): Remove #ifdef BFD_ASSEMBLER code. +2006-03-06 Nathan Sidwell -2004-03-23 Paul Brook + * config/tc-m68k.c (m68k_extensions): Allow 'float' on both m68k + and cf. + (m68k_ip): Check we have some control regs. + (md_parse_option): Allow raw arch switch. + (m68k_init_arch): Better detection of arch/cpu mismatch. Detect + whether 68881 or cfloat was meant by -mfloat. + (md_show_usage): Adjust extension display. + (m68k_elf_final_processing): Adjust. - * config/tc-arm.c (meabi_flags): New variable. - (arm_parse_eabi): New function. - (md_begin): Set flags for EABI v3. - (arm_eabis): Add. - (arm_long_opts): Add meabi. - * doc/as.texinfo : Document -meabi. - * doc/c-arm.texi: Ditto. +2006-03-03 Bjoern Haase -2004-03-22 Bob Wilson + * config/tc-avr.c (avr_mod_hash_value): New function. + (md_apply_fix, exp_mod): Use BFD_RELOC_HH8_LDI and + BFD_RELOC_MS8_LDI for hlo8() and hhi8() + (md_begin): Set linkrelax variable to 1, use avr_mod_hash_value + instead of int avr_ldi_expression: use avr_mod_hash_value instead + of (int). + (tc_gen_reloc): Handle substractions of symbols, if possible do + fixups, abort otherwise. + * config/tc-avr.h (TC_LINKRELAX_FIXUP, TC_VALIDATE_FIX, + tc_fix_adjustable): Define. + +2006-03-02 James E Wilson - * config/tc-xtensa.c (xtensa_post_relax_hook): Create literal - tables even when use_literal_section flag is not set. + * config/tc-ia64.c (emit_one_bundle): For IA64_OPCODE_LAST, if we + change the template, then clear md.slot[curr].end_of_insn_group. -2004-03-22 Alan Modra +2006-02-28 Jan Beulich - * config/tc-sh.c: Remove trailing whitespace. + * macro.c (get_any_string): Don't insert quotes for <>-quoted input. -2004-03-22 Hans-Peter Nilsson +2006-02-28 Jan Beulich - * doc/c-cris.texi (CRIS-Opts): Document --no-mul-bug-abort, - --mul-bug-abort and the default behavior. - * config/tc-cris.c (cris_insn_kind): New member CRIS_INSN_MUL. - (err_for_dangerous_mul_placement): New variable. - (STATE_MUL, OPTION_MULBUG_ABORT_ON, OPTION_MULBUG_ABORT_OFF): New - macros. - (md_cris_relax_table): Have placeholder for STATE_MUL. - (md_longopts): New options --mul-bug-abort and --no-mul-bug-abort. - (cris_relax_frag) : New - case doing nothing. - (md_estimate_size_before_relax) : Ditto. - (md_convert_frag) : Check - alignment and position of this frag, emit error message if - suspicious. - (md_assemble): For a multiply insn and when checking it, - transform the current frag into a special frag for that purpose. - (md_parse_option) : Handle new options. + PR/1070 + * macro.c (getstring): Don't treat parentheses special anymore. + (get_any_string): Don't consider '(' and ')' as quoting anymore. + Special-case '(', ')', '[', and ']' when dealing with non-quoting + characters. -2004-03-19 Bob Wilson +2006-02-28 Mat - * config/tc-xtensa.c (mark_literal_frags): New function. - (xtensa_move_literals): Call mark_literal_frags for all literal - segments, including init and fini literal segments. - (xtensa_post_relax_hook): Swap use of xt_insn_sec and xt_literal_sec. + * dwarf2dbg.c (get_filenum): Don't inadvertently decrease files_in_use. -2004-03-19 John David Anglin +2006-02-27 Jakub Jelinek - * tc-hppa.c (cons_fix_new_hppa): Check for PC relative base type. - (pa_comm): Set BSF_OBJECT in symbol flags. + * dw2gencfi.c (struct fde_entry, struct cie_entry): Add signal_frame + field. + (CFI_signal_frame): Define. + (cfi_pseudo_table): Add .cfi_signal_frame. + (dot_cfi): Handle CFI_signal_frame. + (output_cie): Handle cie->signal_frame. + (select_cie_for_fde): Don't share CIE if signal_frame flag is + different. Copy signal_frame from FDE to newly created CIE. + * doc/as.texinfo: Document .cfi_signal_frame. -2004-03-19 Alan Modra +2006-02-27 Carlos O'Donell - * Makefile.am: Run "make dep-am". - * Makefile.in: Regenerate. + * doc/Makefile.am: Add html target. * doc/Makefile.in: Regenerate. - * config.in: Regenerate. - * po/gas.pot: Regenerate. - -2004-03-18 Nathan Sidwell - - * read.c (read_a_source_file): Use demand_empty_rest_of_line. - (demand_empty_rest_of_line): Issue an error here. - (ignore_rest_of_line): Silently skip to end. - (demand_copy_string): Issue an error, not warning. - (equals): Likewise. - * config/obj-elf.c (obj_elf_section_name): Likewise. - (obj_elf_section): Likewise. - * config/tc-arc.c (arc_extoper): Remove bogus NULL checks. - (arc_extinst): Likewise. - * config/tc-ia64.c (dot_saveb): Use demand_empty_rest_of_line. - (dot_spill): Likewise. - (dot_unwabi): Likewise. - (dot_prologue): Likewise. - - * expr.c (operand): Reject ++ and --. - (operator): Likewise. - -2004-03-17 Kaz Kojima - - * config/tc-sh.c: Include dw2gencfi.h. - (sh_cfi_frame_initial_instructions): New function. - (sh_regname_to_dw2regnum): Likewise. - * config/tc-sh.h (DWARF2_LINE_MIN_INSN_LENGTH): Move to the end of - file. - (TARGET_USE_CFIPOP): Define. - (tc_cfi_frame_initial_instructions): Likewise. - (tc_regname_to_dw2regnum): Likewise. - (DWARF2_DEFAULT_RETURN_COLUMN, DWARF2_CIE_DATA_ALIGNMENT): Likewise. - * Makefile.am: Update dependencies. + * po/Make-in: Add html target. + +2006-02-27 H.J. Lu + + * config/tc-i386.c (output_insn): Support Intel Merom New + Instructions. + + * config/tc-i386.h (CpuMNI): New. + (CpuUnknownFlags): Add CpuMNI. + +2006-02-24 David S. Miller + + * config/tc-sparc.c (priv_reg_table): Add entry for "gl". + (hpriv_reg_table): New table for hyperprivileged registers. + (sparc_ip): New cases '$' and '%' for wrhpr/rdhpr hyperprivileged + register encoding. + +2006-02-24 DJ Delorie + + * config/tc-m32c.h (md_apply_fix): Define to m32c_apply_fix. + (tc_gen_reloc): Don't define. + * config/tc-m32c.c (rl_for, relaxable): New convenience macros. + (OPTION_LINKRELAX): New. + (md_longopts): Add it. + (m32c_relax): New. + (md_parse_options): Set it. + (md_assemble): Emit relaxation relocs as needed. + (md_convert_frag): Emit relaxation relocs as needed. + (md_cgen_lookup_reloc): Add LAB_8_8 and LAB_8_16. + (m32c_apply_fix): New. + (tc_gen_reloc): New. + (m32c_force_relocation): Force out jump relocs when relaxing. + (m32c_fix_adjustable): Return false if relaxing. + +2006-02-24 Paul Brook + + * config/arm/tc-arm.c (arm_ext_v6_notm, arm_ext_div, arm_ext_v7, + arm_ext_v7a, arm_ext_v7r, arm_ext_v7m): New variables. + (struct asm_barrier_opt): Define. + (arm_v7m_psr_hsh, arm_barrier_opt_hsh): New variables. + (parse_psr): Accept V7M psr names. + (parse_barrier): New function. + (enum operand_parse_code): Add OP_oBARRIER. + (parse_operands): Implement OP_oBARRIER. + (do_barrier): New function. + (do_dbg, do_pli, do_t_barrier, do_t_dbg, do_t_div): New functions. + (do_t_cpsi): Add V7M restrictions. + (do_t_mrs, do_t_msr): Validate V7M variants. + (md_assemble): Check for NULL variants. + (v7m_psrs, barrier_opt_names): New tables. + (insns): Add V7 instructions. Mark V6 instructions absent from V7M. + (md_begin): Initialize arm_v7m_psr_hsh and arm_barrier_opt_hsh. + (arm_cpu_option_table): Add Cortex-M3, R4 and A8. + (arm_arch_option_table): Add armv7, armv7a, armv7r and armv7m. + (struct cpu_arch_ver_table): Define. + (cpu_arch_ver): New. + (aeabi_set_public_attributes): Use cpu_arch_ver. Set + Tag_CPU_arch_profile. + * doc/c-arm.texi: Document new cpu and arch options. + +2006-02-23 H.J. Lu + + * config/tc-ia64.c (operand_match): Handle IA64_OPND_IMMU5b. + +2006-02-23 H.J. Lu + + * config/tc-ia64.c: Update copyright years. + +2006-02-22 H.J. Lu + + * config/tc-ia64.c (specify_resource): Add the rule 17 from + SDM 2.2. + +2005-02-22 Paul Brook + + * config/tc-arm.c (do_pld): Remove incorrect write to + inst.instruction. + (encode_thumb32_addr_mode): Use correct operand. + +2006-02-21 Paul Brook + + * config/tc-arm.c (md_apply_fix): Fix off-by-one errors. + +2006-02-17 Shrirang Khisti + Anil Paranjape + Shilin Shakti + + * Makefile.am: Add xc16x related entry. * Makefile.in: Regenerate. - -2004-03-17 Ralf Corsepius - - * configure.in: Switch sh-*-rtems* to ELF. Add sh-*-rtemscoff*. + * configure.in: Added xc16x related entry. * configure: Regenerate. + * config/tc-xc16x.h: New file + * config/tc-xc16x.c: New file + * doc/c-xc16x.texi: New file for xc16x + * doc/all.texi: Entry for xc16x + * doc/Makefile.texi: Added c-xc16x.texi + * NEWS: Announce the support for the new target. -2004-03-12 Bob Wilson - - * read.c (s_leb128): Call md_flush_pending_output. - -2004-03-12 Michal Ludvig - - * config/tc-i386.c (output_insn): Handle PadLock instructions. - * config/tc-i386.h (CpuPadLock): New define. - (CpuUnknownFlags): Added CpuPadLock. - -2004-03-07 Andreas Schwab - - * doc/c-hppa.texi (HPPA Directives): Fix typo. - -2004-03-07 Richard Henderson - - * dw2gencfi.c (output_cie): Align length to 4 byte boundary. - (cfi_finish): Likewise for fde. - -2004-03-05 H.J. Lu - - * config/tc-ia64.c (md_assemble): Properly handle NULL - align_frag. - (ia64_handle_align): Don't abort if failed to add a stop bit. - -2004-03-04 H.J. Lu - - * Makefile.in: Regenerated. - * aclocal.m4: Likewise. - * configure: Likewise. - * doc/Makefile.in: Likewise. - -2004-03-03 H.J. Lu - - * config/tc-ia64.c (dot_align): New. - (ia64_do_align): Make it static. - (md_pseudo_table): Use "dot_align" for "align". - (ia64_md_do_align): Don't set align_frag here. - (ia64_handle_align): Add a stop bit to the previous bundle if - needed. - - * config/tc-ia64.h (ia64_do_align): Removed. - -2003-03-03 Andrew Stubbs - - * config/tc-sh.c (md_parse_option): Add -isa=sh4-nofpu and - -isa=sh4-nommu-nofpu options. Adjust help messages accordingly. - (sh_elf_final_processing): Output BFD type sh4_nofpu if that is - the most general type or the user specifically requested it. - (md_assemble): Add a new error message for when an instruction - is understood, but is not allowed due to an -isa option. - -2004-03-02 H.J. Lu - - * config/tc-ia64.c (align_frag): New. - (md_assemble): Set the tc_frag_data field in align_frag for - IA64_OPCODE_FIRST instructions. - (ia64_md_do_align): Set align_frag. - (ia64_handle_align): Add a stop bit if needed. - - * config/tc-ia64.h (TC_FRAG_TYPE): New. - (TC_FRAG_INIT): New. - -2004-03-01 Richard Sandiford - - * config/tc-frv.c (fr400_audio): New variable. - (md_parse_option, md_show_usage): Add -mcpu=fr405 and -mcpu=fr450. - (md_parse_option): Set fr400_audio for -mcpu=fr400 and -mcpu=fr405. - (target_implements_insn_p): New function. - (md_assemble): Report an error if the processor doesn't implement - the instruction. - -2004-02-27 Kazuhiro Inaoka - - * config/tc-m32r.c (md_longopts): Added -no-bitinst option. - (md_parse_option): Ditto. - (OPTION_NO_SPECIAL_M32R): Added. - (md_show_usage): Document it. - (enable_speial_m32r): Changed a default value from 0 to 1. - * doc/c-m32r.texi: Document the -no-bitinst option. - -2004-02-27 Nick Clifton - - * config/tc-sh.c (get_operand): Revert previous delta. - (tc_gen_reloc): Check for an unknown reloc type before processing - the addend. - -2004-02-27 Hannes Reinecke - - * config/tc-s390.c (s390_insn): Correct range check for opcode in - .insn pseudo operation. - -2004-02-27 Anil Paranjpe - - * config/tc-sh.c (get_operand): In case of #Imm, check has been - added for wrong syntax. - -2004-02-26 Eric Christopher - - * config/tc-mips.c (mips_dwarf2_addr_size): New. - * config/tc-mips.h (DWARF2_ADDR_SIZE): Use. - -2004-02-26 Andrew Stubbs - - * config/tc-sh.c (build_Mytes): Add REG_N_D and REG_N_B01 - nibble types to assembler. - -2004-02-25 Fred Fish - - * config/tc-iq2000.c: Add missing \n\ in multiline string literal. - -2004-02-20 James E Wilson - - * config/tc-ia64.c (slot_index): New arg before_relax. Use instead of - finalize_syms. - (fixup_unw_records): New arg before_relax. Pass to slot_index. - (ia64_estimate_size_before_relax): New. - (ia64_convert_frag): Pass 0 to fixup_unw_records. Add comment. - (generate_unwind_image): Pass 1 to fixup_unw_records. - * config/tc-ia64.h (ia64_estimate_size_before_relax): Declare. - (md_estimate_size_before_relax): Call ia64_estimate_size_before_relax. - -2004-02-19 Jakub Jelinek - - * stabs.c (generate_asm_file): Avoid warning about use of - uninitialized variable. - -2004-02-18 David Mosberger - - * config/tc-ia64.c (ia64_flush_insns): In addition to prologue, - body, and endp, allow unwind records which do not have a "t" - (time/instruction) field. - -2004-02-17 Petko Manolov - - * config/tc-arm.c (do_mav_dspsc_1): Correct offset of CRn. - (do_mav_dspsc_2): Likewise. - Fix accumulator registers move opcodes. - -2004-02-13 Hannes Reinecke - Jakub Jelinek +2006-02-16 Nick Hudson - * dwarf2dbg.c (get_filenum): Do not read beyond allocated memory. + * configure.tgt: set emulation for mips-*-netbsd* -2004-02-10 Steve Ellcey +2006-02-14 Jakub Jelinek - * config/tc-ia64.h (ia64_frob_symbol): New declaration. - (tc_frob_symbol): New macro definition. - * config/tc-ia64.c (ia64_frob_symbol): New routine. + * config.in: Rebuilt. -2004-02-09 Daniel Jacobowitz +2006-02-13 Bob Wilson - * config/tc-arm.c (md_begin): Mark .note.gnu.arm.ident as - read-only. + * config/tc-xtensa.c (xg_add_opcode_fix): Number operands starting + from 1, not 0, in error messages. + (md_assemble): Simplify special-case check for ENTRY instructions. + (tinsn_has_invalid_symbolic_operands): Do not include opcode and + operand in error message. -2004-02-09 Nathan Sidwell +2006-02-13 Joseph S. Myers - * read.h (IGNORE_OPCODE_CASE): Do not define. Replace with ... - (TC_CASE_SENSITIVE): ... this. - * read.c: Replace IGNORE_OPCODE_CASE with TC_CASE_SENSITIVE. - * doc/internals.texi (TC_CASE_SENSITIVE): Document. + * configure.tgt (arm-*-linux-gnueabi*): Change to + arm-*-linux-*eabi*. -2004-02-06 James E Wilson +2006-02-10 Nick Clifton - * config/tc-ia64.c (dot_endp): Delete call to output_endp. - (generate_unwind_image): Re-add it here. + * config/tc-crx.c (check_range): Ensure that the sign bit of a + 32-bit value is propagated into the upper bits of a 64-bit long. -2004-02-06 Nathan Sidwell + * config/tc-arc.c (init_opcode_tables): Fix cast. + (arc_extoper, md_operand): Likewise. - * dwarf2dbg.c (DWARF2_ADDR_SIZE): Remove trailing ';' - * read.h (SKIP_WHITESPACE): Turn into an expression. - * read.c (read_a_source_file): A pseudo is removed by having a - NULL handler. +2006-02-09 David Heine -2004-02-05 James E Wilson + * config/tc-xtensa.c (xg_assembly_relax): Increment steps_taken for + each relaxation step. - * config/tc-ia64.c (output_endp): New. - (count_bits): Delete. - (ia64_flush_insns, process_one_record, optimize_unw_records): Handle - endp unwind records. - (fixup_unw_records): Handle endp unwind records. Delete code for - shortening prologue regions not followed by a body record. - (dot_endp): Call add_unwind_entry to emit endp unwind record. - * config/tc-ia64.h (unw_record_type): Add endp. - -2004-02-03 James E Wilson - - * config/tc-ia64.c (ia64_convert_frag): Call md_number_to_chars to - fill padding bytes with zeroes. - (emit_one_bundle): New locals last_ptr, end_ptr. Rewrite code that - sets unwind_record slot_number and slot_frag fields. - -2004-02-02 Maciej W. Rozycki - - * config/tc-mips.c (add_got_offset_hilo): New function. - (macro): Use load_register() and add_got_offset_hilo() to load - constants instead of hardcoding code sequences throughout. - -2004-01-28 H.J. Lu - - * config/tc-ia64.c (emit_one_bundle): Add proper indentation. - -2004-01-26 Bernardo Innocenti - - * config/tc-m68k.h (EXTERN_FORCE_RELOC): Handle m68k-uclinux specially, - like m68k-elf. - * config/tc-m68k.c (RELAXABLE_SYMBOL): Use EXTERN_FORCE_RELOC instead - of hard-coded test for TARGET_OS=elf. - -2004-01-24 Chris Demetriou - - * config/tc-mips.c (hilo_interlocks): Change definition - so that MIPS32, MIPS64 and later ISAs are included, along with - the already-included machines. Update comments. - -2004-01-23 Daniel Jacobowitz - - * config/tc-arm.c (tc_gen_reloc): Improve error message for - undefined local labels. - -2004-01-23 Richard Sandiford - - * config/tc-mips.c (load_address, macro): Update comments about - NewABI GP relaxation. - -2004-01-23 Richard Sandiford - - * config/tc-mips.c (macro_build): Remove place and counter arguments. - (mips_build_lui, macro_build_ldst_constoffset): Likewise. - (mips16_macro_build, macro_build_jalr): Remove counter argument. - (set_at, load_register, load_address, move_register): Likewise. - (load_got_offset, add_got_offset): Likewise. - Update all calls and tidy accordingly. - -2004-01-23 Richard Sandiford - - * config/tc-mips.c (RELAX_ENCODE): Remove WARN argument. - (RELAX_FIRST, RELAX_SECOND): Turn into 8-bit quantities. - (RELAX_USE_SECOND): Bump to 0x10000. - (RELAX_SECOND_LONGER, RELAX_NOMACRO, RELAX_DELAY_SLOT): New flags. - (mips_macro_warning): New variable. - (md_assemble): Wrap macro expansion in macro_start() and macro_end(). - (s_cpload, s_cpsetup, s_cprestore, s_cpreturn): Likewise. - (relax_close_frag): Set mips_macro_warning.first_frag. Adjust use - of RELAX_ENCODE. - (append_insn): Update mips_macro_warning.sizes. - (macro_start, macro_warning, macro_end): New functions. - (macro_build): Don't emit warnings here. - (macro_build_lui, md_estimate_size_before_relax): ...or here. - (md_convert_frag): Check for cases where one macro alternative - needs a warning and the other doesn't. Emit a warning if the - longer sequence was chosen. - -2004-01-23 Richard Sandiford - - * config/tc-mips.h (tc_frag_data_type, TC_FRAG_TYPE): Remove. - * config/tc-mips.c (RELAX_ENCODE): Take three arguments: the size of - the first sequence, the size of the second sequence, and a flag - that says whether we should warn. - (RELAX_OLD, RELAX_NEW, RELAX_RELOC[123]): Delete. - (RELAX_FIRST, RELAX_SECOND): New. - (mips_relax): New variable. - (relax_close_frag, relax_start, relax_switch, relax_end): New fns. - (append_insn): Remove "place" argument. Use mips_relax.sequence - rather than "place" to check whether we're expanding the second - alternative of a relaxable macro. Remove redundant check for - branch relaxation. If generating a normal insn, and there - is not enough room in the current frag, call relax_close_frag() - to close it. Update mips_relax.sizes[]. Emit fixups for the - second version of a relaxable macro. Record the first relaxable - fixup in mips_relax. Remove tc_gen_reloc workaround. - (macro_build): Remove all uses of "place". Use mips_relax.sequence - in the same way as in append_insn. - (mips16_macro_build): Remove "place" argument. - (macro_build_lui): As for macro_build. Don't drop the add_symbol - when generating the second version of a relaxable macro. - (load_got_offset, add_got_offset): New functions. - (load_address, macro): Use new relaxation machinery. Remove - tc_gen_reloc workarounds. - (md_estimate_size_before_relax): Set RELAX_USE_SECOND if the second - version of a relaxable macro is needed. Return -RELAX_SECOND if the - first version is needed. - (tc_gen_reloc): Remove relaxation handling. - (md_convert_frag): Go through the fixups for a relaxable macro and - mark those that belong to the unneeded alternative as done. If the - second alternative is needed, adjust the fixup addresses to account - for the deleted first alternative. - -2004-01-23 Richard Sandiford - - * frags.h (frag_room): Declare. - * frags.c (frag_room): New function. - * doc/internals.texi: Document it. - -2004-01-22 Thiemo Seufer - - * config/tc-mips.c (append_insn): Don't do r3900 interlock - optimization for -mtune=r3900, as this will break on other CPUs. - -2004-01-11 Tom Rix - - * config/tc-m68hc11.c (build_indexed_byte): movb and movw cannot - be relaxed, use fixup. - (md_apply_fix3): Use 5 bit reloc from movb and movw fixup. - -2004-01-19 Jakub Jelinek - - * config/tc-sparc.c (sparc_ip): Disallow %f32-%f63 for single - precision operands. - -2004-01-14 Maciej W. Rozycki - - * config/tc-mips.c (append_insn): Properly detect variant frags - that preclude swapping of relaxed branches. Correctly swap - instructions between frags when dealing with relaxed branches. - -2004-01-14 Maciej W. Rozycki - - * acinclude.m4: Quote names of macros to be defined by AC_DEFUN - throughout. - * aclocal.m4: Regenerate. +2006-02-09 Eric Botcazou + + * configure.in (CHECK_DECLS): Add vsnprintf. * configure: Regenerate. - -2004-01-12 Anil Paranjpe - - * config/tc-h8300.c (build_bytes): Apply relaxation to bit - manipulation insns. - -2004-01-12 Richard Sandiford - - * config/tc-mips.c (macro_build_jalr): When adding an R_MIPS_JALR - reloc, reserve space for the delay slot as well as the jalr itself. - -2004-01-09 Paul Brook - - * config/tc-arm.c (do_vfp_reg2_from_sp2): Rename from do_vfp_sp_reg2. - (do_vfp_sp2_from_reg2): New function. + * messages.c (errno.h, stdarg.h, varargs.h, va_list): Do not + include/declare here, but... + * as.h: Move code detecting VARARGS idiom to the top. + (errno.h, stdarg.h, varargs.h, va_list): ...here. + (vsnprintf): Declare if not already declared. + +2006-02-08 H.J. Lu + + * as.c (close_output_file): New. + (main): Register close_output_file with xatexit before + dump_statistics. Don't call output_file_close. + +2006-02-07 Nathan Sidwell + + * config/tc-m68k.c (mcf5208_control_regs, mcf5213_control_regs, + mcf5329_control_regs): New. + (not_current_architecture, selected_arch, selected_cpu): New. + (m68k_archs, m68k_extensions): New. + (archs): Renamed to ... + (m68k_cpus): ... here. Adjust. + (n_arches): Remove. + (md_pseudo_table): Add arch and cpu directives. + (find_cf_chip, m68k_ip): Adjust table scanning. + (no_68851, no_68881): Remove. + (md_assemble): Lazily initialize. + (select_control_regs): Adjust cpu names. Add 5208, 5213, 5329. + (md_init_after_args): Move functionality to m68k_init_arch. + (mri_chip): Adjust table scanning. + (md_parse_option): Reimplement 'm' processing to add -march & -mcpu + options with saner parsing. + (m68k_lookup_cpu, m68k_set_arch, m68k_set_cpu, m68k_set_extension, + m68k_init_arch): New. + (s_m68k_cpu, s_m68k_arch): New. + (md_show_usage): Adjust. + (m68k_elf_final_processing): Set CF EF flags. + * config/tc-m68k.h (m68k_init_after_args): Remove. + (tc_init_after_args): Remove. + * doc/c-m68k.texi (M68K-Opts): Document -march, -mcpu options. + (M68k-Directives): Document .arch and .cpu directives. + +2006-02-05 Arnold Metselaar + + * config/tc-z80.c (z80_start_line_hook): allow .equ and .defl as + synonyms for equ and defl. + (z80_cons_fix_new): New function. + (emit_byte): Disallow relative jumps to absolute locations. + (emit_data): Only handle defb, prototype changed, because defb is + now handled as pseudo-op rather than an instruction. + (instab): Entries for defb,defw,db,dw moved from here... + (md_pseudo_table): ... to here, use generic cons() for defw,dw. + Add entries for def24,def32,d24,d32. + (md_assemble): Improved error handling. + (md_apply_fix): New case BFD_RELOC_24, set fixP->fx_no_overflow to one. + * config/tc-z80.h (TC_CONS_FIX_NEW): Define. + (z80_cons_fix_new): Declare. + * doc/c-z80.texi (defb, db): Mention warning on overflow. + (def24,d24,def32,d32): New pseudo-ops. + +2006-02-02 Paul Brook + + * config/tc-arm.c (do_shift): Remove Thumb-1 constraint. + +2005-02-02 Paul Brook + + * config/tc-arm.c (T2_OPCODE_MASK, T2_DATA_OP_SHIFT, T2_OPCODE_AND, + T2_OPCODE_BIC, T2_OPCODE_ORR, T2_OPCODE_ORN, T2_OPCODE_EOR, + T2_OPCODE_ADD, T2_OPCODE_ADC, T2_OPCODE_SBC, T2_OPCODE_SUB, + T2_OPCODE_RSB): Define. + (thumb32_negate_data_op): New function. + (md_apply_fix): Use it. + +2006-01-31 Bob Wilson + + * config/xtensa-istack.h (TInsn): Remove record_fix and sub_symbol + fields. + * config/tc-xtensa.h (xtensa_frag_type): Remove slot_sub_symbols field. + * config/tc-xtensa.c (md_apply_fix): Check for unexpected uses of + subtracted symbols. + (relaxation_requirements): Add pfinish_frag argument and use it to + replace setting tinsn->record_fix fields. + (xg_assemble_vliw_tokens): Adjust calls to relaxation_requirements + and vinsn_to_insnbuf. Remove references to record_fix and + slot_sub_symbols fields. + (xtensa_mark_narrow_branches): Delete unused code. + (is_narrow_branch_guaranteed_in_range): Handle expr that is not just + a symbol. + (convert_frag_immed): Adjust vinsn_to_insnbuf call and do not set + record_fix fields. + (tinsn_immed_from_frag): Remove code for handling slot_sub_symbols. + (vinsn_to_insnbuf): Change use of record_fixup argument, replacing use + of the record_fix field. Simplify error messages for unexpected + symbolic operands. + (set_expr_symbol_offset_diff): Delete. + +2006-01-31 Paul Brook + + * config/tc-arm.c (arm_reg_parse): Check if reg is non-NULL. + +2006-01-31 Paul Brook + Richard Earnshaw + + * config/tc-arm.c: Use arm_feature_set. + (arm_ext_*, arm_arch_full, arm_arch_t2, arm_arch_none, + arm_cext_iwmmxt, arm_cext_xscale, arm_cext_maverick, fpu_fpa_ext_v1, + fpu_fpa_ext_v2, fpu_vfp_ext_v1xd, fpu_vfp_ext_v1, fpu_vfp_ext_v2): + New variables. (insns): Use them. - (do_vfp_dp_from_reg2): Check return values properly. - -2004-01-08 Ian Lance Taylor - - * config/tc-mips.c (warn_nops): Remove static variable. - (macro): Remove test of warn_nops. - (md_shortops): Remove 'n'. - (md_parse_option): Remove 'n' case. - (md_show_usage): Remove -n. - * doc/as.texinfo (Overview): Remove MIPS -n option. - * doc/c-mips.texi (MIPS Opts): Remove mention -n. - * NEWS: Mention removal of MIPS -n option. - - * config/tc-mips.c (ISA_HAS_COPROC_DELAYS): Remove. - (cop_interlocks): Check ISA level. - (cop_mem_interlocks): Define. - (reg_needs_delay): Check cop_interlocks rather than - ISA_HAS_COPROC_DELAYS. - (append_insn): Likewise. Use cop_mem_interlocks rather than - directly checking mips_opts.isa. - (mips_emit_delays): Likewise. - -2004-01-07 H.J. Lu - - * config/tc-ia64.c (unwind): Move next_slot_number and - next_slot_frag to ... - (unw_rec_list): Here. - (free_list_records): Removed. - (output_unw_records): Likewise. - (generate_unwind_image): Make it void. - (alloc_record): Initialize next_slot_number and next_slot_frag. - (slot_index): Take .org, .space and .align into account. - (fixup_unw_records): Don't set slot_number to 0. Use - list->next_slot_number and list->next_slot_frag instead of - unwind.next_slot_number and unwind.next_slot_frag. - (ia64_convert_frag): New. - (generate_unwind_image): Generate a rs_machine_dependent frag - for unwind record. - (emit_one_bundle): Use list->next_slot_number and - list->next_slot_frag instead of unwind.next_slot_number and - unwind.next_slot_frag. - - * config/tc-ia64.h (md_convert_frag): Defined as - ia64_convert_frag. - (md_estimate_size_before_relax): Defined as (f)->fr_var. - -2004-01-06 Alexandre Oliva - - 2003-12-19 Alexandre Oliva - * config/tc-frv.h (md_apply_fix3): Don't define. - * config/tc-frv.c (md_apply_fix3): New. Shift/truncate %hi/%lo - operands. - * config/tc-frv.h (TC_FORCE_RELOCATION_SUB_LOCAL): Define. - 2003-10-07 Alexandre Oliva - * config/tc-frv.c (line_separator_chars): Add `!'. - 2003-09-19 Alexandre Oliva - * config/tc-frv.c (md_assemble): Clear insn upfront. - 2003-09-18 Alexandre Oliva - * config/tc-frv.c (OPTION_FDPIC): New macro. - (md_longopts): Add mfdpic. - (md_parse_option): Handle it. - 2003-08-04 Alexandre Oliva - * config/tc-frv.c (md_cgen_lookup_reloc) : Use reloc type encoded in fix-up. - (frv_pic_ptr): Parse funcdesc. - -2004-01-05 Maciej W. Rozycki - - * doc/as.texinfo: Let texi2pod parse asconfig.texi and - gasver.texi. Remove duplicate symbol definitions for texi2pod. - -2004-01-05 Maciej W. Rozycki - - * Makefile.am (Makefile): Move the dependency on - $(BFDDIR)/configure.in to... - (CONFIG_STATUS_DEPENDENCIES): ... here. - (AUTOMAKE_OPTIONS): Require automake 1.8. - * Makefile.in: Regenerate. - * doc/Makefile.am (BASEDIR, BFDDIR): Define. - (CONFIG_STATUS_DEPENDENCIES): Add a dependency on - $(BFDDIR)/configure.in here as well. - * doc/Makefile.in: Regenerate. - -2004-01-05 Maciej W. Rozycki - - * Makefile.am (install, install-info, RECURSIVE_TARGETS): Remove. - * Makefile.in: Regenerate. - * aclocal.m4: Regenerate. - * doc/Makefile.am (install, install-info): Remove. - (install-data-local): A new hook for install-info. - (AUTOMAKE_OPTIONS): Require automake 1.8. - * doc/Makefile.in: Regenerate. - -2004-01-02 Nutan Singh - - * doc/c-sh.texi: Update description about floating point behavior - of SH family. - -2004-01-02 Bernardo Innocenti - - * configure.in: Add m68k-uClinux target. - * configure: Regenerate. - -For older changes see ChangeLog-0203 + (md_atof, opcode_select, opcode_select, md_assemble, md_assemble, + md_begin, arm_parse_extension, arm_parse_cpu, arm_parse_arch, + arm_parse_fpu, arm_parse_float_abi, aeabi_set_public_attributes, + s_arm_cpu, s_arm_arch, s_arm_fpu): Use macros for accessing CPU + feature flags. + (arm_legacy_option_table, arm_option_cpu_value_table): New types. + (arm_opts): Move old cpu/arch options from here... + (arm_legacy_opts): ... to here. + (md_parse_option): Search arm_legacy_opts. + (arm_cpus, arm_archs, arm_extensions, arm_fpus) + (arm_float_abis, arm_eabis): Make const. + +2006-01-25 Bob Wilson + + * config/tc-xtensa.c (md_apply_fix): Set value to zero for PLT relocs. + +2006-01-21 Jie Zhang + + * config/bfin-parse.y (asm_1): Check value range for 16 bit immediate + in load immediate intruction. + +2006-01-21 Jie Zhang + + * config/bfin-parse.y (value_match): Use correct conversion + specifications in template string for __FILE__ and __LINE__. + (binary): Ditto. + (unary): Ditto. + +2006-01-18 Alexandre Oliva + + Introduce TLS descriptors for i386 and x86_64. + * config/tc-i386.c (tc_i386_fix_adjustable): Handle + BFD_RELOC_386_TLS_GOTDESC, BFD_RELOC_386_TLS_DESC_CALL, + BFD_RELOC_X86_64_GOTPC32_TLSDESC, BFD_RELOC_X86_64_TLSDESC_CALL. + (optimize_disp): Emit fix up for BFD_RELOC_386_TLS_DESC_CALL and + BFD_RELOC_X86_64_TLSDESC_CALL immediately, and clear the + displacement bits. + (build_modrm_byte): Set up zero modrm for TLS desc calls. + (lex_got): Handle @tlsdesc and @tlscall. + (md_apply_fix, tc_gen_reloc): Handle the new relocations. + +2006-01-11 Nick Clifton + + Fixes for building on 64-bit hosts: + * config/tc-avr.c (mod_index): New union to allow conversion + between pointers and integers. + (md_begin, avr_ldi_expression): Use it. + * config/tc-i370.c (md_assemble): Add cast for argument to print + statement. + * config/tc-tic54x.c (subsym_substitute): Likewise. + * config/tc-mn10200.c (md_assemble): Use a union to convert the + opindex field of fr_cgen structure into a pointer so that it can + be stored in a frag. + * config/tc-mn10300.c (md_assemble): Likewise. + * config/tc-frv.c (frv_debug_tomcat): Use %p to print pointer + types. + * config/tc-v850.c: Replace uses of (int) casts with correct + types. + +2006-01-09 H.J. Lu + + PR gas/2117 + * symbols.c (snapshot_symbol): Don't change a defined symbol. + +2006-01-03 Hans-Peter Nilsson + + PR gas/2101 + * config/tc-mmix.c (mmix_handle_mmixal): Don't treat #[0-9][FB] as + a local-label reference. + +For older changes see ChangeLog-2005 Local Variables: mode: change-log