X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;ds=sidebyside;f=gas%2FChangeLog;h=ec121e1d8d141173e4e1b39711ead95e88c6d1fb;hb=704803a97ea271327b8d390c2024affababd2143;hp=9211426befb73178e30064c96ca0f5bc37111612;hpb=055d1eb0f88fc42495d1fac45e89e5ef06ab207d;p=deliverable%2Fbinutils-gdb.git diff --git a/gas/ChangeLog b/gas/ChangeLog index 9211426bef..ec121e1d8d 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,468 @@ +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 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. @@ -1814,7 +2279,7 @@ (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/tc-arm.text: Document unwinding opcodes. + * doc/c-arm.texi: Document unwinding opcodes. * NEWS: Mention the new feature. 2004-10-04 Eric Christopher @@ -2840,7 +3305,7 @@ (md_begin): Set flags for EABI v3. (arm_eabis): Add. (arm_long_opts): Add meabi. - * doc/as.texinf : Document -meabi. + * doc/as.texinfo : Document -meabi. * doc/c-arm.texi: Ditto. 2004-03-22 Bob Wilson