From 08d561335f3aea2b6ee5b6818ad2d3a1c32cb8b1 Mon Sep 17 00:00:00 2001 From: Nick Clifton Date: Mon, 7 Jan 2002 12:12:47 +0000 Subject: [PATCH] Rotate ChangeLog --- gas/ChangeLog | 7710 +------------------------------------------- gas/ChangeLog-0001 | 7703 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 7711 insertions(+), 7702 deletions(-) create mode 100644 gas/ChangeLog-0001 diff --git a/gas/ChangeLog b/gas/ChangeLog index 8c29411fe04..5d5ece9a46d 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -36,7706 +36,12 @@ * config/tc-m68k.c (md_estimate_size_before_relax): Test for a NULL frag link. -2001-12-31 Richard Henderson +For older changes see ChangeLog-0001 + +Local Variables: +mode: change-log +left-margin: 8 +fill-column: 74 +version-control: never +End: - * config/tc-ia64.c (errata_nop_necessary_p): Prototype. - (make_unw_section_name): Constify local variables. - - * config/tc-ia64.c (has_suffix_p): New. - (note_register_values): Use it instead of strstr. - -2001-12-31 Jeffrey A Law (law@redhat.com) - - * config/tc-hppa.c (pa_ip): Handle new 'c' mode completers, - 'X', 'M', and 'A'. - -2001-12-21 Jakub Jelinek - - * config/tc-sparc.h (TC_PARSE_CONS_EXPRESSION): Define. - (sparc_cons): Provide prototype. - * config/tc-sparc.c (tc_gen_reloc): Handle BFD_RELOC_*_PCREL and - BFD_RELOC_SPARC_PLT{32,64}. Enumerate for which relocs - reloc->addend = fixp->fx_addnumber shouldn't be done instead of - enumarating for which pc relative ones it should be done. - (sparc_cons_special_reloc): New variable. - (sparc_cons): New function. - (cons_fix_new_sparc): Use sparc_cons_special_reloc. - * testsuite/gas/sparc/pcrel.s: New test. - * testsuite/gas/sparc/pcrel.d: Expected output. - * testsuite/gas/sparc/pcrel64.s: New test. - * testsuite/gas/sparc/pcrel64.d: Expected output. - * testsuite/gas/sparc/plt.s: New test. - * testsuite/gas/sparc/plt.d: Expected output. - * testsuite/gas/sparc/plt64.s: New test. - * testsuite/gas/sparc/plt64.d: Expected output. - * testsuite/gas/sparc/sparc.exp: Add pcrel, pcrel64, plt and plt64 - tests. - -2001-12-20 Thiemo Seufer - Daniel Jacobowitz - - * config/tc-mips.c (file_mips_gp32): Initialize to invalid value. - (file_mips_fp32): Likewise. - (md_begin): Compatibility handling for -mipsN option. - -2001-12-20 Alexandre Oliva - - * config/tc-sh.c (parse_at): Reject @(r0) and @(r0,). - -2001-12-20 matthew green - - * config/tc-ppc.c (md_parse_option): Make -maltivec default - to generating PowerPC instructions. - -2001-12-20 Jason Thorpe - - * configure.in (mips-dec-netbsd*): Delete. - * configure: Regenerate. - - * configure.in (arm-*-netbsdelf*): Add target. - * configure: Regenerate. - -2001-12-18 Nick Clifton - - * config/tc-mips.h (TC_HANDLE_FX_DONE): Remove redundant - definition. - -2001-12-18 Niibe Yutaka - - * configure.in (assign object format): Bug fix for setting - endian. - * configure: Regenerate. - -2001-12-18 matthew green - - * configure.in (m68k-*-netbsdelf*): New target. - (m68k-*-netbsd*): Also include ELF support. - (m68k-*-netbsdaout*): New alias for m68*-*-netbsd*. - * configure: Regenerate. - -2001-12-18 Thiemo Seufer - - * gasp.c (main): Protoype. - -2001-12-17 Richard Henderson - - * config/tc-alpha.c (alpha_handle_align): Encode unop with RB as $sp. - -2001-12-17 Nick Clifton - - * cgen.c: Add prototype for queue_fixup. - (gas_cgen_parse_operand): Move initilisastion of errmsg to avoid - possible longjmp corruption. - * cgen.h: Add prototype for gas_cgen_md_operand. - -2001-12-15 Alan Modra - - * config/obj-elf.c (obj_elf_init_stab_section): References are - kept to section name strings. Don't alloca them! - -2001-12-12 Alexandre Oliva - - * config/tc-d10v.c (get_operands): Mark OPERAND_PLUS after - OPERAND_ATSIGN as O_absent. - -2001-12-07 Geoffrey Keating - Richard Henderson - - * configure.in: Add support for xstormy16. - * configure: Regenerated. - * Makefile.am: Add support for xstormy16. - * Makefile.in: Regenerated. - * config/tc-xstormy16.c: New file. - * config/tc-xstormy16.h: New file. - -2001-12-06 Richard Earnshaw (rearnsha@arm.com) - - * tc-arm.c (do_arit, do_cmp, do_mov, do_ldst, do_ldstt, do_ldmstm) - (do_branch, do_swi, do_adr, do_adrl, do_empty, do_mul, do_mla) - (do_swap, do_msr, do_mrs, do_mull, do_ldstv4, do_bx, do_blx) - (do_bkpt, do_clz, do_lstc2, do_cdp2, do_co_reg2, do_smla, do_smlal) - (do_smul, do_qadd, do_pld, do_ldrd, do_co_reg2c, do_cdp, do_lstc) - (do_co_reg, do_fpa_ctrl, do_fpa_ldst, do_fpa_ldmstm, do_fpa_monadic) - (do_fpa_dyadic, do_fpa_cmp, do_fpa_from_reg, do_fpa_to_reg, do_mia) - (do_mar, do_mra, do_c_binops, do_c_binops_1, do_c_binops_2) - (do_c_binops_3, do_c_triple, do_c_triple_4, do_c_triple_5, do_c_quad) - (do_c_quad_6, do_c_dspsc, do_c_dspsc_1, do_c_dspsc_2, do_c_shift) - (do_c_shift_1, do_c_shift_2, do_c_ldst, do_c_ldst_1, do_c_ldst_2) - (do_c_ldst_3, do_c_ldst_4, do_branch25): Delete redundant argument, - FLAGS. - (struct asm_opcode): Adjust parms field accordingly. - (md_assemble): Don't pass dummy second argument when calling worker - functions. - (build_arm_ops_hsh): Add prototype - (BAD_FLAGS): Delete. - -2001-12-05 Richard Earnshaw - - * tc-arm.c (struct asm_opcode): Delete comp_suffix and flags. Add - cond_offset. Rename variants->variant. - (insns): Adjust for new format. Explicitly code each variant that - takes flags. Remove temporary instructions. - (struct arm_it): Remove redundant field suffix. - (s_flag, ldr_flags, str_flags, byte_flag, cmp_flags, ldm_flags) - (stm_flags, lfm_flags, sfm_flags, round_flags, fix_flags, except_flag) - (long_flag): Delete. - (struct asm_flg): Delete. - (LONGEST_INST): Delete. - (V4_STR_BIT): Define. - (struct thumb_opcode): Rename variants->variant. - (do_empty): Renamed from do_nop. - (ldst_extend): Delete argument hwse. Split code for half-word and - signed byte instructions to ... - (ldst_extend_v4): ... here. - (ld_mode_required_here): Use ldst_extend_v4. - (do_ldrd): Simplify now that this is only called for ldrd. No - need to test for XScale, which was wrong anyway. Don't reject r12 - as a target register. Add test that ldrd doesn't update an index - register. - (do_pld): Don't allow post-indexed or write-back addressing modes. - Adjust call to ldst_extend. - (do_adr): Split code for adrl to ... - (do_adrl): ... here. - (do_cmp): No need to fold in COND_BIT. - (do_ldst): Simplify. Split code for ldrt/strt into do_ldstt. Split - code to handle half-word and signed byte instructions to ... - (do_ldstv4): ... here. - (do_ldstt): New function. Handle load/store with translate. - (do_ldmstm): Write feature modification bits directly into - inst.instruction. - (do_fpa_ldst): Remove suffix handling code. - (do_fpa_dyadic, do_fpa_monadic, do_fpa_from_reg): Likewise. - (do_fpa_ldmstm): Type of access is now held in inst.instruction. - (build_arm_ops_hsh): New function. - (md_begin): Call it. Don't build the ARM opcode directly. - (md_assemble): Simplify ARM instruction handling. - -2001-12-05 Arati Dikey - - * tc-sh.c (parse_at): Corrected incorrect op->type selection due - to missing 'else'. - -2001-12-04 Alexandre Oliva - - * config/tc-d10v.c (write_2_short): Don't skip dummy fixups, so - that we can tell which operand refers to the insn put in the L - container and mark it as such, so that the relocation type can be - adjusted. - -2001-12-04 Thiemo Seufer - - * config/tc-mips.c (mips_cpreturn_offset): Better comment. - (load_register): Better error message. Cast away signedness - mismatches. Add casts needed for varargs. - (load_address): Replace checks of HAVE_64BIT_ADDRESS with dbl. - Remove superfluous casts. - (macro): Cast away signedness mismatches. Remove superfluous casts. - (s_cpload): Fix wrong comment. - (s_mips_weakext): Standardize output message. - (get_number): Likewise. - -2001-12-04 Thiemo Seufer - - * config/tc-mips.c (append_insn): Add jump address range overflow - check. - -2001-12-04 Thiemo Seufer - - * config/tc-mips.c (md_parse_option): Fix comment. Allow -mabi option - for ELF only. - (show): Document -mabi option. - -2001-12-03 Jeroen Dobbelaere - - * config/tc-arm.c (md_parse_option): Only clear cpu part when - specifying 'xscale' cpu (don't change the fpu part). - -2001-12-04 Alexandre Oliva - - * config/tc-d10v.c (find_opcode): Reject SP operand if - OPERAND_NOSP flag is present. - -2001-12-03 Eric Christopher - - * config/tc-mips.c (tc_gen_reloc): One missed BFD_RELOC_MIPS_GPREL. - -2001-12-02 Thiemo Seufer - - * config/tc-mips.c (macro_build): Replace BFD_RELOC_MIPS_GPREL - by BFD_RELOC_GPREL16. - (load_address): Likewise. - (macro): Likewise. - (md_apply_fix): Likewise. Replace BFD_RELOC_MIPS_GPREL32 by - BFD_RELOC_GPREL32. - (s_gpword): Replace BFD_RELOC_MIPS_GPREL32 by BFD_RELOC_GPREL32. - (tc_gen_reloc): Replace BFD_RELOC_MIPS_GPREL by BFD_RELOC_GPREL16. - *config/tc-mips.h: Replace BFD_RELOC_MIPS_GPREL by BFD_RELOC_GPREL16. - -2001-11-29 Alexandre Oliva - - * config/tc-d10v.c (get_operands): Emit OPERAND_PLUS for - prefix `+'. - - * config/tc-d10v.c (find_opcode): Reject non-SP operand if - flags requires SP. - -2001-11-29 Arati Dikey - - * tc-sh.c (parse_at): Removed case-sensitivity of index register - R8, R9. - -2001-11-28 Jakub Jelinek - - * write.c (adjust_reloc_syms): Mark SEC_MERGE symbols as used - in reloc if it has non-zero addend. - * config/tc-alpha.c (tc_gen_reloc): Reinstall SEC_MERGE check. - * config/tc-sparc.c (md_apply_fix3): Likewise. - -2001-11-28 Andreas Schwab - - * as.c (parse_args): Call md_after_parse_args if defined. - * config/tc-ia64.h (md_after_parse_args): Define. - * config/tc-ia64.c (ia64_after_parse_args): Reject --gstabs. - * doc/internals.texi (CPU backend): Document md_after_parse_args. - -2001-11-23 Jakub Jelinek - - * config/tc-alpha.c (tc_gen_reloc): Remove SEC_MERGE test. - * write.c (adjust_reloc_syms): Don't handle relocs against - SEC_MERGE section symbols specially. - (fixup_segment): Likewise. - -2001-11-21 Richard Sandiford - - * config/tc-mips.c (mips_need_elf_addend_fixup): New, extracted from... - (md_apply_fix3): ...here. Don't prevent the symbol value being - subtracted twice from GPREL addends. - (tc_gen_reloc): Add the symbol value to a GPREL addend if it was - subtracted by the previous function. - -2001-11-20 Nick Clifton - - * config/tc-avr.c (md_apply_fix3): Fix typo introduced by - md_apply_fix3 change. - -2001-11-20 Ben Elliston - - * config/tc-m88k.c (md_apply_fix3): Match local variable `val' to - usage after md_apply_fix3 cleanups. - -2001-11-19 Hans-Peter Nilsson - - * doc/c-mmix.texi: Use texinfo 4 features. - (MMIX-mmixal): Fix typo. - -2001-11-17 Hans-Peter Nilsson - - * config/tc-cris.c (md_apply_fix3): Cast value, not pointer, in - val assignment. - -2001-11-16 Michael Snyder - - * stabs.c (stabs_generate_asm_lineno): Remember file and line number - from one call to the next, and eliminate consecutive duplicates - (thereby emitting only one line symbol per source line). - * dwarf2dbg.c (dwarf2_gen_line_info): Ditto. - -2001-11-16 Alan Modra - - * config/tc-m68k.c (md_apply_fix3): Change val back to a signed type. - -2001-11-15 H.J. Lu - - * config/tc-hppa.c (md_apply_fix3): Fix a typo. - -2001-11-15 H.J. Lu - - * config/tc-alpha.c (md_apply_fix3): Fix a typo. - -2001-11-15 Nick Clifton - - * write.c (fixup_segment): Remove references to md_apply_fix and - TC_HANDLE_FX_DONE. - * cgen.c, config/obj-coff.c, config/tc-*.c: Update all occurances - of md_apply_fix to md_apply_fix3. - Make all md_apply_fix3 functions void. - * cgen.h, config/obj-coff.h, tc-*.h: Remove all definitions of - MD_APPLY_FIX3 and TC_HANDLE_FX_DONE. - * doc/internals.texi: Update references to md_apply_fix3. - * tc.h: Update prototype for md_apply_fix3. - -2001-11-15 Alan Modra - - * config/tc-i386.h (md_end): Define. - (i386_elf_emit_arch_note): Declare. - (CpuUnknown): Delete. - * config/tc-i386.c (default_arch): Constify. - (smallest_imm_type): Remove CpuUnknown test. - (md_assemble): Don't bother checking cpu_arch_flags non-zero. - (i386_elf_emit_arch_note): New function. - - * po/POTFILES.in: Regenerate. - -2001-11-15 Thiemo Seufer - - * config/tc-mips.c (mips_ip): Re-allow %hi() op for non-ELF assembler. - -2001-11-15 Alan Modra - - * frags.c (frag_grow): Revert last change. - - * dwarf2dbg.c (get_frag_fix): Align last frag size. - - * config/tc-ppc.c (ppc_insert_operand): Pass (ppc_cpu | ppc_size) - to operand->insert. - (md_assemble): Likewise. - -2001-11-12 Nick Clifton - - * frags.c (frag_grow): Use frag_make_room() to grow the - obstack. - -2001-11-14 Nick Clifton - - * config/tc-sparc.c (md_apply_fix3): Do not remove the symbol's - value from the addend for fixups against local symbols in - SEC_MERGE sections - it was not added in, in the first place. - -2001-11-11 Timothy Wall - - * write.c (relax_segment): Convert symbol address into an octet - offset prior to adding to the frag address, which is an octet - offset. Add comments to that effect. - * config/tc-tic54x.c: Fix bugs causing tests to fail. - * config/tc-tic54x.h: Ditch PARAMS macro. - -2001-11-13 Alan Modra - - * config/obj-elf.c (obj_elf_version): Ensure terminating NUL is - put in note section. Use sizeof instead of hard-coded constants. - -2001-11-12 Thiemo Seufer - - * config/tc-mips.c (support_64bit_objects): Define for OBJ_ELF only. - (md_longopts): Allow OPTION_MABI for ELF compilation only. RE-allow - OPTION_GP32, OPTION_GP64, OPTION_FP32 for non-ELF compilation. - Sort options a bit more logical. - (md_parse_option): Allow OPTION_32, OPTION_N32, OPTION_N64, - OPTION_MABI only for elf targets. - -2001-11-12 Thiemo Seufer - - * config/tc-mips.c (set_at): Add cast needed for varargs. - (load_register): Likewise. - (macro): Likewise. Some code reformatting. - (macro2): Add cast needed for varargs. - (mips16_macro): Likewise. - -2001-11-12 Thiemo Seufer - - * config/tc-mips.c (md_assemble): Remove superflous casts. - (append_insn): Likewise. - (mips16_macro_build): Likewise. - (macro): Likewise. - (mips16_ip): Likewise. - (s_cpload): Likewise. - (mips_relax_frag): Likewise. - -2001-11-12 Thiemo Seufer - - * config/tc-mips.c (mips_abi_level): Move in front of - mips_set_options. - (mips_set_options): Add members gp32, fp32, abi. - (file_mips_gp32): New flag. - (file_mips_fp32): New flag. - (mips_opts): Initialize the new members. - (mips_gp32): Remove. - (mips_fp32): Remove. - (HAVE_32BIT_GPRS): Use the new values from mips_opts. - (HAVE_32BIT_FPRS): Likewise. - (HAVE_NEWABI): Likewise. - (HAVE_64BIT_OBJECTS): Likewise. - (md_begin): Likewise. Save default (file) values. - (md_parse_option): Use the new values from mips_opts. - (s_mipsset): Likewise. Fix logic to keep the ABI selection if - possible. Let .set mipsN work together with .set push/pop. - Enhance error messages. - (mips_elf_final_processing): Use file_mips_* for header processing. - -2001-11-09 Marek Michalkiewicz - - * config/tc-avr.c (mcu_types): Update for new devices. - -2001-11-09 Stephane Carrez - - * doc/Makefile.am (POD2MAN): Use 'GNU Development Tools' for - the page man title. - * doc/Makefile.in: Rebuild. - * doc/as.texinfo: Do not put man SEEALSO in document; - Use @command for commands, @option for options; Reorganize usage - to clearly identify target specific options. - -2001-11-08 Thiemo Seufer - - * config/tc-mips.c (mips_force_relocation): Remove duplicate code. - -2001-11-06 Thiemo Seufer - - * config/tc-mips.c (my_getSmallParser): Fix small parser bug. - -2001-11-05 Martin Schwidefsky - - * config/tc-s390.c (tc_s390_force_relocation): Force all relocations - that need the global offset table. - (md_apply_fix3): Add code to undo opertions done in fixup_segment - triggered by TC_FORCE_RELOCATION. - * config/tc-s390.h (TC_FORCE_RELOCATION): Replace macro code with - a call to function tc_s390_force_relocation. - (TC_FIX_ADJUSTABLE): Define. - -2001-11-04 Chris Demetriou - - * configure.in (mips-*-netbsd*): Add support for target. - * configure: Regenerate. - -2001-11-02 Nick Clifton - - * configure.in (ALL_LINGUAS): Add 'fr'. - * configure: Regernate. - * po/fr.po: New file. Obtained from the translation project web - site. - -2001-11-02 Richard Earnshaw - - * tc-arm.c: Re-arrange prototypes by architecture. - (insns): Re-arrange instructions by archtitecture. Pld instruction - is part of ARMv5E. - (tinsns): blx and bkpt are part of ARMv5T. - (do_fp_{ctrl,ldst,ldstm,dyadic,monadic,cmp,from_reg,to_reg}): Rename - to do_fpa_*. All callers changed. - - * tc-arm.c (insns): Add two temporary instructions to handle - ldrd/strd. - -2001-11-01 Stephane Carrez - - * config/tc-m68hc11.c (build_jump_insn): Allocate worst case storage - for bra/bsr and use frag_variant(), this ensure that the possible - 16-bit BFD_RELOC_16 will be in the same frag. - -2001-10-31 Chris Demetriou - - * config/tc-mips.c (HAVE_32BIT_ADDRESSES): If compiling embedded - PIC code, assume pointers the same size as GPRs. - (macro): In M_LA_AB handling for embedded PIC code, support - "la $treg,foo-bar($breg)". In load/store handling - (label ld_st) support " $treg,-($breg)" - which is used by the compiler for switch statements. - In load/store double multi-instruction macro handling - (label ldd_std) add a comment that no special handling - is currently done for embedded PIC. - (mips_ip): In 'o' (16-bit offset) case, only accept 16 - bit offsets. - -2001-10-31 Richard Earnshaw - - General cleanup of feature definitions. - * tc-arm.c (ARM_EXT_LONGMUL, ARM_EXT_HALFWORD, ARM_EXT_THUMB): Delete. - (ARM_2UP, ARM_ALL, ARM_3UP, ARM_6UP): Delete. - (FPU_CORE, FPU_FPA10, FPA_FPA11, FPU_ALL, FPA_MEMMULTI): Delete. - (ARM_EXT_V{1,2,2S,3,3M,4,4T,5T,5ExP}): New defines. - (ARM_EXT_V{5,5E}): Synchronize with above. - (ARM_ARCH_V*): Define a complete set in terms of above features. - (ARM_{1,2,3,250,6,7,8,9,STRONG}): Define in terms of architecture. - (FPU_FPA_EXT_V[12]): Define. - (FPU_ARCH_FPE, FPU_ARCH_FPA): Define in terms of above. - (FPU_ANY): Define. - (FPU_DEFAULT): Default to FPA. - (CPU_DEFAULT): For XScale, this is now just ARM_ARCH_XSCALE; for - Thumb, this is now ARM_ARCH_V5T. - (insns): Rework for new feature defines. - (tinsns): Likewise. - (opcode_select, do_ldst, md_begin, md_parse_option): Likewise. - -2001-10-31 NIIBE Yutaka - - * configure.in: Handle sh*eb-*-linux* and sh*-*-linux*. - * configure: Regenerate. - * Makefile.in: Regenerate. - * doc/c-sh.texi (SH Options): Added descriptions. - -2001-10-30 Hans-Peter Nilsson - - * configure.in: Update for MMIX port. - * Makefile.am: Ditto. Regenerate dependencies. - * Makefile.in: Regenerate. - * configure: Regenerate. - * config/tc-mmix.h, config/tc-mmix.c: New files. - * doc/Makefile.am (CPU_DOCS): Add c-mmix.texi - * doc/Makefile.in: Regenerate. - * doc/all.texi: @set MMIX. - * doc/as.texinfo: Ditto. Add MMIX gas manpage option overview. - Include c-mmix.texi. - * doc/c-mmix.texi: New file. - -2001-10-24 Chris Demetriou - - * config/tc-mips.c (hilo_interlocks, cop_interlocks): Make - these evaluate to true if mips_arch indicates SB-1. - -2001-10-23 Alan Modra - - * as.c (parse_args): Print the date as well for --version. - -2001-10-20 Chris Demetriou - - * config/tc-mips.c (md_show_usage): Print "sb1" for Broadcom - SB-1 CPU for consistency. - (mips_cpu_info_table): Tweak comment about SB-1. - -2001-10-20 H.J. Lu - - * config/tc-arm.c (do_c_shift): Use ISDIGIT instead of isdigit. - (cirrus_parse_offset): Likewise. - -2001-10-19 Nick Clifton - - * config/tc-arm.c: Restore line_comment_chars. - -2001-10-18 Nick Clifton - - * config/tc-arm.c (comment_chars): Remove semi-colon accidentally - added to the list. - -2001-10-18 Hans-Peter Nilsson - - * write.c (fixup_segment): Handle fixups for SEC_MERGE sections as - for undefined symbols. - -2001-10-17 Chris Demetriou - - * doc/as.texinfo (MIPS ISA options): Added accidentally - omitted "-mips64" option to list of options. - -2001-10-17 matthew green - - * config/tc-ppc.c (md_show_usage): Add missing -maltivec, -m7400, - -m7410, -m7450 and -m7455 options. - -2001-10-17 Alan Modra - - * config/tc-ppc.c (PPC_HA, PPC_HIGHERA, PPC_HIGHESTA): Simplify. - (ppc_size): Select PPC_OPCODE_64 if 64 bit. - (md_begin): Don't set ppc_size here. - (ppc_target_format): Test ppc_size as well as BFD_DEFAULT_TARGET_SIZE. - (md_shortopts): Constify. - (md_longopts): Likewise. - (md_longopts_size): Likewise. - (ppc_elf_suffix): Only allow 64-bit relocs when ppc_size specifies - 64-bit opcodes. - (ppc_machine): Explain why this function is a nop. - -2001-10-17 Alan Modra - - * bit_fix.h: Comment typo fix. - * config/tc-mips.c: Likewise. - * config/tc-sh.c: Likewise. - * config/tc-arc.c (arc_code_symbol): Remove unnecessary test. - - * configure.in (MIPS_STABS_ELF): AC_DEFINE in only one place so - that autoheader doesn't duplicate config.in entries. - (DEFAULT_ARCH): Ditto. - * configure: Regenerate. - * config.in: Regenerate. - -2001-10-16 Alan Modra - - From Andrew Pines - * config/tc-m68k.c (m68k_ip): Correct absolute jmp opcodes. - -2001-10-16 NIIBE Yutaka , - Hans-Peter Nilsson - - * config/tc-sh.c (shl): Remove. - (big): New function. - (little): Remove shl handling. Emit error for endian mismatch. - (md_show_usage): Add description of -big. - (md_parse_option): Handle OPTION_BIG. Remove shl handling. - (OPTION_BIG): Add. - (md_pseudo_table): Add .big. - (md_longopts): Add -big. - (md_begin): Don't set target_big_endian here. - * config/tc-sh.h (TARGET_BYTES_BIG_ENDIAN): Remove. - (LISTING_HEADER, COFF_MAGIC, TARGET_FORMAT): Use target_big_endian. - (shl): Remove. - * configure.in (endian): Default is big. - (sh-*-pe*): Little endian. - (cpu_type): Set sh for target sh*. - * configure: Regenerate. - -2001-10-15 Thiemo Seufer - - * config/tc-mips.c (md_apply_fix): Preliminary handling of NewABI - relocations. - -2001-10-13 Nick Clifton - - * config/tc-arm.c: Replace CONST with const. - - * cgen.c: Tidy up formatting. - -2001-10-12 matthew green - - * config/tc-ppc.c (md_parse_option): New -m7410, -m7450 and -m7455 - flags, equivalent to -m7400. New -maltivec to enable AltiVec - instructions. New -mbook64 and -mbooke/-mbooke32 flags to enable - 64-bit and 32-bit BookE support, respectively. Change -m403 and - -m405 to set PPC403 option. - (md_show_usage): Adjust for new options. - * doc/all.texi: Set PPC. - * doc/as.texinfo: Add PPC support and pull in c-ppc.texi. - * doc/c-ppc.texi: New file. - * doc/Makefile.am (CPU_DOCS): Add c-ppc.texi. - * doc/Makefile.in: Regenerate. - -2001-10-12 Nick Clifton - - * read.c (s_bad_endr): New function. Issues a warning message - about a bad use of the .rept pseudo op. - (po_table[]): Add .endr. - * read.h: Prototype s_bad_endr. - - * CONTRIBUTORS: Update contact email address. - -2001-10-11 Kazu Hirata - - * config/tc-alpha.c: Fix comment typos. - * config/tc-cris.c: Likewise. - * config/tc-hppa.c: Likewise. - * config/tc-i370.c: Likewise. - * config/tc-mips.c: Likewise. - * config/tc-mn10200.c: Likewise. - * config/tc-mn10300.c: Likewise. - * config/tc-sh.c: Likewise. - * config/tc-tahoe.c: Likewise. - * config/tc-v850.c: Likewise. - -2001-10-11 Kazu Hirata - - * app.c: Fix comment typos. - * bit_fix.h: Likewise. - * expr.c: Likewise. - * itbl-ops.c: Likewise. - -2001-10-11 Nick Clifton - - * input-file.c: Include safe-ctype.h. - (input_file_open): Use ISSPACE instead of isspace. - -2001-10-10 Thiemo Seufer - - * config/tc-mips.c (mips_cpreturn_offset): New variable. - (mips_cpreturn_register): Likewise. - (mips_gp_register): Likewise. - (s_cpsetup): New function prototype. - (s_cplocal): Likewise. - (s_cpreturn): Likewise. - (s_gpvalue): Likewise. - (mips_pseudo_table): Add .cpsetup, .cplocal, .cpreturn, .gpvalue - pseudo-ops. - (macro): Don't warn about .cprestore for NewABI. - (md_pcrel_from): Code cleanup. - (mips_force_relocation): Force output of some NewABI relocations even - without a defined symbol. - (s_cpload): Ignore .cpload for NewABI. - (s_cpsetup): Handle .cpsetup. - (s_cplocal): Handle .cplocal. - (s_cprestore): Ignore .cprestore for NewABI. - (s_cpreturn): Handle .cpreturn. - (s_gpvalue): Handle .gpvalue. - (s_cpadd): Ignore .cpadd for NewABI. - (nopic_need_relax): Take g_switch_value into account as gp - optimization. - (tc_gen_reloc): Don't handle BFD_RELOC_MIPS_{CALL,GOT}* for NewABI. - -2001-10-10 Thiemo Seufer - - * config/tc-mips.c (my_getSmallParser): New function prototype. - (small_ex_type): Named this enum, more return values for - my_getSmallExpression. - (mips_ip): Allow SPC and HT between arguments. Handle some NewABI - triple relocations. Protect some parts with ifdef OBJ_ELF. - (percent_op_match): New struct, lookup table for %some_reloc(). - (my_getSmallParser): New function, parses nested percent_ops also. - (my_getSmallExpression): Rewite to support nested percent_ops. - -2001-10-10 Thiemo Seufer - - * config/tc-mips.c - (load_address): Support both 32- and 64-bit addresses. - (macro): Call load_register correctly. Expand 64-bit loads ans stores. - (macro2): Call load_address correctly. - -2001-10-09 Christian Groessler - - * config/tc-z8k.c: Include opcodes/z8k-opc.h after bfd.h - since z8k-opc.h now uses the PARAMS macro. - -2001-10-09 Aldy Hernandez - - * config/tc-arm.c: Change MAVERIK to MAVERICK. - -2001-10-09 Alan Modra - - * config/obj-elf.c: Make use of elf_group_name and elf_next_in_group - throughout file. - (obj_elf_change_section): Rename "group" to "group_name". - (obj_elf_section): Likewise. - (elf_frob_file): Don't use sec->lineno for SHT_GROUP section to store - first member section; Instead use elf_next_in_group. - -2001-10-09 Alan Modra - - * config/obj-elf.c: (obj_elf_change_section): Add "group" param. - Set elf_section_data group from it. Warn if group name changed. - (obj_elf_parse_section_letters): Parse 'G' too. - (obj_elf_section): Parse group name. - (struct group_list): New. - (build_group_lists): New function. - (elf_frob_file): Create SEC_GROUP section(s). - - * config/obj-elf.c: (elf_copy_symbol_attributes): Zap trailing - whitespace. - -2001-10-08 Aldy Hernandez - - * doc/arm/c-arm.texi (ARM Options): Add arm9e documentation. - - * config/tc-arm.c (ARM_EXT_MAVERIK): New macro. - (cirrus_regtype): New enum. - (LONGEST_INST): Change to 10. - (CIRRUS_MODE1): New. - (CIRRUS_MODE2): New. - (CIRRUS_MODE3): New. - (CIRRUS_MODE4): New. - (CIRRUS_MODE5): New. - (CIRRUS_MODE6): New. - (insns): Add cirrus dsp instructions. - (ARM_EXT_MAVERIKSC_REG): New. - (cirrus_register): New. - (cirrus_mvf_register): New. - (cirrus_mvd_register): New. - (cirrus_mvfx_register): New. - (cirrus_mvdx_register): New. - (cirrus_mvax_register): New. - (ARM_EXT_MAVERIKsc_register): New. - (reg_table): Add cirrus registers. - (cirrus_valid_reg): New. - (cirrus_reg_required_here): New. - (do_c_binops_1): New. - (do_c_binops_2): New. - (do_c_binops_3): New. - (do_c_triple_4): New. - (do_c_triple_5): New. - (do_c_quad_6): New. - (do_c_dspsc_1): New. - (do_c_dspsc_2): New. - (do_c_shift_1): New. - (do_c_shift_2): New. - (do_c_ldst_1): New. - (do_c_ldst_2): New. - (do_c_ldst_3): New. - (do_c_ldst_4): New. - (do_c_binops): New. - (do_c_triple): New. - (do_c_quad): New. - (do_c_dspsc): New. - (do_c_shift): New. - (cirrus_parse_offset): New. - (do_c_ldst): New. - (md_parse_option): Add arm9e. - (md_show_usage): Same. - -2001-10-08 Tom Rix - - * config/tc-ppc (ppc_bf, ppc_biei) : Set first .bi lineno value to - location of next .bf - * config/obj-coff.c (coff_frob_symbol) : XCOFF does not use endndx. - -2001-10-07 Alan Modra - - * config/obj-elf.c: Standardize error/warning messages - don't - capitalise, no final period or newline, don't say "ignoring" for - as_bad messages. In some cases, change the wording to that used - elsewhere for similar messages. - (obj_elf_section_name): New function, split out from .. - (obj_elf_section): .. here. Correctly mask off SHF_MERGE if - entsize not specified. - -2001-10-05 Jakub Jelinek - - * doc/as.texinfo: Document M and S ELF section flags. - -2001-10-05 Alan Modra - - * subsegs.c (subseg_text_p): Return 0 for absolute section. - * read.c (do_align): If in absolute section, warn about and ignore - non-zero fill pattern. - -2001-10-05 Alexandre Oliva - - * config/tc-mn10300.c (tc_gen_reloc): Don't free - reloc->sym_ptr_ptr if it's not allocated. - -2001-10-04 Thiemo Seufer - - * config/tc-mips.c (prev_insn_reloc_type): Make it an array to hold a - relocation triple. - (prev_insn_fixp): Likewise. - (append_insn): Changed prototype to accept a relocation pointer. - (imm_reloc): Make it an array. - (offset_reloc): Likewise. - (md_assemble): Handle triple relocations. - (append_insn): Likewise. Add handling for some NewABI relocations. - (mips_no_prev_insn): Handle triple relocations. - (macro_build): Likewise. Add handling for some NewABI relocations. - Move handling for the 'u' case to append_insn(). - (mips16_macro_build): Handle triple relocations. - (macro_build_lui): Likewise. Don't handle _gp_disp as special symbol - for NewABI. - (mips_ip): Handle triple relocations. - (mips16_ip): Likewise. - (mips_force_relocation): Force handling of triple relocations - without symbols for NewABI. - (md_apply_fix): Add handling for some NewABI relocations. - -2001-10-05 Alan Modra - - * config/tc-i386.c (parse_register): If not producing code for - x86_64, reject x86_64 register name matches. - (md_assemble): Remove now redundant check for x86_64 regs. - -2001-10-04 Alan Modra - - * config/tc-ppc.c (md_assemble ): Test ppc_size as well - as BFD_DEFAULT_TARGET_SIZE. - (ppc_tc): Likewise. - (ppc_is_toc_sym): Likewise. - (md_apply_fix3): Likewise. - -2001-10-03 Thiemo Seufer - - * config/tc-mips.c (mips_64): Remove. - (mips_target_format): Move downwards in file, use HAVE_64BIT_OBJECTS - in it. - (mips_abi_level, mips_abi): New enum. - (mips_32bit_abi): Remove. - (HAVE*PRS): Use mips_abi instead of mips_32bit_abi. - (HAVE_NEWABI): New define. - (HAVE_64BIT_OBJECTS): New define. - (HAVE_32BIT_ADDRESSES): Don't return true for 64bit objects. - (HAVE_64BIT_ADDRESSES): New define, inverse of HAVE_32BIT_ADDRESSES. - (support_64bit_objects): New prototype. - (md_begin): Use mips_abi instead of mips_32bit_abi. Don't write - .reginfo section for n32, use .MIPS.options instead. - (support_64bit_objects): New function, code from md_parse_option. - (md_longopts): Add -n32 option. - (md_parse_option): Use mips_abi instead of mips_32bit_abi/mips64. - Add -n32 option. Protect with OBJ_ELF. - (s_mipsset): Use mips_abi instead of mips_32bit_abi. - (mips_elf_final_processing): Likewise. Don't write .reginfo section - for n32, use .MIPS.options instead. - -2001-10-03 Alan Modra - - * po/POTFILES.in: Regenerate. - * configure: Regenerate. - -2001-10-02 Alan Modra - - * config/tc-ppc.c (md_apply_fix3 ): Make it 64 - bits if target is 64 bit. - - * doc/as.texinfo (listing): Fix typo. - - * as.c (print_version_id): Use BFD_VERSION_STRING in place of - BFD_VERSION. - * Makefile.am (Makefile): Depend on bfd/configure.in. - Run "make dep-am". - * Makefile.in: Regenerate. - -2001-09-30 H.J. Lu - - * config/obj-elf.c (obj_elf_parse_section_letters): Accept "am" - and "ams" for compatibility. - -2001-09-30 Hans-Peter Nilsson - - * config/tc-sh.c (md_pcrel_from_section): Transformed from - md_pcrel_from. Handle pc-relativeness against link-time - symbol. Handle relativeness to elsewhere than the fixup. - * config/tc-sh.h (MD_PCREL_FROM_SECTION): Define. - (md_pcrel_from_section): Prototype. - - * Makefile.am: Update dependencies with "make dep-am". - * Makefile.in: Regenerate. - -2001-09-30 Stephane Carrez - - * config/tc-m68hc11.c (cmp_opcode): Define prototype. - (print_opcode_format, skip_whites): Likewise. - (convert_branch, m68hc11_new_insn): Likewise. - (build_dbranch_insn, build_indexed_byte): Likewise. - (build_reg_mode, find, find_opcode): Likewise. - (print_insn_format): Fix call to print_opcode_format. - (md_assemble): Fix call to build_dbranch_insn. - -2001-09-27 Nick Clifton - - * config/tc-arm.c: Add missing prototypes. - -2001-09-26 Jeff Johnston - - * input-file.c (input_file_open): When reading the - first line looking for #NO_APP, prepare for the possibility - of finding #APP instead. Also fix algorithm to allow - white-space to follow either #NO_APP or #APP directives. - -2001-09-25 Geoff Berry - - * listing.c (buffer_line): Don't write past the end of `line' when - EOF is reached. - -2001-09-25 Alexandre Oliva - - * config/tc-mn10300.c (tc_gen_reloc): Don't emit an *ABS* - relocation for differences between symbols in a section other - than the one in which the difference is to be placed; apply - the relocation instead. - -2001-09-24 Nick Clifton - - * config/tc-arc.c: Add missing prototype. - (md_atof): Change type to int. Add missing prototype. - * config/tc-arc.h: Prototype exported functions. - -2001-09-22 Nick Clifton - - * as.c: Add missing function prototype. - * config/obj-aout.c: Fix compile time warning. - -2001-09-21 Bruno Haible - - * config/tc-openrisc.c: Don't include . - -2001-09-19 Martin Schwidefsky - - * gas/config/tc-s390.c: Add option -mwarn-areg-zero. - -2001-09-19 Alan Modra - - * config/tc-i370.c: Fix typo in last change. - -2001-09-19 Nick Clifton - - * doc/as.texinfo (Symbol Names): Improve documentation on local - labels and add documenation about dollar labels. - -2001-09-18 Bruno Haible - - * as.h: Don't include . - * as.c (main): For gettext, also set the LC_CTYPE locate facet. - * atof-generic.c: Include "safe-ctype.h" instead of . - (atof_generic): Use ISDIGIT instead of isdigit. - * config/m68k-parse.y: Include "safe-ctype.h". - (yylex): Use ISDIGIT/ISALNUM instead of isdigit/isalnum. - * config/obj-elf.c: Include "safe-ctype.h". - (obj_elf_vtable_inherit): Use ISSPACE instead of isspace. - * config/obj-vms.c: Include "safe-ctype.h". - (Write_VMS_MHD_Records): Use TOUPPER instead of islower/toupper. - (VMS_Case_Hack_Symbol): Use ISUPPER/ISLOWER/TOUPPER/TOLOWER - instead of isupper/islower/toupper/tolower. - * config/tc-a29k.c: Include "safe-ctype.h" instead of . - (insert_sreg): Use TOUPPER instead of islower/toupper. - (machine_ip): Use ISALPHA/ISALNUM/ISUPPER/TOLOWER instead of - isalpha/isalnum/isupper/tolower. - (a29k_unrecognized_line, md_operand): Use ISDIGIT instead of - isdigit. - * config/tc-alpha.c: Include "safe-ctype.h" instead of . - (md_undefined_symbol, s_alpha_ent): Use ISDIGIT instead of isdigit. - * config/tc-arc.c: Include "safe-ctype.h" instead of . - (md_assemble): Use ISSPACE/ISALNUM instead of isspace/isalnum. - (arc_extoper): Use TOLOWER instead of isupper/tolower. - * config/tc-arm.c: Include "safe-ctype.h" instead of . - (arm_psr_parse): Use ISALPHA instead of isalpha. - (accum0_required_here): Use ISALNUM instead of isalnum. - (do_ldrd): Use ISSPACE instead of isspace. - (decode_shift): Use ISALPHA instead of isalpha. - (insert_reg): Use TOUPPER instead of islower/toupper. - (arm_reg_parse): Use ISALPHA instead of isalpha. - (arm_parse_reloc): Use ISALNUM/ISPUNCT/TOLOWER instead of - isalnum/ispunct/tolower. - * config/tc-avr.c: Include "safe-ctype.h" instead of . - (md_parse_option): Use TOLOWER instead of tolower. - (avr_operand): Use ISDIGIT/TOLOWER instead of isdigit/tolower. - * config/tc-cris.c: Include "safe-ctype.h" instead of . - (cris_process_instruction): Use ISLOWER instead of islower. - (get_gen_reg): Use ISALNUM/ISDIGIT instead of isalnum/isdigit. - (get_spec_reg): Use TOLOWER/ISALNUM instead of isupper/tolower/isalnum. - (get_flags): Use ISSPACE instead of isspace. - * config/tc-d10v.c: Include "safe-ctype.h" instead of . - (do_assemble): Use TOLOWER instead of tolower. - * config/tc-d30v.c: Include "safe-ctype.h" instead of . - (do_assemble): Use TOLOWER instead of tolower. - (d30v_start_line): Use ISSPACE instead of isspace. - * config/tc-fr30.c: Include "safe-ctype.h" instead of . - (fr30_is_colon_insn): Use TOLOWER instead of tolower. - * config/tc-h8300.c: Include "safe-ctype.h" instead of . - (skip_colonthing, get_operand): Use ISDIGIT instead of isdigit. - * config/tc-h8500.c: Include "safe-ctype.h" instead of . - (start_label): Use ISALPHA instead of isalpha. - * config/tc-hppa.c: Include "safe-ctype.h" instead of . - (pa_ip): Use ISUPPER/ISLOWER/TOLOWER instead of - isupper/islower/tolower. - (pa_parse_number): Use ISDIGIT instead of isdigit. - (pa_chk_field_selector): Use TOLOWER instead of tolower. - (pa_stringer): Use ISDIGIT instead of isdigit. - * config/tc-i370.c: Include "safe-ctype.h" instead of . - (register_name): Use ISALPHA instead of isalpha. - (i370_elf_suffix): Use ISALNUM/TOLOWER instead of - isalnum/islower/tolower. - (i370_addr_offset): Use ISDIGIT/ISALPHA instead of - isdigit/isalpha. - (i370_addr_cons): Use ISALPHA/ISXDIGIT instead of - isalpha/isxdigit. - (md_assemble): Use ISSPACE instead of isspace. - * config/tc-i386.c: Include "safe-ctype.h" instead of . - (md_begin): Use ISDIGIT/ISLOWER/ISUPPER/TOLOWER/ISALPHA - instead of isdigit/islower/isupper/tolower/isalpha. - (output_invalid): Use ISPRINT instead of isprint. - * config/tc-i860.c: Include "safe-ctype.h" instead of . - (i860_ip): Use ISLOWER/ISDIGIT instead of islower/isdigit. - * config/tc-i960.c: Include "safe-ctype.h" instead of . - (get_args): Use ISALNUM instead of isalnum. - * config/tc-ia64.c: Include "safe-ctype.h". - (dot_pred_rel): Use TOUPPER/ISDIGIT instead of toupper/isdigit. - (ia64_unrecognized_line): Use ISDIGIT instead of isdigit. - (ia64_parse_name): Likewise. - * config/tc-m32r.c: Include "safe-ctype.h" instead of . - (assemble_two_insns): Use ISSPACE/ISALNUM/ISUPPER/TOLOWER - instead of isspace/isalnum/isupper/tolower. - * config/tc-m68hc11.c: Include "safe-ctype.h" instead of . - (md_assemble): Use TOLOWER/ISALNUM instead of tolower/isalnum. - * config/tc-m68k.c: Include "safe-ctype.h" instead of . - (mklower_table): Remove variable. - (mklower): Remove macro. - (insert_reg): Use TOUPPER instead of islower/toupper. - (md_begin): Remove initialization of mklower_table. - (s_reg): Use ISALNUM instead of isalnum. - (mri_assemble): Use ISUPPER/TOLOWER instead of isupper/tolower. - (parse_mri_condition): Use TOLOWER instead of isupper/tolower. - (build_mri_control_operand): Use TOLOWER instead of tolower. - (s_mri_else, s_mri_break, s_mri_next, s_mri_for): Likewise. - * config/tc-m88k.c: Include "safe-ctype.h" instead of . - (md_assemble): Use ISSPACE instead of isspace. - (get_imm16): Use ISALNUM instead of isalnum. - (get_cnd): Use ISDIGIT/ISUPPER/TOLOWER instead of - isdigit/isupper/tolower. - (get_bf_offset_expression): Use ISALPHA/ISUPPER/TOLOWER - instead of isalpha/isupper/tolower. - (hexval): Use ISDIGIT/ISLOWER/ISUPPER instead of - isdigit/islower/isupper. - * config/tc-mcore.c: Include "safe-ctype.h" instead of . - (mcore_s_section): Use ISSPACE instead of isspace. - (parse_reg): Use ISSPACE/TOLOWER/ISALNUM instead of - isspace/tolower/isalnum. - (parse_creg): Use ISSPACE/TOLOWER instead of isspace/tolower. - (parse_psrmod): Use TOLOWER instead of isascii/tolower. - (parse_exp, parse_mem, md_assemble): Use ISSPACE instead of - isspace. - * config/tc-mips.c: Include "safe-ctype.h" instead of . - (mips_ip): Use ISSPACE/ISDIGIT instead of isspace/isdigit. - (mips16_ip): Use ISLOWER/ISDIGIT instead of islower/isdigit. - (my_getSmallExpression): Use ISDIGIT/TOLOWER instead of - isdigit/tolower. - (tc_get_register): Likewise. - (get_number): Use ISDIGIT/ISXDIGIT instead of isdigit/isxdigit. - (s_mips_ent): Use ISDIGIT instead of isdigit. - * config/tc-mn10200.c: Include "safe-ctype.h" instead of . - (md_assemble): Use ISSPACE instead of isspace. - * config/tc-mn10300.c: Include "safe-ctype.h" instead of . - (md_assemble): Use ISSPACE instead of isspace. - * config/tc-ns32k.c: Don't include . - * config/tc-pdp11.c: Include "safe-ctype.h". - (mklower): Remove function. - (parse_reg): Use TOLOWER instead of mklower. - * config/tc-pj.c: Include "safe-ctype.h". - (md_assemble): Use ISSPACE instead of isspace. - * config/tc-ppc.c: Include "safe-ctype.h" instead of . - (register_name): Use ISALPHA instead of isalpha. - (ppc_elf_suffix): Use ISALNUM/TOLOWER instead of - isalnum/islower/tolower. - (md_assemble): Use ISSPACE instead of isspace. - (ppc_canonicalize_symbol_name): Use ISLOWER/TOUPPER instead of - islower/toupper. - * config/tc-s390.c: Include "safe-ctype.h" instead of . - (register_name): Use ISALPHA instead of isalpha. - (s390_elf_suffix, s390_lit_suffix): Use ISALNUM instead of isalnum. - (md_gather_operands, md_assemble, s390_insn): Use ISSPACE instead of - isspace. - * config/tc-sh.c: Include "safe-ctype.h" instead of . - (sh_elf_suffix): Use ISALNUM/TOLOWER instead of - isalnum/islower/tolower. - (IDENT_CHAR): Use ISALNUM instead of isalnum. - (parse_reg): Use TOLOWER instead of tolower. - (find_cooked_opcode): Use TOLOWER instead of isupper/tolower. - * config/tc-sparc.c: Include "safe-ctype.h" instead of . - (sparc_ip): Use ISLOWER/ISDIGIT instead of islower/isdigit. - (parse_keyword_arg): Use ISALNUM instead of isalnum. - * config/tc-tahoe.c: Include "safe-ctype.h". - (tahoe_reg_parse): Use ISDIGIT instead of isdigit. - (tip_op): Use TOLOWER instead of isupper/tolower. - * config/tc-tic30.c: Include "safe-ctype.h". - (md_begin): Use ISLOWER/ISDIGIT/ISUPPER/TOLOWER/ISLOWER/ - ISALPHA instead of islower/isdigit/isupper/tolower/islower/isalpha. - (tic30_operand): Use TOLOWER instead of tolower. - (tic30_find_parallel_insn): Likewise. - (output_invalid): Use ISPRINT instead of isprint. - * config/tc-tic54x.c: Include "safe-ctype.h". - (tic54x_asg, tic54x_eval): Use ISALPHA instead of isalpha. - (lookup_version): Use TOUPPER instead of toupper. - (tic54x_var): Use ISALPHA instead of isalpha. - (tic54x_mlib): Use ISSPACE instead of isspace. - (subsym_iscons): Use TOUPPER instead of toupper. - (get_operands): Use ISSPACE instead of isspace. - (is_type): Use TOUPPER/ISDIGIT instead of toupper/isdigit. - (encode_indirect, encode_operand): Use TOUPPER instead of toupper. - (next_line_shows_parallel): Use ISSPACE instead of isspace. - (subsym_get_arg, subsym_substitute): Use ISDIGIT instead of isdigit. - (tic54x_start_line_hook, md_assemble, tic54x_start_label): Use - ISSPACE instead of isspace. - * config/tc-tic80.c: Include "safe-ctype.h". - (md_assemble): Use ISSPACE instead of isspace. - * config/tc-v850.c: Include "safe-ctype.h" instead of . - (system_register_name): Use ISDIGIT instead of isdigit. - (md_assemble): Use ISSPACE instead of isspace. - * config/tc-vax.c: Include "safe-ctype.h" instead of . - (vax_reg_parse): Use TOLOWER/ISDIGIT instead of - isupper/tolower/isdigit. - (vip_op): Use TOLOWER instead of isupper/tolower. - * config/tc-w65.c: Don't include . - * config/tc-z8k.c: Include "safe-ctype.h" instead of . - (tohex): Use ISDIGIT/ISLOWER instead of isdigit/islower. - (whatreg): Use ISDIGIT instead of isdigit. - * ecoff.c: Include "safe-ctype.h" instead of . - (ecoff_directive_ent, ecoff_stab): Use ISDIGIT instead of isdigit. - * expr.c: Include "safe-ctype.h" instead of . - (integer_constant): Use ISALNUM/TOUPPER instead of - isalnum/islower/toupper. - (operand): Use TOLOWER instead of isupper/tolower. - * gasp.c: Include "safe-ctype.h" instead of . - (sb_strtol, level_0, change_base, doinstr): Use ISDIGIT instead - of isdigit. - (process_assigns, whatcond): Use TOUPPER instead of toupper. - (chartype_init): Use ISALPHA/ISDIGIT instead of isalpha/isdigit. - (main): For gettext, also set the LC_CTYPE locate facet. - * hash.c: Include "safe-ctype.h". - (main): Use TOLOWER instead of isupper/tolower. - * itbl-lex.l: Don't include . - * listing.c: Include "safe-ctype.h" instead of . - (listing_newline): Use ISCNTRL instead of isascii/iscntrl. Don't - omit non-ASCII characters. - (debugging_pseudo): Use ISSPACE instead of isspace. - * macro.c: Include "safe-ctype.h" instead of . - (buffer_and_nest): Use ISALNUM instead of isalnum. - (get_token): Use ISALPHA/ISALNUM instead of isalpha/isalnum. - (define_macro): Use ISUPPER/TOLOWER instead of isupper/tolower. - (macro_expand_body): Use ISALNUM/ISDIGIT/ISUPPER/ISALPHA - instead of isalnum/isdigit/isupper/isalpha. - (check_macro): Use ISALPHA/ISALNUM/ISUPPER/TOLOWER instead - of isalpha/isalnum/isupper/tolower. - * read.c: Include "safe-ctype.h" instead of . - (read_a_source_file): Use ISUPPER/TOLOWER/ISDIGIT instead of - isupper/tolower/isdigit. - (s_mri_common): Use ISDIGIT instead of isdigit. - (s_mri_sect): Use ISDIGIT/TOUPPER instead of isdigit/toupper. - (s_float_space): Use ISALPHA instead of isalpha. - (ignore_rest_of_line): Use ISPRINT instead of isprint. - (float_cons): Use ISALPHA instead of isalpha. - (next_char_of_string): Use ISDIGIT/ISXDIGIT instead of - isdigit/isxdigit. - * symbols.c: Include "safe-ctype.h" instead of . - (save_symbol_name): Use ISLOWER/TOUPPER instead of - islower/toupper. - (symbol_find_base): Use TOUPPER instead of islower/toupper. - (decode_local_label_name): Use ISDIGIT instead of isdigit. - -2001-09-18 Martin Schwidefsky - - * tc-s390.c (s390_insn): Add code to cope with 6 byte O_constants - in 64 bit mode and make format "e" work. - -2001-09-18 Alan Modra - - * dwarf2dbg.c (dwarf2_directive_file): Avoid signed/unsigned warning. - - * write.c (set_symtab): Update bfd_alloc declaration. Use a temp - var to ensure bfd_alloc arg is the right type. - (write_object_file): Cast args of bfd_seek. Replace bfd_write with - bfd_bwrite. - - * config/obj-coff.c: Replace calls to bfd_write with calls to - bfd_bwrite. Cast args of bfd_seek. - - * config/obj-elf.c (obj_elf_change_section): Avoid signed/unsigned - warning. - - * config/tc-mn10300.c (set_arch_mach): Make param unsigned. - - * config/tc-tic54x.c (tic54x_mlib): Replace bfd_read call with - call to bfd_bread. - -2001-09-15 Hans-Peter Nilsson - - * config/tc-sh.h (sh_force_relocation): Prototype. - (struct fix): Forward declare. - * config/tc-sh.c (type sh_operand_info): Move to top of file. - (cons, s_align_bytes): Remove old-type declarations. - (sh_elf_suffix, parse_reg, dot, parse_exp, parse_at, get_operand, - get_operands, get_specific, insert, build_relax, - insert_loop_bounds, build_Mytes): Prototype. - (little): Make static. Prototype. - (check, tc_Nout_fix_to_chars): Delete unused functions. - -2001-09-14 Eric Christopher - - * config/tc-mips.c (md_parse_option): Remove setting mips_64 via - -mgp32/mgp64. - -2001-09-14 Kevin Lo - - * configure.in: Add arm-openbsd target. - * configure: Regenerate. - -2001-09-14 Thiemo Seufer - - * configure.in: Change machine triplets from mips-*-linux-gnu* to - mips*-*-linux*. - -2001-09-12 Thiemo Seufer - - * config/tc-mips.c (append_insn): Don't rightshift BFD_RELOC_16_PCREL. - -2001-09-11 Richard Henderson - - * config/tc-alpha.c (alpha_elf_section_letter): New. - (alpha_elf_section_flags): New. - * config/tc-alpha.h (md_elf_section_letter): New. - (md_elf_section_flags): New. - * config/tc-ia64.c (ia64_elf_section_letter): New. - * config/tc-ia64.h (md_elf_section_letter): New. - -2001-09-11 Jakub Jelinek - - * config/obj-elf.c (obj_elf_parse_section_letters): Use 'M' instead - of 'm', 'S' instead of 's'. Update bad_msg. - * config/tc-ppc.c (ppc_section_letter): Update bad_msg. - * config/tc-i370.c (i370_sectioN_letter): Update bad_msg. - -2001-09-09 Alan Modra - - * expr.c (expr): Move code setting "retval" to the end of the loop, - and rearrange for efficiency. For "PIC code" subtraction, use - "rightseg" rather than recalculating. For "symbol OP symbol" - subtract, set "retval" to absolute_section if symbols in same - section. - * symbols.c (resolve_symbol_value): Resolve "sym +/- expr" to an - O_symbol. Simplify a +/- b code. Allow equality and non-equality - comparisons on symbols from any section. Allow other comparison - operators as for subtraction. - (symbol_equated_reloc_p): New predicate function. - * symbols.h (symbol_equated_reloc_p): Declare. - * write.c (relax_segment ): Ensure segment - for expression syms is set correctly. - (adjust_reloc_syms): Use symbol_equated_reloc_p. - (write_relocs): Likewise. - (write_object_file): Likewise. - * config/tc-mips.c (md_estimate_size_before_relax): Likewise. - * config/tc-i386.c (md_assemble ): Don't lose part - of a complex expression when setting up frag_var. - -2001-09-07 Richard Henderson - - * config/tc-alpha.c (alpha_reloc_op_tag): Replace need_seq with - require_seq and allow_seq. Let !literal omit the sequence number. - (tokenize_arguments): Reject sequence numbers of !allow_seq. - -2001-09-08 Jakub Jelinek - - * config/tc-sparc.c (md_apply_fix3): Handle relocs against SEC_MERGE - section symbols the same way as externs. - -2001-09-07 Thiemo Seufer - - * config/tc-mips.c (s_mipsset): Reallow unrestricted use of .set mipsX - pseudo-op. - -2001-09-07 Thiemo Seufer - - * config/tc-mips.c (append_insn): Handle BFD_RELOC_16_PCREL. - (macro_build): Use BFD_RELOC_16_PCREL_S2 only for embedded - PIC, BFD_RELOC_16_PCREL for the rest. - (mips_ip): Likewise. - (md_pcrel_from): return the right offset for the differently shifted - pcrel relocs. - (md_apply_fix): Handle BFD_RELOC_16_PCREL. - -2001-09-05 Richard Henderson - - * config/tc-ia64.c (FUNC_IPLT_RELOC): New. - (pseudo_func): Add @iplt. - (pseudo_opcode): Add data16 and data16.ua. - (md_begin): Set iplt pseudo. - (ia64_cons_fix_new): Handle 16 byte iplt reloc specially. - -2001-09-04 Richard Henderson - - * config/tc-alpha.c (struct alpha_insn): Make sequence scalar long. - (MACRO_LITERAL, MACRO_BASE, MACRO_BYTOFF, MACRO_JSR): Remove. - (alpha_macros): Remove occurrences of same. - (O_lituse_addr, O_gprel): New. - (DUMMY_RELOC_LITUSE_*): New. - (s_alpha_ucons, s_alpha_arch): Prototype. - (alpha_reloc_op): Construct elements via DEF macro. - (ALPHA_RELOC_SEQUENCE_OK): Remove. - (struct alpha_reloc_tag): Rename from alpha_literal_tag; rename - members to not be literal specific. - (next_sequence_num): New. - (md_apply_fix3): Cope with missing GPDISP_LO16. Adjust for - added/removed BFD relocations. - (alpha_force_relocation, alpha_fix_adjustable): Likewise. - (alpha_adjust_symtab_relocs): Handle GPDISP relocs as well. - (tokenize_arguments): Parse ! relocations properly. - (find_macro_match): Delete unused macro argument types. - (assemble_insn): Add reloc parameter; emit that instead of the - default as appropriate. - (get_alpha_reloc_tag): New. Split from ... - (emit_insn): ... here. Allocate a reloc tag for GPDISP. - (assemble_tokens): Don't search macros if user relocation present. - Copy reloc sequence number to insn struct. - (emit_ldgp): Remove user reloc handling. - (load_expression, emit_lda, emit_ldah, emit_ir_load): Likewise. - (emit_loadstore, emit_ldXu, emit_ldil, emit_stX): Likewise. - (emit_sextX, emit_division, emit_jsrjmp, emit_retjcr): Likewise. - * config/tc-alpha.h (tc_adjust_symtab): Always define. - (struct alpha_fix_tag): Name members less literal specific. - -2001-09-04 Jeffrey A Law (law@cygnus.com) - - * tc-h8300.c (tc_gen_reloc): Give an error if we try to take the - address of two symbols in different sections. - -2001-08-31 Eric Christopher - Jason Eckhardt - - * config/tc-mips.c (mips_cpu_info): Add support for mipsisa32, - 5kc, and 20kc. Clean up old entries. - -2001-08-31 J"orn Rennecke - Jeff Law - - * config/tc-h8300.c (build_bytes): For OBJ_ELF, make relocation's - offset match H8 ELF spec. - (md_section_align): Alternate implementation for BFD_ASSEMBLER. - (md_apply_fix): Fix argument and return types for BFD_ASSEMBLER. - - * tc-h8300.c (relocation mappings): Remove. Moved to tc-h8300.h. - (build_bytes): Mark fixups for PCrel branches as signed. For - OBJ_ELF, make sure the reloc's offset points to the first byte - to be modified. - (md_convert_frag): Update definiton based on BFD_ASSEMBLER. - * tc-h8300.h (relocation mappings): Add. - -2001-08-30 J"orn Rennecke - - * tc-h8300.c (tc_crawl_symbol_chain, tc_headers_hook): Don't - define for BFD_ASSEMBLER. - (tc_reloc_mangle): Likewise. - (tc_gen_reloc): New function for BFD_ASSEMBLER. - -2001-08-29 Jeffrey A Law (law@cygnus.com) - - * config/tc-h8300.c (h8300hmode): Record the machine type - if BFD_ASSEMBLER is defined. - (h8300smode, md_begin): Similarly. - -2001-08-29 Joel Sherrill - - * configure.in (i[3456]86-*-rtems*, m68*-*-rtems*): Change - default from coff to elf. - * configure: Regenerate. - -2001-08-29 J"orn Rennecke - - * tc-h8300.c: If OBJ_ELF, include elf/h8.h, and define - assorted coff relocations to the corresponding elf relocations. - * tc-h8300.h (TARGET_ARCH, TARGET_FORMAT): Define appropriately. - - * configure.in: Add case for h8300-*-elf. - * configure: Regenerate. - -2001-08-29 J"orn Rennecke - - * doc/internals.texi (MD_PCREL_FROM_SECTION): Change - documentation to reflect reality. - -2001-08-27 Thiemo Seufer - - * config/tc-mips.c (load_address): Reflect change to MAX_GPREL_OFFSET. - (macro): Reflect change to MAX_GPREL_OFFSET. - -2001-08-27 Torbjorn Granlund - Staffan Ulfberg - Linus Nordberg - Alan Modra - - * configure.in: Recognise powerpc*le*, not just powerpcle*. - * configure: Regenerate. - * config/tc-ppc.c (PPC_LO, PPC_HI, PPC_HA, PPC_HIGHER, - PPC_HIGHERA, PPC_HIGHEST, PPC_HIGHESTA, SEX16): New macros. - (md_assemble): Use them. - (ppc_machine): Support stub for ELF64 as well as XCOFF. - (md_pseudo_table): Add "llong", "quad". - (md_parse_option): Match default_cpu of powerpc*. - (ppc_arch): Likewise. - (ppc_subseg_align): Only for OBJ_XCOFF. - (ppc_target_format): Return elf64-powerpc strings for 64 bit ELF. - (md_begin): Select PPC_OPCODE_64 for 64 bit. - (ppc_insert_operand): Don't bother testing 'file' before calling - as_bad_where. Use as_bad_where for operand->insert errors. - (mapping): Add ELF64 relocation modifiers. - (ppc_elf_suffix): Replace symbol on BFD_RELOC_PPC64_TOC reloc - expressions with abs_symbol. - (ppc_elf_cons): Correct offset for little endian targets. - (ppc_elf_frob_symbol): New. - (md_assemble): Add support for 64 bit ELF relocs. - (ppc_tc): Ensure 8 byte alignment when 64 bit. - (ppc_is_toc_sym): Only define for OBJ_XCOFF and OBJ_ELF. Match - ".toc" section for 64 bit ELF. - (ppc_fix_adjustable): New. Macro body moved from tc-ppc.h. - (md_apply_fix3): Silence warning with ATTRIBUTE_UNUSED. Only do - the ppc_is_toc_sym check for OBJ_XCOFF and OBJ_ELF. For 64 bit, - use BFD_RELOC_PPC64_TOC16_DS instead of BFD_RELOC_PPC_TOC16. - Expand on comments, error message. Add support for 64 bit relocs, - and use PPC_HI etc. macros. - * config/tc-ppc.h (MAX_MEM_FOR_RS_ALIGN_CODE): Define. - (HANDLE_ALIGN): Define to generate nops in code sections rather - than zeros. - (TC_FORCE_RELOCATION): Force for BFD_RELOC_PPC64_TOC. - (ELF_TC_SPECIAL_SECTIONS): Add 64 bit ELF sections. - (tc_fix_adjustable): Move body of macro to tc-ppc.c. - (ppc_fix_adjustable): Declare. - (tc_frob_symbol): Define. - (ppc_elf_frob_symbol): Declare. - -2001-08-26 Andreas Jaeger - - * config/tc-s390.c: Add missing prototypes - (md_gather_operands): Make static. - -2001-08-26 Thiemo Seufer - - * config/tc-mips.h (MAX_GPREL_OFFSET): Change it to the maximum - allowed value, not the word beyond maximum. - * config/tc-mips.c (macro_build_lui): Code cleanup. - (macro): Reflect change to MAX_GPREL_OFFSET. - (mips_ip): Check explicitly against S_EX_NONE. - (my_get_SmallExpression): parse for %gp_rel, not %gprel. - (md_apply_fix): Code cleanup. - -2001-08-24 Andreas Jaeger - - * config/tc-ppc.h: Fix prototype declaration. - -2001-08-23 Jakub Jelinek - - * config/tc-ia64.c (dot_endp): Set function symbol sizes. - * config/obj-elf.c (obj_elf_size): When size is constant, free - and clear symbol_get_obj(sym)->size if any. - -2001-08-21 Thiemo Seufer - - * config/tc-mips.c (md_begin): Warn about incompatibility between - -march=FOO and -mipsN option, continue with default ISA. - -2001-08-21 Thiemo Seufer - - * config/tc-mips.c (md_parse_option): #ifdef the - traditional/non-traditional names as it is done in mips_target_format. - -2001-08-20 Richard Henderson - - * config/tc-alpha.h (MD_APPLY_FIX3): Define. - * config/tc-alpha.c (md_apply_fix3): Rename from md_apply_fix; - use seg parameter instead of now_seg. - -2001-08-18 H.J. Lu - - * config/tc-mips.c (show): Add the missing prototype. - -2001-08-18 Thiemo Seufer - - * config/tc-mips.c (S_EX_*): New enum for my_getSmallExpression() - return values. - (mips_ip): Use the new return values instead of characters. Add - support for %higher and %highest. - (LP): Remove. - (RP): Remove. - (my_getSmallExpression): Make parsing case insensitive and more - reliable. Add support for %higher and %highest. Further support to - parse %gprel and %neg is implemented but currently deactivated. - -2001-08-17 Alan Modra - - * ecoff.c (ecoff_frob_symbol): Remove casts from bfd_get_gp_size. - (ecoff_build_symbols): Likewise. - * read.c (s_lcomm_internal): Fix signed/unsigned warning. - -2001-08-16 Thiemo Seufer - - * config/tc-mips.c (mips_elf_final_processing): Set elf header flags - for n32 ABI if appropriate. - -2001-08-16 Thiemo Seufer - - * config/tc-mips.c (cons_fix_new_mips): Remove. - * config/tc-mips.h (TC_CONS_FIX_NEW): Remove. - (cons_fix_new_mips): Remove. - -2001-08-14 Jeff Johnston - - * expr.c (operand)[LITERAL_PREFIXDOLLAR_HEX]: Treat $L as - a label, not a hex constant. - -2001-08-13 Nick Clifton - - * config/tc-v850.h: Add missing prototypes. - -2001-08-12 Martin Schwidefsky - - * config/tc-s390.c (s390_elf_cons): Correct fixups for PLT - relocations. - -2001-08-12 TAKAI Kousuke - - * config/tc-sparc.c (cons_fix_new_sparc): Move - `sparc_no_align_cons = 0;' to... - (s_uacons): ...here so that sparc_no_align_cons will get - cleared properly. - -2001-08-11 Kazu Hirata - - * config/tc-mips.c: Fix a comment typo. - -2001-08-10 Richard Sandiford - - * config/tc-mips.c (move_register): New function. - (macro_build): Remove OPCODE_IS_MEMBER's gp32 argument. - (mips_ip): Likewise. - (macro2): Use move_register rather than macro_build for moves. - (mips16_macro): Likewise. - (macro): Likewise. Handle M_MOVE. - -2001-08-10 Andreas Jaeger - - * configure.in: Add -Wstrict-prototypes and -Wmissing-prototypes - to build warnings. - * configure: Regenerate. - -2001-08-10 Alan Modra - - * as.h (alloca): Don't declare if __GNUC__. Remove an old comment. - Comment indentation of #pragma. - * macro.c (alloca): Likewise. - - * config/tc-ppc.c: Revert 2001-08-08. - -2001-08-09 Alan Modra - - * symbols.c: Add missing prototypes. - * config/e-i386elf.c: Likewise. - * config/e-i386coff.c: Likewise. - * config/e-i386aout.c: Likewise. - * config/obj-coff.c: Likewise. - (def_symbol_in_progress, stack): Move definition. - * config/obj-elf.c: Add missing prototypes. - (obj_elf_change_section): Make static. - (obj_elf_parse_section_letters): Likewise. - (obj_elf_section_word): Likewise. - (obj_elf_section_type): Likewise. - -2001-08-08 Alan Modra - - From 1999-10-25 Torbjorn Granlund - * config/tc-ppc.c (md_apply_fix3): Replace haphazard code for - determining reloc type with code reading operands->reloc field. - -2001-08-08 Alan Modra - - * config/obj-elf.c (elf_copy_symbol_attributes): Make it a global - function, and expand old obj-elf.h OBJ_COPY_SYMBOL_ATTRIBUTES here. - * config/obj-elf.h (elf_copy_symbol_attributes): Declare. - (OBJ_COPY_SYMBOL_ATTRIBUTES): Call elf_copy_symbol_attributes. - - * output-file.c (output_file_create): Don't try to open a second - time as it's unnecessary. FOPEN_W was undefined too. - -2001-08-07 Thiemo Seufer - - * config/tc-mips.c (macro_build): Replace magic constants by defines. - (mips_ip): Likewise. Typo. - -2001-08-04 Thiemo Seufer - - * config/tc-mips.c (mips_abi_string): Initialize with NULL instead - of 0. - (RELAX_ENCODE): Replace bfd_vma by valueT. - (load_address): Formatting. - (macro): Likewise. Code cleanup. Typo. - (macro2): Formatting. - (md_parse_option): Typo. - (s_mipsset): Reorder cases to look nicer. - (md_estimate_size_before_relax): Formatting. Code cleanup. - (mips_elf_final_processing): Check against NULL instead of 0. - (md_obj_end): Remove ugly `' in message string. - (s_mips_ent): Remove ugly `' in message string. - -2001-07-30 Thiemo Seufer - - * config/tc-mips.c (md_begin): Take -mcpu value into account even when - -mipsX is specified. Make both -mcpu/-march and -mcpu/-mtune pairs - mutually exclusive (if they are different). - (md_parse_option): Warn if an -march/-mtune/-mcpu/-m option is - set more than once. - -2001-08-03 Richard Sandiford - - * config/tc-mips.c (md_apply_fix): Don't subtract the symbol value - from GPREL addends. - -2001-08-02 Richard Sandiford - - * doc/c-mips.tex (-mgp32, -mfp32): Added -mfp32, unified with -mgp32. - * config/tc-mips.c (mips_fp32, mips_32bit_abi): New static variables. - (md_long_opts): Add -mfp32 option. - (md_parse_option): Handle it. Set mips_32bit_abi given -mabi=32. - (md_show_usage): Show usage for -mfp32 and -mgp32. - (HAVE_32BIT_GPRS, HAVE_32BIT_FPRS): New macros. - (HAVE_64BIT_GPRS, HAVE_64BIT_FPRS): New macros, inverse of the above. - (HAVE_32BIT_ADDRESSES): New macro. - (load_register): Use HAVE_32BIT_GPRS to determine the register width. - (load_address): Use HAVE_32BIT_ADDRESSES to determine the address size. - (s_cprestore, s_cpadd): Likewise. - (macro): Use HAVE_32BIT_GPRS to determine the width of registers - used in branch and M_LI_D macros. Use HAVE_64BIT_FPRS to determine - the width registers used in M_LI_DD macros. Use HAVE_32BIT_ADDRESSES - to determine the width of addresses in load, store and jump macros. - (macro2): Use HAVE_32BIT_GPRS to determine the width of registers - used in set instructions; do not check the address size for them. - Use HAVE_32BIT_ADDRESSES to determine the width of addresses in - unaligned load and store macros. - (mips_ip): Use the new macros to check the width of a register when - processing float constants. Force a constant into memory if it is - destined for an FPR and the FPRs are wider than the GPRs. Warn about - odd FPR numbers if HAVE_32BIT_FPRS. Use HAVE_32BIT_GPRS rather - than mips_gp32 to select synthetic instructions. - (macro_build): Use HAVE_32BIT_GPRS rather than mips_gp32 to select - synthetic instructions. - -2001-08-01 Christian Groessler - - * config/tc-z8k.c (parse_reg): If a string starts with "r", "rl", - "rh", "rr", "rq", or "sp" then don't automatically assume - it's a register name. Check whether there is a number - following. - -2001-08-01 Alan Modra - - * config/tc-i386.c (lex_got): Match lower case relocation tokens. - Don't allocate more space than necessary for the input line copy. - -2001-08-01 Alan Modra - - * read.c: Standardize error/warning messages - don't capitalise, no - final period or newline, don't say "ignored" or "zero assumed" for - as_bad messages. In some cases, change the wording to that used - elsewhere for similar messages. - * app.c: Likewise. - * as.c: Likewise. - * atof-generic.c: Likewise. - * cgen.c: Likewise. - * cond.c: Likewise. - * depend.c: Likewise. - * dwarf2dbg.c: Likewise. - * ecoff.c: Likewise. - * expr.c: Likewise. - * frags.c: Likewise. - * input-file.c: Likewise. - * input-scrub.c: Likewise. - * listing.c: Likewise. - * output-file.c: Likewise. - * stabs.c: Likewise. - * subsegs.c: Likewise. - * symbols.c: Likewise. - * write.c: Likewise. - * ecoff.c (ecoff_directive_end): Test for missing name by - comparing input line pointers rather than reading string. - (ecoff_directive_ent): Likewise. - * read.c (s_set): Likewise. - (s_align): Report a warning rather than an error for - alignment too large. - (s_comm): Check for missing symbol name. - (s_lcomm_internal): Likewise. - (s_lsym): Likewise. - (s_globl): Use is_end_of_line instead of looking for '\n'. - (s_lcomm_internal): Likewise. - (ignore_rest_of_line): Report a warning rather than an error. - -2001-07-31 Geoffrey Keating - - * config/tc-ppc.c (ppc_elf_validate_fix): It's OK to have - any kind of relocation against a not-loaded section. - -2001-07-30 Alan Modra - - * config/obj-elf.c (obj_elf_symver): Temporarily modify lex_type - to include '@' in symbol names when parsing versioned symbols - rather than calling get_symbol_end multiple times. - * config/tc-i370.c (register_name): Format fixes. Don't call - get_symbol_end after parsing number. - * config/tc-mn10200.c (data_register_name): Format fixes. Hoist - code out of conditional. - (address_register_name): Likewise. - (other_register_name): Likewise. - * config/tc-mn10300.c (r_register_name): Likewise. - (xr_register_name): Likewise. - (data_register_name): Likewise. - (address_register_name): Likewise. - (other_register_name): Likewise. - * config/tc-ppc.c (register_name): Likewise. - * config/tc-s390.c (register_name): Likewise. - -2001-07-27 Stephane Carrez - - * config/tc-m68hc11.c (md_estimate_size_before_relax): Fix bsr - and bra relax: update fragP->fr_fix after the fixup. - -2001-07-27 Tracy Kuhrt - - * read.c (s_set): Check for missing symbol name. - -2001-07-26 Alan Modra - - * write.c (relax_segment ): Account for fr_fix. - -2001-07-25 H.J. Lu - - * config/tc-mips.c (md_estimate_size_before_relax): Make sure - we treat weak like extern only for ELF. - (mips_fix_adjustable): Make sure we don't adjust extern/weak - symbols only for ELF. - -2001-07-25 Chris Demetriou - - * config/tc-mips.c: Fix spelling error in comment. - -2001-07-25 Dave Brolley - - * app.c (LEX_IS_PARALLEL_SEPARATOR): New macro. - (IS_PARALLEL_SEPARATOR): New macro. - (do_scrub_begin): Set up characters in tc_parallel_separator_chars - as LEX_IS_PARALLEL_SEPARATOR, if it is defined. - (do_scrub_chars): Handle LEX_PARALLEL_SEPARATOR chars like - LEX_LINE_SEPARATOR except that we go to state 1 (as if the label has - been seen). - -2001-07-24 Alan Modra - - * Makefile.am (DEP_FLAGS): Define, add -DOBJ_MAYBE_ELF. - (DEP1, DEPTC, DEPOBJ, DEP2): Use it. - Update dependencies with "make dep-am". - * Makefile.in: Regenerate. - * doc/Makefile.in: Regenerate. - -2001-07-23 Kazu Hirata - - * config/tc-alpha.h: Fix formatting. - * config/tc-arc.c: Likewise. - * config/tc-d10v.h: Likewise. - * config/tc-hppa.c: Likewise. - * config/tc-i370.c: Likewise. - * config/tc-i386.h: Likewise. - * config/tc-i960.h: Likewise. - * config/tc-ia64.c: Likewise. - * config/tc-ia64.h: Likewise. - * config/tc-m32r.c: Likewise. - * config/tc-m68k.c: Likewise. - * config/tc-m88k.c: Likewise. - * config/tc-ns32k.c: Likewise. - * config/tc-pdp11.c: Likewise. - * config/tc-pj.h: Likewise. - * config/tc-s390.c: Likewise. - * config/tc-sparc.c: Likewise. - * config/tc-sparc.h: Likewise. - * config/tc-tic80.c: Likewise. - * config/tc-w65.h: Likewise. - -2001-07-23 Alan Modra - - * symbols.c (S_GET_VALUE): Don't treat O_constant and local - symbols specially. Always resolve, adding fr_address to value. - * write.c (write_object_file): Don't add fr_address to sym values. - (relax_frag): Likewise. - (relax_segment): Likewise. - * config/obj-ieee.c (do_symbols): Likewise. - * config/tc-cris.c (md_convert_frag): Likewise. - * config/tc-fr30.c (md_convert_frag): Likewise. - * config/tc-i386.c (md_convert_frag): Likewise. - * config/tc-m32r.c (md_convert_frag): Likewise. - * config/tc-m68hc11.c (md_convert_frag): Likewise. - * config/tc-mcore.c (md_convert_frag): Likewise. - * config/tc-mips.c (mips16_extended_frag): Likewise. - * config/tc-ns32k.c (md_convert_frag): Likewise. - * config/tc-m68k.c (md_convert_frag_1): Likewise. - (BRANCHBWL, BRABSJUNC, BRABSJCOND, BRANCHBW, FBRANCH, DBCCLBR, - DBCCABSJ, PCREL1632, PCINDEX, ABSTOPCREL): Decrement. - (md_relax_table): Remove first four entries. Format. - (md_estimate_size_before_relax): Remove old_fix. Don't bother - setting fr_var. Simplify byte branch checks. - -2001-07-23 Alan Modra - - * config/tc-hppa.c (pa_parse_nonneg_cmpsub_cmpltr): Remove - "isbranch" param as all calls have it set. - (pa_parse_neg_cmpsub_cmpltr): Likewise. - (pa_parse_nonneg_add_cmpltr): Likewise. Remember result of - strcasecmp in "nullify" var. - (pa_parse_neg_add_cmpltr): Likewise. - (pa_ip): Don't "save_s" unnecessarily. Update calls to above - functions. Don't print wrong conditions in error messages. - -2001-07-23 Andreas Jaeger - - * config/tc-s390.c (s390_force_relocation): Removed. - - * config/tc-s390.h: Remove double declaration of - TC_FORCE_RELOCATION. - -2001-07-22 H.J. Lu - - * config/tc-mips.c (s_mips_end): Remove unused variables. - (s_mips_frame): Add ATTRIBUTE_UNUSED. - -2001-07-17 Andreas Schwab - - * config/tc-m68k.c (md_pseudo_table) [OBJ_ELF]: Add .file and - .loc. - (md_assemble) [OBJ_ELF]: Call dwarf2_emit_insn before emitting - insn. - * config/tc-m68k.h (DWARF2_LINE_MIN_INSN_LENGTH): Define. - -2001-07-17 matthew green - - * config/tc-i386.c (comment_chars): Don't use '/' as comment start if - TE_NetBSD. - (line_comment_chars): Set to '/' if TE_NetBSD. - -2001-07-14 matthew green - - * configure.in (i386-*-netbsdelf*): New target. - * configure: Regenerate. - -2001-07-10 Mark Elbrecht - - * config/obj-coff.c (coff_frob_symbol): Don't merge if the storage - class of the non-debug symbol is C_NULL. - -2001-07-10 Anders Norlander - - * doc/as.texinfo (Incbin): Fix grammatical errors. - -2001-07-10 Nick Clifton - - * depend.c: Use FOPEN_.. macros in calls to fopen(). - * input-file.c: As above. - * itbl-ops.c: As above. - * listing.c: As above. - * output-file.c: As above. - * read.c: As above. - -2001-07-08 Anders Norlander - - * read.c (s_incbin): New .incbin function. - * read.c (potable): Add "incbin" pseudo-op. - * read.h: Add s_incbin prototype. - * doc/as.texinfo (incbin): Document .incbin pseudo-op. - * NEWS: Mention new feature. - -2001-07-07 Nick Clifton - - * ecoff.c (add_file): Only set debug_type to DEBUG_NONE if it is - DEBUG_UNSPECIFIED. - -2001-07-06 John Healy - - * cgen.c (gas_cgen_save_fixups): Modified to allow more than one - set of fixups to be stored. - (gas_cgen_restore_fixups): Modified to allow the fixup chain to be - restored to be chosen from any that are saved. - (gas_cgen_swap_fixups): Modified to allow the current set of - fixups to be swapped with any other set that has been saved. - (gas_cgen_initialize_saved_fixups_array): New routine. - * cgen.h: Modifed prototypes for gas_cgen_save_fixups, - gas_cgen_restore_fixups, and gas_cgen_swap_fixups. Added definitions - or MAX_SAVED_FIXUP_CHAINS. - * config/tc-m32r.c (assemble_two_insns): Changed calls to fixup - store, swap and restore fuctions to reflect the new interface. - -2001-07-06 Nick Clifton - - * config/tc-m68k.c (md_estimate_size_before_relax): Catch and - ignore empty, ineffectual alignment frags when deciding if a - branch can be short. - -2001-07-05 Steve Ellcey - - * config/tc-ia64.c (special_section): Add SPECIAL_SECTION_INIT_ARRAY - and SPECIAL_SECTION_FINI_ARRAY. - (special_section_name): Add .init_array and .fini_array. - (md_pseudo_table): Add init_array and fini_array. - (md): Add pointer_size and pointer_size_shift fields. - (setup_unwind_header): New static function. - (output_unw_records): Modify to use setup_unwind_header. - (generate_unwind_image, dot_endp): Modify to use md.pointer_size and - md.pointer_size_shift. - (md_begin): Initialize md.pointer_size and md.pointer_size_shift. - -2001-07-05 Ben Elliston - - * README (Supported platforms): m88k no longer suffers bitrot. - - * config/tc-m88k.c (md_pseudo_table): Remove redundant "global". - -2001-07-05 Alan Modra - - * struc-symbol.h (struct local_symbol): Rename lsy_offset to - lsy_value. Correct typos in comments. - * symbols.c (local_symbol_make): Update for name change. - (local_symbol_convert): Likewise. - (colon): Likewise. - (S_GET_VALUE): Likewise. - (S_SET_VALUE): Likewise. - (print_symbol_value_1): Likewise. - (resolve_symbol_value): Likewise. Don't divide local sym values - by OCTETS_PER_BYTE twice. - -2001-07-04 Jim Wilson - - * config/tc-ia64.c (md_pseudo_table): Add 2byte, 4byte, and 8byte. - - * config/tc-ia64.c (is_conditional_branch): Rewrite to exclude mod - sched branches. - -2001-07-05 Ben Elliston - - * read.c (s_fill): Correct spelling error in comments. - - * doc/c-m88k.texi: New file. - * doc/Makefile.am (CPU_DOCS): Add c-m88k.texi. - * doc/Makefile.in: Regenerate. - * doc/all.texi: Set M880X0. - * doc/as.texinfo: Hook in m88k-dependent documentation. - -2001-07-04 Eric Christopher - - * doc/c-mips.texi (MIPS Opts): Document 12000 as valid cpu. - - * config/tc-mips.c (mips_cpu_info_table): Add rm5200, rm5231, rm5261, - and rm5721 as valid cpu strings. - (md_show_usage): Add rm5200, rm5231, rm5261, rm5721. - -2001-07-04 Richard Sandiford - - * config/tc-mips.c (md_apply_fix): Prevent addend from becoming zero - if it's expected to be non-zero. - -2001-07-03 Nick Clifton - - * config/tc-sh.c (sh_frob_section): Replace symbol_get_frag() with - fscan->fx_frag. - - * write.c (TC_FINALIZE_SYMS_BEFORE_SIZE_SEG): Default to 1. - (write_object_file): Set finalize_syms to - TC_FINALIZE_SYMS_BEFORE_SIZE_SEG just before size_segs is - called. - - * doc/internals.texi: Document - TC_FINALIZE_SYMS_BEFORE_SIZE_SEG. - -2001-07-02 Alan Modra - - * config/tc-ppc.c: Formatting fixes. - -2001-07-01 Ben Elliston - - * config/tc-m88k.c: Back out warning fixes from 2001-06-24, as - they cause some subtle breakage. Will fix them again later. - -2001-06-28 Nick Clifton - - * config/obj-coff.c (obj_coff_ln): Treat a .ln directive - outside of a function as a .appline directive. - -2001-06-28 Eric Christopher - H.J. Lu - - * config/tc-mips.c (mips_arch): New. Use mips_arch instead - of mips_cpu for the ISA selection. - (md_longopts): Add OPTION_MARCH and OPTION_MTUNE. - (md_parse_option): Handle OPTION_MARCH and OPTION_MTUNE. - (mips_tune): New. Use mips_tune for scheduling and optimization - issues. - (append_insn): Use mips_tune and mips_arch. - (macro_build): Ditto. - (mips_ip): Ditto. - (md_begin): Handle mips_arch, mips_tune and mips_cpu. For - backwards compatability mips_cpu generates arch and tune. - (md_show_usage): Document new behavior. - - * doc/c-mips.texi (MIPS Opts): Document -march and -mtune. - Deprecate -mcpu. - - * NEWS: Update. - -2001-06-27 Nick Clifton - - * write.c (write_object_file): Do not set finalize_syms until - after the segments have been sized. Some backends may still - need to access the syms's frags in order to adjust relaxed - frags. - - * config/tc-arm.c (do_ldst): Use MVN to build simple inverted - constants. - -2001-06-27 Alan Modra - - * write.c (fixup_segment ): Don't - subtract MD_PCREL_FROM_SECTION for 68k. - (fixup_segment ): Only fudge - by adding MD_PCREL_FROM_SECTION for 68k or if not already pcrel. - -2001-06-27 Tracy A. Kuhrt - - * write.c (fixup_segment ): If - pcrel, subtract MD_PCREL_FROM_SECTION value. - -2001-06-24 Ben Elliston - - * stabs.c (generate_asm_file): Make local variable `len' a size_t. - -2001-06-24 Jakub Jelinek - - * config/tc-alpha.c (tc_gen_reloc): Handle relocs against SEC_MERGE - section symbols the same way as externs. - -2001-06-24 Ben Elliston - - * config/tc-m88k.c (md_number_to_imm): Remove; unused since 1993. - (emit_relocations): Ditto. - (s_bss): Ditto. - (md_begin): Reformat comments to conform to the GNU standards. - (md_assemble): Ditto. - - * config/tc-m88k.c (get_reg): Adjust type of `reg_prefix' to char. - (md_parse_option): Mark parameters as unused. - (md_show_usage): Ditto. - (calcop): Adjust type of `reg_prefix' to char. - (get_reg): Ditto. - (getval): Adjust type of local `c' to char. - (md_create_short_jump): Mark from_addr, to_addr params as unused. - (md_create_long_jump): Ditto. - (md_estimate_size_before_relax): Mark parameters as unused. - - * config/tc-m88k.c (md_pseudo_table): Properly terminate the table - to allay a possible compiler warning. - -2001-06-22 Nick Clifton - - * doc/internals.texi (CPU backend): Document md_atof. - -2001-06-22 Matthew Wilcox - - * config/tc-hppa.c (pre_defined_registers): Add %mrp (millicode - return pointer) alias for %r2 or %r31, depending on 32 or 64 bit - architecture. - -2001-06-21 Philip Blundell - - * config/tc-arm.c (cplong_flag): Rename to long_flag. All uses - updated. - (insns): Remove entry for adrl. Add long_flag for adr. - (do_adr): Handle `l' suffix. - (do_adrl): Delete. - -2001-06-21 Alan Modra - - * config/tc-hppa.c (CHECK_FIELD_WHERE): Define. - (md_apply_fix): Use it here. Replace printf with equivalent - as_bad_where. - (tc_gen_reloc): Use as_bad_where instead of as_bad. - (md_apply_fix): Here too. - * config/tc-i386.c (tc_gen_reloc): Use as_bad_where instead of as_bad. - * config/tc-m68k.c (tc_gen_reloc): Likewise. - (md_convert_frag_1): Likewise. - -2000-06-20 Tom Rix - - * config/tc-ppc.c (ppc_comm): Change default alignment to 4 bytes. - -2001-06-18 H.J. Lu - - * doc/Makefile.am (info): Depend on $(MANS). - (as.1): Remove the prefix `$(srcdir)/'. - * doc/Makefile.in: Regenerated. - - * as.1: Removed. - -2001-06-18 Philip Blundell - - * config/tc-arm.c (do_msr): Remove restriction on usage of - immediate operands. - -2001-06-19 Alan Modra - - * dwarf2dbg.c (dwarf2_finish): Output file info even when no - line info. - -2001-06-13 Philip Blundell - - * config/tc-arm.c (thumb_shift): Improve wording of error message. - (do_t_arit): Likewise. - -2001-06-13 Nick Clifton - - * config/tc-sh.c (md_pseudo_table): Only intercept the .file and - .loc pseudos if the dfwarf2 functions are available. - (md_assemble): Only call dwarf2_emit_insn if it is available. - - * expr.c: Fix typo in comment. - -2001-06-12 Nick Clifton - - * doc/as.texinfo (Infix Ops): Document that comparison and - combiner operators can be used as infix operators. - -2001-06-12 Peter Jakubek - - * config/tc-m68k.c (parse_mri_control_operand): Fix handling - of AND/OR. - (swap_mri_condition): Add HS (alias fo CC) and LO (alias for CS). - (reverse_mri_condition): Likewise. - (swap_mri_condition): Issue warning for conditions that can not be - swapped. - (build_mri_control_operand): Fix order of operands (swapped). - (build_mri_control_operand): Allow upper case extension in structured - control directives. - (s_mri_else): Likewise. - (s_mri_next): Likewise. - (s_mri_for): Likewise. - (s_mri_if): Fix handling comment ('*') in mri mode. - (s_mri_while): Likewise. - * macro.c (macro_expand): Allow macro invocation with empty - extension. - -2001-06-12 Nick Clifton - - * config/tc-arm.c: Fix test for overlow of literal pool. - -2001-06-11 H.J. Lu - - * NEWS: Updated for the new -n option for the MIPS assembler. - - * config/tc-mips.c (md_show_usage): Add -n. - - * doc/as.texinfo: Document the new -n option. - * doc/c-mips.texi: Likewise. - * doc/as.1: Regenerated. - -2001-06-10 Alan Modra - - * config/obj-coff.c (obj_coff_section): Formatting fix. - - * config/tc-i386.c (md_assemble): Accept branch hints as ",pt" and - ",pn". - -2001-06-08 H.J. Lu - - * config/tc-mips.c (warn_nops): New variable. Set to 0 to - disable warning about all NOPS that the assembler generates. - (macro): Warn NOPS generated only if warn_nops is not 0. - (md_shortopts): Add `n'. - (md_parse_option): Set warn_nops to 1 for `n'. - -2001-06-08 H.J. Lu - - * config/tc-mips.c (mips_ip): Properly handle illegal operands. - -2001-06-08 H.J. Lu - - * config/tc-mips.c (md_apply_fix): Don't adjust common - extern/weak symbols for ELF. - (md_estimate_size_before_relax): Treat weak like extern for - ELF. - (mips_fix_adjustable): Don't adjust extern/weak symbols for - ELF. - -2001-06-08 Alan Modra - - * Makefile.am: 'som' is not wrongly spelled 'some'. - * Makefile.in: Regenerate. - - * config/tc-mips.c (mips16_mark_labels): Reduce number of calls to - S_GET_VALUE by using a temp. - (append_insn): Likewise, and for S_SET_VALUE too. - (mips_emit_delays): Likewise. - (my_getExpression): Likewise. - (md_apply_fix): Likewise. Use "valueT" rather than "long" for "value". - (mips16_extended_frag): Remove code concerned with avoiding - locking in a frag address now that symbols are not finalized until - relaxation is complete. Cater for first relaxation pass having - bogus addresses. Use relax_marker to reliably determine whether a - symbol frag has been reached on the current pass. - -2001-06-07 H.J. Lu - - * configure.in: Move "mips-*-linux-gnu*" before "mips-*-gnu*". - * configure: Regenerate. - -2001-06-07 H.J. Lu - - * configure.in: Use MIPS_STABS_ELF for Linux/mips and remove - ecoff emulation. - * configure: Regenerate. - -2001-06-07 H.J. Lu - - * config/tc-mips.c (mips_pseudo_table): Add "extern" if - MIPS_STABS_ELF is defined. - -2001-06-06 Nick Clifton - - * as.c (show_usage): Remove L from listing options. It is not a - generic option. - -2001-06-06 Christian Groessler - - * config/tc-z8k.c: Removed many warnings by removing unused - variables and tagging unused parameters as such. - (md_begin): Fixed a typo (","instead of ";"). - (struct ctrl_table): Add parentheses to initialize array - correctly. - (struct flag_table): Likewise. - (struct intr_table): Likewise. - (struct table): Likewise. - (check_operand): "#if 0"'ed since it doesn't seem to be used. - -2001-06-06 Peter Jakubek - - * config/tc-m68k.c (md_show_usage): Add all supported ColdFire - options to list (e.g. m5206e, m5307, m5407). - -2001-06-06 Martin Schwidefsky - - * config/tc-s390.h (TC_FORCE_RELOCATION): Always emit relocations - BFD_RELOC_VTABLE_INHERIT and BFD_RELOC_VTABLE_ENTRY. - -2001-06-06 Alan Modra - - * config/tc-i386.c (md_assemble): Handle Pentium4 branch hints. - : Remove dead code. - -2001-06-06 Tracy Kuhrt - - * as.c (parse_args): Correct option name "listing-lhs-width2". - -2001-06-05 Nick Clifton - - * symbols.c (S_SET_EXTERNAL): Do not override a section symbol's - status. - -2001-05-30 Richard Henderson - - * read.c (emit_leb128_expr): Call md_cons_align. - -2001-05-28 Jeff Sturm - - * config/tc-sparc.c (md_apply_fix3): Handle BFD_RELOC_SPARC_UA16, - BFD_RELOC_SPARC_UA32 and BFD_RELOC_SPARC_UA64. - (tc_gen_reloc): Likewise. - (sparc_cons_align): Don't clear sparc_no_align_cons. - (cons_fix_new_sparc): Substitute BFD_RELOC_SPARC_UA{16|32|64} for - BFD_RELOC_{16|32|64} iff sparc_no_align_cons is set. - -2001-05-27 Alan Modra - - * write.c (relax_segment ): Check the section of a - symbol to determine whether it is absolute rather than comparing - its frag against zero_address_frag as listings play tricks with - frags. - - * config/tc-m68k.c (md_assemble): Ensure variable part of frag is - allocated in the same chunk as the fixed part. - -2001-05-26 Alan Modra - - * write.c (relax_segment ): Calculate growth using - addresses before stretch. Prevent repeated error messages. - From Peter Jakubek - Use as_bad_where and as_warn_where to pinpoint errors. - -2001-05-25 Alan Modra - - * symbols.c (resolve_symbol_value): Always set segment, even when - not finalizing symbol value. - - * config/obj-ieee.c (write_object_file): Set finalize_syms. - * config/obj-coff.c (write_object_file): Likewise. - * (size_section): Remove rs_space assert as fr_symbol is no longer - removed. - (fill_section): Likewise. - - * configure.in: Replace linuxoldld with linux*oldld. - * configure: Regenerate. - - From 2.11 branch 2001-03-30 Richard Henderson - * config/tc-i386.c (md_convert_frag): Don't die on local symbols - that have been finalized. - - * symbols.c (resolve_symbol_value): Clear sy_resolving before - taking exit_dont_set_value. - - * write.c (relax_segment ): Don't zap fr_symbol when - relaxing. - -2000-05-24 Tom Rix - - * config/obj-coff.c (add_lineno): xcoff allows negative line - numbers - * config/tc-ppc.c (ppc_stabx): fix generated symbol - -2001-05-24 Alan Modra - - * write.c (write_object_file): Set finalize_syms = 1 before - size_seg is called. - -2001-05-23 Thiemo Seufer - - * config/tc-mips.c (ISA_HAS_64BIT_REGS): Add ISA_MIPS64 as 64 bit - architecture, remove erraneous ISA_MIPS32. - (md_show_usage): Add MIPS r12k support. - (mips_cpu_info_table): Add MIPS r12k support. - -2001-05-22 Alan Modra - - * config/tc-arc.c (md_assemble): Use is_end_of_line instead of - testing for NULs. - - * symbols.c (resolve_symbol_value): Remove "finalize" param, - instead use finalize_syms directly. Don't treat expressions - specially with regard to finalize_syms. Update calls to self. - (resolve_local_symbol): Update call to resolve_symbol_value. - (S_GET_VALUE): Likewise. Return resolve_symbol_value if - !finalize_syms. - * symbols.h (resolve_symbol_value): Update prototype. - * config/obj-aout.c (obj_crawl_symbol_chain): Update call - to resolve_symbol_value. - * config/obj-bout.c (obj_crawl_symbol_chain): Likewise. - * config/obj-coff.c (do_relocs_for): Likewise. - (yank_symbols): Likewise. - (fixup_segment): Likewise. - * config/obj-vms.c (obj_crawl_symbol_chain): Likewise. - * config/tc-mips.c (md_convert_frag): Likewise. - * config/tc-ppc.c (ppc_frob_symbol): Likewise. - (ppc_fix_adjustable): Likewise. - * dwarf2dbg.c (dwarf2dbg_estimate_size_before_relax): Likewise. - (dwarf2dbg_convert_frag): Likewise. - * ehopt.c (eh_frame_estimate_size_before_relax): Likewise. - (eh_frame_convert_frag): Likewise. - * expr.c (make_expr_symbol): Likewise. - * write.c (adjust_reloc_syms): Likewise. - (write_object_file): Likewise. - (relax_segment): Likewise. - (fixup_segment): Likewise. - (finalize_syms): Init to zero, and update comment. - (write_object_file): Set finalize_syms to 1 rather than 2. - * doc/internals.texi (sy_value): Mention finalize_syms. - (S_GET_VALUE): Remove restriction on when S_GET_VALUE can be called. - - * config/tc-m68k.c (relaxable_symbol): Only treat external symbols - as relaxable if embedded system, make weak syms non-relaxable. - Move definition.. - (tc_m68k_fix_adjustable): ..so it can be used here. - (md_apply_fix_2): Sign extend without conditional. - - * config/tc-v850.c: Update copyright. - -2001-05-16 Jeff Johnston - - * cgen.c (gas_cgen_tc_gen_reloc): Changed error message when - howto entry is not found. - -2001-05-15 Alexandre Oliva - - * config/tc-mn10300.c (mn10300_force_relocation): Don't - optimize differences between symbols in code sections to - constants. - (mn10300_fix_adjustable): Don't adjust to section+offset - relocations pointing at symbols in code sections. - -2001-05-16 Alan Modra - - * config/tc-arc.c (md_assemble): Correct dwarf2_emit_insn param - for 8 byte insns. - * config/tc-i386.c (md_assemble): Call dwarf2_emit_insn before - opcodes are output rather than after. Delete insn_size. - * config/tc-v850.c (md_assemble): Similarly, but delete - total_insn_size. - -2001-05-14 Richard Henderson - - * ehopt.c (eh_frame_convert_frag): Fix missed subtype adjustment - last change. - -2001-05-14 Richard Henderson - - * ehopt.c (get_cie_info): Rename from eh_frame_code_alignment; - also collect whether to expect an FDE augmentation. - (check_eh_frame): Rewrite as a state machine. Track where in - an FDE we are located, skip any augmentation. - (eh_frame_estimate_size_before_relax): Get code alignment from - the fragment subtype. - (eh_frame_relax_frag, eh_frame_convert_frag): Likewise. - * read.c (emit_leb128_expr): Call check_eh_frame. - -2001-05-14 Alexandre Oliva - - * config/tc-mn10300.c (md_assemble): Anchor dwarf2 line info - before a relaxable insns. - -2001-05-13 Alexandre Oliva - - * config/tc-mn10300.c (tc_gen_reloc): Don't reject differences - between symbols if the base symbol is in the current section; - emit a PC-relative relocation instead. - -2001-05-12 Peter Targett - - * config/tc-arc.c: Update copyright and tidy source comments. - (md_pseudo_table): Add directive .cpu back as an alias for - .option. Add .file and .line for dwarf2 support. - (arc_mach_type): Make bfd_mach_arc_6 default. - (md_longopts): Add entry 'pre-v6' representing old command line - option when assembling for 'arc5' core versions. - (md_parse_option): Make OPTION_ARC same as OPTION_ARC6, for new - default behaviour. - (arc_code_symbol): Make symbol value for @h30 fixup expression - equal to O_constant. - (md_assemble): Call dwarf2_emit_insn. - Include "dwarf2dbg2.h". Formatting fixes throughout file. - * config/tc-arc.h (DWARF2_LINE_MIN_INSN_LENGTH): Define. - * doc/c-arc.texi (ARC_CORE_DEFAULT): Update to new default. - -2001-05-11 Jakub Jelinek - - * config/tc-ia64.c (special_linkonce_name): New. - (make_unw_section): Map .gnu.linkonce.t.FOO text section into - .gnu.linkonce.ia64unw{,i}.FOO. - (ia64_elf_section_type): Handle .gnu.linkonce.ia64unw{,i}.FOO. - (dot_endp): Add comment about it. - -2001-05-11 Nick Clifton - - * config/tc-arm.c (arm_handle_align): When truncating an aligned - block, ensure that the low order bits of the alignment are - preserved. - -2001-05-10 Alan Modra - - * config/obj-vms.c (obj_crawl_symbol_chain): Don't take address of - symbol_next. - - * config/tc-fr30.c (md_estimate_size_before_relax): Return size of - current variable part of frag. - * config/tc-m32r.c (md_estimate_size_before_relax): Likewise. - * config/tc-openrisc.c (md_estimate_size_before_relax): Likewise. - * config/tc-m68hc11.c (RELAX_STATE): Define. - (RELAX_LENGTH): Define. - (md_estimate_size_before_relax): Handle non-relaxable cases - separately from relaxable cases for clarity, and return correct - size for multi-pass relaxation. - * config/tc-tahoe.c (RELAX_LENGTH): Correct. - (md_estimate_size_before_relax): As for tc-m68hc11.c. - (md_convert_frag): Remove "length_code". - * config/tc-vax.c (RELAX_STATE): Define. - (RELAX_LENGTH): Define. - (md_relax_table): Add missing entry. - (md_estimate_size_before_relax): As for tc-m68hc11.c. - (md_convert_frag): Remove "length_code". - * config/tc-ns32k.c (md_estimate_size_before_relax): Simplify and - don't bother setting fr_var. Return correct size for multi-pass - relaxation. - * config/tc-v850.c (md_estimate_size_before_relax): Rewrite. - (md_convert_frag): Don't bother clearing fr_var. - (md_pseudo_table): Correct initialization. - * config/tc-h8500.c (md_convert_frag): Don't bother clearing fr_var. - (md_estimate_size_before_relax): No need to set fr_var. - * config/tc-mcore.c (md_convert_frag): Don't bother clearing fr_var. - (md_estimate_size_before_relax): No need to set fr_var. - -2001-05-09 Richard Henderson - - * config/tc-ia64.c (generate_unwind_image): Align the fragment - beginning a function's unwind info block. - -2001-05-09 Alexandre Oliva - - * config/tc-mn10300.c (md_apply_fix3): Accept PC-relative relocs. - -2001-05-08 Andreas Schwab - - * config/tc-m68k.c: Instead of replacing -1 by 64 in assignment to - fx_pcrel_adjust explicitly sign extend when reading it. - -2001-05-08 Alan Modra - - * config/tc-m68k.c (md_estimate_size_before_relax): Set fr_var - from md_relax_table, and combine some switch cases. - -2001-05-06 Alexandre Oliva - - * config/tc-mn10300.c (md_assemble): Subtract operand->shift - from offset in non-pcrel operands too. - -2001-05-06 Nick Clifton - - * config/tc-arm.h (MAX_MEM_FOR_RS_ALIGN_CODE): Define. - * config/tc-arm.c (arm_handle_align): Do not insert more than - MAX_MEM_FOR_RS_ALIGN_CODE bytes. - (arm_frag_align_code): Use MAX_MEM_FOR_RS_ALIGN_CODE. - -2001-05-03 Thiemo Seufer - - * Makefile.am (TARG_ENV_HFILES): Add te-hppa64.h and te-hppalinux64.h. - Run "make dep-am". - * Makefile.in: Regenerate. - * configure.in: Remove duplicate mips-*-ecoff* entry. - * configure: Regenerate. - - * config/obj-ecoff.c (obj_pseudo_table): Fix terminating entry. - (n_names): Cast away type mismatch. - (ecoff_sec_sym_ok_for_reloc): Add unused attribute. - (obj_ecoff_frob_symbol): Likewise. - * ecoff.c: (add_file): Add unused attribute. - (ecoff_directive_begin): Likewise. - (ecoff_directive_bend): Likewise. - (ecoff_directive_def): Likewise. - (ecoff_directive_dim): Likewise. - (ecoff_directive_scl): Likewise. - (ecoff_directive_size): Likewise. - (ecoff_directive_type): Likewise. - (ecoff_directive_tag): Likewise. - (ecoff_directive_val): Likewise. - (ecoff_directive_endef): Likewise. - (ecoff_directive_end): Likewise. - (ecoff_directive_ent): Likewise. - (ecoff_directive_extern): Likewise. - (ecoff_directive_file): Likewise. - (ecoff_directive_fmask): Likewise. - (ecoff_directive_frame): Likewise. - (ecoff_directive_mask): Likewise. - (ecoff_directive_loc): Likewise. - (mark_stabs): Likewise. - (ecoff_stab): Likewise. - (ecoff_frob_symbol): Cast away type mismatch. - (ecoff_padding_adjust): Likewise. - (ecoff_build_symbols): Likewise. - (ecoff_build_procs): Likewise. - (ecoff_build_aux): Likewise. - (ecoff_build_strings): Likewise. - (ecoff_build_fdr): Likewise. - (ecoff_build_debug): Likewise. - * itbl-ops.c (itbl_assemble): Variable initialization. - -2001-05-03 Alan Modra - - * config/tc-i386.c (i386_displacement): Call as_bad for bad GOTOFF - expressions rather than triggering an assert. - -2001-05-02 Johan Rydberg - - * config/tc-openrisc.c: New file. - * config/tc-openrisc.h: Likewise. - - * Makefile.am: Add OpenRISC target. - * Makefile.in: Regenerated. - - * configure.in (openrisc-*-*): Add target. - * configure: Regenerated. - -2001-05-02 Nick Clifton - - * config/tc-arm.c (arm_frag_align_code): Change error message to - more explanatory version. - -2001-04-29 Keith M Wesolowski - - * config/tc-mips.c (md_parse_option): Also accept - elf64-tradbigmips and elf64-tradlittlemips for OPTION_64. - -2001-04-27 David Mosberger - - * config/tc-ia64.c (dot_spillmem_p): Fix output_spill_?sprel_p() - argument passing order: predicate goes last, not first. - -2001-04-27 Sean McNeil - - * configure.in: Add arm-vxworks. - * configure: Regenerate. - -2001-04-26 Nick Clifton - - * config/tc-arm.c (arm_handle_align): New Function: Generate - no-op filled alignment frags. - (arm_frag_align_code): New Function: Create a code alignment frag. - (arm_init_frag): New Function: Initialse the target dependent - parts of a frag. - - * config/tc-arm.h (TC_FRAG_TYPE): Define. - (TC_FRAG_INIT): Define. - (HANDLE_ALIGN): Define. - (md_do_align): Define. - -2001-04-25 Nick Clifton - - * config/obj-coff.c (do_linenos_for): Check to see if the filename - symbol has been initialised before extracting its symbol index. - -2001-04-24 H.J. Lu - - * configure: Regenerated with the right version of autoconf. - -2001-04-24 Christian Groessler - - * config/tc-z8k.c (build_bytes): 12 and 16 bit displacements now - generate R_CALLR and R_REL16 relocations - -2000-04-20 Jason Eckhardt - - * config/tc-d10v.h (tc_frob_label): Update the symbol's frag - since frag_now can change after d10v_cleanup is called. - -2001-04-16 David O'Brien - - * configure.in: Add the em type for FreeBSD targets. - * configure: Regenerate. - -2001-04-14 Alexandre Oliva - - * struc-symbol.h (struct local_symbol): New TC_LOCAL_SYMFIELD_TYPE. - * symbols.c (local_symbol_convert): Call TC_LOCAL_SYMFIELD_CONVERT. - - * config/tc-mn10300.c (md_assemble): Simplify offset adjustment of - pc-relative relocations not placed at the end of the instruction. - -2001-04-13 Jim Wilson - - * tc-ia64.c (is_conditional_branch): Return true for br, brl, and br. - excluding br.i. - -2001-04-13 Jakub Jelinek - - * config/obj-elf.c (obj_elf_change_section): Add entsize argument, - handle SHF_MERGE and SHF_STRINGS. - (obj_elf_parse_section_letters): Set SHF_MERGE and SHF_STRINGS. - (obj_elf_section): Allow additional argument specifying entity size. - * write.c (adjust_reloc_syms): Keep relocations against local symbols - in SEC_MERGE sections. - -2001-04-12 Jason Merrill - - * dwarf2dbg.c (process_entries): Don't optimize redundant line notes. - -2001-04-12 Alexandre Oliva - - * expr.c (operand): Pass &c to md_parse_name(). - * config/tc-ia64.h, config/tc-ppc.h, config/tc-tic54x.h: Adjust. - -2001-04-07 Steven J. Hill - - * config/tc-mips.c: Support ELF64 for traditional MIPS targets. - - * Makefile.am: (TARG_ENV_HFILES): Add tc-mips.h. - * Makefile.in: Regenerated. - - * configure.in: Use traditional MIPS targets for Linux/MIPS. - * configure: Regenerated. - -2001-04-06 Alexandre Oliva - - * config/tc-mn10300.c (xr_registers): Added `pc'. - -2001-04-05 Alan Modra - - * configure.in: Add h8500-*-coff and h8500-*-rtems targets. - * configure: Regenerate. - - * config/tc-h8500.c (md_estimate_size_before_relax): Add missing - cases, and always return size based on current fr_subtype. - (md_begin): Move initialization of md_relax_table.. - (md_relax_table): ..to static initializer. Set rlx_length for - UNDEF_WORD_DISP cases. - * config/tc-w65.c (md_estimate_size_before_relax): Likewise. - (md_begin): Likewise. - (md_relax_table): Likewise. - * config/tc-mcore.c (md_estimate_size_before_relax): Likewise. - (md_relax_table): Set rlx_length for UNDEF_WORD_DISP cases. - Set rlx_backward and rlx_forward to zero for unused states. - * config/tc-sh.c (md_estimate_size_before_relax): Likewise. - (md_relax_table): Set rlx_length for UNDEF_WORD_DISP cases. - (UNCOND12, UNCOND32): Remove duplicate defines. - -2001-04-04 Hans-Peter Nilsson - - * config/tc-cris.c (md_estimate_size_before_relax) : Don't emit - 32-bit branch, just set fragP->fr_subtype. Set fragP->fr_var. - : Always set fragP->fr_var using md_cris_relax_table. - Add cases to cover all relax states. - (cris_insn_first_word_frag): New. - (md_assemble): Call cris_insn_first_word_frag to get the first - frag in an insn, not frag_more. Don't call dwarf2_emit_insn at - end. Drop variable insn_size. - (gen_bdap): Call cris_insn_first_word_frag, not frag_more. - (cris_sym_leading_underscore): Wrap first as_bad parameter in _(). - (cris_sym_no_leading_underscore, s_cris_file, s_cris_loc): Ditto. - - * write.c (write_object_file): Reset broken word state before - calling relax_seg. - -2001-03-31 Alan Modra - - * listing.c (listing_listing): Enable listing on EDICT_NOLIST_NEXT - for one line if not already enabled. - * cond.c (s_elseif): Correct conditional assembly listing. - (s_else): Likewise. - - * cond.c (s_endif): Correct handling of "if .. elseif .." trees. - Don't abort on NULL current_cframe. - -2001-03-30 Alan Modra - - * dwarf2dbg.c (dwarf2_directive_file): Fix warnings. - (dwarf2dbg_convert_frag): Pass `finalize_syms' to resolve_symbol_value. - * config/obj-aout.c (obj_crawl_symbol_chain): Likewise. - * config/obj-bout.c (obj_crawl_symbol_chain): Likewise. - * config/obj-coff.c (do_relocs_for): Likewise. - (yank_symbols): Likewise. - (fixup_segment): Likewise. - * config/tc-ppc.c (ppc_frob_symbol): Likewise. - (ppc_fix_adjustable): Likewise. - * config/tc-mips.c (md_convert_frag): Likewise. - * config/obj-vms.c (obj_crawl_symbol_chain): Likewise. - * ehopt.c (eh_frame_convert_frag): Likewise. - * expr.c (make_expr_symbol): Likewise. - - * frags.h (struct frag): Add last_fr_address. Reorder fields for - better packing. - * symbols.c (resolve_symbol_value): Don't fix expression values - until relaxation is complete. - (resolve_local_symbol): Pass `finalize_syms' to resolve_symbol_value. - (S_GET_VALUE): Likewise, and return unresolved expression value. - * write.c (finalize_syms): New. - (relax_and_size_seg): Split into.. - (relax_seg): New function, returns 1 if anything changed.. - (size_seg): And the remainder of relax_and_size_seg. - (fixup_segment): Arrange for final resolution of sym values. - (adjust_reloc_syms): Likewise. - (write_object_file): Likewise, and repeatedly call relax_seg until - nothing more changes. - (relax_segment): Return 1 if anything changed. Use correct types - for rs_org `target' and `after'. - * write.h (finalize_syms): Declare. - (relax_segment): Update prototype. - - * config/tc-sh.c (md_estimate_size_before_relax): Add extra - do-nothing cases to switch to avoid abort on a second relaxation - pass, and tidy code a little. - * config/tc-cris.c (md_estimate_size_before_relax): Likewise. - * config/tc-h8500.c (md_estimate_size_before_relax): Likewise. - * config/tc-w65.c (md_estimate_size_before_relax): Likewise. - * config/tc-i386.c (UNCOND_JUMP, COND_JUMP, COND_JUMP86): Decrement. - (md_relax_table): Remove first four unused entries. Increment - rlx_length by one throughout table, and update comments to suit. - (md_estimate_size_before_relax): Return size of current variable - part of frag to reflect reality when relaxing more than once. - * config/tc-mcore.c (COND12, UNCD12): Rename to DISP12 throughout. - (COND32, UNCD32): Rename to DISP32 throughout. - (UNDEF_WORD_DISP): Renumber to 3. - (md_estimate_size_before_relax): Add extra do-nothing cases. - * config/tc-mn10200.c (md_estimate_size_before_relax): Rewrite. - * config/tc-mn10300.c (md_estimate_size_before_relax): Rewrite. - * config/tc-ns32k.c (md_estimate_size_before_relax): Add cases to - handle word and dword branches. - -2001-03-29 Hans-Peter Nilsson - - * config/tc-cris.h (tc_fix_adjustable): Allow only - BFD_RELOC_CRIS_32_GOTREL of the PIC relocs. - * config/tc-cris.c (cris_get_pic_suffix): Correct reloc type in - example in comment to valid type. - -2001-03-28 H.J. Lu - - * read.c (equals): Set to local for COFF only if it hasn't been - defined before. - -2001-03-28 Alan Modra - - * config/tc-hppa.c (DEFAULT_LEVEL): Define. - (md_begin): Use it when setting default architecture. - -2001-03-27 Nick Papadonis - - * read.c (equals): (for COFF) default symbols to being local. - -2001-03-27 Hans-Peter Nilsson - - * configure.in (cris-*-*): Change default emulation to criself. - (cris-*-*aout*): New rule. - * configure: Regenerate. - -2001-03-26 Martin Schwidefsky - - * config/tc-s390.c (tc_s390_fix_adjustable): Add test for - BFD_RELOC_390_GOTENT. - * config/tc-s390.h (TC_RELOC_RTSYM_LOC_FIXUP): Add test for - BFD_RELOC_390_GOTENT. - -2001-03-26 Nick Clifton - - * config/tc-s390.h (TC_FORCE_RELOCATION): Define. - * config/tc-s390.c (s390_force_relocation): New function: Force - relocations for VTINHERIT relocs. - -2001-03-23 Stephane Carrez - - * doc/as.texinfo: Put @c man begin to generate the as man page. - When generating man, define all the variables. Re-organize some - options to obtain better indentation of man page. - * doc/Makefile.am (MANCONF, TEXI2POD, POD2MAN): New variable. - (as.1): Build from as.texinfo. - * doc/Makefile.in: Regenerate.Index: binutils/Makefile.am - -2001-03-25 Alan Modra - - * config/tc-i386.c (i386_scale): Accept an absolute expression for - scale factor, and return the end of the expression. - (i386_operand): Modify for above. - -2001-03-23 Nick Clifton - - * doc/as.texinfo: Document --listing-XXX command line switches. - Explain why listings behave differently when -pipe is used. - -2001-03-23 Richard Sandiford - - * write.c (fix_new_exp): Print an error if passed a register. - -2001-03-23 Hans-Peter Nilsson - - * config/tc-cris.c: Tweak attribution. Fix typos. PIC support. - (PIC_SUFFIX_CHAR): New macro. - (cris_get_pic_suffix, cris_get_pic_reloc_size): New functions. - (pic): New variable. - (md_longopts): New option --pic. - (OPTION_PIC): Define. - (md_estimate_size_before_relax): Tweak longish comment. - (md_create_long_jump): Make the long jumps generate ADD.D offset,PC. - (md_assemble): Handle a PIC relocation on prefix and normal - instruction operands. - : Handle - "complex" operand expressions. Call frag_more outside - gen_cond_branch_32 parameter list. - (cris_process_instruction): Handle PIC relocs on parsed - operand expressions. Validize PIC reloc sizes. - (get_autoinc_prefix_or_indir_op): Handle PIC suffix. - (gen_bdap): Handle "complex" operand expressions. - (gen_cond_branch_32): Use as_warn_where, not as_warn. Use - ADD.D offset,PC as jump instruction if generating PIC. Generate - error instead of crashing on complex expressions. - (cris_number_to_imm): Add segT parameter. All callers changed. - Use segT parameter, not now_seg, for segment of fixup. Handle - PCREL relocations but check that they are fully resolved. - (md_parse_option): Handle OPTION_PIC. - (tc_gen_reloc): Handle PIC relocs. - (md_show_usage): Update for --pic. - (md_apply_fix3): Renamed from md_apply_fix. - (md_pcrel_from): Accept emitting PCREL relocs when ELF. - (md_cris_force_relocation): Force relocation for PIC relocs. - - * config/tc-cris.h: Tweak attribution. - (MD_APPLY_FIX3): Define. - (IS_CRIS_PIC_RELOC): New macro. - (TC_RELOC_RTSYM_LOC_FIXUP): Define. - (tc_fix_adjustable): Don't adjust a globally visible symbol when - generating ELF. - (tc_frob_symbol): Avoid emitting undefined symbols. - -2001-03-20 Alan Modra - - * frags.h (struct frag): Add relax_marker. - * write.c (is_dnrange): Delete. - (relax_frag): Use correct types for `aim', `target', `address'. - Delete `offset', `was_address'. Test `relax_marker' instead of - using fragile (and slow) address test. - (relax_segment): Init and flip `relax_marker'. - -2001-03-19 Alan Modra - - * config/tc-i386.c (md_assemble ): Correct - used register name. - -2001-03-18 Stephane Carrez - - * config/tc-m68hc11.c (md_pseudo_table): Recognize xrefb to comply - with 'Motorola specification for assembly language input standard'. - -2001-03-17 Richard Henderson - - * dwarf2dbg.c (user_filenum, user_filenum_allocated): Remove. - (dwarf2_directive_loc): Don't use them. - (dwarf2_directive_file): Reject duplicate file definitions. - (get_filenum): Zero allocated memory. - (out_file_list): Complain about missing file definitions. - -2001-03-17 Alan Modra - - * read.c (do_org): Handle complex expressions. - * cgen.c (gas_cgen_finish_insn): Likewise. - -2001-03-15 David Mosberger - - * config/tc-ia64.c (md): New member keep_pending_output. - (ia64_flush_pending_output): Flush only if md.keep_pending_output - is not set. - (dot_xdata): Turn on md.keep_pending_output for the duration of - this function. - (dot_xfloat_cons): Ditto. - (dot_xstringer): Ditto. - (dot_xdata_ua): Ditto. - (dot_xfloat_cons_ua): Ditto. - -2001-03-15 Jim Wilson - - * config/tc-ia64.c (ia64_unrecognized_line, case '['): Add local - label support. - -2001-03-15 Alexandre Oliva - - * config/tc-sh.c (parse_reg): Match capital MACH and MACL. - -2001-03-15 DJ Delorie - - * stabs.c (s_stab_generic): Don't corrupt the notes obstack by - blindly freeing string if it isn't at the top of the obstack. - -2001-03-13 Alan Modra - - * config/tc-i386.c (RELOC_ENUM): Define. Use throughout file. - (NUM_FLAG_CODE): Define. - (lex_got): New function. - (got_reloc): New global var. - (x86_cons_fix_new): New function. - (x86_cons): New function. - (i386_immediate): Use lex_got here, replacing inline code. Change - "ignoring junk.." error message to "junk.." - (i386_displacement): Likewise. - * config/tc-i386.h (TC_PARSE_CONS_EXPRESSION): Define. - (x86_cons): Declare. - (TC_CONS_FIX_NEW): Define. - (x86_cons_fix_new): Declare. - -2001-03-12 Nick Clifton - - * config/tc-arm.c (md_begin): Always set machine type based on - cpu_variant. - -2001-03-07 Alan Modra - - * config/tc-i386.c (struct _i386_insn): Rename disp_reloc to reloc. - (md_assemble) : Use correct field of i.op[] - union. - : Use correct i.disp_reloc[]. - : Likewise. - -2001-03-06 Nick Clifton - - * config/tc-arm.c (md_apply_fix3): Clear bit zero of offset in - BLX(1) instruction. - -2001-03-06 Igor Shevlyakov - - * config/tc-m68k.c : Add 5407 to archs[] table. - (HAVE_LONG_BRANCH): Add mcf5407. - (select_control_regs): Recognize 5407. - -2001-03-02 Dave Brolley - - * config/tc-m32r.c (expand_debug_syms): Call frag_align_code rather - than m32r_do_align. - -2001-03-02 Richard Sandiford - - * config/atof-ieee.c (TC_LARGEST_EXPONENT_IS_NORMAL): New macro. - (gen_to_words): Print warnings if NaNs are found and the target CPU - does not support them. Allow largest exponent to be used in normal - numbers if TC_LARGEST_EXPONENT_IS_NORMAL evaluates to true. - -2001-02-28 Andreas Jaeger , Bo Thorsen - - * config/tc-i386.c (tc_gen_reloc): Remove ugly hack which is not needed - anymore since we use bfd_elf_generic_reloc now. - (md_apply_fix3): Only apply hack for partial_inplace if not using RELA. - -2001-02-27 Alan Modra - - * configure.in (BFD_VERSION): New. - (AM_INIT_AUTOMAKE): Use $BFD_VERSION. - * configure: Regenerate. - * Makefile.am: Run "make dep-am" - * Makefile.in: Regenerate. - * doc/Makefile.in: Regenerate. - -2001-02-26 Mark Elbrecht - - * config/obj-coff.c [BFD_ASSEMBLER] (obj_coff_section): Set - SEC_NEVER_LOAD when the 'n' flag is used. - Add SEC_NEVER_LOAD to matchflags. - -2001-02-24 Stephane Carrez - - * symbols.c (decode_local_label_name): Initialize message_format - only when an error is reported (perf pb due to I18N). - -2001-02-23 H.J. Lu - - * dwarf2dbg.c (dwarf2_directive_file): Call s_app_file (0) if - BFD_ASSEMBLER is not defined. - -2001-02-23 Richard Sandiford - - * config/tc-mn10300.c (md_apply_fix3): Don't mark a fixup as - done if it's against a symbol. - -2001-02-22 Timothy Wall - - * config/tc-ia64.c (ia64_target_format): Return ia64-aix-specific - target formats if applicable. - * config/te-ia64aix.h: New. Configuration for AIX5 on IA-64. - * Makefile.am (TARG_ENV_HFILES): Added config/te-ia64aix.h. - * Makefile.in: Regenerated. - * configure.in: Added configuration for ia64-*-aix*. - * configure: Regenerated. - -2001-02-21 David Mosberger - - * config/tc-ia64.c (enum operand_match_result): New type. - (operand_match): Change return type to operand_match_result. - Fix all returns appropriately, adding support for returning the - out-of-range result. - (parse_operands): New locals result, error_pos, out_of_range_pos, - curr_out_of_range_pos. Rewrite operand matching loop to give better - error messages. - -2001-02-21 David Mosberger - - * config/tc-ia64.c (struct unwind): Add member "prologue_count". - (dot_proc): Clear unwind.prologue_count to zero. - (dot_prologue): Increment unwind.prologue_count. - (dot_restore): If second operand is omitted, use - unwind.prologue_count -1 for "ecount" (# of additional regions to - pop). Decrement unwind.prologue_count by number of regions - popped. - -2001-02-21 Nick Clifton - - * doc/as.texinfo (Section): Note that some flags to the COFF - version of .section remove attributes rather than setting them. - -2001-02-20 Kazu Hirata - - * config/tc-pdp11.c: Fix formatting. - * config/tc-pdp11.h: Likewise. - -2001-02-20 Bo Thorsen - - * config/tc-i386.c (tc_i386_fix_adjustable): Fix GOTPCREL GOT - entry. - -2001-02-18 David O'Brien - - * configure.in (cpu_type, arch): Add a generic FreeBSD specification as - all FreeBSD platforms should look the same at this level. - * configure: Rebuilt. - * config/tc-i386.c: Add support for old FreeBSD a.out hosts. - -2001-02-18 lars brinkhoff - - * Makefile.am: Add PDP-11 target. - * configure.in: Likewise. - * config/tc-pdp11.c: New file. - * config/tc-pdp11.h: New file. - * doc/Makefile.am: Add PDP-11 documentation. - * doc/all.texi: Likewise. - * doc/as.texinfo: Likewise. - * doc/c-pdp11.texi: New file. - -2001-02-16 matthew green - - * cgen.c (gas_cgen_md_apply_fix3): Support BFD_RELOC_64. - -2001-02-13 Jim Wilson - - * config/tc-ia64.c (operand_match, case TAG13): Make a BFD_RELOC_UNUSED - reloc instead of a 0 reloc. - (md_apply_fix3): Check for BFD_RELOC_UNUSED instead of 0, and mark it - as done. - * config/tc-ia64.h (TC_RELOC_RTSYM_LOC_FIXUP): Likewise. - -2001-02-13 Ian Lance Taylor - - * write.c (is_dnrange): Stop as soon as the address becomes - larger. - (relax_frag): Add segment parameter. Only call symbol_get_frag - once. Only call is_dnrange if the symbol is in the same segment, - and the symbol address is larger. - (relax_segment): Pass segment to md_relax_frag and relax_frag. - * write.h (relax_frag): Update declaration. - * config/tc-fr30.c (fr30_relax_frag): Add segment parameter. Pass - it to relax_frag. - * config/tc-m32r.c (m32r_relax_frag): Likewise. - * config/tc-m32r.h (md_relax_frag): Add segment parameter. - (m32r_relax_frag): Update declaration. - * config/tc-mips.h (md_relax_frag): Add segment parameter. - * config/tc-tic54x.h (md_relax_frag): Likewise. - * doc/internals.texi (CPU backend): Update documentation for - md_relax_frag. - -2001-02-13 Alan Modra - - * doc/c-i386.texi (i386-Arch): Add "jumps"/"nojumps" blurb. - Mention effect of < 386 architectures on jump promotion. - (i386-Jumps): xref above. Don't assume long disp is 32 bits. - - * config/tc-i386.c (no_cond_jump_promotion): New. - (set_cpu_arch): Parse "jumps" arch modifier. - (insn_size): Modify usage comment. - (ENCODE_RELAX_STATE): Reformat and protect macro arg. - (SIZE_FROM_RELAX_STATE): Rename to DISP_SIZE_FROM_RELAX_STATE. - (TYPE_FROM_RELAX_STATE): New define. - (UNCOND_JUMP, COND_JUMP): Renumber. - (md_relax_table): Reorder to suit. - (COND_JUMP86): New define. - (md_relax_table): Handle COND_JUMP86 cases. Add a few comments. - (md_assemble): Create frag var for jumps of max size, encode relax - state for COND_JUMP86. - (md_estimate_size_before_relax): Handle COND_JUMP86 cases, and - leave conditional jumps small if no_cond_jump_promotion. - (md_convert_frag): Likewise. - - * expr.c (operator): Don't bump input_line_pointer for two char - operators. Instead return operator size via new param num_chars. - (expr): Use above to parse multi-char operators correctly. - -2001-02-12 Jan Hubicka - - * config/tc-i386.c (i386_displacement): Fix handling of - BFD_RELOC_X86_64_GOTPCREL. - (i386_validate_fix): Likewise. - -2001-02-12 Philip Blundell - - * config/tc-arm.c (do_ldst): Improve warnings for unpredictable - ldrt/strt instructions. - -2001-02-11 Maciej W. Rozycki - - * config/tc-mips.c (macro): For M_LA_AB emit a - BFD_RELOC_MIPS_CALL16 relocation or a - BFD_RELOC_MIPS_CALL_HI16/BFD_RELOC_MIPS_CALL_LO16 pair instead of - BFD_RELOC_MIPS_GOT16 and - BFD_RELOC_MIPS_GOT_HI16/BFD_RELOC_MIPS_GOT_LO16, respectively for - loading the jump register when generating SVR4_PIC code. - -2001-02-10 Chris Demetriou - - * configure.in: Make 'mipself' and 'mipsecoff' emulations - map to MIPS-specific files, as they used to do before the - change on 2000-05-21. - * configure: Regerate. - -2001-02-10 Chris Demetriou - - * config/tc-mips.c (md_parse_option): Don't try to compile - ELF-only option code if not ELF. - -2001-02-08 David Mosberger - - * config/tc-ia64.h (md_elf_section_type): New macro. - (ELF_TC_SPECIAL_SECTIONS): Drop .IA_64.unwind and .IA_64.unwind_info - (they're now handled via ia64_elf_section_type. - - * config/tc-ia64.c (unwind): New members saved_text_seg, - saved_text_subseg, and force_unwind_entry. - (optimize_unw_records): New function to optimize away unnecessary - unwind directives. - (ia64_elf_section_type): New function. - (output_unw_records): Generate unwind info only if the size is - non-zero or if it's forced for some other reason (e.g., - handlerdata or a personality routine). - (generate_unwind_image): Don't switch back to previous - section---stay inside the unwind info section instead so that - handlerdata that may follow goes into the right place. - (dot_handlerdata): Force generation of unwind entry and save the - current active text segment before generating unwind image. - (dot_unwentry): Force generation of unwind entry. - (dot_personality): Ditto. - (dot_endp): Generate unwind table entry only if there is - some unwind info or the unwind entry was forced. - - * config/tc-ia64.c (make_unw_section_name): New macro to form - unwind section name. - (generate_unwind_image): Add "text_name" argument. Use it to - form unwind section name. - (dot_handlerdata): Determine current segment (section) name and - pass it to generate_unwind_image(). - (dot_endp): Determine current segment (section) name and use - it to determine the appropriate unwind section name. - (ia64_md_do_align): Add missing ATTRIBUTE_UNUSED declarations to - n, fill, and max arguments. - -2001-02-09 Schwidefsky - - * Makefile.am: Add linux target for S/390. - * configure.in: Likewise. - * config/tc-s390.c: New file. - * config/tc-s390.h: New file. - -2001-02-09 Alexandre Oliva - - * config/tc-sh.c (md_pseudo_table): Add uaquad. Use s_uacons for - 2byte, 4byte and 8byte. - -2001-02-08 Alan Modra - - * config/tc-hppa.c (pa_build_unwind_subspace): Don't call - md_number_to_chars with size > sizeof (valueT). - -2001-02-06 H.J. Lu - - * config/tc-ia64.h (TC_RELOC_RTSYM_LOC_FIXUP): Do fixup if - there is no relocation. - -2001-02-06 H.J. Lu - - * config/tc-ia64.h (TC_RELOC_RTSYM_LOC_FIXUP): New. Defined. - - * config/tc-ia64.c (md_parse_option): Only accept the valid - ia64 options on "-axxx". - -2001-02-05 Jim Wilson - - * config/tc-ia64.c (errata_nop_necessary_p): Return 0 instead of - aborting for invalid operands. - -2001-02-06 Alan Modra - - * config/tc-hppa.c (fix_new_hppa): Pass in unwind directly rather - than via pointer. Update all callers. - (UNWIND_LOW32): Define. - (UNWIND_HIGH32): Define. - (pa_build_unwind_subspace): Use the above macros instead of dumping - bitfields directly. Call frag_more once rather than multiple times. - (md_assemble): Use UNWIND_LOW32. - (pa_entry): Likewise - (pa_procend): Likewise. - (process_exit): Use UNWIND_HIGH32. - -2001-02-04 Stephane Carrez - - * config/tc-m68hc11.h (LISTING_HEADER): Use m68hc11_listing_header - function to select the header according to the cpu. - (md_after_pass_hook, md_do_align): Remove. - (md_cleanup, m68hc11_cleanup): Remove. - (md_pcrel_from_section): Declare. - * config/tc-m68hc11.c (build_dbranch_insn): Remove insn_size. - (build_jump_insn, build_insn): Likewise. - (m68hc11_listing_header): New function. - (m68hc11_cleanup): Remove. - -2001-02-02 Stephane Carrez - - * config/tc-m68hc11.c (relaxable_symbol): Relax externally visible - symbols because there is no support for shared libraries and these - symbols can't be overridden (unless they are weak). - -2001-02-01 Momchil Velikov - - * dwarf2dbg.c (out_debug_abbrev): Terminate the abbreviations - for the compilation unit with a zero byte. - -2001-01-30 Alan Modra - - * config/tc-hppa.c (pa_ip): Support 12 bit branches to absolute - destinations. Correct range check for 17 and 22 bit branches. - -2001-01-25 Nick Clifton - - * config/tc-m68k.c (tc_gen_reloc): Do not abort if tcbit is - still set. Issue an error message instead. - (md_estimate_size_before_relax): Delete unused variable - 'buffer_address'. Fixup parentheses around if statement. - -2001-01-23 Kazu Hirata - - * as.c: Fix formatting. - * ehopt.c: Likewise. - * messages.c: Likewise. - * stabs.c: Likewise. - * symbols.c: Likewise. - -2001-01-23 Ben Elliston - - * config/tc-m32r.c (m32r_handle_align): Declare type of fragp. - -2001-01-22 Kazu Hirata - - * config/tc-alpha.c: Fix formatting. - -2001-01-19 Kazu Hirata - - * config/tc-alpha.c: Fix formatting. - -2001-01-18 Kazu Hirata - - * config/tc-alpha.c: Fix formatting. - -2001-01-18 Nick Clifton - - * config/tc-arm.c (ldm_flags): Remove redundant bit from "fa" and - "da" flags. - (stm_flags): Remove redundant bit from "ed" and "da" flags. - -2001-01-18 Alexandre Oliva - - * configure.in (cpu_type, arch): Match i386 too. - * configure: Rebuilt. - -2001-01-16 Kazu Hirata - - * config/tc-i386.c: Fix formatting. - -2001-01-16 Alan Modra - - * config/tc-hppa.c (tc_gen_reloc): Use SEGREL32 instead of DIR32 - relocs for .PARISC.unwind section. - - * config/tc-hppa.c (pa_build_unwind_subspace): Build unwind - depending on section flags, not just for .text. - -2001-01-15 Jim Wilson - - * config/tc-ia64.c (ia64_flush_insns): Handle unwind directives - not immediately followed by an instruction. - -2001-01-15 Kazu Hirata - - * config/tc-m68hc11.c: Fix formatting. - -2001-01-15 Nick Clifton - - * symbols.c (colon): Change 'already defined symbol' from a - fatal error to an ordinary error. There is no reason why this - error should be fatal. - - * message.c (as_fatal): Delete output file, if one has been - created. - -2001-01-14 Alan Modra - - * config/tc-hppa.h (TARGET_FORMAT): Add hppa-linux variants. - -2001-01-14 Kazu Hirata - - * config/tc-alpha.c: Fix formatting. - * config/tc-arc.c: Likewise. - * config/tc-arc.h: Likewise. - * config/tc-d10v.c: Likewise. - * config/tc-i370.c: Likewise. - * config/tc-i386.c: Likewise. - * config/tc-i960.c: Likewise. - * config/tc-m68k.c: Likewise. - * config/tc-ppc.c: Likewise. - * config/tc-sparc.c: Likewise. - * config/tc-tahoe.c: Likewise. - * config/tc-vax.c: Likewise. - - * config/tc-arc.c: Fix formatting. - - * config/tc-arc.c: Fix formatting. - -2001-01-14 Alan Modra - - * config/tc-hppa.c (pa_build_unwind_subspace): Use SEGREL32 for - both 32 and 64 bit ELF. - - * config/tc-hppa.c (pa_ip): Store `a' flag in bit zero of operand - and don't bother storing `m' for "ce" completer. Tidy handling of - 'J' and 'K' operands to suit. Handle '<' and '>' operands. - -2001-01-14 Jan Hubicka - - * config/tc-i386.h (TARGET_MACH): New macro. - (i386_mach): Declare. - * config/tc-i386.c (i386_mach): New function. - -2001-01-13 Philip Blundell - - * doc/as.texinfo: Fix spelling and cross-references. - - * doc/c-arm.texi: Fix typos. Say that `;' is a line separator - character for all systems, not just GNU/Linux. Make it explicit - that `-k' doesn't affect code generation, just ELF flags. - -2001-01-13 Jan Hubicka - - * config/tc-i386.c (md_assemble): Check cpu_flags even for nullary - instructions. - -2001-01-12 Frank Ch. Eigler - - * cgen.c (gas_cgen_finish_insn): Call dwarf2_emit_insn. - -2001-01-12 Nick Clifton - - * as.c (print_args): Update copyright date to 2001. - -2001-01-12 Peter Targett - - * doc/c-arc.texi: New file. - Some sections to be expanded. - -2001-01-12 Alan Modra - - * config/tc-i386.c (md_longopts): Recognize "--64" only for ELF. - (md_parse_option): Always accept "--32". - -2001-01-11 Peter Targett - - * as.h (TC_ARC): Ensure struc-symbol.h included. - * as.c (dwarf2dbg.h): Include to remove implicit declaration - warnings. - * struc-symbol.h (SYMBOLS_NEED_BACKPOINTERS): Define. - (TARGET_SYMBOL_FIELDS) added. - - * doc/Makefile.am (CPU_DOCS): Added c-arc.texi. - * doc/c-arc.texi: New file. - Some sections to be expanded. - * doc/as.texinfo: Update command-line options. - Removed outdated text for ARC dependant features, instead include - text from above file. - - * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): Define local flag. - (TARGET_SYMBOL_FIELDS): Alias to previous definition. - (targ-cpu.h) header. - * config/tc-arc.h: - * config/tc-arc.c: New updated configuration for - ARC, including selection of core variants, and extensibility of - instructions, registers etc. through directives. - - * config/tc-arc.c (arc_extinst): Minor corrections for - error messages. - (arc_common) Likewise. Make alignment argument optional for local - symbols also, with default of zero. - -2001-01-11 Stephane Carrez - - * config/tc-m68hc11.c (md_estimate_size_before_relax): Fix - STATE_INDEXED_OFFSET when the symbol is undefined (16-bit offset). - (build_indexed_byte): Don't relax indexed byte, use 16-bit offset - and fix_new_exp() instead. - (md_convert_frag): For indexed post byte use the symbol value - rather than the displacement. - (md_relax_table): Fix indexed offset relax. - -2001-01-11 Stephane Carrez - - * config/tc-m68hc11.c (md_estimate_size_before_relax):Don't - relax weak symbols. - (relaxable_symbol): New function. - -2001-01-11 Andreas Jaeger - - * config/tc-i386.h (TC_RELOC_GLOBAL_OFFSET_TABLE): Removed, it's - not used anywhere. - -2001-01-10 Nick Clifton - - * config/tc-arm.c (arm_fix_adjustable): Define for OBJ_COFF. - * config/tc-arm.h (obj_fix_adjustable): Define for OBJ_COFF - -2001-01-10 Nick Clifton - - * symbols.c (DOLLAR_LABEL_CHAR): New constant - the magic - character used to dollar local symbols. - (LOCAL_LABEL_CHAR): New constant - the magic character used to - local label symbols. - (dollar_label_name): Use DOLLAR_LABEL_CHAR. - (fb_label_name): Prefix local labels with LOCAL_LABEL_PREFIX, - if defined. - Use LOCAL_LABEL_CHAR. - (decode_local_label_name): Skip LOCAL_LABEL_PREFIX. - Use DOLLAR_LABEL_CHAR and LOCAL_LABEL_CHAR. - (S_IS_LOCAL): Use DOLLAR_LABEL_CHAR and LOCAL_LABEL_CHAR. - -2001-01-08 Bo Thorsen - - * config/tc-i386.c (i386_immediate, i386_displacement): - GOTPCREL check fix. - -2001-01-07 Ian Lance Taylor - - * doc/c-i386.texi (i386-Arch): Remove spaces incorrectly inserted - in last change. - -2001-01-07 Philip Blundell - - * doc/as.texinfo (Bug Reporting): Update email address for - reports. - * README: Likewise. - -2001-01-06 Jan Hubicka - - * configure.in: Define DEFAULT_ARCH for i386. - * config/tc-i386.c (md_assemble): Return after the error message; - move testing for 64bit operands to proper place. - -2001-01-06 Jan Hubicka , Andreas Jaeger - - * doc/as.texinfo: Document '#' as comment character for i386 and - x86_64. Add AMD x86-64 into menu of machine dependent information. - - * doc/c-i386.texi: Document x86_64 extensions. - -2001-01-05 Jan Hubicka - - * config/tc-i386.c (md_assemble): Handle third byte of the opcode as prefix. - -2001-01-04 Jan Hubicka - - * config/tc-i386.c (cpu_arch): Add Pentium4 and modify sledgehammer entry. - * NEWS: Add note about Pentium4 support. - -2001-01-04 Jan Hubicka - - * config/tc-i387.c (pi, pte, pt): Update. - (type_names): Add new types. - -2001-01-03 Jan Hubicka - - * config/tc-i386.h (CpuK6, CpuAthlon, CpuSledgehammer, CpuMMX, Cpu3dnow, - CpuUnknown): Renumber - (CpuP4, CpuSSE2): New. - (CpuUnknownFlags): Add CpuP4 and CpuSSE2 - -2001-01-03 Philip Blundell - - * config/tc-alpha.c (alpha_force_relocation): Handle vtable - relocs. - (alpha_fix_adjustable): Likewise. - (md_apply_fix): Likewise. - -2000-12-31 H.J. Lu - - * listing.c (listing_message): Allocate string only if it is - used. - - * configure: Rebuild. - -2000-12-31 Hans-Peter Nilsson - - * doc/internals.texi (Relaxing with a table) : - Point out caveats with generating fixups for the opcode in a frag. - -2000-12-30 Jan Hubicka - - * configure.in: Add support for x86_64 and x86_64-*-linux-gnu* - * NEWS: Add x86_64. - -2000-12-29 H.J. Lu - - * listing.c (calc_hex): Print the variable part only if the - fragment type is rs_fill. - -2000-12-29 Hans-Peter Nilsson - - * doc/internals.texi (tc_conditional_pseudoop, - TC_LINKRELAX_FIXUP): Fix typos. - -2000-12-28 Richard Henderson - - * write.c (subsegs_finish): Fix thinko last change -- don't - "optimize" the alignment == 0 case. - -2000-12-28 Richard Henderson - - * as.h (rs_align_test): New. - * frags.c (NOP_OPCODE): Move default from read.c. - (MAX_MEM_FOR_RS_ALIGN_CODE): New default. - (frag_align_code): New. - * frags.h (frag_align_code): Declare. - * read.c (NOP_OPCODE): Remove. - (do_align): Use frag_align_code. - * write.c (NOP_OPCODE): Remove. - (get_recorded_alignment): New. - (cvt_frag_to_fill): Handle rs_align_test. - (relax_segment): Likewise. - (subsegs_finish): Align last subseg in section to the - section alignment. Use frag_align_code. - * write.h (get_recorded_alignment): Declare. - * config/obj-coff.c (size_section): Handle rs_align_test. - (fill_section, fixup_mdeps): Likewise. - (write_object_file): Use frag_align_code. - - * config/tc-alpha.c (alpha_align): Use frag_align_code. - (alpha_handle_align): New. - * config/tc-alpha.h (HANDLE_ALIGN): New. - (MAX_MEM_FOR_RS_ALIGN_CODE): New. - - * config/tc-i386.h (md_do_align): Use frag_align_code. - (MAX_MEM_FOR_RS_ALIGN_CODE): New. - - * config/tc-ia64.c (ia64_md_do_align): Don't do code alignment. - (ia64_handle_align): New. - * config/tc-ia64.h (HANDLE_ALIGN): New. - (MAX_MEM_FOR_RS_ALIGN_CODE): New. - - * config/tc-m32r.c (m32r_do_align): Remove. - (m32r_handle_align): New. - (fill_insn): Use frag_align_code. - * config/tc-m32r.h (md_do_align): Remove. - (HANDLE_ALIGN, MAX_MEM_FOR_RS_ALIGN_CODE): New. - * config/tc-m88k.c, config/tc-m88k.h: Similarly. - * config/tc-mips.c, config/tc-mips.h: Similarly. - - * config/tc-sh.c (sh_cons_align): Use rs_align_test. - (sh_handle_align): Likewise. Handle rs_align_code. - (sh_do_align): Remove. - * config/tc-sh.h (md_do_align): Remove. - (MAX_MEM_FOR_RS_ALIGN_CODE): New. - - * config/tc-sparc.c (sparc_cons_align): Use rs_align_test. - (sparc_handle_align): Likewise. Handle rs_align_code. - * config/tc-sparc.h (md_do_align): Remove. - (MAX_MEM_FOR_RS_ALIGN_CODE): New. - -2000-12-22 DJ Delorie - - * config/tc-d10v.c (md_assemble): set prev_seg and prev_subseg - when we assemble the first half of a pair. - -2000-12-22 H.J. Lu - - * config/tc-i386.c (reloc): Update the macro for non-bfd - assembler. - (BFD_RELOC_X86_64_GOTPCREL): Set to 0 for non-bfd assembler. - -2000-12-22 H.J. Lu - - * dwarf2dbg.c (dwarf2_finish): Remove #if BFD_ASSEMBLER. - -2000-12-20 Jan Hubicka - - * config/tc-i386.h (i386_target_format): Define even for ELFs. - (QWORD_MNEM_SUFFIX): New macro. - (CpuK6,CpuAthlon,CpuSledgehammer, Cpu64, CpuNo64, CpuUnknownFlags): - New macros - (CpuMMX,CpuSSE,Cpu3dnow, CpuUnknown): Renumber. - (IgnoreSize, DefaultSize, No_?Suf, FWait, IsString, regKludge, IsPrefix, - ImmExt): Renumber. - (Size64, No_qSuf, NoRex64, Rex64): New macros. - (Reg64, Imm32S, Imm64, Disp32S, Disp64): New macros. - (Imm8, Imm8S, Imm16, Imm32, Imm1, BaseIndex, Disp8, Disp16, Disp32, - InOutPortReg,ShiftCount, Control, Debug, Test, FloatReg, FloatAcc, - SReg2, SReg3, Acc, JumpAbsolute, RegMMX, RegXMM, EsSeg, InvMem): - Renumber. - (Reg, WordReg): Add Reg64. - (Imm): Add Imm32S and Imm64. - (EncImm): New. - (Disp): Add Disp64 and Disp32S. - (AnyMem): Add Disp32S. - (RegRex, RegRex64): New macros. - (rex_byte): New type. - * config/tc-i386.c (set_16bit_code_flag): Kill. - (fits_in_unsigned_long, fits_in_signed_long): New functions. - (reloc): New parameter "signed"; support x86_64. - (set_code_flag): New. - (DEFAULT_ARCH): New macro; default to "i386". - (default_arch): New static variable. - (struct _i386_insn): New fields Operand_PCrel; rex. - (flag_16bit_code): Kill; All tests replaced to "flag_code == CODE_64BIT" - (flag_code): New enum and static variable. - (use_rela_relocations): New static variable. - (flag_code_names): New static variable. - (cpu_arch_flags): Default to CpuUnknownFlags|CpuNo64. - (cpu_arch): Add "sledgehammer"; Add CPUAthlon to Athlon and CpuK6 to - K6 and Athlon. - (i386_align_code): Return plain "nop" for x86_64. - (mode_from_disp_size): Support Disp32S. - (smallest_imm_type): Support Imm32S and Imm64. - (offset_in_range): Support size of 8. - (set_cpu_arch): Do not clobber to Cpu64/CpuNo64. - (md_pseudo_table): Add "code64"; use set_code_flat. - (md_begin): Emit sane error message on hash failure. - (tc_i386_fix_adjustable): Support x86_64 relocations. - (md_assemble): Support QWORD_MNEM_SUFFIX, REX registers, - instructions supported on particular arch just partially, - output of 64bit immediates, handling of Imm32S and Disp32S type. - (i386_immedaite): Support x86_64 relocations; support 64bit constants. - (i386_displacement): Likewise. - (i386_index_check): Cleanup; support 64bit addresses. - (md_apply_fix3): Support x86_64 relocation and rela. - (md_longopts): Add "32" and "64". - (md_parse_option): Add OPTION_32 and OPTION_64. - (i386_target_format): Call even for ELFs; choose between - elf64-x86-64 and elf32-i386. - (i386_validate_fix): Refuse GOTOFF in 64bit mode. - (tc_gen_reloc): Support rela relocations and x86_64. - (intel_e09_1): Support QWORD. - -2000-12-15 Diego Novillo - - * config/tc-i386.c (intel_e09_1): Only flag as a memory operand if - it's not an offset expression. - (intel_e10_1): Ditto. Also, if the operand is an offset expression, - keep the braces '[' and ']' in the output string. - (intel_e11): Ditto. Also remove comparison intel_parser.op_modifier - != FLAT. There is no such op_modifier. - -2000-12-14 Michael Sokolov - - * dwarf2dbg.c: If we don't have , try including - if we have it. - -2000-12-13 Kazu Hirata - - * as.h: Fix formatting. - * cgen.h: Likewise. - * dwarf2dbg.c: Likewise. - * input-scrub.c: Likewise. - * read.h: Likewise. - -2000-12-13 Mark Elbrecht - - * configure.in (i386-*-msdosdjgpp): Set bfd_gas to yes. - configure: Regenerate. - -2000-12-13 Michael Sokolov - - * dwarf2dbg.c: #include only if it exists. - -2000-12-13 Rodney Brown - - * config/tc-hppa.c (pa_ip): Correct CHECK_FIELD typo. - (md_apply_fix): Here too. - -2000-12-12 Jim Wilson - - * config/tc-ia64.h (ia64_init): Add prototype. - -2000-12-12 H.J. Lu - - * dwarf2dbg.c: Enabled only if BFD_ASSEMBLER is defined. - - * read.h (outputting_stabs_line_debug): Change it to int. - * stabs.c (outputting_stabs_line_debug): Likewise. - -2000-12-12 Geoffrey Keating - - * config/obj-bout.c (obj_crawl_symbol_chain): Don't take - the address of a function result. - -2000-12-12 Franz Sirl - - * config/tc-ppc.c (md_pseudo_table): Add .file and .loc. - (md_assemble): Call dwarf2_emit_insn. - (shlib): Fix typo SHILB -> SHLIB. - (md_parse_option): Likewise. - (ppc_elf_validate_fix): Likewise: - * config/tc-ppc.h (DWARF2_LINE_MIN_INSN_LENGTH): New. - -2000-12-12 Nick Clifton - - * cgen.h: Fix formatting. - * input-scrub.c: Fix formatting. - * macro.c: Fix formatting. - * config/tc-mips.c: Fix formatting. - * doc/c-mips.texi: Fix formatting. - -2000-12-11 Jan hubicka - - * config/tc-i386.c (md_assemble): Refuse 's' and 'l' suffixes in the intel - mode; convert 'd' suffix to 's' or 'l'; remove all DWORD_MNEM_SUFFIX - references. - (intel_e09_1): Convert QWORD to 'l' suffix for FP operations; refuse - otherwise. - * config/tc-i386.h (DWORD_MNEM_SUFFIX): Kill. - (No_dSuf): Kill. - - * i386.h (*_Suf): Remove No_dSuf. - (d_suf, wld_Suf,sld_Suf, sldx_Suf, bwld_Suf, d_FP, sld_FP, sldx_FP) - Remove. - (i386_optab): Remove 'd' in the suffixes. - -2000-12-06 Mark Elbrecht - - * config/tc-i386.c (T_SHORT): Undefine before defining. - -2000-12-05 Kazu Hirata - - * config/tc-mips.c: Fix formatting. - -2000-12-04 Matthew Hiller - - * config/tc-d10v.c (flag_allow_gstabs_packing): New variable. - (md_longopts): New options --gstabs-packing, --no-gstabs-packing. - (md_show_usage): Ditto. - (md_parse_option): Ditto. - (d10v_cleanup): Writes pending instruction only if - ! outputting_stabs_line_debug || ! flag_allow_gstabs_packing. - Fix compile time warning messages. - - * doc/c-d10v.texi: Documents new options. - -2000-12-04 Matthew Hiller - - * stabs.c (outputting_stabs_line_debug): New variable. - (stabs_generate_asm_lineno): Set outputting_stabs_line_debug at - function entry and unset at function exit. - - * read.h (outputting_stabs_line_debug): New extern declaration. - - * as.c: Include dwarf2dbg.h for definition of dwarf2_finish. - - * dwarf2dbg.c: Fix compile time warning messages. - -2000-12-03 Kazu Hirata - - * config/tc-a29k.c: Fix formatting. - * config/tc-alpha.c: Likewise. - * config/tc-arm.c: Likewise. - * config/tc-cris.c: Likewise. - * config/tc-hppa.c: Likewise. - * config/tc-i370.c: Likewise. - * config/tc-i386.c: Likewise. - * config/tc-i860.c: Likewise. - * config/tc-i960.c: Likewise. - * config/tc-ia64.c: Likewise. - * config/tc-m68hc11.c: Likewise. - * config/tc-m68k.c: Likewise. - * config/tc-m88k.c: Likewise. - * config/tc-pj.c: Likewise. - * config/tc-ppc.c: Likewise. - * config/tc-sh.c: Likewise. - * config/tc-sparc.c: Likewise. - * config/tc-tahoe.c: Likewise. - * config/tc-vax.c: Likewise. - -2000-12-01 Chris Demetriou - - * config/tc-mips.c (mips_ip): When calculating offsets, - don't accept as constant the difference between the - addresses of symbols in two different sections. - - * config/tc-mips.c (macro_build): Add new 'U' and 'J' operand - specifiers. - (validate_mips_insn): Likewise. Also, update 'B' operand - specifier to use OP_*_CODE20 constants and delete 'm' operand - specifier. - (mips_ip): Remove 'm' operand specifier, add 'U' and 'J' - operand specifiers. Change warning generated by 'B' operand - specifier to reflect its new multi-purpose usage. - - * config/tc-mips.c (mips_set_options): Use ISA_UNKNOWN rather than - -1, and update comment. - (file_mips_isa): Likewise. - (mips_cpu): Use CPU_UNKNOWN rather than -1, and update comment. - (ISA_HAS_COPROC_DELAYS, ISA_HAS_64BIT_REGS, gpr_interlocks): Use - ISA_* constants rather than hard-coded numbers. - (mips_cpu_info): New structure. - (mips_cpu_info_table): New table describing CPU and ISA names - and numbers. - (mips_cpu_info_from_name, mips_cpu_info_from_isa, - mips_cpu_info_from_cpu): New functions. - (mips_isa_to_str): New function to get string for ISA name. - (mips_cpu_to_str): Convert to use mips_cpu_info_from_cpu, and - return const char *. - (md_begin): Redo CPU and ISA selection logic, using - mips_cpu_info_from_*. Convert to use ISA_* constants rather - than hard-coded numbers. - (append_insn, mips_emit_delays, macro, macro2): Convert to use - ISA_* constants rather than hard-coded numbers. - (mips_ip): Convert to use mips_isa_to_str to get ISA name. - (md_longopts): Delete OPTION_NO_MIPS32. - (md_parse_option): Convert to use ISA_* constants rather than - hard-coded numbers. Make OPTIONS_MIPS32 case treat MIPS32 - as an ISA. Delete OPTION_NO_MIPS32 case. Convert OPTION_MCPU - to use strcasecmp to recognize "default" and to use - mips_cpu_info_from_name to get CPU numbers from argument. - (md_show_usage): Move -mips32 so it's with the rest of the ISA - flags. Change 4Kc, 4Kp and 4Km CPU entries to just be - mips32-4k. - (s_mipsset): Accept ISA value 32. - * doc/as.texinfo: Clean up MIPS options summary slightly, - remove -no-mips32. Add note about -mips4 and -mips32 - specifying those ISA levels. Delete -mips32 and -no-mips32 - cpu flag descriptions. - * doc/c-mips.texi: Add -mips32 to list of ISA switches. Clean - up the supported CPU switch list, and replace 4Kc, 4Km, and - 4Kp entries with a single mips32-4k entry. Note that you can - use ".set mips32". - - * config/tc-mips.c (ISA_HAS_64BIT_REGS): Add checks for ISA_MIPS5 and - ISA_MIPS64. - (md_longopts, OPTION_MIPS5, OPTION_MIPS64): Add options for - -mips5 and -mips64. - (md_parse_option): Add cases for OPTION_MIPS5 and - OPTION_MIPS64. - (md_show_usage): Mention -mips5 and -mips64 arguments. - (s_mipsset): Add cases for MIPS5 and MIPS64. - (mips_cpu_info_table): Add entries for MIPS5 and MIPS64 ISAs - and pseudo-CPUs. - * doc/as.texinfo: Mention -mips5 and -mips64 options - and their meanings. - * doc/c-mips.texi: Likewise. Also update introduction - and ".set" usage information. - - * config/tc-mips.c (md_show_usage): Add "sb1" to the - CPU list. - (mips_cpu_info_table): Add SB-1 entries. - * doc/c-mips.texi: Add "sb1" to the list of CPUs - known to the -mcpu option. - - * doc/as.texinfo: Correct description of MIPS -mcpu - option, by copying some of the text from doc/c-mips.texi. - -2000-12-01 Joel Sherrill - - * configure.in (arm-*-rtems*, a29k-*rtems*, h8300-*-rtems*): - New targets. - (sparc*-*-rtemself*, sparc*-*-rtemsaout*): New targets. - (sparc*-*-rtems*): Switched from a.out to ELF. - * configure: Regenerate. - * config.in: Regenerate. - * Makefile.in: Regenerate. - * aclocal.m4: Regenerate. - * po/gas.pot: Regenerate. - -2000-11-30 Philip Blundell - - * config/obj-coff.c (obj_coff_weak): Use S_SET_WEAK if it exists, - even in non BFD_ASSEMBLER case. - -2000-11-30 Diego Novillo - - * config/tc-i386.c (md_assemble): Swap i.disp_relocs when using intel - syntax. - -2000-11-29 Richard Henderson - - * dwarf2dbg.c: Rewrite from scratch. Queue all debugging output - until dwarf2_finish; use relaxation to get cross-fragment offsets; - thread multiple subsegments properly; handle multiple code - sections properly; emit proper compilation unit info for assembler - generated debugging. - - * as.h (enum _relax_state): Add rs_dwarf2dbg. - * dwarf2dbg.h (struct dwarf2_line_info): Remove filename. - (dwarf2dbg_estimate_size_before_relax): Declare. - (dwarf2dbg_relax_frag, dwarf2dbg_convert_frag): Declare. - * write.c: Include dwarf2dbg.h. - (cvt_frag_to_fill): Handle rs_dwarf2dbg. - (relax_segment): Likewise. - -2000-11-28 Hans-Peter Nilsson - - * config/tc-sh.c (md_convert_frag) : Use as_bad_where instead of as_bad. Tweak error message - accordingly. Stabilize frag by updating fix part and resetting - variant part. - : Ditto. - (sh_elf_cons): Cast *input_line_pointer to unsigned char when - indexing is_end_of_line[]. - (md_assemble): Initialize size to 0. - (md_section_align): Mark parameter seg as unused. - (parse_reg): Parse names case-insensitively. - -2000-11-28 Kazu Hirata - - * config/obj-aout.h: Fix formatting. - * config/obj-bout.h: Likewise. - * config/obj-coff.c: Likewise. - * config/obj-coff.h: Likewise. - * config/obj-elf.h: Likewise. - * config/obj-som.h: Likewise. - * config/obj-vms.c: Likewise. - * config/obj-vms.h: Likewise. - * config/tc-h8300.h: Likewise. - * config/tc-ns32k.h: Likewise. - * config/tc-sparc.h: Likewise. - * config/tc-tic54x.h: Likewise. - * config/tc-z8k.h: Likewise. - -2000-11-28 Nick Clifton - - * doc/as.1 (COPYING): Mention that the GNU Free Documentation - License is present in the sources, but not the output, and - also available from the GNU website. - (GNU Free Documentation License): Comment out this section. - -2000-11-28 Hans-Peter Nilsson - - * Makefile.am (CPU_OBJ_VALID): Add case to filter out invalid coff - targets. Remove i860 from valid a.out targets. - * Makefile.in: Regenerate. - - * config/tc-cris.c: Include dwarf2dbg.h. - (md_pseudo_table): Add .file and .loc. - (md_assemble): Call dwarf2_emit_insn if generating ELF. - (s_cris_file, s_cris_loc): New. - * config/tc-cris.h (DWARF2_LINE_MIN_INSN_LENGTH): Define. - * Makefile.am: Regenerate dependencies. - * Makefile.in: Regenerate. - -2000-11-28 Alan Modra - - * expr.c (STANDARD_MUL_PRECEDENCE): Correct value. - (MRI_MUL_PRECEDENCE): Likewise. - (op_rank): Fix a comment typo. - -2000-11-26 Stephane Carrez - - * config/tc-m68hc11.c (build_indexed_byte): Print the offset in - the error message. - (get_operand): Fix analysis for movw/movb instructions. - -2000-11-24 Nick Clifton - - * configure.in (xscale-elf): Add target. - (xscale-coff): Add target. - * configure: Regenerate. - - * config/tc-arm.c (ARM_EXT_V5E): New ARM architecture - extenstion. - (ARM_EXT_XSCALE): New ARM architecture extension. - (ARM_LONGMUL): Rename to ARM_EXT_LONGMUL. - (ARM_HALFWORD): Rename to ARM_EXT_HALFWORD. - (ARM_THUMB): Rename to ARM_EXT_THUMB. - (ARM_ARCH_V4): Remove processor from architecture. - (ARM_ARCH_3M): New architecutre definition. - (ARM_ARCH_V5TE): New architecutre definition. - (ARM_ARCH_XSCALE): New architecutre definition. - (CPU_DEFAULT): Allow to be defaulted to XScale. - (atpcs): New boolean variable. - (ldr_flags): Support 'd' flag for double word loads. - (str_flags): Support 'd' flag for double word stored. - (do_mia): New function. - (do_mar): New function. - (do_mra): New function. - (do_pld): New function. - (do_ldrd): New function. - (do_blx): New function. - (do_bkpt): New function. - (do_clz): New function. - (do_lstc2): New function. - (do_cdp2): New function. - (do_t_blx): New function. - (do_t_bkpt): New function. - (do_smla): New function. - (do_smlal): New function. - (do_smul): New function. - (do_qadd): New function. - (do_co_reg2c): New function. - (LONGEST_INSN): Redefine to 7. - - * doc/c-arm.texi: Document -mxscale, -mmarmv5te and -matpcs - command line switches. - -2000-11-22 Jim Wilson - - * config/tc-ia64.c (pseudo_func): Add missing initializers. - (struct rsrc): Make line unsigned. - (gr_values): Add missing initializer. - (SLOT_NUM_NOT_SET): Add unsigned cast. - (ia64_elf_section_flags, output_vbyte_mem, count_output, dot_radix, - dot_fframe, dot_vframe, dot_vframesp, dot_vframepsp, dot_save, - dot_restore, dot_restorereg, dot_restorereg_p, dot_handlerdata, - dot_unwentry, dot_altrp, dot_saveg, dot_savef, dot_saveb, dot_savegf, - dot_spill, dot_spillreg, dot_spillreg_p, dot_label_state, - dot_copy_state, dot_unwabi, dot_personality, dot_proc, dot_body, - dot_prologue, dot_endp, dot_regstk, dot_psr, dot_alias, dot_ln, - dot_reg_val, dot_entry, dot_mem_offset, ia64_init, mark_resource, - md_undefined_symbol, md_apply_fix3, tc_gen_reloc, ia64_md_do_align): - Add ATTRIBUTE_UNUSED to unused parameters. - (convert_expr_to_ab_reg): Add parens. - (convert_expr_to_xy_reg): Add parens. Comment out >= REG_GR test. - (dot_prologue): Initialize grsave when declared. - (md_pseudo_table): Add missing initializers. - (operand_match): Add casts to bfd_vma. - (emit_one_bundle): Delete unused local prev. Make required_template - unsigned. - (specify_resource): Cast i to unsigned. - (note_register_values): Use fprintf_vma. - (print_dependency): Likewise. - -2000-11-21 Jim Wilson - - * config/tc-ia64.c (generate_unwind_image): Call record_alignment - for unwind info section. - (dot_endp): Likewise for unwind section. - - * config/tc-ia64.c (emit_one_bundle): Pass size of 8 not 4 to - fix_new_exp. - -2000-11-21 Jakub Jelinek - - * config/tc-sparc.c (md_pseudo_table): Add .file and .loc. - (output_insn): Call dwarf2_emit_insn. - * config/tc-sparc.h (DWARF2_LINE_MIN_INSN_LENGTH): New. - -2000-11-17 Richard Henderson - - * ehopt.c (eh_frame_code_alignment): New arg `in_seg', update all - callers. Don't switch segments. Expect CIE == -1 in .debug_frame. - (check_eh_frame): Handle .eh_frame and .debug_frame concurrently. - -2000-11-17 Nick Clifton - - * config/tc-arm.c (md_pseudo_table): Add support for .line and - .file pseudo ops. - -2000-11-17 Richard Henderson - - * config/tc-i386.c (md_pseudo_table): Add .file and .loc. - -2000-11-17 Richard Henderson - - * dwarf2dbg.c (dwarf2_gen_line_info): Early out for no line number. - * config/obj-elf.h (ECOFF_DEBUGGING) [TC_ALPHA]: Adjust for - tri-state definition of alpha_flag_mdebug. - * config/tc-alpha.c (alpha_flag_mdebug): Init to -1. - (s_alpha_file): Store first .file directive. - (s_alpha_stab): New. - (md_pseudo_table): Add stabs and stabn. - -2000-11-17 Richard Henderson - - * config/tc-i386.c (md_assemble): Call dwarf2_emit_insn. - -2000-11-17 Richard Henderson - - * as.c (debug_type): Init to DEBUG_UNSPECIFIED. - (main): Call dwarf2_finish. - * as.h (debug_type): Clarify documentation of the meaning - of this variable. - * dwarf2dbg.c (DWARF2_LINE_MIN_INSN_LENGTH): Default to 1. - (print_stats): Fix parenthesis problem. - (now_subseg_size): New. - (dwarf2_finish): Use it. If DEBUG_DWARF2, emit bits for .debug_info. - (dwarf2_directive_file): Don't set debug_type. - (dwarf2_where): Honor DEBUG_DWARF2 first. - (dwarf2_emit_insn): Renamed from dwarf2_generate_asm_lineno; - do nothing if not emitting dwarf2 debug info, or no work. - * dwarf2dbg.h (dwarf2_emit_insn): Update. - * ecoff.c (add_file): Turn on DEBUG_ECOFF only if DEBUG_UNSPECIFIED. - (ecoff_new_file): Likewise. - * read.c (generate_lineno_debug): Kill ecoff hackery. Update - commentary wrt dwarf2. - - * config/tc-alpha.c (alpha_adjust_symtab_relocs): Add - ATTRIBUTE_UNUSED as needed. - (emit_insn): Call dwarf2_emit_insn. - (s_alpha_file): New. - (s_alpha_loc): New. - (s_alpha_coff_wrapper): Don't handle them. - (md_pseudo_table): Update for .file and .loc. - * config/tc-alpha.h (DWARF2_LINE_MIN_INSN_LENGTH): New. - - * config/tc-arm.c (output_inst): Update for dwarf2_emit_insn; - don't protect with debug_type. - * config/tc-hppa.c (md_assemble): Likewise. - * config/tc-m68hc11.c (m68hc11_new_insn): Likewise. - * config/tc-mn10300.c (md_assemble): Likewise. - * config/tc-sh.c (md_assemble): Likewise. - * config/tc-v850.c (md_assemble): Likewise. - - * config/tc-arm.c (arm_end_of_source): Remove. - * config/tc-hppa.c (pa_end_of_source): Remove. - * config/tc-m68hc11.c (m68hc11_end_of_source): Remove. - * config/tc-mn10300.c (mn10300_finalize): Remove. - * config/tc-sh.c (sh_finalize): Remove. - * config/tc-v850.c (sh_finalize): Remove. - - * config/tc-arm.h (md_end): Remove. - * config/tc-hppa.h (md_end): Remove. - (DWARF2_LINE_MIN_INSN_LENGTH): New. - * config/tc-m68hc11.h (md_end): Remove. - * config/tc-mn10300.h (md_end): Remove. - * config/tc-sh.h (md_end): Remove. - * config/tc-v850.h (md_end): Remove. - - * config/tc-ia64.c (emit_one_bundle): Don't protect - dwarf2 bits with debug_type. - (md_assemble): Likewise. - (ia64_end_of_source): Don't call dwarf2_finish. - -2000-11-16 Jim Wilson - - * config/tc-ia64.c (errata_nop_necessary_p): Abort if general regno - >= 128 instead of > 128. Abort if predicate regno is >= 64 instead of - > 16. - -2000-11-16 H.J. Lu - - * config/obj-elf.c (obj_elf_symver): Don't check the missing - version name. - -2000-11-15 Kazu Hirata - - * config/tc-tic30.c: Fix formatting. - * config/tc-tic80.c: Likewise. - * config/tc-v850.c: Likewise. - * config/tc-vax.c: Likewise. - * config/tc-w65.c: Likewise. - * config/tc-z8k.c: Likewise. - -2000-11-14 DJ Delorie - - * config/tc-v850.c: Support dwarf2. - * config/tc-v850.h: Ditto. - - * config/tc-v850.c (cons_fix_new_v850): Don't rely on - parse_cons_expression_v850 to initialize hold_cons_reloc. - -2000-11-15 Bernd Schmidt - - * config/tc-ia64.c (struct md): New entries LAST_GROUPS, GROUP_IDX. - (errata_nops_necessary_p): New function. - (emit_one_bundle): Call it. Update the GROUP_IDX field in struct - md. - -2000-11-14 Jim Wilson - - * config/tc-ia64.c (ia64_target_format): If EF_IA_64_BE not set, then - return little endian bfd formats. - -2000-11-14 Kazu Hirata - - * config/aout_gnu.h: Fix formatting. - * config/atof-vax.c: Likewise. - * config/m68k-parse.h: Likewise. - * config/m88k-opcode.h: Likewise. - * config/obj-elf.c: Likewise. - * config/tc-arm.c: Likewise. - * config/tc-cris.c: Likewise. - * config/tc-i386.c: Likewise. - * config/tc-ia64.c: Likewise. - * config/tc-mn10300.c: Likewise. - * config/te-386bsd.h: Likewise. - * config/te-hppa.h: Likewise. - * config/te-nbsd.h: Likewise. - * config/te-ppcnw.h: Likewise. - * config/te-sparcaout.h: Likewise. - * config/te-tmips.h: Likewise. - * config/vax-inst.h: Likewise. - * config/vms-conf.h: Likewise. - -2000-11-14 Jakub Jelinek - - * config/tc-alpha.c (s_alpha_prologue): Preserve visibility bits. - -2000-11-13 H.J. Lu - - * config/obj-elf.c (elf_frob_symbol): Support - ".symver name,name2@@@nodename". - (elf_frob_file_before_adjust): Likewise. - - * doc/as.texinfo: Updated for ".symver name,name2@@@nodename" - and ".symver name,name2@@@nodename". - Fix a typo. - -2000-11-12 H.J. Lu (hjl@gnu.org) - - * config/obj-elf.c (obj_elf_symver): Check missing version - name. - -2000-11-12 H.J. Lu (hjl@gnu.org) - - * dwarf2dbg.c (dwarf2_generate_asm_lineno): Use addressT - instead of bfd_vma for non-bfd assemblers. - -2000-11-09 Kazu Hirata - - * itbl-ops.c: Fix comment typos. - -2000-11-08 Jim Wilson - - * config/tc-ia64.c (struct unw_rec_list): Add slot_frag field. - (struct unwind): Add next_slot_frag field. - (slot_index): New parameters slot_frag and first_frag. Add code - to add in frag sizes when different. Add comments. - (fixup_unw_records): New locals first_frag and last_frag. Pass new - arguments to slot_index. - (emit_one_bundle): Set slot_frag field. Set next_slot_number after - loop end. Set next_slot_frag field. - -2000-11-07 H.J. Lu - - * doc/as.texinfo (.symver): Updated for versioned symbol - reference. - - * obj.h (format_ops): Add the frob_file_before_adjust field. - - * config/obj-aout.c (aout_format_ops): Set the - frob_file_before_adjust field to 0. - * config/obj-coff.c (coff_format_ops): Likewise. - * config/obj-ecoff.c (ecoff_format_ops): Likewise. - - * config/obj-elf.c (obj_elf_symver): Allow duplicated version - name. - (elf_frob_file_before_adjust): New function to remove unneeded - versioned symbols from the symbol table. - (elf_format_ops): Set the frob_file_before_adjust field to - elf_frob_file_before_adjust. - - * config/obj-elf.h (obj_frob_file_before_adjust): Defined if - not defined. - - * config/obj-multi.h (obj_frob_file_before_adjust): Defined. - -2000-11-07 Peter Targett - - * config/tc-arc.h: Avoid warnings for LITTLE_ENDIAN and - BIG_ENDIAN macros. - * config/tc-arc.c: Use S_IS_LOCAL to test local symbols. - Fix compile time warning messages. - -2000-11-07 Nick Clifton - - * stabs.c (generate_asm_file): Increase length of xmalloc'ed - buffer in order to avoid buffer overflows. - -2000-11-06 Steve Ellcey - - * config/tc-ia64.c (md_shortopts, md_parse_option, md_show_usage): - Change M to m for -milp32 or -mlp64 to match gcc. - (dot_endp): Use bytes_per_address instead of 8. - (emit_one_bundle): Use number_to_chars_littleendian instead of - md_number_to_chars. - (fix_insn): Likewise. - (ia64_init): New function. - (ia64_target_format): New function. - (md_begin): Set endianness, arch, and machine as appropriate. - * config/tc-ia64.h: (TARGET_BYTES_BIG_ENDIAN, md_number_to_chars): - Make these macros depend on TE_HPUX macro. - (TARGET_FORMAT): Define. - (HOST_SPECIAL_INIT): Define. - * config/te-hpux.h: New file. - * configure.in: Add "ia64-*-hpux*" target to configure. - * configure: Regenerate. - -2000-11-06 Kazu Hirata - - * as.c: Fix formatting. - * dwarf2dbg.c: Likewise. - * input-file.c: Likewise. - * input-file.h: Likewise. - * input-scrub.c: Likewise. - * itbl-ops.c: Likewise. - * listing.c: Likewise. - * macro.h: Likewise. - * messages.c: Likewise. - * read.c: Likewise. - * subsegs.c: Likewise. - * subsegs.h: Likewise. - * write.c: Likewise. - -2000-11-06 Nick Clifton - - * doc/as.texinfo: Add GNU Free Documentation License. - * doc/gasp.texi: Add GNU Free Documentation License. - * doc/as.1: Add GNU Free Documentation License. - -2000-11-05 Nick Clifton - - * config/tc-arm.c: Add include of "dwarf2dbg.h" - -2000-11-02 Per Lundberg - - * configure.in: Recognise i[3456]86-chaosdev-storm-chaos. - * configure: Regenerate. - -2000-11-01 Nick Clifton - - * read.c (original_case_string): New global variable. - (read_a_source_file): Copy opcode string into - original_case_string if clobbering the case of the opcode. - * read.h: Export the definition of original_case_string. - * config/tc-arm.c (md_assembler): When parsing a .req - directive use the original opcode string, not the case - clobbered version. - -2000-11-02 Nick Clifton - - * config/tc-mn10300.c (debug_line): Remove this static - variable. - (md_assemble): Call dwarf2_generate_asm_lineno instead of - dwarf2_where and dwarf2_gen_line_info. - -2000-11-02 Theo Honohan - - * config/tc-arm.c (do_msr): Improve error message. - -2000-10-31 Eric Christopher - - * config/tc-mn10300.c (md_apply_fix3): Use valuep if fully resolved - or pc-relative, else use fx_offset. - -2000-10-31 Jim Wilson - - * config/tc-ia64.c (struct md): New field tag_fixups. - (ia64_flush_insns): Handle tag_fixups. Error if dangling - qualifying predicate. - (emit_one_bundle): Delete spurious multiplication by one. Handle - tag_fixups. - (ia64_start_line): Error if dangling qualifying predicate. - (defining_tag): New static variable. - (ia64_unrecognized_line, case '['): Parse tags. - (ia64_frob_label): Create tag_fixups. - (md_assemble): Reset md.qp.X_op after using it. - -2000-10-31 Kaz Kojima - - * config/tc-sh.c (md_apply_fix [BFD_RELOC_SH_PCDISP12BY2]): Allow 4094. - -2000-10-31 Bernd Schmidt - - * config/tc-ia64.c (extra_goodness): Only prefer F in slot 1 and B in slot 2. - -2000-10-30 Kazu Hirata - - * expr.c: Fix formatting. - * flonum-copy.c: Likewise. - * flonum.h: Likewise. - * gasp.c: Likewise. - * hash.c: Likewise. - -2000-10-30 Hans-Peter Nilsson - - * as.h (OPTION_MD_BASE): Bump to 190. - * as.c (parse_args) : Add comment about the need to - check OPTION_MD_BASE in as.h. - - * config/tc-sh.c (md_apply_fix): For ELF, do not "adjust back" VAL - for weak symbols. - -2000-10-27 Nick Clifton - - * configure.in (emulations): Add m68hc12. - * configure: Regenerate. - * po/gas.pot: Regenerate. - -2000-10-27 Aldy Hernandez - - * config/tc-arm.c (psrs): Remove lowercase versions of spsr* and - cpsr*. - (arm_psr_parse): Handle lowercase CPSR and SPSR. - -2000-10-25 Nick Clifton - - * dwarf2out.c (dwarf2_generate_asm_lineno): New function: Generate - a DWARF2 line number information sequence. - - *dwarf2out.h: Add prototype for dwarf2_generate_asm_lineno. - - * read.c (generate_lineno_debug): Update comment describing why - DWARF2 line number debug information is not generated - automatically by this function. - - * doc/as.texinfo: Note that --gdwarf2 only works on some targets, - not all. - - * config/tc-arm.h (md_end): Define. - (DWARF2_LINE_MIN_INSN_LENGTH): Define. - - * config/tc-arm.c (output_inst): Call dwarf2_generate_asm_lineno - if generating DWARF2 line numbers. - (arm_end_of_source): New function. Call dwarf2_finish if - necessary. - - * config/tc-hppa.c (md_assemble): Use dwarf2_generate_asm_lineno. - * config/tc-m68hc11.c (m68hc11_new_insn): Use dwarf2_generate_asm_lineno. - * config/tc-sh.c (md_assemble): Use dwarf2_generate_asm_lineno. - -2000-10-25 Diego Novillo - - * config/tc-i386.c: Fix prototype declarations for functions taking no - arguments. - -2000-10-24 Diego Novillo - - * config/tc-i386.c (i386_operand_modifier): Remove. - (build_displacement_string): Remove. - (i386_parse_seg): Remove. - (i386_intel_memory_operand): Remove. - (i386_intel_operand): Re-write using recursive descent parser based - on MASM documentation. - (struct intel_parser_s): New structure. - (intel_parser): New static variable. - (struct intel_token): New structure. - (cur_token, prev_token): New static variables. - (T_NIL): Define. - (T_CONST): Define. - (T_REG): Define. - (T_BYTE): Define. - (T_WORD): Define. - (T_DWORD): Define. - (T_QWORD): Define. - (T_XWORD): Define. - (T_SHORT): Define. - (T_OFFSET): Define. - (T_PTR): Define. - (T_ID): Define. - (intel_match_token): New function. - (intel_get_token): New function. - (intel_putback_token): New function. - (intel_expr): New function. - (intel_e05): New function. - (intel_e05_1): New function. - (intel_e06): New function. - (intel_e06_1): New function. - (intel_e09): New function. - (intel_e09_1): New function. - (intel_e10): New function. - (intel_e10_1): New function. - (intel_e11): New function. - -2000-10-20 Jakub Jelinek - - * config/tc-sparc.c (sparc_ip): Fix a bug which caused v9_arg_p - instructions to loose any special insn->architecture mask. - - * config/tc-sparc.c (v9a_asr_table): Add v9b ASRs. - (sparc_md_end, sparc_arch_types, sparc_arch, - sparc_elf_final_processing): Handle v8plusb and v9b architectures. - (sparc_ip): Handle siam mode operands. Support v9b ASRs (and - request v9b architecture if they are used). - -2000-10-18 Michael Sokolov - - * config/tc-m68k.c: Fix the previous misapplied patch. - -2000-10-18 Michael Sokolov - - * config/tc-m68k.h (RELAX_RELOC_*): New definitions for both - BFD_ASSEMBLER and !BFD_ASSEMBLER. - * config/tc-m68k.c (md_convert_frag_1): Use them instead of - BFD_RELOC_*. - -2000-10-17 Kazu Hirata - - * debug.c: Fix formatting. - * depend.c: Likewise. - * dwarf2dbg.c: Likewise. - * dwarf2dbg.h: Likewise. - * ecoff.c: Likewise. - * expr.c: Likewise. - * expr.h: Likewise. - * flonum-konst.c: Likewise. - * frags.h: Likewise. - -2000-10-17 Chandrakala Chavva - - * as.c: New option OPTION_TARGET_HELP. Prints all target specific - options. - * doc/as.texinfo: Added notes about this new option. - -2000-10-16 Hans-Peter Nilsson - - * config/tc-sh.c (JREG): Remove. - (md_convert_frag): Remove #if 0:d code using JREG. - -2000-10-15 Diego Novillo - - * config/tc-i386.c (i386_operand_modifier): Only match - modifiers SHORT and FLAT if they are followed by a space. - (parse_register): When `allow_naked_reg' is set, do not confuse - identifiers that start with a register name with a register. - -2000-10-12 Kazu Hirata - - * app.c: Fix formatting. - * as.c: Likewise. - * as.h: Likewise. - * bit_fix.h: Likewise. - * cgen.c: Likewise. - * cgen.h: Likewise. - * cond.c: Likewise. - -2000-10-11 Alan Modra - - * config/obj-elf.c (elf_frob_symbol): Revert 2000-10-07 change. - -2000-10-07 Alan Modra - - * config/tc-hppa.c (md_apply_fix): Remove plainly wrong assert. - Re-arrange function a little and improve error message. - - * write.c (write_relocs): Fix a comment. - - * config/obj-elf.c (elf_frob_symbol): Make section syms global on - link-once sections. - -2000-10-05 Jim Wilson - - * config/tc-ia64.c (resources_match): Handle IA64_RS_PRr. - -2000-10-05 Alan Modra - - * config/tc-i386.c: Delete some useless comments, reformat others. - - * config/tc-i386.h (TC_FIX_ADJUSTABLE): Add check to cover - non-global syms in linkonce sections. - -2000-10-04 Ralf Baechle - - * config/tc-ia64.c (operand_match): Don't use // style comments. - * config/tc-i370.c: Likewise. - -2000-09-29 Hans-Peter Nilsson - - Changes to handle varying register prefix and user symbol prefix. - * config/tc-cris.c (SYNTAX_RELAX_REG_PREFIX, - SYNTAX_ENFORCE_REG_PREFIX, SYNTAX_USER_SYM_LEADING_UNDERSCORE, - SYNTAX_USER_SYM_NO_LEADING_UNDERSCORE, REGISTER_PREFIX_CHAR): New. - (s_syntax, cris_force_reg_prefix, cris_relax_reg_prefix, - cris_sym_leading_underscore, cris_sym_no_leading_underscore): New. - (demand_register_prefix): New variable. - (md_pseudo_table): New pseudo ".syntax". - (md_longopts): New options --no-underscore and --underscore. - (cris_target_format): Return elf32-us-cris or elf32-cris depending - on symbols_have_leading_underscore. - (get_gen_reg): Accept or require REGISTER_PREFIX_CHAR. - (get_spec_reg): Ditto. - (cris_number_to_imm) : Remove FIXME. - Fix formatting. - (md_parse_option) : Deprecate; add reference to - --help. - : New. - (md_show_usage): Be brief and reformat to match continuation of - --help. - * po/gas.pot: Regenerate. - -2000-09-28 Alan Modra - - * config/tc-hppa.c (hppa_force_relocation): If OBJ_SOM, don't - force relocs for 12 bit branches. - (md_apply_fix): Similarly, adjust logic here. - -2000-09-28 Alan Modra - - * config/tc-hppa.c (md_apply_fix): Add fmt assertion. Don't - adjust for external and weak syms as we will use a reloc. Allow - for +8 offset when calculating limits of branches. - (hppa_fix_adjustable): Undo 2000-09-23 change. - (hppa_force_relocation): Likewise. Add fx_addsy assertion. - Correct distance calculation. - (tc_gen_reloc): Print the file name and line number if we can't - handle a fixup. - - From John David Anglin - * config/tc-hppa.c (nonzero_dibits): Define. - (arg_reloc_stub_needed): Check each arg and return value - separately for zero case. - (pa_align): Declare argument `bytes'. - -2000-09-25 Kazu Hirata - - * config/tc-cris.c: Fix formatting. - * config/tc-d10v.h: Likewise. - * config/tc-d30v.c: Likewise. - * config/tc-d30v.h: Likewise. - * config/tc-fr30.c: Likewise. - * config/tc-fr30.h: Likewise. - * config/tc-m68k.c: Likewise. - * config/tc-m68k.h: Likewise. - * config/tc-pj.h: Likewise. - * config/tc-ppc.c: Likewise. - * config/tc-ppc.h: Likewise. - * config/tc-sh.c: Likewise. - * config/tc-sh.h: Likewise. - * config/tc-sparc.c: Likewise. - * config/tc-v850.h: Likewise. - * config/tc-vax.h: Likewise. - * config/tc-w65.h: Likewise. - * config/tc-z8k.h: Likewise. - -2000-09-23 Alan Modra - - * config/tc-hppa.c (hppa_fix_adjustable): Do the external and weak - checks only for ELF. - (hppa_force_relocation): Likewise. - -2000-09-22 Jim Wilson - - * config/tc-ia64.c (dv_sem): Add "stop". - (specify_resource, case IA64_RS_PR): Only handles regs 1 to 15 now. - (specify_resource, case IA64_RS_PRr): New for regs 16 to 62. - (specify_resource, case IA64_RS_PR63): Reorder (note == 7) test to - match above. - (mark_resources): Check IA64_RS_PRr. - -2000-09-22 Michael Sokolov - - * config/tc-m68k.c (md_relax_table, m68k_ip, md_convert_frag_1, - md_estimate_size_before_relax): Redesign and clean up the - relaxation mechanism. - -2000-09-21 Kazu Hirata - - * config/tc-ns32k.c: Fix formatting. - * config/tc-ns32k.h: Likewise. - -2000-09-20 Kazu Hirata - - * config/tc-m32r.c: Fix formatting. - * config/tc-m32r.h: Likewise. - * config/tc-m68851.h: Likewise. - * config/tc-m68hc11.c: Likewise. - * config/tc-m68hc11.h: Likewise. - * config/tc-m88k.c: Likewise. - * config/tc-mcore.c: Likewise. - * config/tc-mcore.h: Likewise. - * config/tc-mips.c: Likewise. - * config/tc-mips.h: Likewise. - * config/tc-mn10200.h: Likewise. - * config/tc-mn10300.h: Likewise. - * config/tc-tahoe.c: Likewise. - * config/tc-tahoe.h: Likewise. - -2000-09-19 Michael Sokolov - - * config/tc-vax.c (synthetic_votstrs): Remove jbssi and jbcci. - Likewise in relaxation description comments. - -2000-09-18 Alan Modra - - * config/tc-hppa.h (TC_FORCE_RELOCATION_SECTION): Allow - subtraction of two syms without emitting a relocation. - - From David Huggins-Daines - * config/tc-hppa.c (hppa_force_relocation): Force relocations for - global or weak symbols. - -2000-09-15 Kazu Hirata - - * config/tc-h8300.h: Fix formatting. - * config/tc-h8500.c: Likewise. - * config/tc-h8500.h: Likewise. - * config/tc-hppa.h: Likewise. - * config/tc-i370.h: Likewise. - * config/tc-i386.h: Likewise. - * config/tc-i860.c: Likewise. - * config/tc-i860.h: Likewise. - * config/tc-i960.h: Likewise. - * config/tc-ia64.c: Likewise. - * config/tc-ia64.h: Likewise. - -2000-09-14 Kazu Hirata - - * config/tc-a29k.c: Fix formatting. - * config/tc-alpha.c: Likewise. - * config/tc-arc.c: Likewise. - * config/tc-arc.h: Likewise. - * config/tc-arm.c: Likewise. - * config/tc-arm.h: Likewise. - * config/tc-avr.c: Likewise. - * config/tc-avr.h: Likewise. - * config/tc-tic30.c: Likewise. - * config/tc-tic30.h: Likewise. - * config/tc-tic54x.c: Likewise. - * config/tc-tic54x.h: Likewise. - * config/tc-tic80.c: Likewise. - * config/tc-tic80.h: Likewise. - -2000-09-14 Timothy Wall - - * config/tc-ia64.c (specify_resource): For PR%/PR63, note types of - parallel comparisons for later use. - (struct rsrc): Add parallel comparison type. - (resources_match): Skip special cases of PR usage (non-conflicting - parallel compares). - -2000-09-13 Kazu Hirata - - * config/obj-ecoff.c: Fix formatting. - * config/obj-elf.c: Likewise. - * config/obj-elf.h: Likewise. - * config/obj-evax.h: Likewise. - * config/obj-generic.h: Likewise. - * config/obj-hp300.c: Likewise. - * config/obj-hp300.h: Likewise. - * config/obj-ieee.h: Likewise. - * config/obj-vms.c: Likewise. - * config/obj-vms.h: Likewise. - -2000-09-13 Anders Norlander - - * config/tc-mips.c (md_begin): Recognize 4Kc, 4Km and 4Kp processors. - (md_parse_option): Ditto. - (md_longopts): Add -mips32 option. - (md_show_usage): Document new options. - (mips_ip): Assemble sdbbp 20 bit 'm' args for MIPS32. - (mips_ip): Assemble mfc0 with a sub-selection code. - (validate_mips_insn): Handle 'H' (OP_*_SEL) and 'm' (OP_*_CODE20). - (mips_cpu_to_str): New function. - (mips_ip): Use mips_cpu_to_str instead of printing numeric cpu value. - Use CPU_* defines instead of hardcoded numbers. - - * doc/as.texinfo: Document new options. - * doc/c-mips.texi: Ditto. - -2000-09-12 Kazu Hirata - - * as.h: Fix formatting. - * asintl.h: Likewise. - * bit_fix.h: Likewise. - * config/obj-aout.c: Likewise. - * config/obj-aout.h: Likewise. - * config/obj-bout.c: Likewise. - * config/obj-bout.h: Likewise. - * config/obj-coff.c: Likewise. - * config/obj-coff.h: Likewise. - * dwarf2dbg.h: Likewise. - * expr.h: Likewise. - * flonum.h: Likewise. - * frags.h: Likewise. - * itbl-ops.h: Likewise. - * macro.h: Likewise. - * read.h: Likewise. - * sb.h: Likewise. - * struc-symbol.h: Likewise. - * subsegs.h: Likewise. - * symbols.h: Likewise. - * tc.h: Likewise. - * write.h: Likewise. - -2000-09-11 Kazu Hirata - - * bignum-copy.c: Fix formatting. - * config/tc-i370.c: Likewise. - * config/tc-i960.c: Likewise. - * config/tc-m68k.c: Likewise. - * ehopt.c: Likewise. - * flonum-copy.c: Likewise. - * flonum-konst.c: Likewise. - * flonum-mult.c: Likewise. - * literal.c: Likewise. - * read.c: Likewise. - * sb.c: Likewise. - * stabs.c: Likewise. - * subsegs.c: Likewise. - -2000-09-09 Philip Blundell - - * configure.in (arm*-*-uclinux*): New target. - * configure: Regenerate. - -2000-09-09 Kazu Hirata - - * input-file.c: Fix formatting. - * itbl-ops.c: Likewise. - * messages.c: Likewise. - -2000-09-08 Philip Blundell - - * config/tc-arm.c (md_apply_fix3): Correct handling of ADRL when - offset is negative. - -2000-09-07 H.J. Lu - - * configure.in (AC_ISC_POSIX): Put after AC_CANONICAL_SYSTEM. - * configure: Rebuild. - -2000-09-07 Kazu Hirata - - * atof-generic.c: Fix formatting. - * config/tc-mips.c: Likewise. - * config/tc-vax.c: Likewise. - * input-scrub.c: Likewise. - -2000-09-07 Alexandre Oliva - - * config/tc-sh.h (TARGET_FORMAT): Use sh-linux targets. - * configure.in (sh-*-linux*): Added. - * configure: Rebuilt. - -2000-09-06 Kazu Hirata - - * config/tc-hppa.c: Fix formatting. - - * ecoff.c: Fix formatting. - -2000-09-06 Alexandre Oliva - - * configure: Rebuilt with new libtool.m4. - -2000-09-05 Kazu Hirata - - * cgen.c: Fix formatting. - * config/tc-ia64.c: Likewise. - -2000-09-05 Nick Clifton - - * aclocal.m4: Regenerate. - * config.in: Regenerate. - * configure: Regenerate. - * po/gas.pot: Regenerate. - -2000-09-05 Hans-Peter Nilsson - - * config/tc-cris.c: Correct comment typos. - -2000-09-05 Eric Christopher - - * config/tc-mn10300.c: Cleanup. - (md_pcrel_from): Enable. - -2000-09-05 Alan Modra - - * expr.c (operand): Fix a comment typo. - * write.c (write_relocs): Fix a signed/unsigned warning. - - * config/tc-hppa.c (fudge_reg_expressions): New - (hppa_force_reg_syms_absolute): New. - (pa_equ): Allow reg_section expressions. - * config/tc-hppa.c (md_optimize_expr): Define. - (hppa_force_reg_syms_absolute): Prototype. - - * config/tc-hppa.c (pa_11_fp_reg_struct): Delete. - (pa_parse_number): Pass in arg to select fp reg parsing. - Return 1 to indicate format checks pass. If strict, then only - accept a register or register symbol. Return value in... - (pa_number): New static for pa_parse_number. - (FP_REG_BASE): Define. - (FP_REG_RSEL): Define. - (pre_defined_registers): Apply FP_REG_BASE and FP_REG_RSEL as - appropriate. White space changes. - (need_pa11_opcode): Don't bother passing any params, get them from - globals instead. - (pa_ip): Modify all calls to pa_parse_number and need_pa11_opcode. - Remove extraneous check in case 'Q'. - (pa_equ): Modify call to pa_parse_number to do strict parsing. If - reg, set section of resulting symbol to reg_section. - (pa_parse_space_stmt): Modify call to pa_parse_number. - (pa_space): Likewise. - - * config/tc-hppa.c: (md_apply_fix): Handle vtable relocs. - (hppa_force_relocation): Handle vtable relocs. - (pa_vtable_entry): New. - (pa_vtable_inherit): New. - (md_pseudo_table): Add entries for vtable pseudos. - (hppa_fix_adjustable): Reject reduction of R_PARISC_GNU_VTINHERIT - and R_PARISC_GNU_VTENTRY relocs. Reject reduction of relocs - against weak syms. - (tc_gen_reloc): Remove ELF_ARG_RELOC_INSN code. - (pa_type_args): Don't call symbol_get_bfdsym multiple times. - Set STT_PARISC_MILLICODE for OBJ_ELF when encountering a - millicode import. - * config/obj-elf.c (obj_elf_type): Allow md_elf_symbol_type to - specify a symbol type. - - * config/tc-hppa.h: Reorganize file a little, grouping OBJ_ELF - dependent things together. - (md_elf_symbol_type): Define. - - * config/tc-hppa.c (fix_new_hppa): Elide "$PIC_pcrel$0" pseudo - symbol. - * config/tc-hppa.h (tc_frob_symbol): Elide "$PIC_pcrel$0" here too. - - * config/obj-elf.h (obj_elf_vtable_inherit): Declare. - (obj_elf_vtable_entry): Declare. - - * config/obj-elf.c (obj_elf_vtable_inherit): Return struct fix * - and export function. - (obj_elf_vtable_entry): Similarly. - (elf_pseudo_table): Fix the damage with a cast. - -2000-09-03 Richard Henderson - - * config/tc-ia64.c (emit_one_bundle): Stop collecting insns - for template selection when a label is needed. - -2000-09-02 Kazu Hirata - - * config/tc-ia64.c: Fix formatting. - -2000-09-02 Nick Clifton - - * configure.in: Increase version number to 2.10.91. - * configure: Regenerate. - * aclocal.m4: Regenerate. - * config.in: Regenerate. - * po/gas.pot: Regenerate. - * Makefile.in: Regenerate. - -2000-09-01 Alexandre Oliva - - * config/tc-sh.h [OBJ_ELF] (TC_FIX_ADJUSTABLE): Define. - * config/tc-sh.c (md_apply_fix): Map 32-bit relocations that - become PC-relative to BFD_RELOC_32_PCREL. Reject 16- or 8-bit - similar relocs. - (sh_obj_adjustable): Return 1 for PC-relative offsets used in - branches. - -2000-09-01 Niibe Yutaka , Kaz Kojima , Alexandre Oliva - - * config/tc-sh.h (DIFF_EXPR_OK, GLOBAL_OFFSET_TABLE_NAME, - TC_RELOC_GLOBAL_OFFSET_TABLE, TC_RELOC_RTSYM_LOC_FIXUP): Define. - * config/tc-sh.c (sh_elf_cons, sh_elf_suffix): New functions. - [OBJ_ELF] (md_pseudo_table) : Use them. - (GOT_symbol): New variable. - (md_undefined_symbol): Set it. - -2000-09-01 Richard Henderson - - * config/tc-ia64.c (match): Don't inline. - (extra_goodness): New. - (md_begin): Prefer nop.f and nop.b for best_template. - -2000-08-31 Kazu Hirata - - * as.c: Fix formatting. - * cond.c: Likewise. - * frags.c: Likewise. - * macro.c: Likewise. - -2000-08-31 Eric Christopher - - * config/tc-mn10300.c: Cleanup and fix warnings. - (md_pseudo_table): Add initializers. - (md_show_usage): Cleanup. - (md_parse_option): Fix warnings. - (md_undefined_symbol): Fix warnings. - (md_conver_frag): Fix warnings. - (tc_gen_reloc): Fix warnings. - (md_apply_fix3): Fix warnings. - (check_operand): Fix warnings. - -2000-08-31 Alexandre Oliva - - * acinclude.m4: Include libtool and gettext macros from the - top level. - * aclocal.m4, configure: Rebuilt. - -2000-08-30 Mark Hatle - - * config/tc-ppc.c (md_parse_option): Recognize -m405. - -2000-08-31 Kazu Hirata - - * listing.c: Fix formatting. - -2000-08-29 Kazu Hirata - - * app.c: Fix a comment typo. Fix formatting. - -2000-08-25 J. David Anglin - - * config/tc-vax.c (md_convert_frag): Correctly calculate the pc relative - offset of the target destination for jmp instructions. - (md_assemble): Change mode to VAX_ABSOLUTE_MODE as per comments. - -2000-08-24 Hans-Peter Nilsson - - * NEWS: Mention support for CRIS. - -2000-08-24 Denis Chertykov - - * config/tc-avr.h (TC_IMPLICIT_LCOMM_ALIGNMENT): New macros. - Sets `.lcomm' alignment to zero. - -2000-08-23 Alexandre Oliva - - * config/tc-i386.h (OBJ_MAYBE_ELF, OBJ_MAYBE_COFF, - TC_FIX_ADJUSTABLE): Define. - -2000-08-23 Jim Wilson - - * config/tc-ia64.c (output_unw_records): Set U & E flags only if - unwind.personality_routine is set. - -2000-08-23 H.J. Lu - - * write.c (TC_FIX_ADJUSTABLE): Remove the duplicate. - -2000-08-23 Alexandre Oliva - - * config/tc-i386.h (TC_FIX_ADJUSTABLE): Do *NOT* define if target - environment is pe. - -2000-08-22 H.J. Lu - - * config.in (STRICTCOFF): New for strict COFF. - - * configure.in: Define STRICTCOFF for i386-*-msdosdjgpp*, - i386-*-go32* and i386-go32-rtems*. - * configure: Rebuilt. - - * config/obj-coff.c (obj_coff_endef): Follow the historical - behavior if STRICTCOFF is not defined. - - * doc/internals.texi: Document STRICTCOFF. - -2000-08-22 Alexandre Oliva - - * write.c (TC_FIX_ADJUSTABLE): Define to 1, if not defined. - (fixup_segment) Use it instead of TC_DONT_FIX_NON_ADJUSTABLE. - * config/tc-i386.h (TC_DONT_FIX_NON_ADJUSTABLE): Remove. - (TC_FIX_ADJUSTABLE): Define. - * config/tc-arm.h (TC_DONT_FIX_NON_ADJUSTABLE): Remove. - (TC_FIX_ADJUSTABLE): Define. - * config/tc-i960.h, config/tc-m68k.h, config/tc-v850.h: - Likewise. - -2000-08-22 Eric Christopher - - * config/tc-mn10300.c: (md_apply_fix): New function. - (mn10300_force_relocation): New function. - (mn10300_fix_adjustable): New function. - - * config/tc-mn10300.h: (TC_FORCE_RELOCATION): Define. - (TC_HANDLES_FX_DONE): Define. - (obj_fix_adjustable): Define. - (MD_APPLY_FIX3): Define. - (TC_LINKRELAX_FIXUP): Define. - - * write.c: (TC_LINKRELAX_FIXUP): Define if not - previously defined. - (fixup_segment): Use TC_LINKRELAX_FIXUP. - - * doc/internals.texi: Document TC_LINKRELAX_FIXUP. - -2000-08-21 Jason Eckhardt - - * config/tc-i860.c (md_apply_fix3): Do not insert the immediate - if the fixup resulted in a relocation. - -2000-08-18 Nick Clifton - - * config/tc-arm.c (decode_shift): Replace as_tsktsk with as_warn. - Make reference to first element of shift_names explicit. - -2000-08-18 Alexandre Oliva - - * write.c (fixup_segment) [TC_DONT_FIX_NON_ADJUSTABLE]: Use - obj_fix_adjustable() and tc_fix_adjustable() to tell whether to - add a symbol's address. Removed all target-specific #ifdefs that - used to accomplished the same. - * config/tc-v850.h (TC_DONT_FIX_NON_ADJUSTABLE): Define. - * config/tc-m68k.h (TC_DONT_FIX_NON_ADJUSTABLE): Define. - * config/tc-arm.h (TC_DONT_FIX_NON_ADJUSTABLE): Define. - * config/tc-i960.h (TC_DONT_FIX_NON_ADJUSTABLE): Define. - * config/tc-i386.h (TC_DONT_FIX_NON_ADJUSTABLE): Define. - -2000-08-17 Kazu Hirata - - * dwarf2dbg.c: Fix formatting. - -2000-08-17 Nick Clifton - - * config/tc-arm.c (decode_shift): Allow illegal shifts by zero - to be recoded as logical shift lefts by zero. - -2000-08-16 Jim Wilson - - * config/tc-ia64.c (specify_resource, case IA64_RS_GR): Handle - postincrement modified registers. Handle IA64_OPND_R3_2 addl - source registers. - (note_register_values): Handle IA64_OPND_R3_2 operands. - -2000-08-16 Jason Eckhardt - - * config/tc-i860.c (md_operand): Silly typo fixed. - -2000-08-16 Nick Clifton - - * config/tc-arm.c (struct asm_shift): Delete. - (shift[]): Delete. - (enum asm_shift_index): New. - (struct asm_shift_properties): New. - (struct asm_shift_name): New. - (shift_properties[]); New. - (shift_names[]); New. - - (decode_shift): Use new structures. - Issue a warning is "ROR #0" is used. - Issue a warning if "ASR #0" or "LSR #0" is used. - - (md_begin): Initialise arm_shift_hsh table from new - asm_shift_name array. - -2000-08-16 Jakub Jelinek - - * config/tc-sparc.c: Kill all warnings. - (md_parse_option): Set -32/-64 for -xarch=, allow all -A archs - in -xarch= as well. - (md_show_usage): Update usage text. - -2000-08-16 Nick Clifton - - * config/tc-arm.c (do_bx): Warn about "bx px" not being very - useful. - -2000-08-15 Will Cohen - - * config/tc-sh.h (DWARF2_LINE_MIN_INSN_LENGTH): Defined. - - * config/tc-sh.c (md_assemble): Changed so debug_type - test performed for ppi_assemble - * config/tc-sh.c: Included dwarf2dbg.h. - (debug_line): Defined. - (md_assemble): Generates dwarf2 line info. - (sh_finalize): New function. Finalize dwarf2 info. - (assemble_ppi): Returns size of code generated. - (build_Mytes): Returns size of code generated. - (md_pseudo_table): Added "file" and "loc" psuedo ops. - * config/tc-sh.h (md_end): Defined. - (sh_finalize): Declared. - -2000-08-15 Alexandre Oliva - - * config/tc-sh.c (md_apply_fix) [BFD_RELOC_32, BFD_RELOC_16]: Use - md_number_to_chars. - -2000-08-14 Nick Clifton - - * config/tc-arm.c (do_bx): Allow "bx pc". - -2000-08-14 Jim Wilson - - * config/tc-ia64.c (md_longopts): Add -mconstant-gp and -mauto-pic. - (md_parse_option): Add OPTION_MCONSTANT_GP and OPTION_MAUTO_PIC. - (md_begin): Change assignment to md.flag to OR in the new bit. - -2000-08-14 Mark Elbrecht - - * config/obj-coff.c (obj_coff_endef) [BFD_ASSEMBLER]: Set the debug - flag for storage types C_ARG, C_REGPARM, C_FIELD, C_MOS, C_MOE, - C_MOU, and C_EOS. - -2000-08-14 Jason Eckhardt - - * NEWS: Mention i860 support. - -2000-08-14 Jeffrey A Law (law@cygnus.com) - - * config/tc-mn10300.h (DWARF2_LINE_MIN_INSN_LENGTH): Define. - -2000-08-14 Andreas Schwab - - * doc/c-arm.texi (ARM Directives): Fix warnings from makeinfo. - -2000-08-11 Andreas Schwab - - * doc/c-i860.texi (Opcodes for i860): Remove braces from @item - argument. - -2000-08-11 Kazu Hirata - - * expr.c: Fix formatting. - * config/obj-bout.c: Likewise. - -2000-08-10 Jason Eckhardt - - * doc/c-i860.texi: Flesh out the i860 section more. - -2000-08-10 Kazu Hirata - - * symbols.c: Fix formatting. - * expr.c: Likewise. - -2000-08-09 Diego Novillo - - * config/tc-i386.c (md_assemble): Skip suffix check if the opcode - modifier has the IgnoreSize bit set. - -2000-08-09 Alan Modra - - From Rodney Brown - * configure.in: Use elf on Unixware 7 (i586-sco-sysv5uw7.1.0) - * configure: Regenerate. - -2000-08-09 Kazu Hirata - - * hash.c: Fix formatting. - * gasp.c: Likewise. - -2000-08-08 Jason Eckhardt - - * config/tc-i860.h: Rework completely for BFD_ASSEMBLER. - (i860_fix_info): New enum. - (MD_APPLY_FIX3): Define. - (WORKING_DOT_WORD): Define. - (TC_HANDLES_FX_DONE): Define. - (DIFF_EXPR_OK): Define. - (LISTING_HEADER): Define. - (TARGET_FORMAT): Select target format based on endian flag. - (TARGET_BYTES_BIG_ENDIAN): Default to little endian. - (target_big_endian): Add external declaration. - - * config/tc-i860.c: All existing code reworked completely. Other - new code shown below. - (SYNTAX_SVR4): Define. - (target_warn_expand): New variable. - (md_shortopts): Declare and define (-Qy, -Qn, and -V options). - (md_longopts): Declare and define with new options (-EL, -EB, - and -mwarn-expand). - (md_show_usage): New function. - (md_operand): New function. - (obtain_reloc_for_imm16): New function. - (md_apply_fix3): New function. - (tc_gen_reloc): New function. - -2000-08-08 Stephane Carrez - - * config/tc-m68hc11.c (build_jump_insn): Make sure the - 2 bytes of the jump address are in the same frag. - (find): Accept 68hc12 register indirect modes. - - * NEWS: Mention 68HC11 & 68HC12 support. - -2000-08-07 Richard Henderson - - * config/tc-ia64.c (unwind): Add prologue_mask member. - (dot_vframe): Elide psp_gr record if it overlaps prologue_gr. - (dot_save): Likewise for pfs_gr, rp_gr, and preds_gr. - (dot_body): Clear unwind.prologue_mask. - (dot_prologue): Set it. Accept a register second argument. - -2000-08-07 Kazu Hirata - - * config/atof-ieee.c: Fix formatting. - * config/atof-tahoe.c: Likewise. - -2000-08-06 Nick Clifton - - * config/tc-sparc.c (md_begin): Fix typo in recent formatting - work. - - * doc/as.texinfo (Pseudo Ops): Update to include descriptions - of .popsection, .previous, .pushsection, .subsection, - .version, .vtable_entry, .vtable_inherit and .weak. - -2000-08-05 Kazu Hirata - - * config/tc-cris.c: Fix formatting. - * config/tc-i386.c: Likewise. - * config/tc-sparc.c (sparc_ip): Simplify the code. - -2000-08-04 Kazu Hirata - - * config/tc-cris.c: Rearrange code for readability. - * config/tc-d10v.c: Fix formatting. - * config/tc-m32r.c: Likewise. - * config/tc-sparc.c: Likewise. - -2000-08-02 Jim Wilson - - * config/tc-ia64.c (emit_one_bundle): Call ia64_free_opcode - before ia64_find_opcode. - (md_assemble): Likewise. - -2000-08-01 Nick Clifton - - * config/tc-arm.c (do_mrs): Fix skip of 'cpsr_all' flag. - Undo some formatting fixes. - -2000-08-01 Kazu Hirata - - * config/obj-som.c: Fix formatting. - * config/obj-ieee.c: Likewise. - * config/tc-arm.c: Likewise. - * config/tc-v850.c: Likewise. - -2000-08-01 Nick Clifton - - * doc/c-m68k.texi (section M680x0 Options): Turn into a table - index by command line option. - -2000-08-01 Michael Sokolov - - * doc/c-m68k.texi (@cindex @samp{--pcrel}): Rewrite option description. - (@node M68K-Branch): Rewrite to match the reality. - -2000-07-31 Jason Eckhardt - - * doc/c-i860.texi: New file. - * doc/Makefile.am (CPU_DOCS): Add c-i860.texi. - * doc/Makefile.in: Regenerate. - * doc/all.texi: Add I860 as relevant architecture. - * doc/as.texinfo: Include i860 dependent file c-i860.texi. - -2000-07-31 Kazu Hirata - - * config/tc-d30v.c: Fix formatting. - -2000-07-31 Michael Sokolov - - * config/tc-m68k.c (flag_keep_pcrel, OPTION_PCREL): Add --pcrel option. - (md_convert_frag_1, md_estimate_size_before_relax): When making DBcc - long emit a long branch if available instead of an absolute jump, never - emit absolute jumps for anything with --pcrel. - - * doc/c-m68k.texi: Document new command line option. - -2000-07-29 Marek Michalkiewicz - - * config/tc-avr.c: Use PARAMS macro in function declarations. - Don't declare md_pcrel_from_section (already in tc-avr.h). - (avr_operands): Use AVR_UNDEF_P and AVR_SKIP_P macros. - (avr_operand): Don't set (unsigned) op_mask to -1. - -2000-07-28 Jason Eckhardt - - * configure.in: Add bits for i860-stardent-{sysv4, elf}*. - * configure: Regenerated. - * config/obj-elf.c (obj_elf_type): Recognize a fifth type - of operand to the .type directive (.e.g, "type"). - -2000-07-28 Alan Modra - - * as.h (warn_comment, found_comment, found_comment_file): Declare. - * app.c (do_scrub_chars): Record where first comment found. - * read.c (read_a_source_file): Init found_comment on entry, and - notify whether comments found on exit. - * config/tc-hppa.c (md_shortopts): Add "c". - (md_longopts): Add warn-comment. - (md_parse_option): Handle it. - (md_show_usage): Show available options. - * config/tc-hppa.h (WARN_COMMENTS): Define if TE_LINUX - -2000-07-27 Andrew Cagney - - * config/tc-mn10300.c (md_convert_frag): Fix printfs. - (tc_gen_reloc): Add cast when assigning bfd_abs_symbol to - sym_ptr_ptr - (md_estimate_size_before_relax): Don't fall off end of function. - -2000-07-27 Kazu Hirata - - * config/tc-avr.c: Fix formatting. - * config/tc-ns32k.c: Likewise. - -2000-07-27 Alan Modra - - * config/tc-d10v.c (find_opcode): Remove extraneous `='. - -2000-07-27 Kazu Hirata - - * config/tc-d10v.c: Fix formatting. - * config/tc-z8k.c: Likewise. - * config/tc-sparc.c: Likewise. - -2000-07-26 Dave Brolley - - * cgen.c (queue_fixup): Declare opinfo. - (gas_cgen_parse_operand): Mark unused parameters with ATTRIBUTE_UNUSED. - (gas_cgen_md_operand): Ditto. - (gas_cgen_md_apply_fix3): Ditto. - -2000-07-24 Mark Elbrecht - - * config/obj-coff.c (obj_frob_symbol): Don't merge - labels. Don't merge if the symbol isn't constant. Return - immediately if a symbol is merged. - -2000-07-22 Alan Modra - - * frags.c (frag_align): Correct absolute section alignment. - -2000-07-20 DJ Delorie - - * config/obj-coff.c (obj_frob_symbol): revert previous change, - it breaks linking against DLLs. - -2000-07-20 Hans-Peter Nilsson - - * configure.in: Add CRIS support. - * configure: Regenerate. - * Makefile.am: (CPU_TYPES): Add cris. - (CPU_OBJ_VALID) [aout]: Add cris. - (MULTI_CPU_TYPES): Add cris. - (MULTI_CPU_OBJ_VALID) [aout]: Add cris. - [coff]: Only i386 and mips are valid. - (TARGET_CPU_CFILES): Add config/tc-cris.c. - (TARGET_CPU_HFILES): Add config/tc-cris.h. - (MULTI_CFILES): Add config/e-crisaout.c and config/e-criself.c. - Regenerate dependencies. - * Makefile.in: Regenerate. - * aclocal.m4: Regenerate. - * as.c: Declare crisaout, criself. - * config/tc-cris.h, config/tc-cris.c: New. - * config/e-criself.c, config/e-crisaout.c: New. - * po/POTFILES.in, po/gas.pot: Regenerate. - -2000-07-20 Kazu Hirata - - * read.c: Fix formatting. - * write.c: Fix formatting. - -2000-07-19 H.J. Lu - - * sb.c: Include if exists for abort (). - -2000-07-19 Alan Modra - - * config/tc-hppa.c (hppa_fix_adjustable): Correct LR%/RR% comment. - (arg_reloc_stub_needed): #ifdef OBJ_SOM, not #ifdef SOM. - (pa_type_args): Same here. - -2000-07-17 Mark Elbrecht - - * config/obj-coff.c (obj_frob_symbol): Don't merge labels. Don't - merge if the symbol isn't constant. Don't call S_SET_EXTERNAL if - the storage class is already set. - -2000-07-17 Kazu Hirata - - * config/tc-m68hc11.c: Fix formatting. - * config/tc-mn10200.c: Likewise. - * config/tc-mn10300.c: Likewise. - * config/tc-pj.c: Likewise. - * config/tc-tic80.c: Likewise. - * config/tc-w65.c: Likewise. - -2000-07-17 Frank Ch. Eigler - - * expr.c (operand): Permit %bin literals if LITERAL_PREFIXPERCENT_BIN - is defined. - -2000-07-15 Ian Lance Taylor - - * doc/c-mips.texi (MIPS Opts): Remove erroneous space after - @code. - -2000-07-15 Alan Modra - - * config/tc-hppa.c (hppa_fix_adjustable): Use the same checks for - ELF as are used for SOM (except the 32-bit reloc one) to decide - whether a symbol can be reduced to a section symbol. Expand on - the comment for symbols involved in LR% and RR% expressions. - -2000-07-14 Nick Clifton - - * config/tc-mips.c (mips_disable_float_construction): New - static variable. Set to true if doubles should not be - constructed by loading two single width fp registers with - halves of the value. - (mips_ip): Test mips_disable_float_construction. - (md_longopts): Add command line switches --construct-floats - and --no-construct-floats. - (md_parse_option): Parse new command line options. - (md_show_usage): Describe new command line options. - - * doc/c-mips.texi: Document new command line options. - -2000-07-13 Koundinya K - - * configure.in: Remove the test /usr/dde for mips-*-sysv4*MP* - * configure: Regenerate. - -2000-07-13 Hans-Peter Nilsson - - * configure.in (DEFAULT_EMULATION setting): Revert part of - 2000-07-01 change that set te_multi=multi unless set to tmips. - * configure: Regenerate. - -2000-07-12 Mark Elbrecht - - * config/obj-coff.c (coff_frob_section): Add padding to the last - section when aligning it increases its size. - -2000-07-11 Kazu Hirata - - * config/tc-tic54x.c: Fix formatting. - -2000-07-10 Kazu Hirata - - * config/tc-h8500.c: Fix formatting. - * config/tc-tic54x.c: Fix formatting. - -2000-07-10 Alan Modra - - * config/tc-hppa.c (md_apply_fix): Check fmt 12 and 22 pc-rel - displacements correctly. - - * read.h (s_abort): Add ATTRIBUTE_NORETURN. - -2000-07-10 Ryan Bradetich - - * hash.c (hash_insert): Add cast to obstruct_alloc to fix - warning. - (hash_jam): Ditto. - -2000-07-09 Alan Modra - - From David Huggins-Daines - * config/te-hppalinux64.h: Add a new emulation. - * configure.in (emulations): Add configure bits to support the - 64-bit Linux/parisc target. - * configure: Regenerate. - - * config/tc-hppa.c (md_parse_option): Support `-V' for ELF. - (md_shortopts): Add `V' for ELF. - - * config/tc-hppa.c (arg_reloc_stub_needed): Define as zero except - when SOM or ELF_ARG_RELOC are defined. - (pa_type_args): Only set symbol_arg_reloc_info when SOM or - ELF_ARG_RELOC are defined. - (pa_stringer_aux): Don't pa_check_current_space_and_subspace here.. - (pa_stringer): ..Do it here instead. Fix comment typos. - (hppa_force_relocation): Cast enums to int before comparing with - ints. - - From Ryan Bradetich - * config/tc-hppa.c: Removed unneeded libbfd.h to fix macro - redifinition warning. - (md_apply_fix): Added cast from enum to int for fixP->fx_r_type. - (hppa_force_relocation): ditto - (md_apply_fix): Added cast to buf to fix warnings. - - * config/tc-hppa.h (pa_define_label, parse_cons_expression_hppa, - cons_fix_new_hppa, hppa_force_relocation): Prototype. - - * config/tc-hppa.c (reloc_type): It's an enum for OBJ_ELF. - (R_N0SEL, R_N1SEL): Define only for OBJ_SOM. - (tc_gen_reloc): Make `code' a reloc_type and `codes' a - reloc_type** to avoid warnings in switch. - (md_apply_fix): Make insn, val signed. Zap buf_wd and read insn a - little earlier instead. - - * config/tc-hppa.c (symbol_arg_reloc_info): Define for both som - and elf. - (pa_type_args): Use symbol_arg_reloc_info. - (struct pa_it): Make arg_reloc unsigned int. - (struct hppa_fix_struct): Likewise for fx_arg_reloc. - (pa_text, pa_data, pa_comm): Don't compile for TE_LINUX. - (pa_code): Delete. pa_text duplicates this function. - (md_pseudo_table): Call obj_elf_text for ".code" if TE_LINUX. - (fix_new_hppa): Argument offset is offsetT, arg_reloc is unsigned - int. - (cons_fix_new_hppa): Actually change selector to e_fsel when - warning about assuming so. - (tc_gen_reloc): More example elf arg reloc code. - (md_apply_fix): Use arg_reloc_stub_needed for elf too. - (hppa_force_relocation): Likewise. - - * config/tc-hppa.h: Use TARGET_ARCH_SIZE to select target include - files. - (pa_end_of_source): Prototype. - (hppa_fix_adjustable): Prototype. - (LABELS_WITHOUT_COLONS): Move it.. - * config/te-hppa.h: To here. - - * config/te-hppa64.h: New file. - - * config/tc-hppa.c: Use TARGET_ARCH_SIZE to select target reloc - type. - (md_apply_fix): Pass stdoutput to bfd_hppa_insn2fmt. Handle - format -10, -16, 16 relocs. - (hppa_elf_mark_end_of_function): Test for null - last_call_info->start_symbol - - * config/tc-hppa.c (pa_ip): In case 'V', pass `strict' to - CHECK_FIELD, not INSERT_FIELD_AND_CONTINUE. Don't pass opcode to - re_assesmble_* functions. Delete extraneous statements. Fix - typos in comments. - (md_apply_fix): Compare against 1048575 in case 21. Don't pass - insn to re_assemble_*. - -2000-07-08 Ulf Carlsson - - * doc/internals.texi (Expressions): Fix typo. - -2000-07-08 Kazu Hirata - - * config/tc-sh.c: Fix formatting. - * config/tc-tic54x.c: Fix formatting. - * depend.c: Fix formatting. - * flonum-konst.c: Likewise. - * flonum-mult.c: Likewise. - -2000-07-07 Kazu Hirata - - * config/tc-sh.c: Fix comments. - * config/obj-vms.c: Fix comments. - * config/tc-a29k.c: Likewise. - * config/tc-alpha.c: Likewise. - * config/tc-h8300.c: Likewise. - * config/tc-h8500.c: Likewise. - * config/tc-i370.c: Likewise. - * config/tc-ia64.c: Likewise. - * config/tc-m68hc11.c: Likewise. - * config/tc-m68k.c: Likewise. - * config/tc-mips.c: Likewise. - * config/tc-ns32k.c: Likewise. - * config/tc-ppc.c: Likewise. - * config/tc-z8k.c: Likewise. - -2000-07-06 Mark Elbrecht - - * config/obj-coff.c (TC_COFF_SECTION_DEFAULT_ATTRIBUTES): New. - Default to '(SEC_LOAD | SEC_DATA)'. - (obj_coff_section) [BFD_ASSEMBLER]: Use it. - - * doc/internals.texi (CPU Backend): Describe - TC_COFF_SECTION_DEFAULT_ATTRIBUTES. - -2000-06-06 Andrew Cagney - - * as.c (parse_args): NULL terminate the long option list. - -2000-06-04 Andrew Cagney - - * config/tc-d30v.h: Include "write.h" for fixS. - (d30v_start_line, md_pcrel_from_section): Add function prototypes. - -2000-07-05 Nick Clifton - - * config/tc-d30v.c (write_2_short): Further changes to warning - messages produced when combining EITHER_BUT_PREFER_MU attributed - opcodes. - -2000-07-05 DJ Delorie - - * MAINTAINERS: new - -2000-07-04 Alexandre Oliva - - * config/tc-arm.c (psrs): Accept combinations of flags. - -2000-07-03 Marek Michalkiewicz - - * config/tc-avr.c: Change _ () to _() around all strings marked - for translation (exception from the usual coding style). - (avr_opt): New struct variable, how the new switches are set. - (OPTION_MMCU): Define as 'm' and actually use. - (md_longopts): Add -mall-opcodes, -mno-skip-bug, -mno-wrap. - (show_mcu_list): New function, display the list of known MCUs. - (md_show_usage): Document the new switches. Call show_mcu_list. - (avr_set_arch): Change 'm' to OPTION_MMCU. - (md_parse_option): Call show_mcu_list if unknown MCU specified. - Handle the new switches. - (avr_operands): Disable warnings for undefined combinations of - operands if -mall-opcodes. Disable warnings for skipping two-word - instructions if enhanced core or -mno-skip-bug. - (avr_operand): Accept all addressing modes on avr1 if -mall-opcodes. - (md_apply_fix3): Reject 8K wrap if >8K or -mno-wrap. - (md_assemble): Accept opcodes not supported by MCU if -mall-opcodes. - (avr_ldi_expression): Warn about implicit lo8(). - * config/tc-avr.h (md_pcrel_from_section): Add prototype. - -2000-07-01 Koundinya K - - * configure.in: Add entry for mips-*-sysv4*MP* - * configure: Rebuild - * config/tc-mips.c (mips_target_format): Return elf32-tradbigmips or - elf32-tradlittlemips for traditional mips targets. - * config/tc-mips.c (md_estimate_size_before_relax): Duplicate the - test for Link Once sections as in adjust_reloc_syms. - * config/te-tmips.h: New file for traditional mips targets. Define - TE_TMIPS. - -2000-06-29 Mark Elbrecht - - * config/obj-coff.c (obj_coff_setcion) [BFD_ASSEMBLER]: If the - flags argument is not present, don't change an existing section's - section's attributes. If the flags argument is present, warn if the - attributes don't match the section's current attributes. When - long section names are supported, set SEC_LINK_ONCE and - SEC_LINK_DUPLICATES_DISCARD for a new .gnu.linkonce section. - -2000-06-29 Hans-Peter Nilsson - - * config/obj-aout.c (obj_aout_type): Do not ignore for undefined - symbols; create them. - -2000-06-29 Mark Elbrecht - - * write.c (set_segment_vma): New: Set vma and lma for a segment. - (write_object_file) [BFD_ASSEMBLER && OBJ_COFF && TE_GO32]: Use it. - -2000-06-27 Aldy Hernandez - - * config/tc-mips.c (mips_ip): handle "(foo-.-4)" type of - expressions. Ignore the problem when handling 16 bit signed - immediates, because the assembler will take care of the relocation - later. - -2000-06-27 Nick Clifton - - * config/tc-d30v.c (write_2_short): Do not allow opcodes with - the EITHER_BUT_PREFER_MU attribute to be combined into a reverse - sequential order, and emit warning messages if the input source - code contains constructs like that, or parallel constructs - containing such opcodes. - -2000-06-26 Marek Michalkiewicz - - * config/tc-avr.c (mcu_types): Rename avr4 to avr5, add avr4. - Add more MCU types for avr4 and avr5. Replace at94k{10,20,40} - with just at94k. Change AVR_ISA_85xx back to AVR_ISA_2xxx. - (md_show_usage): Update usage message. - (md_parse_option): Allow redefinition of MCU type within the - same avr[1-5] bfd machine type. Show both old and new MCU type - in the error message. - (md_apply_fix3): Support 8K wrap if AVR_ISA_MEGA is not set. - Simplify 8K wrap code. - -2000-06-25 Kazu Hirata - - * config/obj-aout.c: Remove all uses of DEFUN. - * config/obj-ieee.c: Likewise. - * config/tc-sh.c: Fix comment typos. - * config/tc-tahoe.c: Likewise. - * config/tc-vax.c: Likewise. - * config/tc-w65.c: Likewise. - * config/tc-z8k.c: Likewise. - * config/tc-h8300.c (build_bytes): Assemble ldmac correctly. - -2000-06-24 DJ Delorie - - * config/tc-i386.c (md_estimate_size_before_relax): Revert - more changes from Sept 1999 - (tc_i386_fix_adjustable): ditto - (md_apply_fix3): ditto - -2000-06-24 Frank Ch. Eigler - - * cgen.c (expr_jmp_buf_p): New validity flag for expr_jmp_buf. - (gas_cgen_parse_operand): Set it around expression() call. - (gas_cgen_md_operand): Test for it before longjmp(). - -2000-06-24 Kazu Hirata - - * config/tc-h8500.c: Remove all uses of DEFUN. - * config/tc-sh.c: Likewise. - * config/tc-w65.c: Likewise. - * config/tc-z8k.c: Likewise. - - * config/tc-h8500.c: Fix typos in comments. - -2000-06-23 Frank Ch. Eigler - - * expr.c (operand): Permit $hex literals if LITERAL_PREFIXDOLLAR_HEX - is defined. - -2000-06-23 matthew green - - * expr.c (operand): Do not as_bad() if RELAX_PAREN_GROUPING is - defined. Fix error message for `[' grouping. - -2000-06-22 Kazu Hirata - - * config/tc-h8300.c: Fix formatting and comment typos. - -2000-06-22 Timothy Wall - - * config/tc-ia64.c (note_register_values): Move premature QP - notation clearing into the appropriate place. - -2000-06-22 Alan Modra - - * dep-in.sed: Escape literal `.'s on patterns. Trim off `../' - first before anything else. Add bin-bugs.h, emul.h and progress.h - Sort list of files as for $(OBJS) in Makefile.am. - - * Makefile.am (DEP): grep for leading `/' in DEPA, and fail if we - find one. Remake dependencies. - ($(OBJS)): Add bin-bugs.h, emul.h, and progress.h Sort the list. - * Makefile.in: Regenerate. - * doc/Makefile.in: Regenerate. - - * config/tc-i386.c (i386_displacement): Don't assume a constant - displacement is necessarily 16 bits when in 16 bit code mode. - (md_assemble): Instead size the displacement here after we know - for sure that a .code16gcc operand hasn't automatically added - operand size prefixes. - -2000-06-21 H.J. Lu - - * Makefile.am: Rebuild dependency. - * Makefile.in: Rebuild. - -2000-06-21 Kazu Hirata - - * config/tc-h8300.c (parse_reg): Make the function static. - (parse_exp): Likewise. - -2000-06-20 DJ Delorie - - * config/tc-i386.c (tc_i386_fix_adjustable): Revert change from - Sept 1999; RVA relocs need to be treated more like DIR32 relocs - for cygwin import libraries to work properly. - -2000-06-20 H.J. Lu - - * Makefile.am: Rebuild dependency. - * Makefile.in: Rebuild. - * configure: Likewise. - * doc/Makefile.in: Likewise. - -2000-06-20 Timothy Wall - - * doc/internals.texi (CPU backend): Add @itemx for - TC_START_LABEL_WITHOUT_COLON. - * doc/c-tic54x.texi: New. - * doc/as.texinfo: Add tic54x features and include primary tic54x - documentation file. - * doc/all.texi: Add C54X. - * doc/Makefile.am (CPU_DOCS): Add c-tic54x.texi. - * doc/Makefile.in: Regenerate. - * configure.in: Add tic54x and define LIBM for tic54x. - * configure: Regenrate. - * config/tc-tic54x.[ch]: New. - * config/obj-coff.h: Add tic54x. - * Makefile.am: (CPU_TYPES): Add tic54x. - (TARGET_CPU_CFILES): Add 'tc-tic54x.c'. - (TARGET_CPU_HFILES): Add 'tc-tic54x.h'. - (as_new_LDADD): Add $(LIBM). - * Makefile.in: Regenerate. - -2000-06-18 Stephane Carrez - - * doc/Makefile.am (CPU_DOCS): Added 68hc11 file. - * doc/c-m68hc11.texi: Document 68HC11 and 68HC12 port. - * doc/as.texinfo: Likewise. - - * configure, Makefile.in: Regenerate. - * configure.in (emulations): Recognize m6811 and m6812. - * Makefile.am (CPU_TYPES, TARGET_CPU_CFILES, TARGET_CPU_HFILES): - Added files for 68hc11 and 68hc12 assembler. - * config/tc-m68hc11.c: Assembler for 68hc11 and 68hc12. - * config/tc-m68hc11.h: Header definition for that assembler. - -2000-06-18 Nick Clifton - - * symbols.c (resolve_symbol_value): Use bfd_octets_per_byte - instead of OCTETS_PER_BYTE. - - * config/tc-v850.c: Fix compile time warnings. - * config/tc-ppc.c: Fix compile time warnings. - -2000-06-18 H.J. Lu - - * configure.in: Don't emulate i386-pc-pe-coff with i386coff. - * configure: Rebuild. - -2000-06-17 Mark Elbrecht - - * config/obj-coff.c (obj_coff_weak): Typo fix: Change BFD_ASSEMLER - to BFD_ASSEMBLER. - -2000-06-16 Nick Clifton - - * config/tc-mips.c (md_parse_option): Accept RM5200,RM5230, - RM5231, RM5261, RM5721 and RM7000 as r5000 cpu variants. - - * doc/c-mips.texi: Document newly accepted cpu variants. - -2000-06-15 Ulf Carlsson - - * config/tc-mips.h: Remove definition of ONLY_STANDARD_ESCAPES. - -2000-06-13 Ulf Carlsson - - * macro.c (getstring): Make it possible to escape the quote - character. - -2000-06-13 Catherine Moore - - * config/tc-hppa.c (pa_export): Weak symbols can be global. - -2000-06-13 H.J. Lu - - * configure: Regenerate. - -2000-06-09 Alan Modra - - * app.c (do_scrub_begin): Don't default lex[';'] as a line - separator. - * doc/internals.texi (line_separator_chars): Semicolon is no - longer a default. Mention null and newline as defaults. - - * read.c (is_end_of_line): Remove ifdef TC_HPPA. - - * config/tc-i386.h (line_separator_chars): Explicitly mention `;' - * config/tc-i860.h (line_separator_chars): Likewise. - * config/tc-h8300.c (line_separator_chars): Likewise. - * config/tc-i960.c (line_separator_chars): Likewise. - * config/tc-m68k.c (line_separator_chars): Likewise. - * config/tc-mips.c (line_separator_chars): Likewise. - * config/tc-ns32k.c (line_separator_chars): Likewise. - * config/tc-sparc.c (line_separator_chars): Likewise. - * config/tc-vax.c (line_separator_chars): Likewise. - - * config/tc-h8300.c (comment_chars): Use string initialiser. - * config/tc-i960.c (line_comment_chars): Likewise. - * config/tc-z8k.c (comment_chars, line_comment_chars, - line_separator_chars): Likewise. - - * config/tc-arm.c (line_separator_chars): Always use `;', not just - for TE_LINUX. - -2000-06-08 Nick Clifton - - * config/tc-arm.c (cons_fix_new_arm): Assign correct reloc value - for size 1 fixes. - -2000-06-08 David O'Brien - - * configure.in (VERSION): Update to show this is the CVS mainline. - -2000-06-08 Matthew Jacob - - * config/tc-alpha.c (md_undefined_symbol): Properly understand that - $at is the integer register $r28, vs. both $r28 and the floating - point register $f28. - -2000-06-08 James E. Wilson - - * config/tc-ia64.c (generate_unwind_image): Call ia64_flush_insns. - (dot_endp): Don't call ia64_flush_insns. - (emit_one_bundle): Don't delete prologue/body records from - unwind_record list in first loop. Rewrite second loop to account for - this. - -2000-06-07 David Mosberger - - * config/tc-ia64.c: Add missing prototypes. - (generate_unwind_image): Cast argument to output_unw_records call. - -2000-06-07 Denis Chertykov - - * config/tc-avr.c (avr_operand): fix the formatting of the comment. - -2000-06-07 Denis Chertykov - - * config/tc-avr.c (AVR_ISA_???): moved to include/opcode/avr.h - (REGISTER_P): likewise. - (avr_opcodes): uses include/opcode/avr.h - (avr_operand): enable ld r,Z or st r,Z for at90s1200. - -2000-06-04 Alan Modra - - * read.c (is_end_of_line): No ';' for TC_HPPA. Add missing - initializers too. - -2000-06-03 H.J. Lu - - * read.c (is_end_of_line): Put back `;'. - -2000-06-03 Alan Modra - - * config/tc-i386.c (md_shortopts): Remove 'm', add 'q' to non-elf. - -2000-06-01 Alan Modra - - * expr.c (operand): Test is_end_of_line outside switch to catch - line separator chars that are also operators. - (operator): Return O_illegal for line separator chars. - - * read.c (is_end_of_line): Use 1 instead of 99. Don't set `;' - entry (or `!' entry for TC_HPPA). - - * config/tc-arm.c (my_get_float_expression): Cast to unsigned char - before indexing is_end_of_line. Remove redundant check for '\0'. - (fp_op2): Likewise. - * config/tc-h8500.c (md_assemble): Likewise. - * config/tc-mcore.c (md_assemble): Likewise. - * config/tc-tic30.c (tic30_find_parallel_insn): Likewise. - (md_atof): Likewise - - * config/tc-m88k.c (s_bss): Cast to unsigned char before indexing - is_end_of_line. - * config/tc-mcore.c (mcore_cons): Likewise. - (mcore_float_cons): Likewise. - (mcore_stringer): Likewise. - * config/tc-tic30.c (tic30_find_parallel_insn): Likewise. - -2000-06-01 Scott Bambrough - - * config/tc-arm.c (do_mrs): Allow SPSR_BIT to be set correctly. - -2000-05-29 Nick Clifton - - * config/tc-sh.c: Fix compile time warning messages. - - * config/tc-mips.c: Fix compile time warning messages. - -2000-05-29 Philip Blundell - - * doc/as.texinfo: Update copyright dates. - (Local Labels): Delete misplaced mention of ARM. - * NEWS: Mention ARM ELF support. - -2000-05-27 Alexandre Oliva - - * config/tc-mn10300.c (md_assemble): Copy size to real_size before - it is modified, and use the real_size to compute the frag address - for dwarf2 line info. - -2000-05-27 Alan Modra - - * Makefile.am (DEP, DEP1, dep, dep-in, dep-am): Use a better sed - line-matching scheme to cope with automake moving variables around. - ($(TARG_CPU_O)): Remove dependency on TARG_CPU_DEP_@target_cpu_type@ - * Makefile.in: Regenerate. - -2000-05-26 Jakub Jelinek - - * config/tc-sparc.c (sparc_relax): New. - (md_longopts): Add -relax and -no-relax options. - (md_parse_options, md_show_usage): Likewise. - (md_apply_fix3): Optimize tail call into branch always if possible. - -2000-05-04 Donald Lindsay - - * config/tc-d10v.c (write_2_short, parallel_ok, md_assemble, - d10v_cleanup) implement Mitsubishi's newly explained branch-packing - rules, with warning when a GAS statement specifies a packing that - will result in an instruction being squashed. - Added typdef packing_type and enumerals, changed various integer - literals to use the enumerals. - -2000-05-24 David Mosberger - - * config/tc-ia64.c (dot_restorereg_p): New function. - (md_pseudo_table): Add restorereg.p. - (output_X3_format): Fix typo: record type should be UNW_X3, not UNW_X1. - (output_X4_format): Fix typo: record type should be UNW_X4, not UNW_X2. - - * config/tc-ia64.h (unw_record_type): Add unwabi. - (unw_r_record): Rename member MASK to GRMASK. Add sub-structure - called MASK with members for imask, and the masks produced by - fr_mem, gr_mem, br_mem, and frgr_mem. - (unw_p_record): Add members ABI and CONTEXT. - (unw_x_record): Add member AB. - * config/tc-ia64.c (enum reg_symbol): Add REG_PSP and REG_PRIUNAT - as pseudo-register for use during unwind info generation. - (AR_PFS, AR_LC): New macros. - (enum pseudo_type): Add PSEUDO_FUNC_REG to permit declaring registers - whose names start with an at sign (as in "@priunat"). - (pseudo_func): Add "svr4", "hpux", "nt" constants and "priunat" - register. - (unwind_list, unwind_tail, current_unwind_entry, proc_start, - proc_end, unwind_info, personality_routine): Consolidate into - "unwind" structure to reduce offset-table use. Add member - NEXT_SLOT_NUMBER to track the slot number for the next instruction - to be emitted. - (output_R1_format, output_R3_format, output_P3_format, - output_P6_format): Initialize R with zero to reduce compiler warnings. - (output_P7_format): Ditto. Add `default' branch to switch - statement to reduce compiler warnings. - (output_P8_format, output_B1_format, output_B4_format): Ditto. - (output_P4_format): Rename 2nd & 3rd arg to IMASK and IMASK_SIZE. - (format_ab_reg): Rename from format_a_b_reg. Merge A and B args - into single argument. - (output_X1_format, output_X3_format): Initialize R with zero to reduce - compiler warnings. Merge A and B args into single argument. - (output_X2_format, output_X4_format): Remove unused variable R. Merge - A and B args into single argument. - (free_record): Removed (wasn't used). - (free_list_records): Also free imasks in prologue records. - (output_prologue, output_prologue_gr): Initialize mask bits to zero. - (output_spill_mask): Remove. - (output_unwabi): New function. - (output_epilogue, output_label_state, output_copy_state): Call - alloc_record. - (output_spill_psprel, output_spill_sprel, output_spill_psprel_p, - output_spill_sprel_p, output_spill_reg, output_spill_reg_p): Add AB - argument. - (process_one_record): New locals FR_MASK and GR_MASK. Ignore - gr_mem, fr_mem, br_mem, and frgr_mem records and instead emit them - as part of handling the prologue records. Emit region's imask if - we have one. Handle unwabi, epilogue, label_state, copy_state, - spill_psprel, spill_sprel, spill_reg, spill_psprel_p, - spill_sprel_p, and spill_reg_p records. - (set_imask, count_bits, slot_index): New function. - (fixup_unw_records): Fix region size computation. Handle - epilogue, spill_reg, spill_sprel, spill_psprel, spill_reg_p, - spill_sprel_p, and spill_psprel_p records. Merge mask bits of - frgr_mem, fr_mem, gr_mem, br_mem on a per-region basis and - set_imask accordingly. Update imask for gr_gr, and br_gr records. - (convert_expr_to_ab_reg, convert_expr_to_xy_reg): New function. - (dot_save): Use manifest constants for applicaton registers. - Handle REG_PR and REG_PRIUNAT. - (dot_restore): Don't just ignore it. - (dot_restorereg): New function.. - (generate_unwind_image): Ensure unwind info is a multiple of eight - bytes, not just four bytes. - (dot_handlerdata, dot_unwentry): Demand empty rest of line. - (dot_altrp): Don't just ignore it. - (dot_savemem): New function. Replaces dot_savesp() and - dot_savepsp(). Use manifest constants for applicaton registers. - Handle REG_PR and REG_PRIUNAT. - (dot_savef): Simplify. - (dot_saveb): Support generation of br_gr. - (dot_spillreg, dot_spillmem, dot_spillreg_p, dot_spillmem_p, - dot_label_state, dot_copy_state): New function. - (dot_unwabi): Don't just ignore it. - (md_pseudo_table): Add restorereg, spillreg, spillsp, spillpsp, - spillreg.p, spillsp.p, spillpsp, label_state, copy_state, - unwabi, vframesp, and vframepsp. Fix typo alprp->altrp. - (emit_one_bundle): Set slot number for prologue/body records - *before* emitting the first insn. - (emit_one_bundle): Set UNWIND.NEXT_SLOT_NUMBER. - (md_begin): Declare "psp" pseudo-register. - (md_operand): Handle PSEUDO_FUNC_REG. Fix printing of error message - so we don't get segfault. - (output_psp_sprel): Output sp/psp relative offsets as 4-byte word - counts as required per SW Conventions manual - (output_rp_psprel, output_rp_sprel, output_pfs_psprel,output_pfs_sprel, - output_preds_psprel, output_preds_sprel, output_spill_base, - output_unat_psprel, output_unat_sprel, output_lc_psprel, - output_lc_sprel, output_fpsr_psprel, output_fpsr_sprel, - output_priunat_psprel, output_priunat_sprel, output_bsp_psprel, - output_bsp_sprel, output_bspstore_psprel, output_bspstore_sprel, - output_rnat_psprel, output_rnat_sprel, output_spill_psprel, - output_spill_sprel, output_spill_psprel_p, output_spill_sprel_p):Ditto. - (dot_vframe): Implement. - (dot_vframesp, dot_vframepsp): New function. - -2000-05-23 Hans-Peter Nilsson - - * configure.in (i386-*-freebsd a.out entry): Quote properly. - * configure: Regenerate. - -2000-05-23 Alan Modra - - * config/tc-i386.c (md_assemble): Pass jump reloc in fr_var... - (md_estimate_size_before_relax): so we can use it here instead of - old kludges. Localise vars to blocks. Comment. - - * frags.c (frag_new): Update fr_var comments. - * frags.h (struct frag): Ditto. - -2000-05-22 Richard Henderson - - * config/tc-ia64.c (FUNC_PC_RELATIVE): New. - (pseudo_func): Add pcrel. - (operand_match): Handle IA64_OPND_TGT64. - (build_insn): Likewise. - (md_begin): Initialize pseudo_func[FUNC_PC_RELATIVE]. - (ia64_gen_real_reloc_type): Handle FUNC_PC_RELATIVE. - (fix_insn): Handle all three 64-bit relocation types. - -2000-05-22 Hans-Peter Nilsson - - * obj.h (struct format_ops): New members begin, app_file, - s_set_other, s_set_desc, s_get_type, s_set_type, - separate_stab_sections, init_stab_section. - - * config/obj-multi.h: Update GPL notice to v2. - (obj_begin): New. - (obj_app_file): New. - (S_SET_SIZE): Test s_set_size for NULL before calling. - (S_SET_ALIGN): Similar for s_set_align. - (S_SET_OTHER): New. - (S_SET_DESC): New. - (S_GET_TYPE): New. - (S_SET_TYPE): New. - (SEPARATE_STAB_SECTIONS): New. - (INIT_STAB_SECTION): New. - (EMIT_SECTION_SYMBOLS): New. - (AOUT_STABS) [OBJ_MAYBE_AOUT]: Define. - - * config/obj-elf.h: Update GPL notice to v2. - Mention that this file is included from obj-multi.h. - (obj_begin): Wrap definition in ifndef. - (elf_file_symbol): Constify declaration. - (obj_app_file): Ditto. - (SEPARATE_STAB_SECTIONS, INIT_STAB_SECTION, OBJ_PROCESS_STAB): - Wrap in ifndef SEPARATE_STAB_SECTIONS. - - * config/obj-elf.c (elf_s_set_other): New. - (elf_file_symbol): Constify argument. - (elf_separate_stab_sections): New. - (elf_init_stab_section): New. - (elf_format_ops): Add new members. Remove comma at end. - - * config/obj-ecoff.c (ecoff_separate_stab_sections): New. - (ecoff_format_ops): Add new fields. Remove comma at end. - Mention inconsistency for emit_section_symbols. - - * config/obj-coff.h (c_dot_file_symbol): Constify declaration. - - * config/obj-coff.c (c_dot_file_symbol): Constify argument. - (coff_separate_stab_sections): New. - (coff_format_ops): Add new members. - - * config/obj-aout.c (obj_aout_sec_sym_ok_for_reloc): New. - (obj_aout_s_set_other): New. - (obj_aout_s_set_desc): New. - (obj_aout_s_get_type): New. - (obj_aout_s_set_type): New. - (obj_aout_separate_stab_sections): New. - (aout_format_ops): New members added. Use obj_aout_process_stab, - not 0. Use obj_aout_sec_sym_ok_for_reloc, not 0. - (obj_aout_frob_symbol): Add ATTRIBUTE_UNUSED to args as - appropriate. - (obj_aout_line, obj_aout_weak, obj_aout_type): Ditto. - -2000-05-22 Alan Modra - - * config/tc-i386.c (tc_i386_fix_adjustable): Prevent adjustment - for OBJ_MAYBE_ELF too. Use S_IS_EXTERNAL instead of S_IS_EXTERN. - (md_estimate_size_before_relax): Ensure jumps to weak and - externally visible symbols are relocatable. - -2000-05-20 Hans-Peter Nilsson - - * stabs.c (aout_process_stab): Make global. - (s_desc): Add ATTRIBUTE_UNUSED to args as appropriate. - * read.h (aout_process_stab): Declare. - - * configure.in (EMULATIONS) [i386aout, i386coff, i386elf]: - Generalize to *aout, *coff *elf. - * configure: Regenerated. - - * doc/internals.texi (Object format backend): Say - SEPARATE_STAB_SECTIONS needs to be nonzero, not just defined. - - * Makefile.am (TARG_ENV_HFILES): Delete te-multi.h. - * Makefile.in: Regenerated. - -2000-05-19 Catherine Moore - - * cgen.h (GAS_CGEN_MAX_FIXUPS): Check if already defined. - -2000-05-18 Alan Modra - - * config/tc-hppa.c (md_apply_fix): Mask out immediate bits of - instruction to reflect change in re_assemble_*. - -2000-05-18 Jeffrey A Law (law@cygnus.com) - - * configure.in (hppa-*-hpux11*): If the cpu is hppa*64*, then - build PA64 ELF tools. - * configure: Rebuilt. - -2000-05-17 Alan Modra - - * Makefile.am: Regenerate dependencies. - * Makefile.in: Regenerate. - -2000-05-15 Nick Clifton - - * config/tc-arm.c (struct asm_psr): Add boolean field - distinguishing between CSPR and SPSR. Rename 'number' field - to 'field'. - (psrs): Rearrange contents to match new asm_psr structure. - (arm_psr_parse): Move next to psr_required_here. Make it - return an asm_psr structure. - (psr_required_here): Use asm_psr structure returned by - arm_psr_parse. - (do_msr): Reorganise to allow psr_required_here to be called - only once. - (md_undefined_name): Mark 'name' parameter as unused, since - the COFF target does not use it. - -2000-05-14 David O'Brien - - * config/te-386bsd.h: Clean up comments to adhere to the GNU coding - standards. - * config/te-aux.h: Likewise. - * config/te-dpx2.h: Likewise. - * config/te-go32.h: Likewise. - * config/te-hp300.h: Likewise. - * config/te-hppa.h: Likewise. - * config/te-i386aix.h: Likewise. - * config/te-ic960.h: Likewise. - * config/te-interix.h: Likewise. - * config/te-nbsd532.h: Likewise. - * config/te-pc532mach.h: Likewise. - * config/te-ppcnw.h: Likewise. - * config/te-psos.h: Likewise. - * config/te-sparcaout.h: Likewise. - * config/te-sun3.h: Likewise. - * config/te-sysv32.h: Likewise. - -2000-05-14 Alan Modra - - * config/tc-h8300.c (do_a_fix_imm): Don't rely on `short' being 16 - bits. Instead explicitly mask and sign extend. Do the 8 bit mask - and sign extend without an if statement. - (build_bytes): Likewise. - -2000-05-14 Kazu Hirata - - * config/tc-h8300.c (do_a_fix_imm): Output a reloc for no - X_add_symbol L_32 case. - -2000-05-14 David O'Brien - - * config/te-freebsd.h: New file. - -2000-05-13 Alan Modra - - * asintl.h (gettext, dgettext, dcgettext, textdomain, - bindtextdomain): Replace defines with those from intl/libgettext.h - to quieten gcc warnings. - - * NEWS: Mention x86 .arch and -q. - - * config/tc-i386.c (quiet_warnings): New. - (md_assemble): Use quiet_warnings. - (md_parse_option): Set quiet_warnings from -q. - (md_show_usage): Mention -q, delete -m. - (flag_do_long_jump): Delete. - (md_parse_option): Remove -m. - (md_show_usage): Remove -m. - (md_create_long_jump): Remove useless flag_do_long_jump code. - - * as.c (parse_args): In case OPTION_DEFSYM, use a valueT to hold - the symbol value, and use bfd_scan_vma if BFD_ASSEMBLER. - -2000-05-13 Alan Modra - Alexander Sokolov - - * doc/c-i386.texi (i386-Arch): New section. - (i386-Syntax): Mention .intel_syntax and .att_syntax. - - * config/tc-i386.c (cpu_arch_name, cpu_arch_flags): New. - (smallest_imm_type): Use smallest opcode for shift by one if cpu - architecture has been given and is not 486. - (set_cpu_arch): New. - (md_pseudo_table): Add .arch. - (md_assemble): Warn if cpu architecture has been given and an - unsupported instruction. - - * config/tc-i386.h (SMALLEST_DISP_TYPE): Delete. - Move operand_types bit defines after relevant template field. - (template): Add cpu_flags. - (Cpu*): Define. - (arch_entry): New. - -2000-05-12 Alexandre Oliva - - * config/tc-mn10300.h (md_end): Define. - (mn10300_finalize): Declare. - * config/tc-mn10300.c: Include dwarf2dbg.h. - (debug_line): Define. - (md_assemble): Generate dwarf2 line info. - (mn10300_finalize): New function. Finalize dwarf2 info. - -2000-05-11 Ulf Carlsson - - * config/tc-mips.c (md_estimate_size_before_relax): Use the - external version of the relocation for weak symbols. - -2000-05-08 David Mosberger - - * config/tc-ia64.c (output_P7_format, case mem_stack_f): Output fixed - frame size in units of 16 bytes, as required per SW Conventions manual. - (output_unw_records): Output info-block header as a dword to get - byte-order right. - -2000-05-08 Alan Modra - - * as.h: #include "file", not on files from ../include. - (as_abort, as_fatal): Add ATTRIBUTE_NORETURN. - * config/tc-m68k.c (m68k_ip): Fix signed/unsigned warnings. - (md_convert_frag): Add ATTRIBUTE_UNUSED. - (tc_coff_symbol_emit_hook): Ditto. - (OPTCOUNT): Cast to int to avoid compiler warning. - (md_begin): Fix signed/unsigned warnings. - -2000-05-08 Michael Sokolov - - * config/tc-m68k.c (md_convert_frag_1): Abort if we end up in the - ABRANCH LONG case for a conditional branch on a 68000. - (md_estimate_size_before_relax): Likewise. Also handle - flag_short_refs correctly for ABRANCH, BCC68000, and DBCC. - (m68k-ip: case ABSL): Relax absolute references to 16-bit - PC-relative on all CPUs. - (md_estimate_size_before_relax): Likewise. - -2000-05-04 Alan Modra - - * as.c (parse_args): Just mention current year in printed - copyright message. - -2000-05-03 J.T. Conklin - - * config/tc-ppc.c (pre_defined_registers): Add entries for vector - unit registers. - (md_parse_option): Recognize -m7400. - -2000-05-03 Ian Lance Taylor - - * config/atof-ieee.c (gen_to_words): When adding carry back in, - don't permit lp to become less than the words array. - -2000-05-03 Rodney Brown - - config/tc-mcore.c (md_apply_fix3): BFD_RELOC_MCORE_PCREL_IMM11BY2 - Fix little-endian case. - -2000-05-03 David O'Brien - - * as.c (parse_args): Update copyright. - -2000-05-03 Mark Elbrecht - - * config/tc-i386.h (SUB_SEGMENT_ALIGN): If TE_GO32, return 4 - for the .bss section too. - -2000-05-02 Alan Modra - - * configure.in: Set em=linux for hppa-*-linux. - * configure: Regenerate. - * doc/Makefile.in: Regenerate with correct automake. - - * frags.c (frag_grow): Sanity check chunk_size. - - * config/obj-elf.h: #include "bfd.h" not - * config/obj-som.h: Likewise. - * config/obj-ieee.h: Likewise. - - * config/tc-hppa.h: Test BFD_ARCH_SIZE, not BFD64. - - * config/tc-hppa.c (log2): Only compile when OBJ_SOM. - (md_pseudo_table): Fully initialise OBJ_ELF cases. - (fix_new_hppa): Add ATTRIBUTE_UNUSED to args as appropriate. - (pa_ip): low_sign_unext now returns via function value. Use - re_assemble_* instead of dis_assemble_* and - INSERT_FIELD_AND_CONTINUE combination. Don't call sign_unext - unnecessarily. - (md_convert_frag): Add ATTRIBUTE_UNUSED to args as appropriate. - (md_section_align, md_parse_option, md_show_usage, - md_undefined_symbol, pa_align, pa_block, pa_brtab, pa_try, - pa_callinfo, pa_code, pa_comm, pa_end, pa_enter, pa_entry, - pa_exit, pa_export, pa_import, pa_label, pa_leave, pa_level, - pa_origin, pa_param, pa_proc, pa_procend, pa_space, pa_spnum, - pa_version, pa_compiler, pa_copyright, pa_data, pa_fill, pa_lsym, - pa_text): Likewise. - (md_apply_fix): Change type of new_val to offsetT. Delete w1, w2, - w, resulti. Add insn, val. Move bfd_get_32 and bfd_put_32 - outside of switch. Correct mask and shifting errors in case 10 - and case -11. In case 21, compare against signed range to suit - hppa_field_adjust changes. In case 12, use re_assemble_12. In - case 17 and case 22, use offsetT variable to properly check range. - Use re_assemble_* here too. - (evaluate_absolute): Change type of value to offsetT. Call - hppa_field_adjust to do the work for us. - (pa_parse_cmpb_64_cmpltr): Delete save_s. - (pa_parse_cmpib_64_cmpltr): Ditto. - (pa_build_unwind_subspace): Delete unused var subseg. Change type - of i to unsigned int. - (pa_type_args): Conditionally declare symbol if OBJ_SOM. - (pa_end_of_source): Return type is void. - -2000-05-01 Catherine Moore - - * macro.c (macro_expand_body): Don't prepend macro number with zeroes. - -2000-05-01 Denis Chertykov - - * config/tc-avr.c: ATTRIBUTE_UNUSED added to the necessary places. - More comments added. - (md_begin): Removed "construct symbols for each register name". - Because register names conflicts with GCC generated function - names. - (avr_operand): Now constant numbers can be used as a register - identifiers (0 as r0, 31 as r31). - (md_assemble): use skip_space () before parsing instruction - operands. - -2000-05-01 Alan Modra - - * configure.in: Set bfd_gas=yes on i386-*-pe and i386-*-nt* to - ensure all pe targets use bfd. Remove unnecessary bfd_gas=yes on - arm-*-netbsd* and arm-*-wince as this is set for all arm*. - * configure: Regenerate. - -2000-04-29 Andreas Jaeger - - * as.h: Correctly check GCC version. - -2000-04-26 David O'Brien - - * doc/as.1: Fix unbalanced brackets. - - * config/tc-i386.c (comment_chars): Don't use '/' as comment start if - TE_FreeBSD. - (line_comment_chars): Set to '/' if TE_FreeBSD. - -2000-04-25 Jeffrey A Law (law@cygnus.com) - - * configure.in: Configury support for PA64 (currently disabled). - * configure: Rebuilt. - -2000-04-25 Machida Hiroyuki - - * config/tc-mips.c (s_change_sec): Use record_alignment, not - bfd_set_section_alignment. - -2000-04-25 Alan Modra - - * config/tc-i386.c (offset_in_range): Ensure shift counts are less - than 32. - -2000-04-24 Nick Clifton - - * doc/c-arm.texi (ARM Directives): Document behaviour of .align 0. - * doc/as.texinfo (Align): Include arm and strongarm in list of - targets that have the second form of the behaviour of the .align - directive. - -2000-04-24 Mark Klein - - * config/obj-som.c: Terminate obj_pseudo_table. - -2000-04-24 Clinton Popetz - - * as.c (parse_args): Allow md_parse_option to override -a listing - option. - * config/obj-coff.c (add_lineno): Change type of offset parameter - from "int" to "bfd_vma." - * config/tc-ppc.c (md_pseudo_table): Add "llong" and "machine." - (ppc_mach, ppc_subseg_align, ppc_target_format): New. - (ppc_change_csect): Align correctly for XCOFF64. - (ppc_machine): New function, which discards "ppc_machine" line. - (ppc_tc): Cons for 8 when code is 64 bit. - (md_apply_fix3): Don't check operand->insert. Handle 64 bit - relocations. - (md_parse_option): Handle -a64 and -a32. - (ppc_xcoff64): New. - * config/tc-ppc.h (TARGET_MACH): Define. - (TARGET_FORMAT): Move to function. - (SUB_SEGMENT_ALIGN): Use ppc_subseg_align. - -2000-04-23 Denis Chertykov - - * config/tc-avr.c: New AVR_ISA_ defined. - (md_assemble): Handle opcodes with optional operands (lpm,elpm). - (avr_operand): Handle 'a', 'v' and 'z' constraint letters needed - for `fmul', `movw' and `lpm R,Z' instructions. - (avr_operands): Warn if current opcode is a two-word instruction - and previous opcode was cpse/sbic/sbis/sbrc/sbrs. - (avr_opcodes): New commands added. - (REGISTER_P): Check 'a' and 'v' constraint letters. - (mcu_types): New MCU added. - -2000-04-22 Timothy Wall - - * config/tc-ia64.c (pseudo_func[]): Add new "nat" entry equivalent - to "natval". - (operand_match): Conditionally insert default bit values for IMMU9. - -2000-04-14 Matthew Green - - * configure.in: Add NetBSD/sparc ELF and NetBSD/sparc64 support. - * configure: Rebuilt. - -2000-04-21 Jeffrey A Law (law@cygnus.com) - Jason Eckhardt - - * config/tc-hppa.c (md_apply_fix): Handle new PA2.0 formats. - - * config/tc-hppa.c (CHECK_ALIGN): New macro. - Added handling of new operand types l,y,&,fe,fE,fx. - -2000-04-21 Richard Henderson - David Mosberger - Timothy Wall - Andrew MacLeod - Jim Wilson - - * Makefile.am (CPU_TYPES): Add ia64. - (TARGET_CPU_CFILES): Add config/tc-ia64.c. - (TARGET_CPU_HFILES): Add config/tc-ia64.h. - * Makefile.in: Rebuild. - * app.c (do_scrub_chars): Handle DOUBLESLASH_COMMENTS. - * configure: Rebuild. - * configure.in: Recognize ia64 as cpu type. Set bfd_gas. - (ia64-*-elf*, ia64-*-linux-gnu*): New targets. - * expr.c (expr): Handle md_optimize_expr. - * read.c (LEX_HASH): Add comment. - * config/tc-ia64.c, config/tc-ia64.h: New files. - -2000-04-21 Richard Henderson - - * config/tc-d30v.c (write_2_short): Disregard opcode1->ecc when - bundling a non-delayed branch type instruction. - -2000-04-20 Alexandre Oliva - - * config/tc-mn10300.c (HAVE_AM30): Define. - (md_assemble): Use it. - -2000-04-19 Alan Modra - - * config/obj-elf.c (obj_elf_change_section): Check for changed - section attributes. - - * Makefile.am: (CPU_MULTI_VALID): Remove. - (MULTI_CPU_TYPES): Define. - (MULTI_CPU_OBJ_VALID): Define. - (DEPTC): Use the above. - (DEPOBJ): Same here. - (DEP2): And here. - Regenerate dependencies. - * Makefile.in: Regenerate. - -2000-04-19 Michael Sokolov - - * Makefile.am (YACC, LEX): Get them from configure. - -2000-04-18 H.J. Lu (hjl@gnu.org) - - * config/tc-i386.c (offset_in_range): Use addressT instead of - bfd_vma for non-bfd assemblers. - -2000-04-17 Alan Modra - - * config/tc-i386.c (offset_in_range): Sign extend val so BFD64 - doesn't give spurious errors. - -2000-04-14 Michael Sokolov - - * as.h (SEEK_SET): Define if undefined. - -2000-04-13 Alan Modra - - * config/tc-arm.c (md_apply_fix3): Don't use UL suffix on - constants, and don't assume offsetT is 32 bits. - -2000-04-12 Andrew Cagney - - * config/tc-d10v.h: Include "write.h" to get definition of fixS. - (md_pcrel_from_section): Add prototype. - (d10v_fix_adjustable): Add prototype. - (d10v_force_relocation): Replace 'struct fix' with 'fixS'. - - * config/tc-d10v.c (md_apply_fix3): Add paren around &&. - -2000-04-12 Nick Clifton - - * config/tc-d10v.c (find_opcode): Correctly calculate position of - symbol in frag chain. - -2000-04-10 Alan Modra - - * config/tc-i386.c (fits_in_signed_byte): Change arg to offsetT. - (fits_in_unsigned_byte, fits_in_unsigned_word): Ditto. - (fits_in_signed_word, smallest_imm_type): Ditto. - (md_assemble): Use an offsetT var to hold offsetT values, not a - long. - (offset_in_range): New. - (md_assemble): Use it. - (md_convert_frag): Change type of target_address, opcode_address, - and displacement_from_opcode_start to offsetT. - (md_create_short_jump): Change type of offset to offsetT. - (md_create_long_jump): Ditto. - (md_apply_fix3): Use -4, not 0xfffffffc for BFD_RELOC_386_PLT32. - (md_chars_to_number): Remove. - (output_invalid): Remove duplicate prototype. - -2000-04-09 Nick Clifton - - * Makefile.am (CPU_TYPES): Add 'avr'. - (TARGET_CPU_CFILES): Add 'tc-avr.c'. - (TARGET_CPU_HFILES): Add 'tc-avr.h'. - - * Makefile.in: Regenerate. - - * doc/as.texinfo: Add M32R documentation. - -2000-04-07 Andrew Cagney - - * configure.in (WARN_CFLAGS): Set to -W -Wall by default. Add - --enable-build-warnings option. - * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions. - * Makefile.in, configure: Re-generate. - -2000-04-07 Nick Clifton - - * config/tc-arm.c (md_apply_fix3): Treat BFD_RELOC_ARM_PCREL_BLX - in the same way as BFD_RELOC_ARM_PCREL_BRANCH, and - BFD_RELOC_THUMB_PCREL_BLX lie BFD_RELOC_THUMB_PCREL_BRANCH. - (tc_gen_reloc): Accept BFD_RELOC_{ARM|THUMB}_PCREL_BLX. - (arm_force_relocation): Force relocations for - BFD_RELOC_{ARM|THUMB}_PCREL_BLX as well. - -2000-04-05 J"orn Rennecke - - * config/tc-sh.c (get_operands): There's no third operand if the - first operand is an immediate. - -2000-04-05 J"orn Rennecke - - * config/tc-sh.c (immediate): Delete. - (sh_operand_info): Add immediate member. - (parse_reg): Use A_PC for pc. - (parse_exp): Add second argument 'op'. All callers changed. - (parse_at): Expect pc to be coded as A_PC. - Use immediate field in *op. - (insert): Add fourth argument 'op'. All callers changed. - (build_relax): Add second argument 'op'. All callers changed. - (insert_loop_bounds): New function. - (build_Mytes): Remove DISP_4. - Split IMM_[48]{,BY[24]} into IMM[01]_[48]{,BY[24]}. Add REPEAT. - (assemble_ppi): Use immediate field in *operand. - (sh_force_relocation): Handle BFD_RELOC_SH_LOOP_{START,END}. - (md_apply_fix): Likewise. - (tc_gen_reloc): Likewise. Check for a pcrel BFD_RELOC_SH_LABEL. - -2000-04-05 Alexandre Oliva - - * config/tc-sparc.c (sparc_ip): Avoid string pasting. - -2000-04-04 Hans-Peter Nilsson - - * internals.texi (CPU backend): Document - TC_CHECK_ADJUSTED_BROKEN_DOT_WORD. - -2000-04-04 Alan Modra - - * po/gas.pot: Regenerate. - - * as.c (show_usage): Restore translated part of bug string. - * gasp.c (show_usage): Likewise. - - * Makefile.am (MKDEP): Use gcc -MM rather than ../mkdep. - (DEP): Quote when passing vars to sub-make. Use "mv -f" rather - than move-if-change. - (DEP1): Modify for "gcc -MM". - (DEPTC): Likewise. - (DEPOBJ): Likewise. - (DEP2): Likewise. - (CLEANFILES): Add DEPTCA, DEPOBJA, DEP2a, DEPA. - Update dependencies. - * Makefile.in: Regenerate. - -2000-04-03 Alexandre Oliva - - * config/tc-mn10300.c (md_pseudo_table): Use constant names. - (md_begin): Likewise. - (HAVE_AM33): New macro. - (md_assemble): Use it. Match r_regs and xr_regs only if - HAVE_AM33. - -2000-04-03 Alan Modra - - * as.h: #include "bin-bugs.h" - * as.c (show_usage): Use REPORT_BUGS_TO. - * gasp.c: #include "bin-bugs.h" - (show_usage): Use REPORT_BUGS_TO. - - * config/tc-sparc.c (md_show_usage): Add a trailing newline. - -2000-04-03 Hans-Peter Nilsson - - * write.c (write_object_file) [! WORKING_DOT_WORD]: If defined, - call TC_CHECK_ADJUSTED_BROKEN_DOT_WORD for each word after - adjustments. - -2000-04-03 Alan Modra - - * config/tc-i386.c (i386_immediate): Don't assume a constant - immediate is necessarily 16 bits when in 16 bit code mode. - (md_assemble): Instead set guess_suffix here after we have checked - registers. - -2000-04-02 Richard Henderson - - * config/tc-d30v.c (check_range): Allow signed or unsigned 32-bit - quantities. Correct right shift sign extension. - (build_insn): Make `number' unsigned long. Mask top 6 bits of - 32-bit value when shifting into place. - -2000-04-01 Ian Lance Taylor - - * app.c: Add ATTRIBUTE_UNUSED as needed. - * config/tc-ppc.c: Likewise. - (ppc_size): Make unsigned long. - (ppc_insert_operand): Add casts to avoid warnings. - -2000-03-31 Nick Clifton - - * config/tc-d10v.h (md_flush_pending_output): Define. - -2000-03-29 Nick Clifton - - * config/tc-sh.h (SEG_NAME): New macro: return the name of a - segment. Works for both BFD_ASSEMBLER and others. - (SUB_SEGMENT_ALIGN): Use SEG_NAME. - -2000-03-29 Nick Clifton - - * listing.c (LISTING_LHS_WIDTH): Default depends on - LISTING_WORD_SIZE. - (LISTING_LHS_WIDTH_SECOND): Default to LISTING_LHS_WIDTH. - -2000-03-27 Ian Lance Taylor - - * config/tc-sh.c (md_show_usage): Use backslash before newline in - string literal. - -2000-03-27 Alan Modra - - * config/tc-avr.h (TC_HANDLES_FX_DONE): Define. - - * config/tc-avr.c (mcu_types): Add missing initialiser. - (md_pcrel_from_section): Add prototype. - (avr_operand): Remove redundant test of unsigned < 0. - (avr_cons_fix_new): Ensure exp_mod_pm zero on function exit. - -2000-03-27 Denis Chertykov - - * config/tc-avr.c: New file for AVR support. - * config/tc-avr.h: Likewise. - * configure.in: Add AVR support. - * configure: Regenerate. - -2000-03-26 Timothy Wall - - * gasp.c (macro_op): Add new argument to check_macro call. - Macro structure definitions moved to macro.h - * sb.h: Add argument to prototype for input_scrub_include_sb. - * input-scrub.c (input_scrub_include_sb): Allow disabling of sb - nesting checks with an additional flag. - (struct input_save): Add flag to indicate whether current sb - should be checked for proper macro/conditional nesting. - (input_scrub_push/pop): Save/restore nest check flag. - (input_scrub_next_buffer): Ditto. Also call end of macro hook if - defined. - * macro.c (check_macro): Allow caller to retrieve parsed macro - information if a pointer is provided. This information may be - used by the new macro hooks. - * macro.h: Update prototype for check_macro. Macro struct - definitions moved here from macro.c/gasp.c. - * read.c (read_a_source_file): Add parameter to check_macro call, - and pass macro info to the macro hook, if defined. - (input_scrub_insert_line): New. Allow insertion of a line of - characters into the input stream. - (input_scrub_insert_file): New. Allow insertion of an arbitrary - file into the input stream. - (s_include): Use input_scrub_insert_file. - * internals.texi: Document new macro hooks. - * as.h: New prototypes added. - -2000-03-26 Alan Modra - - * config/tc-i386.c: Don't start any as_bad or as_warn message with - an initial capital letter. - (i386_index_check): Reindent. - -2000-03-19 Nick Clifton - - * config/tc-arm.c (md_apply_fix3): Fix bug detecting overflow of pc - relative branches. - -2000-03-17 Thomas de Lellis - - * config/tc-arm.c (do_t_adr): Flag "adr Rd,label" - instruction operand bad if Rd > 7 when generating - thumb instructions. Prevents for example, - "adr r12,label" from silently failing and generating - the wrong instruction. - -2000-03-17 Nick Clifton - - * config/tc-arm.c (md_apply_fix3): Handle same-section relocations - that have a destingation >= 0x400000. - Fix compile time warning messages. - -2000-03-16 J"orn Rennecke - - * config/tc-sh.c (md_begin): When encountering insn that are - not supported by the current arch, only change the name if - its contents are the same as prev_name. - (get_specific): If the the architecture doesn't match, fail. - -2000-03-16 J"orn Rennecke - - * config/tc-sh.c (IDENT_CHAR): Define. - (parse_reg): Use it instead of isalnum. Put r[0..7]_bank operand - matching back where it came from. - -2000-03-16 J"orn Rennecke - - * config/tc-sh.c (md_show_usage): Add description of -dsp. - -2000-03-15 Jonathan Larmour - - * config/tc-sh.c (parse_reg): Match r[0..7]_bank operands before - normal operands. - -2000-03-15 Kazu Hirata - - * config/tc-h8300.c: Add ATTRIBUTE_UNUSED as appropriate. - -2000-03-13 Hans-Peter Nilsson - - * expr.c (operand) [case 'f']: When testing if '0f' can start a - floating-point-number, make sure 'f' is in FLT_CHARS. - -2000-03-11 Hans-Peter Nilsson - - * read.c (TC_IMPLICIT_LCOMM_ALIGNMENT): New default-definition. - (s_lcomm_internal): Use it. - * doc/internals.texi (CPU backend): Document it. - * config/obj-evax.h (TC_IMPLICIT_LCOMM_ALIGNMENT): Set to 2**3 - bytes. - -2000-03-10 Geoffrey Keating - - * config/tc-mips.c (mips_ip): Don't put stuff in .rodata - when embedded-pic. - - * config/tc-mips.c (SWITCH_TABLE): The ELF embedded-pic - implementation doesn't have special handling for switch - statements. - (macro_build): Allow for code in sections other than .text. - (macro): Likewise. - (mips_ip): Likewise. - (md_apply_fix): Do pc-relative relocation madness for MIPS ELF. - Don't perform relocs if we will be outputting them. - (tc_gen_reloc): For ELF, just use fx_addnumber for pc-relative - relocations. Allow BFD_RELOC_16_PCREL_S2 relocs when - embedded-pic. - -2000-03-09 Catherine Moore - - * config/tc-m32r.c (m32r_fix_adjustable): Look up the - relocation type based on the entry in the fixup structure. - Put S_IS_EXTERN processing back in. - -2000-03-08 H.J. Lu (hjl@gnu.org) - - * Makefile.am (install-exec-tooldir): Depend on - install-exec-bindir for parallel make. - * Makefile.in: Regenerated. - -2000-03-06 Nick Clifton - - * config/tc-m32r.c (struct md_longopts): Add -m32r command line - switch. - (md_parse_option): Parse -m32r command line switch - disable m32rx - compatability. - (md_show_usage): Document new option. - - * doc/Makefile.am (CPU_DOCS): Add c-m32r.texi. - * doc/Makefile.in: Regenerate. - * doc/c-m32r.texi (M32R-Opts): Document new command line switch. - -2000-03-02 Michael Meissner - - * config/tc-d30v.c (check_range): Remove code that incorrectly - sign extended values where bits < 32. - -2000-03-02 H.J. Lu (hjl@gnu.org) - - * configure.in: Support --enable-targets=all on ia32. - * configure: Regenerated. - -2000-03-01 Nick Clifton - - * gasp.c (do_align): Remove bogus check of alignment value. - -2000-02-27 Thomas de Lellis - - * config/obj-elf.c (elf_frob_symbol): Remove code which when - TC_PPC was defined forced the type of a symbol with no other type - to be BSF_OBJECT. - -2000-02-27 Hans-Peter Nilsson - - * doc/internals.texi (CPU backend): Mention that - line_separator_chars do not break up comments. Fix typos for - LEX_AT and LEX_NAME descriptions. Document operands for - TC_EQUAL_IN_INSN, md_operand and md_section_align. Correct - description of md_create_short_jump usage. Document argument for - md_undefined_symbol. - -2000-02-27 Jakub Jelinek - - * config/tc-sparc.c (OPTION_UNDECLARED_REGS): New option. - (md_parse_option): Handle it. - (md_show_usage): Document it. - -2000-02-27 Ian Lance Taylor - - * config/tc-alpha.c (md_assemble): Accept `1' and `9' in an - opcode, for the instruction `pal19'. From Andrea Arcangeli - . - -2000-02-26 Alan Modra - - * config/tc-i386.c (i386_immediate): Move constant operand sizing - from here.. - (md_assemble): To here, before template operands are matched. - Also ensure a constant immediate is sign extended when we know the - size is at most 16 bits. This is to catch cases like "add - $0xffc0,%ax" where we don't know the size, and thus that the - immediate can be represented as Imm8S until after parsing the - register operand. - (i386_displacement): Similarly sign extend 16 bit constant - displacements. - (md_assemble): Relax 16-bit jump constant range check to suit sign - extended displacements. - -2000-02-26 Andreas Jaeger - - * doc/c-mips.texi (MIPS Opts): Fix typo in last patch. - -2000-02-25 Alan Modra - - * config/tc-i386.c (md_assemble): Don't swap intersegment jmp and - call operands when intel_syntax. - (intel_float_operand): Return 2 for "fi...". - (i386_operand_modifier): Change "DWORD PTR" test to suit above. - Return SHORT_MNEM_SUFFIX for "WORD PTR" when "fi...". Revert - earlier "SHORT" change. - (md_assemble): When determining suffix from Regs, exclude - InOutPortReg. - -2000-02-24 Nick Clifton - - * configure: Add arm-wince, mips-pe and sh-pe targets. - * configure: Regenerate. - - * config/obj-coff.h (COFF_WITH_PE): Define for mips-pe and - sh-pe targets. - (TARGET_FORMAT): Set to "pe-shl" for the sh-pe target and to - "pe-mips" for the mips-pe target. - - * config/tc-arm.c (insns): Change displacement encoded in BL - and B instructions if the target port is arm-wince. - (do_ldst): Do not bias the relocation offset if the target - port is arm-wince. - (md_pcrel_from): Add in missing relocation offset bias if the - target os arm-wince. - - * config/tc-mips.c (mips_target_format): Support COFF flavour. - (md_begin): Disable -G support for mips-pe target. - (md_apply_fix): Treat BFD_RELOC_RVA reloc as BFD_RELOC_32. - * config/tc-mips.h (USE_GLOBAL_POINTER_OPT): Add support for - COFF flavour. - - * config/tc-sh.c (md_begin): sh-pe target is little endian. - * config/tc-sh.h (SUB_SEGMENT_ALIGN): If using a BFD - assembler, just set the alignment to 4. - - * config/te-wince-pe.h: New file for WinCE targets. Define - TE_WINCE. - -2000-02-25 Alan Modra - - * config/tc-i386.c (md_assemble): Swap segments too for intel mode - string instructions. - (i386_operand_modifier): Set i.suffix = WORD_MNEM_SUFFIX for SHORT. - (i386_intel_memory_operand): After finding a segment override, - check again for no `[' before looking for a displacement. Bomb if - more than one displacement rather than silently discarding the - second and subsequent ones. Free strings malloc'd by - build_displacement_string. - -2000-02-24 Catherine Moore - - * config/obj-som.c (obj_pseudo_table): Add "weak". - (obj_som_weak): New routine. - -2000-02-24 Alan Modra - - * config/tc-i386.c (union i386_op): New. - (struct _i386_insn): Delete disps[], imms[], regs[]. Add op[]. - Throughout file replace occurences of disps[n], imms[n], regs[n] - with equivalent op[n].disps, op[n].imms, op[n].regs. Simplify - intel mode operand swapping. Add assert in regKludge and - fake_zero_displacement code. Test i.types[n] when outputting - displacements and immediates. Combine output of Disp16 with - Disp32. - (md_assemble): Don't try to fix broken UNIXWARE_COMPAT opcodes - when in intel mode by (not) reversing fsub and fdiv operands - before the template search. This fails for single operand - shorthand forms of the instruction, and if UNIXWARE_COMPAT is - undefined. Instead fix the base_opcode after we've found the - template. Move base_opcode xor with found_reverse_match from - opcode output code to before this fix so we test for the correct - opcodes. - (md_assemble): Don't use strcmp when deciding to ignore the suffix - check in intel mode. Instead compare opcodes. - - * config/tc-i386.h (TC_RELOC): Delete. - * config/tc-i386.c (TC_RELOC): Delete. Replace usage of TC_RELOC - with equivalent call to reloc. - - * as.h (flag_m68k_mri): Move declaration after target include, and - only declare when TC_M68K defined. Define as zero otherwise. - (LABELS_WITHOUT_COLONS, NO_PSEUDO_DOT): If undefined, define as 0. - * app.c (scrub_m68k_mri): Declare only when TC_M68K defined. - Define as zero otherwise. - (do_scrub_begin): Use m68k_mri parameter only when TC_M68K defined. - (struct app_save): Declare scrub_m68k_mri only when TC_M68K. - (app_push, app_pop): Save scrub_m68k_mri only when TC_M68K. - (do_scrub_chars): Use LABELS_WITHOUT_COLONS directly rather than - testing whether defined. - * cond.c (ignore_input): Use NO_PSEUDO_DOT directly. - * expr.c (operand): #ifdef unused case labels when TC_M68K undefined. - * read.c: Use LABELS_WITHOUT_COLONS and NO_PSEUDO_DOT directly - rather than testing whether defined. - (s_mri): Set flag_m68k_mri only when TC_M68K defined. - (parse_mri_cons): Declare and use only when TC_M68K. - * config/tc-hppa.h (LABELS_WITHOUT_COLONS): Define as 1. - * config/tc-m68k.h (NO_PSEUDO_DOT): Define as 1. - * config/tc-m88k.h (NO_PSEUDO_DOT): Define as 1. - - * NEWS: Mention IBM 370 support. - -2000-02-23 Richard Henderson - - * config/tc-i386.c (md_assemble): When swapping operands for - intel_syntax, assume everything that's not Imm or Disp is a - register. - -2000-02-23 Linas Vepstas - - * config/tc-i370.c, config/tc-i370.h: New files. - * Makefile.am: Add support for Linux/IBM 370. - * configure.in: Likewise. - * app.c (do_scrub_begin): Don't lex single quote when TC_I370. - * config/obj-elf.c: Include elf/i370.h - (obj_elf_section): Don't do anything special for flag_mri if TC_I370. - - * Makefile.in: Regenerate. - * configure: Regenerate. - - * doc/c-i370.texi: New file. - * doc/all.texi: Include it. - * doc/as.texinfo: And here. - * doc/Makefile.am(CPU_DOCS): Add c-i370.texi. - * doc/Makefile.in: Regenerate. - -2000-02-19 Michael Meissner - - * config/tc-d30v.c (parallel_ok): Use FLAG_NOT_WITH_ADDSUBppp to - determine if an instruction can be used in parallel with an ADDppp - or SUBppp instruction. - -2000-02-22 Andrew Haley - - * doc/c-mips.texi (MIPS Opts): Document -mgp32 and -mgp64. - -2000-02-22 Andrew Haley - - * config/tc-mips.c (mips_gp32): New variable. - (macro_build) Use mips_gp32. - (mips_ip): Ditto. - (md_longopts): Add "-mgp32" and "-mgp64". - (md_parse_option): Add OPTION_GP32 and OPTION_GP64. - - (OPTION_M7900): Change offset - (OPTION_NO_M7900): Ditto. - -2000-02-22 Alexandre Oliva - - * config/obj-coff.c (add_lineno): Accept non-positive lineno with - warning, and bump it to 1. - -2000-02-22 Ian Lance Taylor - - From Brad Lucier : - * dwarf2dbg.c (print_stats): Add cast to force printf argument to - match format. - -2000-02-21 Catherine Moore - - * config/tc-mips.c (MF_HILO_INSN): Define. - (mips_7000_hilo_fix): Declare. - (append_insn): Conditionally insert nops after an mfhi/mflo insn. - (md_parse_option): Check for 7000_HILO_FIX options. - (OPTION_M7000_HILO_FIX): Define. - (OPTION_NO_M7000_HILO_FIX): Define. - * doc/c-mips.texi (-mfix7000): Describe. - -2000-02-21 Alan Modra - - * listing.c (print_lines): Remove unused variable `end'. - - * config/tc-i386.c (md_assemble): Use `reloc()' to select reloc - type for JumpInterSegment output. Use enum bfd_reloc_code_real for - reloc_type when BFD_ASSEMBLER. - (md_estimate_size_before_relax): Use enum bfd_reloc_code_real for - reloc_type when BFD_ASSEMBLER. Move common code out of switch - statement and quell signed vs. unsigned comparison warning. - -2000-02-18 Nick Clifton - - * config/tc-d10v.c (find_opcode): Add a symbol's value to - the computed frag offset, rather than overwriting it. - -2000-02-17 J"orn Rennecke - - * config/tc-sh.c ("elf/sh.h"): Include. - (sh_dsp, valid_arch, reg_x, reg_y, reg_efg): New static variables. - (md.begin): Initialize target_arch. - Only include opcodes in has table that match selected architecture. - (parse_reg): Recognize register names for sh-dsp. - (parse_at): Recognize post-modify addressing. - (get_operands): The leading space is now optional. - (get_specific): Remove FDREG_N support. Add support for sh-dsp - arguments. Update valid_arch. - (build_Mytes): Add support for SDT_REG_N. - (find_cooked_opcode): New function, broken out of md_assemble. - (assemble_ppi, sh_elf_final_processing): New functions. - (md_assemble): Use find_cooked_opcode and assemble_ppi. - (md_longopts, md_parse_option): New option: -dsp. - * config/tc-sh.h (elf_tc_final_processing): Define. - (sh_elf_final_processing): Declare. - -2000-02-11 Jeffrey A Law (law@cygnus.com) - - * config/tc-hppa.c (pa_build_unwind_subspace): Use subseg_new to create - the unwinder subspace. Save the current seg/subseg before creating - the new seg/subseg. - -2000-02-10 Nick Clifton - - * config/tc-mcore.c (INST_BYTE0): Redefine to handle big and - little endian targets. - (INST_BYTE1): Redefine to handle big and little endian - targets. - (cpu_type): New type: Select between M340 and M210. - (parse_psrmod): New function: Parse the PSRCLR and PSRSET - instructions of the M340. - (md_assemble): Add support for the MULSH and OPSR classes of - instructions. - (md_atof): Add support for little endian targets. - (md_parse_option): Add support for -EL, -EB and -mcpu command - line switches. - (md_convert_frag): Add support for little endian targets. - (md_apply_fix3): Add support for little endian targets. - (md_number_to_chars): Add support for little endian targets. - -2000-02-10 Timothy Wall - - * read.c (read_a_source_file): If TC_START_LABEL_WITHOUT_COLON is - defined, use it to verify the symbol just read should be a label. - -2000-02-10 Timothy Wall - - * app.c (do_scrub_chars): Handle "||" for parallel instructions - when DOUBLEBAR_PARALLEL is defined. Avoid stripping whitespace - around colons when KEEP_WHITE_AROUND_COLON is defined. - * doc/internals.texi (CPU backend): Document DOUBLEBAR_PARALLEL - and KEEP_WHITE_AROUND_COLON. - -2000-02-08 Timothy Wall - - * read.c (s_rept): Call do_repeat, which abstracts the repeat - logic. - (do_repeat): New. Abstract repeat logic so that a "break" can be - implemented. - (end_repeat): New. Provide support for a "break" out of the - repeat loop. - * read.h: Add prototypes for new functions. - -2000-02-08 Timothy Wall - - * doc/internals.texi: Document NUMBERS_WITH_SUFFIX macro. - * as.h: Provide a default NUMBERS_WITH_SUFFIX definition (zero). - * expr.c: Handle numbers with suffixes if NUMBERS_WITH_SUFFIX is - non-zero. - -2000-02-08 Timothy Wall - - * read.c: Added elseif to directives table. - * read.h: Added prototype for s_elseif. - * doc/as.texinfo: Added description for elseif. - * cond.c (s_elseif): New function - -2000-02-04 Timothy Wall - - * listing.c (print_lines): Remove conditionals causing bug in - listings. - -2000-02-03 Timothy Wall - - * as.h: Define OCTETS_PER_BYTE and OCTETS_PER_BYTE_POWER - default values. - * frags.c (frag_new): Calculate fr_fix in octets - (frag_now_fix) Return offset as target address offset (bytes). - (frag_now_fix_octets) New - Return offset in octets (8-bit - quantities). - * frags.h: Added prototype for frag_now_fix_octets(). - Distinguish between octets and bytes in field descriptions. - * listing.c (calc_hex): Account for octets vs bytes when - printing addresses/offsets. - (print_lines) Ditto. Also, if LISTING_WORD_SIZE is not 1, and - target is little-endian, print the octets in a word in big-endian - order so that the display looks like a proper hexadecimal number, - instead of having the octets reversed. - * read.c (do_align): When recording alignment, alignment power - should be in terms of target bytes (minimum addressible unit) - instead of octets. - (do_org) Convert ORG target address (byte) argument into an - octet offset when generating a variable fragment. - * symbols.c (resolve_symbol_value): Symbol final value - converted to a target address offset (bytes) from its octet offset. - * config/obj-coff.c (coff_frob_symbol): Symbol target address - offset (bytes) is adjusted by the frag offset (octets) converted - to bytes. - (coff_frob_section) Section alignment power is in terms of bytes; - convert it to an octet alignment power when calculating size (and - size mask) in octets. Don't modify the section size in order to - "align" it for TI COFF, since that format has a different method - for storing alignment information. - -2000-02-01 Timothy Wall - - * stabs.c (generate_asm_file): Escape backslashes in stabs file - entries, matching the way GCC generates them. If not escaped, the - filename is encoded incorrectly. - -2000-01-31 Nick Clifton - - * config/tc-arm.c (reg_table): Add support for ATPCS register - naming conventions. - -2000-01-31 Geoff Keating - - * config/obj-coff.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Don't define if - already defined. - * config/tc-ppc.h [OBJ_XCOFF] (OBJ_COPY_SYMBOL_ATTRIBUTES): - New macro. - * config/tc-ppc.c (ppc_fix_adjustable): Don't look at the frag - of a symbol when we really care about its value. - -2000-01-19 Chandra Chavva - - * config/tc-mcore.c (md_assemble): Give warning message if - operands passes to instruction are more than the spec. - -2000-01-27 Thomas de Lellis - - * config/tc-arm.c (armadjust_symtab): If the assembler is in - Thumb mode but the label seen was not declared as '.thumb_func' - then set the ST_INFO type to STT_ARM_16BIT mode. This allows - correct disassembly of Thumb code bounded by non function labels. - -2000-01-27 Alan Modra - - * Makefile.am (MULTI_CFILES): Add config/e-i386aout.c - Add dependencies for e-i386aout.o. Fix 2 comment lines. - - * Makefile.in: Same here. - Update copyright. - - * configure.in: Set bfd_gas for i386-aout when primary target - is bfd. Handle i386aout emulation. Don't use te_file=multi, as - we may need the primary te_file. Remove incorrect comment. - - * configure: Regenerate. - - * config/e-i386aout.c: New file. - - * as.c (USE_EMULATIONS): Move to before print_version_id. - (struct emulation): Add i386aout. - (show_usage): Split text strings. Reformat -a text. Add --em - help. - Update copyright. - - * obj.h (struct format_ops): Add s_get_other and s_get_desc. - (aout_format_ops): New. - Update copyright. - - * read.c (s_lcomm_internal): Rewrite OBJ_AOUT,OBJ_BOUT - preprocessor conditional and add aout USE_EMULATIONS tests. - (read_a_source_file): Don't pass error strings to printf as - format arg. - Update copyright. - - * gasp.c (exp_get_abs): Don't pass error strings to printf as - format arg. - (do_data): Same here. - (process_file): And here. - Update copyright. - - * symbols.c (colon): Rewrite "already defined" fatal message - code for aout with USE_EMULATIONS. - Update copyright. - - * config/obj-aout.c (OBJ_HEADER): Define. - (obj_pseudo_table): Rename to aout_pseudo_table. Init all - fields of sentinel. - (obj_aout_frob_symbol): Expand S_GET_DESC, S_GET_TYPE, - S_GET_OTHER, S_SET_TYPE macros since we don't need obj-multi - forms here. - (obj_aout_type): Expand S_SET_OTHER here too. - (obj_read_begin_hook): Remove. - (aout_pop_insert): New. - (obj_aout_s_get_other): New. - (obj_aout_s_get_desc): New. - (aout_format_ops): New. - Update copyright. - - * config/obj-aout.h (obj_pop_insert): Define so non-multi usage - gets aout_pseudo_table. - (aout_pseudo_table): Declare. - (obj_read_begin_hook): Define. - Update copyright. - - * config/obj-coff.c (obj_pseudo_table): Rename to - coff_pseudo_table. - (coff_pop_insert): Use coff_pseudo_table. - (coff_sec_sym_ok_for_reloc): Remove. - (coff_format_ops): Add 0 entries for s_get_size, s_set_size, - and comment all zero entries and remove #if 0 code. - Update copyright. - - * config/obj-coff.h (obj_pop_insert): Define. - (coff_pseudo_table): Declare. - Update copyright. - - * config/obj-ecoff.c (ecoff_format_ops): Add 0 entries for - s_get_size, s_set_size. Comment all zero entries. - Update copyright. - - * config/obj-elf.c (elf_s_get_other): New function. - (obj_read_begin_hook): Rename to elf_obj_read_begin_hook. - (obj_symbol_new_hook): Rename to elf_obj_symbol_new_hook. - (elf_format_ops): Add elf_s_get_other, 0 s_get_size entry, and - comment. - (obj_elf_parse_section_letters): Don't pass error strings to - printf as format arg. - Update copyright. - - * config/obj-elf.h (ECOFF_DEBUGGING): Define when - OBJ_MAYBE_ECOFF. - (elf_s_get_other): Declare. - (S_GET_OTHER) Define as elf_s_get_other if not already - defined. - (S_SET_OTHER): Only define when not already defined. - (elf_obj_read_begin_hook): Declare. - (obj_read_begin_hook): Define. - (elf_obj_symbol_new_hook): Declare. - (obj_symbol_new_hook): Define. - Update copyright. - - * config/obj-multi.h: Add copyright header and protect against - multiple inclusion. Add * to all function pointers. - (OBJ_HEADER): If defined, include it rather than other defines - in this file. - (obj_frob_file_after_relocs): Test for NULL. - (obj_symbol_new_hook): Here too. - (obj_sec_sym_ok_for_reloc): And here. - (S_GET_OTHER): Define. - (S_GET_DESC): Define. - (ECOFF_DEBUGGING): Remove as it's done in obj-elf.h - (OBJ_MAYBE_ELF): Update comment. - - * config/tc-i386.c (i386_immediate): Add OBJ_MAYBE_AOUT to - OBJ_AOUT preprocessor conditional and handle emulation by - testing OUTPUT_FLAVOR. - (i386_displacement): Here too. - (md_section_align): Similarly here. - (i386_target_format): Conditionally compile when more than one - of OBJ_MAYBE_{ELF,COFF,AOUT} defined. Add aout case. - (i386_immediate): Fix error message for aout BFD_ASSMBLER. - (i386_displacement): Here too. - Update copyright. - - * config/tc-i386.h (AOUT_TARGET_FORMAT): Define for each TE_*. - Define TARGET_FORMAT for aout only when not multi. - Update copyright. - - * config/te-multi.h: Delete file as it's identical to te-generic.h - -2000-01-15 Alan Modra - - * config/tc-i386.h (DWORD_MNEM_SUFFIX): Delete. - * config/tc-i386.c (DWORD_MNEM_SUFFIX): Rename all occurrences to - LONG_MNEM_SUFFIX. - - * config/tc-i386.h (INTEL_DWORD_MNEM_SUFFIX): Rename to - DWORD_MNEM_SUFFIX. - * config/tc-i386.c (INTEL_DWORD_MNEM_SUFFIX): Here too. Fix some - comments. - -2000-01-13 Clinton Popetz - - * config/tc-mips.c (mips_do_align): New function. - * config/tc-mips.h (md_do_align): Define. - -2000-01-10 Philip Blundell - - * doc/c-arm.texi (ARM Options): Fix typo. - (ARM-Chars): Correct description of `#'. Mention that `;' is a - line separator for Linux. - * doc/as.texinfo (Comments): Mention the ARM. - -2000-01-10 Philip Blundell - - * configure.in (arm*-*-conix*): New target. - (arm*-*-linux-gnu*): Match instead of arm-*-linux* and - armv*-*-linux-gnu. - * configure: Regenerate. - -2000-01-03 Martin v. Loewis - - * config/obj-elf.c (elf_pseudo_table): Define visibility pseudos. - (obj_elf_visibility): New function. - - * doc/as.texinfo (Visibility): New node: document visibility - pseudo ops. - -For older changes see ChangeLog-9899 diff --git a/gas/ChangeLog-0001 b/gas/ChangeLog-0001 new file mode 100644 index 00000000000..9d8af6fbe89 --- /dev/null +++ b/gas/ChangeLog-0001 @@ -0,0 +1,7703 @@ +2001-12-31 Richard Henderson + + * config/tc-ia64.c (errata_nop_necessary_p): Prototype. + (make_unw_section_name): Constify local variables. + + * config/tc-ia64.c (has_suffix_p): New. + (note_register_values): Use it instead of strstr. + +2001-12-31 Jeffrey A Law (law@redhat.com) + + * config/tc-hppa.c (pa_ip): Handle new 'c' mode completers, + 'X', 'M', and 'A'. + +2001-12-21 Jakub Jelinek + + * config/tc-sparc.h (TC_PARSE_CONS_EXPRESSION): Define. + (sparc_cons): Provide prototype. + * config/tc-sparc.c (tc_gen_reloc): Handle BFD_RELOC_*_PCREL and + BFD_RELOC_SPARC_PLT{32,64}. Enumerate for which relocs + reloc->addend = fixp->fx_addnumber shouldn't be done instead of + enumarating for which pc relative ones it should be done. + (sparc_cons_special_reloc): New variable. + (sparc_cons): New function. + (cons_fix_new_sparc): Use sparc_cons_special_reloc. + * testsuite/gas/sparc/pcrel.s: New test. + * testsuite/gas/sparc/pcrel.d: Expected output. + * testsuite/gas/sparc/pcrel64.s: New test. + * testsuite/gas/sparc/pcrel64.d: Expected output. + * testsuite/gas/sparc/plt.s: New test. + * testsuite/gas/sparc/plt.d: Expected output. + * testsuite/gas/sparc/plt64.s: New test. + * testsuite/gas/sparc/plt64.d: Expected output. + * testsuite/gas/sparc/sparc.exp: Add pcrel, pcrel64, plt and plt64 + tests. + +2001-12-20 Thiemo Seufer + Daniel Jacobowitz + + * config/tc-mips.c (file_mips_gp32): Initialize to invalid value. + (file_mips_fp32): Likewise. + (md_begin): Compatibility handling for -mipsN option. + +2001-12-20 Alexandre Oliva + + * config/tc-sh.c (parse_at): Reject @(r0) and @(r0,). + +2001-12-20 matthew green + + * config/tc-ppc.c (md_parse_option): Make -maltivec default + to generating PowerPC instructions. + +2001-12-20 Jason Thorpe + + * configure.in (mips-dec-netbsd*): Delete. + * configure: Regenerate. + + * configure.in (arm-*-netbsdelf*): Add target. + * configure: Regenerate. + +2001-12-18 Nick Clifton + + * config/tc-mips.h (TC_HANDLE_FX_DONE): Remove redundant + definition. + +2001-12-18 Niibe Yutaka + + * configure.in (assign object format): Bug fix for setting + endian. + * configure: Regenerate. + +2001-12-18 matthew green + + * configure.in (m68k-*-netbsdelf*): New target. + (m68k-*-netbsd*): Also include ELF support. + (m68k-*-netbsdaout*): New alias for m68*-*-netbsd*. + * configure: Regenerate. + +2001-12-18 Thiemo Seufer + + * gasp.c (main): Protoype. + +2001-12-17 Richard Henderson + + * config/tc-alpha.c (alpha_handle_align): Encode unop with RB as $sp. + +2001-12-17 Nick Clifton + + * cgen.c: Add prototype for queue_fixup. + (gas_cgen_parse_operand): Move initilisastion of errmsg to avoid + possible longjmp corruption. + * cgen.h: Add prototype for gas_cgen_md_operand. + +2001-12-15 Alan Modra + + * config/obj-elf.c (obj_elf_init_stab_section): References are + kept to section name strings. Don't alloca them! + +2001-12-12 Alexandre Oliva + + * config/tc-d10v.c (get_operands): Mark OPERAND_PLUS after + OPERAND_ATSIGN as O_absent. + +2001-12-07 Geoffrey Keating + Richard Henderson + + * configure.in: Add support for xstormy16. + * configure: Regenerated. + * Makefile.am: Add support for xstormy16. + * Makefile.in: Regenerated. + * config/tc-xstormy16.c: New file. + * config/tc-xstormy16.h: New file. + +2001-12-06 Richard Earnshaw (rearnsha@arm.com) + + * tc-arm.c (do_arit, do_cmp, do_mov, do_ldst, do_ldstt, do_ldmstm) + (do_branch, do_swi, do_adr, do_adrl, do_empty, do_mul, do_mla) + (do_swap, do_msr, do_mrs, do_mull, do_ldstv4, do_bx, do_blx) + (do_bkpt, do_clz, do_lstc2, do_cdp2, do_co_reg2, do_smla, do_smlal) + (do_smul, do_qadd, do_pld, do_ldrd, do_co_reg2c, do_cdp, do_lstc) + (do_co_reg, do_fpa_ctrl, do_fpa_ldst, do_fpa_ldmstm, do_fpa_monadic) + (do_fpa_dyadic, do_fpa_cmp, do_fpa_from_reg, do_fpa_to_reg, do_mia) + (do_mar, do_mra, do_c_binops, do_c_binops_1, do_c_binops_2) + (do_c_binops_3, do_c_triple, do_c_triple_4, do_c_triple_5, do_c_quad) + (do_c_quad_6, do_c_dspsc, do_c_dspsc_1, do_c_dspsc_2, do_c_shift) + (do_c_shift_1, do_c_shift_2, do_c_ldst, do_c_ldst_1, do_c_ldst_2) + (do_c_ldst_3, do_c_ldst_4, do_branch25): Delete redundant argument, + FLAGS. + (struct asm_opcode): Adjust parms field accordingly. + (md_assemble): Don't pass dummy second argument when calling worker + functions. + (build_arm_ops_hsh): Add prototype + (BAD_FLAGS): Delete. + +2001-12-05 Richard Earnshaw + + * tc-arm.c (struct asm_opcode): Delete comp_suffix and flags. Add + cond_offset. Rename variants->variant. + (insns): Adjust for new format. Explicitly code each variant that + takes flags. Remove temporary instructions. + (struct arm_it): Remove redundant field suffix. + (s_flag, ldr_flags, str_flags, byte_flag, cmp_flags, ldm_flags) + (stm_flags, lfm_flags, sfm_flags, round_flags, fix_flags, except_flag) + (long_flag): Delete. + (struct asm_flg): Delete. + (LONGEST_INST): Delete. + (V4_STR_BIT): Define. + (struct thumb_opcode): Rename variants->variant. + (do_empty): Renamed from do_nop. + (ldst_extend): Delete argument hwse. Split code for half-word and + signed byte instructions to ... + (ldst_extend_v4): ... here. + (ld_mode_required_here): Use ldst_extend_v4. + (do_ldrd): Simplify now that this is only called for ldrd. No + need to test for XScale, which was wrong anyway. Don't reject r12 + as a target register. Add test that ldrd doesn't update an index + register. + (do_pld): Don't allow post-indexed or write-back addressing modes. + Adjust call to ldst_extend. + (do_adr): Split code for adrl to ... + (do_adrl): ... here. + (do_cmp): No need to fold in COND_BIT. + (do_ldst): Simplify. Split code for ldrt/strt into do_ldstt. Split + code to handle half-word and signed byte instructions to ... + (do_ldstv4): ... here. + (do_ldstt): New function. Handle load/store with translate. + (do_ldmstm): Write feature modification bits directly into + inst.instruction. + (do_fpa_ldst): Remove suffix handling code. + (do_fpa_dyadic, do_fpa_monadic, do_fpa_from_reg): Likewise. + (do_fpa_ldmstm): Type of access is now held in inst.instruction. + (build_arm_ops_hsh): New function. + (md_begin): Call it. Don't build the ARM opcode directly. + (md_assemble): Simplify ARM instruction handling. + +2001-12-05 Arati Dikey + + * tc-sh.c (parse_at): Corrected incorrect op->type selection due + to missing 'else'. + +2001-12-04 Alexandre Oliva + + * config/tc-d10v.c (write_2_short): Don't skip dummy fixups, so + that we can tell which operand refers to the insn put in the L + container and mark it as such, so that the relocation type can be + adjusted. + +2001-12-04 Thiemo Seufer + + * config/tc-mips.c (mips_cpreturn_offset): Better comment. + (load_register): Better error message. Cast away signedness + mismatches. Add casts needed for varargs. + (load_address): Replace checks of HAVE_64BIT_ADDRESS with dbl. + Remove superfluous casts. + (macro): Cast away signedness mismatches. Remove superfluous casts. + (s_cpload): Fix wrong comment. + (s_mips_weakext): Standardize output message. + (get_number): Likewise. + +2001-12-04 Thiemo Seufer + + * config/tc-mips.c (append_insn): Add jump address range overflow + check. + +2001-12-04 Thiemo Seufer + + * config/tc-mips.c (md_parse_option): Fix comment. Allow -mabi option + for ELF only. + (show): Document -mabi option. + +2001-12-03 Jeroen Dobbelaere + + * config/tc-arm.c (md_parse_option): Only clear cpu part when + specifying 'xscale' cpu (don't change the fpu part). + +2001-12-04 Alexandre Oliva + + * config/tc-d10v.c (find_opcode): Reject SP operand if + OPERAND_NOSP flag is present. + +2001-12-03 Eric Christopher + + * config/tc-mips.c (tc_gen_reloc): One missed BFD_RELOC_MIPS_GPREL. + +2001-12-02 Thiemo Seufer + + * config/tc-mips.c (macro_build): Replace BFD_RELOC_MIPS_GPREL + by BFD_RELOC_GPREL16. + (load_address): Likewise. + (macro): Likewise. + (md_apply_fix): Likewise. Replace BFD_RELOC_MIPS_GPREL32 by + BFD_RELOC_GPREL32. + (s_gpword): Replace BFD_RELOC_MIPS_GPREL32 by BFD_RELOC_GPREL32. + (tc_gen_reloc): Replace BFD_RELOC_MIPS_GPREL by BFD_RELOC_GPREL16. + *config/tc-mips.h: Replace BFD_RELOC_MIPS_GPREL by BFD_RELOC_GPREL16. + +2001-11-29 Alexandre Oliva + + * config/tc-d10v.c (get_operands): Emit OPERAND_PLUS for + prefix `+'. + + * config/tc-d10v.c (find_opcode): Reject non-SP operand if + flags requires SP. + +2001-11-29 Arati Dikey + + * tc-sh.c (parse_at): Removed case-sensitivity of index register + R8, R9. + +2001-11-28 Jakub Jelinek + + * write.c (adjust_reloc_syms): Mark SEC_MERGE symbols as used + in reloc if it has non-zero addend. + * config/tc-alpha.c (tc_gen_reloc): Reinstall SEC_MERGE check. + * config/tc-sparc.c (md_apply_fix3): Likewise. + +2001-11-28 Andreas Schwab + + * as.c (parse_args): Call md_after_parse_args if defined. + * config/tc-ia64.h (md_after_parse_args): Define. + * config/tc-ia64.c (ia64_after_parse_args): Reject --gstabs. + * doc/internals.texi (CPU backend): Document md_after_parse_args. + +2001-11-23 Jakub Jelinek + + * config/tc-alpha.c (tc_gen_reloc): Remove SEC_MERGE test. + * write.c (adjust_reloc_syms): Don't handle relocs against + SEC_MERGE section symbols specially. + (fixup_segment): Likewise. + +2001-11-21 Richard Sandiford + + * config/tc-mips.c (mips_need_elf_addend_fixup): New, extracted from... + (md_apply_fix3): ...here. Don't prevent the symbol value being + subtracted twice from GPREL addends. + (tc_gen_reloc): Add the symbol value to a GPREL addend if it was + subtracted by the previous function. + +2001-11-20 Nick Clifton + + * config/tc-avr.c (md_apply_fix3): Fix typo introduced by + md_apply_fix3 change. + +2001-11-20 Ben Elliston + + * config/tc-m88k.c (md_apply_fix3): Match local variable `val' to + usage after md_apply_fix3 cleanups. + +2001-11-19 Hans-Peter Nilsson + + * doc/c-mmix.texi: Use texinfo 4 features. + (MMIX-mmixal): Fix typo. + +2001-11-17 Hans-Peter Nilsson + + * config/tc-cris.c (md_apply_fix3): Cast value, not pointer, in + val assignment. + +2001-11-16 Michael Snyder + + * stabs.c (stabs_generate_asm_lineno): Remember file and line number + from one call to the next, and eliminate consecutive duplicates + (thereby emitting only one line symbol per source line). + * dwarf2dbg.c (dwarf2_gen_line_info): Ditto. + +2001-11-16 Alan Modra + + * config/tc-m68k.c (md_apply_fix3): Change val back to a signed type. + +2001-11-15 H.J. Lu + + * config/tc-hppa.c (md_apply_fix3): Fix a typo. + +2001-11-15 H.J. Lu + + * config/tc-alpha.c (md_apply_fix3): Fix a typo. + +2001-11-15 Nick Clifton + + * write.c (fixup_segment): Remove references to md_apply_fix and + TC_HANDLE_FX_DONE. + * cgen.c, config/obj-coff.c, config/tc-*.c: Update all occurances + of md_apply_fix to md_apply_fix3. + Make all md_apply_fix3 functions void. + * cgen.h, config/obj-coff.h, tc-*.h: Remove all definitions of + MD_APPLY_FIX3 and TC_HANDLE_FX_DONE. + * doc/internals.texi: Update references to md_apply_fix3. + * tc.h: Update prototype for md_apply_fix3. + +2001-11-15 Alan Modra + + * config/tc-i386.h (md_end): Define. + (i386_elf_emit_arch_note): Declare. + (CpuUnknown): Delete. + * config/tc-i386.c (default_arch): Constify. + (smallest_imm_type): Remove CpuUnknown test. + (md_assemble): Don't bother checking cpu_arch_flags non-zero. + (i386_elf_emit_arch_note): New function. + + * po/POTFILES.in: Regenerate. + +2001-11-15 Thiemo Seufer + + * config/tc-mips.c (mips_ip): Re-allow %hi() op for non-ELF assembler. + +2001-11-15 Alan Modra + + * frags.c (frag_grow): Revert last change. + + * dwarf2dbg.c (get_frag_fix): Align last frag size. + + * config/tc-ppc.c (ppc_insert_operand): Pass (ppc_cpu | ppc_size) + to operand->insert. + (md_assemble): Likewise. + +2001-11-12 Nick Clifton + + * frags.c (frag_grow): Use frag_make_room() to grow the + obstack. + +2001-11-14 Nick Clifton + + * config/tc-sparc.c (md_apply_fix3): Do not remove the symbol's + value from the addend for fixups against local symbols in + SEC_MERGE sections - it was not added in, in the first place. + +2001-11-11 Timothy Wall + + * write.c (relax_segment): Convert symbol address into an octet + offset prior to adding to the frag address, which is an octet + offset. Add comments to that effect. + * config/tc-tic54x.c: Fix bugs causing tests to fail. + * config/tc-tic54x.h: Ditch PARAMS macro. + +2001-11-13 Alan Modra + + * config/obj-elf.c (obj_elf_version): Ensure terminating NUL is + put in note section. Use sizeof instead of hard-coded constants. + +2001-11-12 Thiemo Seufer + + * config/tc-mips.c (support_64bit_objects): Define for OBJ_ELF only. + (md_longopts): Allow OPTION_MABI for ELF compilation only. RE-allow + OPTION_GP32, OPTION_GP64, OPTION_FP32 for non-ELF compilation. + Sort options a bit more logical. + (md_parse_option): Allow OPTION_32, OPTION_N32, OPTION_N64, + OPTION_MABI only for elf targets. + +2001-11-12 Thiemo Seufer + + * config/tc-mips.c (set_at): Add cast needed for varargs. + (load_register): Likewise. + (macro): Likewise. Some code reformatting. + (macro2): Add cast needed for varargs. + (mips16_macro): Likewise. + +2001-11-12 Thiemo Seufer + + * config/tc-mips.c (md_assemble): Remove superflous casts. + (append_insn): Likewise. + (mips16_macro_build): Likewise. + (macro): Likewise. + (mips16_ip): Likewise. + (s_cpload): Likewise. + (mips_relax_frag): Likewise. + +2001-11-12 Thiemo Seufer + + * config/tc-mips.c (mips_abi_level): Move in front of + mips_set_options. + (mips_set_options): Add members gp32, fp32, abi. + (file_mips_gp32): New flag. + (file_mips_fp32): New flag. + (mips_opts): Initialize the new members. + (mips_gp32): Remove. + (mips_fp32): Remove. + (HAVE_32BIT_GPRS): Use the new values from mips_opts. + (HAVE_32BIT_FPRS): Likewise. + (HAVE_NEWABI): Likewise. + (HAVE_64BIT_OBJECTS): Likewise. + (md_begin): Likewise. Save default (file) values. + (md_parse_option): Use the new values from mips_opts. + (s_mipsset): Likewise. Fix logic to keep the ABI selection if + possible. Let .set mipsN work together with .set push/pop. + Enhance error messages. + (mips_elf_final_processing): Use file_mips_* for header processing. + +2001-11-09 Marek Michalkiewicz + + * config/tc-avr.c (mcu_types): Update for new devices. + +2001-11-09 Stephane Carrez + + * doc/Makefile.am (POD2MAN): Use 'GNU Development Tools' for + the page man title. + * doc/Makefile.in: Rebuild. + * doc/as.texinfo: Do not put man SEEALSO in document; + Use @command for commands, @option for options; Reorganize usage + to clearly identify target specific options. + +2001-11-08 Thiemo Seufer + + * config/tc-mips.c (mips_force_relocation): Remove duplicate code. + +2001-11-06 Thiemo Seufer + + * config/tc-mips.c (my_getSmallParser): Fix small parser bug. + +2001-11-05 Martin Schwidefsky + + * config/tc-s390.c (tc_s390_force_relocation): Force all relocations + that need the global offset table. + (md_apply_fix3): Add code to undo opertions done in fixup_segment + triggered by TC_FORCE_RELOCATION. + * config/tc-s390.h (TC_FORCE_RELOCATION): Replace macro code with + a call to function tc_s390_force_relocation. + (TC_FIX_ADJUSTABLE): Define. + +2001-11-04 Chris Demetriou + + * configure.in (mips-*-netbsd*): Add support for target. + * configure: Regenerate. + +2001-11-02 Nick Clifton + + * configure.in (ALL_LINGUAS): Add 'fr'. + * configure: Regernate. + * po/fr.po: New file. Obtained from the translation project web + site. + +2001-11-02 Richard Earnshaw + + * tc-arm.c: Re-arrange prototypes by architecture. + (insns): Re-arrange instructions by archtitecture. Pld instruction + is part of ARMv5E. + (tinsns): blx and bkpt are part of ARMv5T. + (do_fp_{ctrl,ldst,ldstm,dyadic,monadic,cmp,from_reg,to_reg}): Rename + to do_fpa_*. All callers changed. + + * tc-arm.c (insns): Add two temporary instructions to handle + ldrd/strd. + +2001-11-01 Stephane Carrez + + * config/tc-m68hc11.c (build_jump_insn): Allocate worst case storage + for bra/bsr and use frag_variant(), this ensure that the possible + 16-bit BFD_RELOC_16 will be in the same frag. + +2001-10-31 Chris Demetriou + + * config/tc-mips.c (HAVE_32BIT_ADDRESSES): If compiling embedded + PIC code, assume pointers the same size as GPRs. + (macro): In M_LA_AB handling for embedded PIC code, support + "la $treg,foo-bar($breg)". In load/store handling + (label ld_st) support " $treg,-($breg)" + which is used by the compiler for switch statements. + In load/store double multi-instruction macro handling + (label ldd_std) add a comment that no special handling + is currently done for embedded PIC. + (mips_ip): In 'o' (16-bit offset) case, only accept 16 + bit offsets. + +2001-10-31 Richard Earnshaw + + General cleanup of feature definitions. + * tc-arm.c (ARM_EXT_LONGMUL, ARM_EXT_HALFWORD, ARM_EXT_THUMB): Delete. + (ARM_2UP, ARM_ALL, ARM_3UP, ARM_6UP): Delete. + (FPU_CORE, FPU_FPA10, FPA_FPA11, FPU_ALL, FPA_MEMMULTI): Delete. + (ARM_EXT_V{1,2,2S,3,3M,4,4T,5T,5ExP}): New defines. + (ARM_EXT_V{5,5E}): Synchronize with above. + (ARM_ARCH_V*): Define a complete set in terms of above features. + (ARM_{1,2,3,250,6,7,8,9,STRONG}): Define in terms of architecture. + (FPU_FPA_EXT_V[12]): Define. + (FPU_ARCH_FPE, FPU_ARCH_FPA): Define in terms of above. + (FPU_ANY): Define. + (FPU_DEFAULT): Default to FPA. + (CPU_DEFAULT): For XScale, this is now just ARM_ARCH_XSCALE; for + Thumb, this is now ARM_ARCH_V5T. + (insns): Rework for new feature defines. + (tinsns): Likewise. + (opcode_select, do_ldst, md_begin, md_parse_option): Likewise. + +2001-10-31 NIIBE Yutaka + + * configure.in: Handle sh*eb-*-linux* and sh*-*-linux*. + * configure: Regenerate. + * Makefile.in: Regenerate. + * doc/c-sh.texi (SH Options): Added descriptions. + +2001-10-30 Hans-Peter Nilsson + + * configure.in: Update for MMIX port. + * Makefile.am: Ditto. Regenerate dependencies. + * Makefile.in: Regenerate. + * configure: Regenerate. + * config/tc-mmix.h, config/tc-mmix.c: New files. + * doc/Makefile.am (CPU_DOCS): Add c-mmix.texi + * doc/Makefile.in: Regenerate. + * doc/all.texi: @set MMIX. + * doc/as.texinfo: Ditto. Add MMIX gas manpage option overview. + Include c-mmix.texi. + * doc/c-mmix.texi: New file. + +2001-10-24 Chris Demetriou + + * config/tc-mips.c (hilo_interlocks, cop_interlocks): Make + these evaluate to true if mips_arch indicates SB-1. + +2001-10-23 Alan Modra + + * as.c (parse_args): Print the date as well for --version. + +2001-10-20 Chris Demetriou + + * config/tc-mips.c (md_show_usage): Print "sb1" for Broadcom + SB-1 CPU for consistency. + (mips_cpu_info_table): Tweak comment about SB-1. + +2001-10-20 H.J. Lu + + * config/tc-arm.c (do_c_shift): Use ISDIGIT instead of isdigit. + (cirrus_parse_offset): Likewise. + +2001-10-19 Nick Clifton + + * config/tc-arm.c: Restore line_comment_chars. + +2001-10-18 Nick Clifton + + * config/tc-arm.c (comment_chars): Remove semi-colon accidentally + added to the list. + +2001-10-18 Hans-Peter Nilsson + + * write.c (fixup_segment): Handle fixups for SEC_MERGE sections as + for undefined symbols. + +2001-10-17 Chris Demetriou + + * doc/as.texinfo (MIPS ISA options): Added accidentally + omitted "-mips64" option to list of options. + +2001-10-17 matthew green + + * config/tc-ppc.c (md_show_usage): Add missing -maltivec, -m7400, + -m7410, -m7450 and -m7455 options. + +2001-10-17 Alan Modra + + * config/tc-ppc.c (PPC_HA, PPC_HIGHERA, PPC_HIGHESTA): Simplify. + (ppc_size): Select PPC_OPCODE_64 if 64 bit. + (md_begin): Don't set ppc_size here. + (ppc_target_format): Test ppc_size as well as BFD_DEFAULT_TARGET_SIZE. + (md_shortopts): Constify. + (md_longopts): Likewise. + (md_longopts_size): Likewise. + (ppc_elf_suffix): Only allow 64-bit relocs when ppc_size specifies + 64-bit opcodes. + (ppc_machine): Explain why this function is a nop. + +2001-10-17 Alan Modra + + * bit_fix.h: Comment typo fix. + * config/tc-mips.c: Likewise. + * config/tc-sh.c: Likewise. + * config/tc-arc.c (arc_code_symbol): Remove unnecessary test. + + * configure.in (MIPS_STABS_ELF): AC_DEFINE in only one place so + that autoheader doesn't duplicate config.in entries. + (DEFAULT_ARCH): Ditto. + * configure: Regenerate. + * config.in: Regenerate. + +2001-10-16 Alan Modra + + From Andrew Pines + * config/tc-m68k.c (m68k_ip): Correct absolute jmp opcodes. + +2001-10-16 NIIBE Yutaka , + Hans-Peter Nilsson + + * config/tc-sh.c (shl): Remove. + (big): New function. + (little): Remove shl handling. Emit error for endian mismatch. + (md_show_usage): Add description of -big. + (md_parse_option): Handle OPTION_BIG. Remove shl handling. + (OPTION_BIG): Add. + (md_pseudo_table): Add .big. + (md_longopts): Add -big. + (md_begin): Don't set target_big_endian here. + * config/tc-sh.h (TARGET_BYTES_BIG_ENDIAN): Remove. + (LISTING_HEADER, COFF_MAGIC, TARGET_FORMAT): Use target_big_endian. + (shl): Remove. + * configure.in (endian): Default is big. + (sh-*-pe*): Little endian. + (cpu_type): Set sh for target sh*. + * configure: Regenerate. + +2001-10-15 Thiemo Seufer + + * config/tc-mips.c (md_apply_fix): Preliminary handling of NewABI + relocations. + +2001-10-13 Nick Clifton + + * config/tc-arm.c: Replace CONST with const. + + * cgen.c: Tidy up formatting. + +2001-10-12 matthew green + + * config/tc-ppc.c (md_parse_option): New -m7410, -m7450 and -m7455 + flags, equivalent to -m7400. New -maltivec to enable AltiVec + instructions. New -mbook64 and -mbooke/-mbooke32 flags to enable + 64-bit and 32-bit BookE support, respectively. Change -m403 and + -m405 to set PPC403 option. + (md_show_usage): Adjust for new options. + * doc/all.texi: Set PPC. + * doc/as.texinfo: Add PPC support and pull in c-ppc.texi. + * doc/c-ppc.texi: New file. + * doc/Makefile.am (CPU_DOCS): Add c-ppc.texi. + * doc/Makefile.in: Regenerate. + +2001-10-12 Nick Clifton + + * read.c (s_bad_endr): New function. Issues a warning message + about a bad use of the .rept pseudo op. + (po_table[]): Add .endr. + * read.h: Prototype s_bad_endr. + + * CONTRIBUTORS: Update contact email address. + +2001-10-11 Kazu Hirata + + * config/tc-alpha.c: Fix comment typos. + * config/tc-cris.c: Likewise. + * config/tc-hppa.c: Likewise. + * config/tc-i370.c: Likewise. + * config/tc-mips.c: Likewise. + * config/tc-mn10200.c: Likewise. + * config/tc-mn10300.c: Likewise. + * config/tc-sh.c: Likewise. + * config/tc-tahoe.c: Likewise. + * config/tc-v850.c: Likewise. + +2001-10-11 Kazu Hirata + + * app.c: Fix comment typos. + * bit_fix.h: Likewise. + * expr.c: Likewise. + * itbl-ops.c: Likewise. + +2001-10-11 Nick Clifton + + * input-file.c: Include safe-ctype.h. + (input_file_open): Use ISSPACE instead of isspace. + +2001-10-10 Thiemo Seufer + + * config/tc-mips.c (mips_cpreturn_offset): New variable. + (mips_cpreturn_register): Likewise. + (mips_gp_register): Likewise. + (s_cpsetup): New function prototype. + (s_cplocal): Likewise. + (s_cpreturn): Likewise. + (s_gpvalue): Likewise. + (mips_pseudo_table): Add .cpsetup, .cplocal, .cpreturn, .gpvalue + pseudo-ops. + (macro): Don't warn about .cprestore for NewABI. + (md_pcrel_from): Code cleanup. + (mips_force_relocation): Force output of some NewABI relocations even + without a defined symbol. + (s_cpload): Ignore .cpload for NewABI. + (s_cpsetup): Handle .cpsetup. + (s_cplocal): Handle .cplocal. + (s_cprestore): Ignore .cprestore for NewABI. + (s_cpreturn): Handle .cpreturn. + (s_gpvalue): Handle .gpvalue. + (s_cpadd): Ignore .cpadd for NewABI. + (nopic_need_relax): Take g_switch_value into account as gp + optimization. + (tc_gen_reloc): Don't handle BFD_RELOC_MIPS_{CALL,GOT}* for NewABI. + +2001-10-10 Thiemo Seufer + + * config/tc-mips.c (my_getSmallParser): New function prototype. + (small_ex_type): Named this enum, more return values for + my_getSmallExpression. + (mips_ip): Allow SPC and HT between arguments. Handle some NewABI + triple relocations. Protect some parts with ifdef OBJ_ELF. + (percent_op_match): New struct, lookup table for %some_reloc(). + (my_getSmallParser): New function, parses nested percent_ops also. + (my_getSmallExpression): Rewite to support nested percent_ops. + +2001-10-10 Thiemo Seufer + + * config/tc-mips.c + (load_address): Support both 32- and 64-bit addresses. + (macro): Call load_register correctly. Expand 64-bit loads ans stores. + (macro2): Call load_address correctly. + +2001-10-09 Christian Groessler + + * config/tc-z8k.c: Include opcodes/z8k-opc.h after bfd.h + since z8k-opc.h now uses the PARAMS macro. + +2001-10-09 Aldy Hernandez + + * config/tc-arm.c: Change MAVERIK to MAVERICK. + +2001-10-09 Alan Modra + + * config/obj-elf.c: Make use of elf_group_name and elf_next_in_group + throughout file. + (obj_elf_change_section): Rename "group" to "group_name". + (obj_elf_section): Likewise. + (elf_frob_file): Don't use sec->lineno for SHT_GROUP section to store + first member section; Instead use elf_next_in_group. + +2001-10-09 Alan Modra + + * config/obj-elf.c: (obj_elf_change_section): Add "group" param. + Set elf_section_data group from it. Warn if group name changed. + (obj_elf_parse_section_letters): Parse 'G' too. + (obj_elf_section): Parse group name. + (struct group_list): New. + (build_group_lists): New function. + (elf_frob_file): Create SEC_GROUP section(s). + + * config/obj-elf.c: (elf_copy_symbol_attributes): Zap trailing + whitespace. + +2001-10-08 Aldy Hernandez + + * doc/arm/c-arm.texi (ARM Options): Add arm9e documentation. + + * config/tc-arm.c (ARM_EXT_MAVERIK): New macro. + (cirrus_regtype): New enum. + (LONGEST_INST): Change to 10. + (CIRRUS_MODE1): New. + (CIRRUS_MODE2): New. + (CIRRUS_MODE3): New. + (CIRRUS_MODE4): New. + (CIRRUS_MODE5): New. + (CIRRUS_MODE6): New. + (insns): Add cirrus dsp instructions. + (ARM_EXT_MAVERIKSC_REG): New. + (cirrus_register): New. + (cirrus_mvf_register): New. + (cirrus_mvd_register): New. + (cirrus_mvfx_register): New. + (cirrus_mvdx_register): New. + (cirrus_mvax_register): New. + (ARM_EXT_MAVERIKsc_register): New. + (reg_table): Add cirrus registers. + (cirrus_valid_reg): New. + (cirrus_reg_required_here): New. + (do_c_binops_1): New. + (do_c_binops_2): New. + (do_c_binops_3): New. + (do_c_triple_4): New. + (do_c_triple_5): New. + (do_c_quad_6): New. + (do_c_dspsc_1): New. + (do_c_dspsc_2): New. + (do_c_shift_1): New. + (do_c_shift_2): New. + (do_c_ldst_1): New. + (do_c_ldst_2): New. + (do_c_ldst_3): New. + (do_c_ldst_4): New. + (do_c_binops): New. + (do_c_triple): New. + (do_c_quad): New. + (do_c_dspsc): New. + (do_c_shift): New. + (cirrus_parse_offset): New. + (do_c_ldst): New. + (md_parse_option): Add arm9e. + (md_show_usage): Same. + +2001-10-08 Tom Rix + + * config/tc-ppc (ppc_bf, ppc_biei) : Set first .bi lineno value to + location of next .bf + * config/obj-coff.c (coff_frob_symbol) : XCOFF does not use endndx. + +2001-10-07 Alan Modra + + * config/obj-elf.c: Standardize error/warning messages - don't + capitalise, no final period or newline, don't say "ignoring" for + as_bad messages. In some cases, change the wording to that used + elsewhere for similar messages. + (obj_elf_section_name): New function, split out from .. + (obj_elf_section): .. here. Correctly mask off SHF_MERGE if + entsize not specified. + +2001-10-05 Jakub Jelinek + + * doc/as.texinfo: Document M and S ELF section flags. + +2001-10-05 Alan Modra + + * subsegs.c (subseg_text_p): Return 0 for absolute section. + * read.c (do_align): If in absolute section, warn about and ignore + non-zero fill pattern. + +2001-10-05 Alexandre Oliva + + * config/tc-mn10300.c (tc_gen_reloc): Don't free + reloc->sym_ptr_ptr if it's not allocated. + +2001-10-04 Thiemo Seufer + + * config/tc-mips.c (prev_insn_reloc_type): Make it an array to hold a + relocation triple. + (prev_insn_fixp): Likewise. + (append_insn): Changed prototype to accept a relocation pointer. + (imm_reloc): Make it an array. + (offset_reloc): Likewise. + (md_assemble): Handle triple relocations. + (append_insn): Likewise. Add handling for some NewABI relocations. + (mips_no_prev_insn): Handle triple relocations. + (macro_build): Likewise. Add handling for some NewABI relocations. + Move handling for the 'u' case to append_insn(). + (mips16_macro_build): Handle triple relocations. + (macro_build_lui): Likewise. Don't handle _gp_disp as special symbol + for NewABI. + (mips_ip): Handle triple relocations. + (mips16_ip): Likewise. + (mips_force_relocation): Force handling of triple relocations + without symbols for NewABI. + (md_apply_fix): Add handling for some NewABI relocations. + +2001-10-05 Alan Modra + + * config/tc-i386.c (parse_register): If not producing code for + x86_64, reject x86_64 register name matches. + (md_assemble): Remove now redundant check for x86_64 regs. + +2001-10-04 Alan Modra + + * config/tc-ppc.c (md_assemble ): Test ppc_size as well + as BFD_DEFAULT_TARGET_SIZE. + (ppc_tc): Likewise. + (ppc_is_toc_sym): Likewise. + (md_apply_fix3): Likewise. + +2001-10-03 Thiemo Seufer + + * config/tc-mips.c (mips_64): Remove. + (mips_target_format): Move downwards in file, use HAVE_64BIT_OBJECTS + in it. + (mips_abi_level, mips_abi): New enum. + (mips_32bit_abi): Remove. + (HAVE*PRS): Use mips_abi instead of mips_32bit_abi. + (HAVE_NEWABI): New define. + (HAVE_64BIT_OBJECTS): New define. + (HAVE_32BIT_ADDRESSES): Don't return true for 64bit objects. + (HAVE_64BIT_ADDRESSES): New define, inverse of HAVE_32BIT_ADDRESSES. + (support_64bit_objects): New prototype. + (md_begin): Use mips_abi instead of mips_32bit_abi. Don't write + .reginfo section for n32, use .MIPS.options instead. + (support_64bit_objects): New function, code from md_parse_option. + (md_longopts): Add -n32 option. + (md_parse_option): Use mips_abi instead of mips_32bit_abi/mips64. + Add -n32 option. Protect with OBJ_ELF. + (s_mipsset): Use mips_abi instead of mips_32bit_abi. + (mips_elf_final_processing): Likewise. Don't write .reginfo section + for n32, use .MIPS.options instead. + +2001-10-03 Alan Modra + + * po/POTFILES.in: Regenerate. + * configure: Regenerate. + +2001-10-02 Alan Modra + + * config/tc-ppc.c (md_apply_fix3 ): Make it 64 + bits if target is 64 bit. + + * doc/as.texinfo (listing): Fix typo. + + * as.c (print_version_id): Use BFD_VERSION_STRING in place of + BFD_VERSION. + * Makefile.am (Makefile): Depend on bfd/configure.in. + Run "make dep-am". + * Makefile.in: Regenerate. + +2001-09-30 H.J. Lu + + * config/obj-elf.c (obj_elf_parse_section_letters): Accept "am" + and "ams" for compatibility. + +2001-09-30 Hans-Peter Nilsson + + * config/tc-sh.c (md_pcrel_from_section): Transformed from + md_pcrel_from. Handle pc-relativeness against link-time + symbol. Handle relativeness to elsewhere than the fixup. + * config/tc-sh.h (MD_PCREL_FROM_SECTION): Define. + (md_pcrel_from_section): Prototype. + + * Makefile.am: Update dependencies with "make dep-am". + * Makefile.in: Regenerate. + +2001-09-30 Stephane Carrez + + * config/tc-m68hc11.c (cmp_opcode): Define prototype. + (print_opcode_format, skip_whites): Likewise. + (convert_branch, m68hc11_new_insn): Likewise. + (build_dbranch_insn, build_indexed_byte): Likewise. + (build_reg_mode, find, find_opcode): Likewise. + (print_insn_format): Fix call to print_opcode_format. + (md_assemble): Fix call to build_dbranch_insn. + +2001-09-27 Nick Clifton + + * config/tc-arm.c: Add missing prototypes. + +2001-09-26 Jeff Johnston + + * input-file.c (input_file_open): When reading the + first line looking for #NO_APP, prepare for the possibility + of finding #APP instead. Also fix algorithm to allow + white-space to follow either #NO_APP or #APP directives. + +2001-09-25 Geoff Berry + + * listing.c (buffer_line): Don't write past the end of `line' when + EOF is reached. + +2001-09-25 Alexandre Oliva + + * config/tc-mn10300.c (tc_gen_reloc): Don't emit an *ABS* + relocation for differences between symbols in a section other + than the one in which the difference is to be placed; apply + the relocation instead. + +2001-09-24 Nick Clifton + + * config/tc-arc.c: Add missing prototype. + (md_atof): Change type to int. Add missing prototype. + * config/tc-arc.h: Prototype exported functions. + +2001-09-22 Nick Clifton + + * as.c: Add missing function prototype. + * config/obj-aout.c: Fix compile time warning. + +2001-09-21 Bruno Haible + + * config/tc-openrisc.c: Don't include . + +2001-09-19 Martin Schwidefsky + + * gas/config/tc-s390.c: Add option -mwarn-areg-zero. + +2001-09-19 Alan Modra + + * config/tc-i370.c: Fix typo in last change. + +2001-09-19 Nick Clifton + + * doc/as.texinfo (Symbol Names): Improve documentation on local + labels and add documenation about dollar labels. + +2001-09-18 Bruno Haible + + * as.h: Don't include . + * as.c (main): For gettext, also set the LC_CTYPE locate facet. + * atof-generic.c: Include "safe-ctype.h" instead of . + (atof_generic): Use ISDIGIT instead of isdigit. + * config/m68k-parse.y: Include "safe-ctype.h". + (yylex): Use ISDIGIT/ISALNUM instead of isdigit/isalnum. + * config/obj-elf.c: Include "safe-ctype.h". + (obj_elf_vtable_inherit): Use ISSPACE instead of isspace. + * config/obj-vms.c: Include "safe-ctype.h". + (Write_VMS_MHD_Records): Use TOUPPER instead of islower/toupper. + (VMS_Case_Hack_Symbol): Use ISUPPER/ISLOWER/TOUPPER/TOLOWER + instead of isupper/islower/toupper/tolower. + * config/tc-a29k.c: Include "safe-ctype.h" instead of . + (insert_sreg): Use TOUPPER instead of islower/toupper. + (machine_ip): Use ISALPHA/ISALNUM/ISUPPER/TOLOWER instead of + isalpha/isalnum/isupper/tolower. + (a29k_unrecognized_line, md_operand): Use ISDIGIT instead of + isdigit. + * config/tc-alpha.c: Include "safe-ctype.h" instead of . + (md_undefined_symbol, s_alpha_ent): Use ISDIGIT instead of isdigit. + * config/tc-arc.c: Include "safe-ctype.h" instead of . + (md_assemble): Use ISSPACE/ISALNUM instead of isspace/isalnum. + (arc_extoper): Use TOLOWER instead of isupper/tolower. + * config/tc-arm.c: Include "safe-ctype.h" instead of . + (arm_psr_parse): Use ISALPHA instead of isalpha. + (accum0_required_here): Use ISALNUM instead of isalnum. + (do_ldrd): Use ISSPACE instead of isspace. + (decode_shift): Use ISALPHA instead of isalpha. + (insert_reg): Use TOUPPER instead of islower/toupper. + (arm_reg_parse): Use ISALPHA instead of isalpha. + (arm_parse_reloc): Use ISALNUM/ISPUNCT/TOLOWER instead of + isalnum/ispunct/tolower. + * config/tc-avr.c: Include "safe-ctype.h" instead of . + (md_parse_option): Use TOLOWER instead of tolower. + (avr_operand): Use ISDIGIT/TOLOWER instead of isdigit/tolower. + * config/tc-cris.c: Include "safe-ctype.h" instead of . + (cris_process_instruction): Use ISLOWER instead of islower. + (get_gen_reg): Use ISALNUM/ISDIGIT instead of isalnum/isdigit. + (get_spec_reg): Use TOLOWER/ISALNUM instead of isupper/tolower/isalnum. + (get_flags): Use ISSPACE instead of isspace. + * config/tc-d10v.c: Include "safe-ctype.h" instead of . + (do_assemble): Use TOLOWER instead of tolower. + * config/tc-d30v.c: Include "safe-ctype.h" instead of . + (do_assemble): Use TOLOWER instead of tolower. + (d30v_start_line): Use ISSPACE instead of isspace. + * config/tc-fr30.c: Include "safe-ctype.h" instead of . + (fr30_is_colon_insn): Use TOLOWER instead of tolower. + * config/tc-h8300.c: Include "safe-ctype.h" instead of . + (skip_colonthing, get_operand): Use ISDIGIT instead of isdigit. + * config/tc-h8500.c: Include "safe-ctype.h" instead of . + (start_label): Use ISALPHA instead of isalpha. + * config/tc-hppa.c: Include "safe-ctype.h" instead of . + (pa_ip): Use ISUPPER/ISLOWER/TOLOWER instead of + isupper/islower/tolower. + (pa_parse_number): Use ISDIGIT instead of isdigit. + (pa_chk_field_selector): Use TOLOWER instead of tolower. + (pa_stringer): Use ISDIGIT instead of isdigit. + * config/tc-i370.c: Include "safe-ctype.h" instead of . + (register_name): Use ISALPHA instead of isalpha. + (i370_elf_suffix): Use ISALNUM/TOLOWER instead of + isalnum/islower/tolower. + (i370_addr_offset): Use ISDIGIT/ISALPHA instead of + isdigit/isalpha. + (i370_addr_cons): Use ISALPHA/ISXDIGIT instead of + isalpha/isxdigit. + (md_assemble): Use ISSPACE instead of isspace. + * config/tc-i386.c: Include "safe-ctype.h" instead of . + (md_begin): Use ISDIGIT/ISLOWER/ISUPPER/TOLOWER/ISALPHA + instead of isdigit/islower/isupper/tolower/isalpha. + (output_invalid): Use ISPRINT instead of isprint. + * config/tc-i860.c: Include "safe-ctype.h" instead of . + (i860_ip): Use ISLOWER/ISDIGIT instead of islower/isdigit. + * config/tc-i960.c: Include "safe-ctype.h" instead of . + (get_args): Use ISALNUM instead of isalnum. + * config/tc-ia64.c: Include "safe-ctype.h". + (dot_pred_rel): Use TOUPPER/ISDIGIT instead of toupper/isdigit. + (ia64_unrecognized_line): Use ISDIGIT instead of isdigit. + (ia64_parse_name): Likewise. + * config/tc-m32r.c: Include "safe-ctype.h" instead of . + (assemble_two_insns): Use ISSPACE/ISALNUM/ISUPPER/TOLOWER + instead of isspace/isalnum/isupper/tolower. + * config/tc-m68hc11.c: Include "safe-ctype.h" instead of . + (md_assemble): Use TOLOWER/ISALNUM instead of tolower/isalnum. + * config/tc-m68k.c: Include "safe-ctype.h" instead of . + (mklower_table): Remove variable. + (mklower): Remove macro. + (insert_reg): Use TOUPPER instead of islower/toupper. + (md_begin): Remove initialization of mklower_table. + (s_reg): Use ISALNUM instead of isalnum. + (mri_assemble): Use ISUPPER/TOLOWER instead of isupper/tolower. + (parse_mri_condition): Use TOLOWER instead of isupper/tolower. + (build_mri_control_operand): Use TOLOWER instead of tolower. + (s_mri_else, s_mri_break, s_mri_next, s_mri_for): Likewise. + * config/tc-m88k.c: Include "safe-ctype.h" instead of . + (md_assemble): Use ISSPACE instead of isspace. + (get_imm16): Use ISALNUM instead of isalnum. + (get_cnd): Use ISDIGIT/ISUPPER/TOLOWER instead of + isdigit/isupper/tolower. + (get_bf_offset_expression): Use ISALPHA/ISUPPER/TOLOWER + instead of isalpha/isupper/tolower. + (hexval): Use ISDIGIT/ISLOWER/ISUPPER instead of + isdigit/islower/isupper. + * config/tc-mcore.c: Include "safe-ctype.h" instead of . + (mcore_s_section): Use ISSPACE instead of isspace. + (parse_reg): Use ISSPACE/TOLOWER/ISALNUM instead of + isspace/tolower/isalnum. + (parse_creg): Use ISSPACE/TOLOWER instead of isspace/tolower. + (parse_psrmod): Use TOLOWER instead of isascii/tolower. + (parse_exp, parse_mem, md_assemble): Use ISSPACE instead of + isspace. + * config/tc-mips.c: Include "safe-ctype.h" instead of . + (mips_ip): Use ISSPACE/ISDIGIT instead of isspace/isdigit. + (mips16_ip): Use ISLOWER/ISDIGIT instead of islower/isdigit. + (my_getSmallExpression): Use ISDIGIT/TOLOWER instead of + isdigit/tolower. + (tc_get_register): Likewise. + (get_number): Use ISDIGIT/ISXDIGIT instead of isdigit/isxdigit. + (s_mips_ent): Use ISDIGIT instead of isdigit. + * config/tc-mn10200.c: Include "safe-ctype.h" instead of . + (md_assemble): Use ISSPACE instead of isspace. + * config/tc-mn10300.c: Include "safe-ctype.h" instead of . + (md_assemble): Use ISSPACE instead of isspace. + * config/tc-ns32k.c: Don't include . + * config/tc-pdp11.c: Include "safe-ctype.h". + (mklower): Remove function. + (parse_reg): Use TOLOWER instead of mklower. + * config/tc-pj.c: Include "safe-ctype.h". + (md_assemble): Use ISSPACE instead of isspace. + * config/tc-ppc.c: Include "safe-ctype.h" instead of . + (register_name): Use ISALPHA instead of isalpha. + (ppc_elf_suffix): Use ISALNUM/TOLOWER instead of + isalnum/islower/tolower. + (md_assemble): Use ISSPACE instead of isspace. + (ppc_canonicalize_symbol_name): Use ISLOWER/TOUPPER instead of + islower/toupper. + * config/tc-s390.c: Include "safe-ctype.h" instead of . + (register_name): Use ISALPHA instead of isalpha. + (s390_elf_suffix, s390_lit_suffix): Use ISALNUM instead of isalnum. + (md_gather_operands, md_assemble, s390_insn): Use ISSPACE instead of + isspace. + * config/tc-sh.c: Include "safe-ctype.h" instead of . + (sh_elf_suffix): Use ISALNUM/TOLOWER instead of + isalnum/islower/tolower. + (IDENT_CHAR): Use ISALNUM instead of isalnum. + (parse_reg): Use TOLOWER instead of tolower. + (find_cooked_opcode): Use TOLOWER instead of isupper/tolower. + * config/tc-sparc.c: Include "safe-ctype.h" instead of . + (sparc_ip): Use ISLOWER/ISDIGIT instead of islower/isdigit. + (parse_keyword_arg): Use ISALNUM instead of isalnum. + * config/tc-tahoe.c: Include "safe-ctype.h". + (tahoe_reg_parse): Use ISDIGIT instead of isdigit. + (tip_op): Use TOLOWER instead of isupper/tolower. + * config/tc-tic30.c: Include "safe-ctype.h". + (md_begin): Use ISLOWER/ISDIGIT/ISUPPER/TOLOWER/ISLOWER/ + ISALPHA instead of islower/isdigit/isupper/tolower/islower/isalpha. + (tic30_operand): Use TOLOWER instead of tolower. + (tic30_find_parallel_insn): Likewise. + (output_invalid): Use ISPRINT instead of isprint. + * config/tc-tic54x.c: Include "safe-ctype.h". + (tic54x_asg, tic54x_eval): Use ISALPHA instead of isalpha. + (lookup_version): Use TOUPPER instead of toupper. + (tic54x_var): Use ISALPHA instead of isalpha. + (tic54x_mlib): Use ISSPACE instead of isspace. + (subsym_iscons): Use TOUPPER instead of toupper. + (get_operands): Use ISSPACE instead of isspace. + (is_type): Use TOUPPER/ISDIGIT instead of toupper/isdigit. + (encode_indirect, encode_operand): Use TOUPPER instead of toupper. + (next_line_shows_parallel): Use ISSPACE instead of isspace. + (subsym_get_arg, subsym_substitute): Use ISDIGIT instead of isdigit. + (tic54x_start_line_hook, md_assemble, tic54x_start_label): Use + ISSPACE instead of isspace. + * config/tc-tic80.c: Include "safe-ctype.h". + (md_assemble): Use ISSPACE instead of isspace. + * config/tc-v850.c: Include "safe-ctype.h" instead of . + (system_register_name): Use ISDIGIT instead of isdigit. + (md_assemble): Use ISSPACE instead of isspace. + * config/tc-vax.c: Include "safe-ctype.h" instead of . + (vax_reg_parse): Use TOLOWER/ISDIGIT instead of + isupper/tolower/isdigit. + (vip_op): Use TOLOWER instead of isupper/tolower. + * config/tc-w65.c: Don't include . + * config/tc-z8k.c: Include "safe-ctype.h" instead of . + (tohex): Use ISDIGIT/ISLOWER instead of isdigit/islower. + (whatreg): Use ISDIGIT instead of isdigit. + * ecoff.c: Include "safe-ctype.h" instead of . + (ecoff_directive_ent, ecoff_stab): Use ISDIGIT instead of isdigit. + * expr.c: Include "safe-ctype.h" instead of . + (integer_constant): Use ISALNUM/TOUPPER instead of + isalnum/islower/toupper. + (operand): Use TOLOWER instead of isupper/tolower. + * gasp.c: Include "safe-ctype.h" instead of . + (sb_strtol, level_0, change_base, doinstr): Use ISDIGIT instead + of isdigit. + (process_assigns, whatcond): Use TOUPPER instead of toupper. + (chartype_init): Use ISALPHA/ISDIGIT instead of isalpha/isdigit. + (main): For gettext, also set the LC_CTYPE locate facet. + * hash.c: Include "safe-ctype.h". + (main): Use TOLOWER instead of isupper/tolower. + * itbl-lex.l: Don't include . + * listing.c: Include "safe-ctype.h" instead of . + (listing_newline): Use ISCNTRL instead of isascii/iscntrl. Don't + omit non-ASCII characters. + (debugging_pseudo): Use ISSPACE instead of isspace. + * macro.c: Include "safe-ctype.h" instead of . + (buffer_and_nest): Use ISALNUM instead of isalnum. + (get_token): Use ISALPHA/ISALNUM instead of isalpha/isalnum. + (define_macro): Use ISUPPER/TOLOWER instead of isupper/tolower. + (macro_expand_body): Use ISALNUM/ISDIGIT/ISUPPER/ISALPHA + instead of isalnum/isdigit/isupper/isalpha. + (check_macro): Use ISALPHA/ISALNUM/ISUPPER/TOLOWER instead + of isalpha/isalnum/isupper/tolower. + * read.c: Include "safe-ctype.h" instead of . + (read_a_source_file): Use ISUPPER/TOLOWER/ISDIGIT instead of + isupper/tolower/isdigit. + (s_mri_common): Use ISDIGIT instead of isdigit. + (s_mri_sect): Use ISDIGIT/TOUPPER instead of isdigit/toupper. + (s_float_space): Use ISALPHA instead of isalpha. + (ignore_rest_of_line): Use ISPRINT instead of isprint. + (float_cons): Use ISALPHA instead of isalpha. + (next_char_of_string): Use ISDIGIT/ISXDIGIT instead of + isdigit/isxdigit. + * symbols.c: Include "safe-ctype.h" instead of . + (save_symbol_name): Use ISLOWER/TOUPPER instead of + islower/toupper. + (symbol_find_base): Use TOUPPER instead of islower/toupper. + (decode_local_label_name): Use ISDIGIT instead of isdigit. + +2001-09-18 Martin Schwidefsky + + * tc-s390.c (s390_insn): Add code to cope with 6 byte O_constants + in 64 bit mode and make format "e" work. + +2001-09-18 Alan Modra + + * dwarf2dbg.c (dwarf2_directive_file): Avoid signed/unsigned warning. + + * write.c (set_symtab): Update bfd_alloc declaration. Use a temp + var to ensure bfd_alloc arg is the right type. + (write_object_file): Cast args of bfd_seek. Replace bfd_write with + bfd_bwrite. + + * config/obj-coff.c: Replace calls to bfd_write with calls to + bfd_bwrite. Cast args of bfd_seek. + + * config/obj-elf.c (obj_elf_change_section): Avoid signed/unsigned + warning. + + * config/tc-mn10300.c (set_arch_mach): Make param unsigned. + + * config/tc-tic54x.c (tic54x_mlib): Replace bfd_read call with + call to bfd_bread. + +2001-09-15 Hans-Peter Nilsson + + * config/tc-sh.h (sh_force_relocation): Prototype. + (struct fix): Forward declare. + * config/tc-sh.c (type sh_operand_info): Move to top of file. + (cons, s_align_bytes): Remove old-type declarations. + (sh_elf_suffix, parse_reg, dot, parse_exp, parse_at, get_operand, + get_operands, get_specific, insert, build_relax, + insert_loop_bounds, build_Mytes): Prototype. + (little): Make static. Prototype. + (check, tc_Nout_fix_to_chars): Delete unused functions. + +2001-09-14 Eric Christopher + + * config/tc-mips.c (md_parse_option): Remove setting mips_64 via + -mgp32/mgp64. + +2001-09-14 Kevin Lo + + * configure.in: Add arm-openbsd target. + * configure: Regenerate. + +2001-09-14 Thiemo Seufer + + * configure.in: Change machine triplets from mips-*-linux-gnu* to + mips*-*-linux*. + +2001-09-12 Thiemo Seufer + + * config/tc-mips.c (append_insn): Don't rightshift BFD_RELOC_16_PCREL. + +2001-09-11 Richard Henderson + + * config/tc-alpha.c (alpha_elf_section_letter): New. + (alpha_elf_section_flags): New. + * config/tc-alpha.h (md_elf_section_letter): New. + (md_elf_section_flags): New. + * config/tc-ia64.c (ia64_elf_section_letter): New. + * config/tc-ia64.h (md_elf_section_letter): New. + +2001-09-11 Jakub Jelinek + + * config/obj-elf.c (obj_elf_parse_section_letters): Use 'M' instead + of 'm', 'S' instead of 's'. Update bad_msg. + * config/tc-ppc.c (ppc_section_letter): Update bad_msg. + * config/tc-i370.c (i370_sectioN_letter): Update bad_msg. + +2001-09-09 Alan Modra + + * expr.c (expr): Move code setting "retval" to the end of the loop, + and rearrange for efficiency. For "PIC code" subtraction, use + "rightseg" rather than recalculating. For "symbol OP symbol" + subtract, set "retval" to absolute_section if symbols in same + section. + * symbols.c (resolve_symbol_value): Resolve "sym +/- expr" to an + O_symbol. Simplify a +/- b code. Allow equality and non-equality + comparisons on symbols from any section. Allow other comparison + operators as for subtraction. + (symbol_equated_reloc_p): New predicate function. + * symbols.h (symbol_equated_reloc_p): Declare. + * write.c (relax_segment ): Ensure segment + for expression syms is set correctly. + (adjust_reloc_syms): Use symbol_equated_reloc_p. + (write_relocs): Likewise. + (write_object_file): Likewise. + * config/tc-mips.c (md_estimate_size_before_relax): Likewise. + * config/tc-i386.c (md_assemble ): Don't lose part + of a complex expression when setting up frag_var. + +2001-09-07 Richard Henderson + + * config/tc-alpha.c (alpha_reloc_op_tag): Replace need_seq with + require_seq and allow_seq. Let !literal omit the sequence number. + (tokenize_arguments): Reject sequence numbers of !allow_seq. + +2001-09-08 Jakub Jelinek + + * config/tc-sparc.c (md_apply_fix3): Handle relocs against SEC_MERGE + section symbols the same way as externs. + +2001-09-07 Thiemo Seufer + + * config/tc-mips.c (s_mipsset): Reallow unrestricted use of .set mipsX + pseudo-op. + +2001-09-07 Thiemo Seufer + + * config/tc-mips.c (append_insn): Handle BFD_RELOC_16_PCREL. + (macro_build): Use BFD_RELOC_16_PCREL_S2 only for embedded + PIC, BFD_RELOC_16_PCREL for the rest. + (mips_ip): Likewise. + (md_pcrel_from): return the right offset for the differently shifted + pcrel relocs. + (md_apply_fix): Handle BFD_RELOC_16_PCREL. + +2001-09-05 Richard Henderson + + * config/tc-ia64.c (FUNC_IPLT_RELOC): New. + (pseudo_func): Add @iplt. + (pseudo_opcode): Add data16 and data16.ua. + (md_begin): Set iplt pseudo. + (ia64_cons_fix_new): Handle 16 byte iplt reloc specially. + +2001-09-04 Richard Henderson + + * config/tc-alpha.c (struct alpha_insn): Make sequence scalar long. + (MACRO_LITERAL, MACRO_BASE, MACRO_BYTOFF, MACRO_JSR): Remove. + (alpha_macros): Remove occurrences of same. + (O_lituse_addr, O_gprel): New. + (DUMMY_RELOC_LITUSE_*): New. + (s_alpha_ucons, s_alpha_arch): Prototype. + (alpha_reloc_op): Construct elements via DEF macro. + (ALPHA_RELOC_SEQUENCE_OK): Remove. + (struct alpha_reloc_tag): Rename from alpha_literal_tag; rename + members to not be literal specific. + (next_sequence_num): New. + (md_apply_fix3): Cope with missing GPDISP_LO16. Adjust for + added/removed BFD relocations. + (alpha_force_relocation, alpha_fix_adjustable): Likewise. + (alpha_adjust_symtab_relocs): Handle GPDISP relocs as well. + (tokenize_arguments): Parse ! relocations properly. + (find_macro_match): Delete unused macro argument types. + (assemble_insn): Add reloc parameter; emit that instead of the + default as appropriate. + (get_alpha_reloc_tag): New. Split from ... + (emit_insn): ... here. Allocate a reloc tag for GPDISP. + (assemble_tokens): Don't search macros if user relocation present. + Copy reloc sequence number to insn struct. + (emit_ldgp): Remove user reloc handling. + (load_expression, emit_lda, emit_ldah, emit_ir_load): Likewise. + (emit_loadstore, emit_ldXu, emit_ldil, emit_stX): Likewise. + (emit_sextX, emit_division, emit_jsrjmp, emit_retjcr): Likewise. + * config/tc-alpha.h (tc_adjust_symtab): Always define. + (struct alpha_fix_tag): Name members less literal specific. + +2001-09-04 Jeffrey A Law (law@cygnus.com) + + * tc-h8300.c (tc_gen_reloc): Give an error if we try to take the + address of two symbols in different sections. + +2001-08-31 Eric Christopher + Jason Eckhardt + + * config/tc-mips.c (mips_cpu_info): Add support for mipsisa32, + 5kc, and 20kc. Clean up old entries. + +2001-08-31 J"orn Rennecke + Jeff Law + + * config/tc-h8300.c (build_bytes): For OBJ_ELF, make relocation's + offset match H8 ELF spec. + (md_section_align): Alternate implementation for BFD_ASSEMBLER. + (md_apply_fix): Fix argument and return types for BFD_ASSEMBLER. + + * tc-h8300.c (relocation mappings): Remove. Moved to tc-h8300.h. + (build_bytes): Mark fixups for PCrel branches as signed. For + OBJ_ELF, make sure the reloc's offset points to the first byte + to be modified. + (md_convert_frag): Update definiton based on BFD_ASSEMBLER. + * tc-h8300.h (relocation mappings): Add. + +2001-08-30 J"orn Rennecke + + * tc-h8300.c (tc_crawl_symbol_chain, tc_headers_hook): Don't + define for BFD_ASSEMBLER. + (tc_reloc_mangle): Likewise. + (tc_gen_reloc): New function for BFD_ASSEMBLER. + +2001-08-29 Jeffrey A Law (law@cygnus.com) + + * config/tc-h8300.c (h8300hmode): Record the machine type + if BFD_ASSEMBLER is defined. + (h8300smode, md_begin): Similarly. + +2001-08-29 Joel Sherrill + + * configure.in (i[3456]86-*-rtems*, m68*-*-rtems*): Change + default from coff to elf. + * configure: Regenerate. + +2001-08-29 J"orn Rennecke + + * tc-h8300.c: If OBJ_ELF, include elf/h8.h, and define + assorted coff relocations to the corresponding elf relocations. + * tc-h8300.h (TARGET_ARCH, TARGET_FORMAT): Define appropriately. + + * configure.in: Add case for h8300-*-elf. + * configure: Regenerate. + +2001-08-29 J"orn Rennecke + + * doc/internals.texi (MD_PCREL_FROM_SECTION): Change + documentation to reflect reality. + +2001-08-27 Thiemo Seufer + + * config/tc-mips.c (load_address): Reflect change to MAX_GPREL_OFFSET. + (macro): Reflect change to MAX_GPREL_OFFSET. + +2001-08-27 Torbjorn Granlund + Staffan Ulfberg + Linus Nordberg + Alan Modra + + * configure.in: Recognise powerpc*le*, not just powerpcle*. + * configure: Regenerate. + * config/tc-ppc.c (PPC_LO, PPC_HI, PPC_HA, PPC_HIGHER, + PPC_HIGHERA, PPC_HIGHEST, PPC_HIGHESTA, SEX16): New macros. + (md_assemble): Use them. + (ppc_machine): Support stub for ELF64 as well as XCOFF. + (md_pseudo_table): Add "llong", "quad". + (md_parse_option): Match default_cpu of powerpc*. + (ppc_arch): Likewise. + (ppc_subseg_align): Only for OBJ_XCOFF. + (ppc_target_format): Return elf64-powerpc strings for 64 bit ELF. + (md_begin): Select PPC_OPCODE_64 for 64 bit. + (ppc_insert_operand): Don't bother testing 'file' before calling + as_bad_where. Use as_bad_where for operand->insert errors. + (mapping): Add ELF64 relocation modifiers. + (ppc_elf_suffix): Replace symbol on BFD_RELOC_PPC64_TOC reloc + expressions with abs_symbol. + (ppc_elf_cons): Correct offset for little endian targets. + (ppc_elf_frob_symbol): New. + (md_assemble): Add support for 64 bit ELF relocs. + (ppc_tc): Ensure 8 byte alignment when 64 bit. + (ppc_is_toc_sym): Only define for OBJ_XCOFF and OBJ_ELF. Match + ".toc" section for 64 bit ELF. + (ppc_fix_adjustable): New. Macro body moved from tc-ppc.h. + (md_apply_fix3): Silence warning with ATTRIBUTE_UNUSED. Only do + the ppc_is_toc_sym check for OBJ_XCOFF and OBJ_ELF. For 64 bit, + use BFD_RELOC_PPC64_TOC16_DS instead of BFD_RELOC_PPC_TOC16. + Expand on comments, error message. Add support for 64 bit relocs, + and use PPC_HI etc. macros. + * config/tc-ppc.h (MAX_MEM_FOR_RS_ALIGN_CODE): Define. + (HANDLE_ALIGN): Define to generate nops in code sections rather + than zeros. + (TC_FORCE_RELOCATION): Force for BFD_RELOC_PPC64_TOC. + (ELF_TC_SPECIAL_SECTIONS): Add 64 bit ELF sections. + (tc_fix_adjustable): Move body of macro to tc-ppc.c. + (ppc_fix_adjustable): Declare. + (tc_frob_symbol): Define. + (ppc_elf_frob_symbol): Declare. + +2001-08-26 Andreas Jaeger + + * config/tc-s390.c: Add missing prototypes + (md_gather_operands): Make static. + +2001-08-26 Thiemo Seufer + + * config/tc-mips.h (MAX_GPREL_OFFSET): Change it to the maximum + allowed value, not the word beyond maximum. + * config/tc-mips.c (macro_build_lui): Code cleanup. + (macro): Reflect change to MAX_GPREL_OFFSET. + (mips_ip): Check explicitly against S_EX_NONE. + (my_get_SmallExpression): parse for %gp_rel, not %gprel. + (md_apply_fix): Code cleanup. + +2001-08-24 Andreas Jaeger + + * config/tc-ppc.h: Fix prototype declaration. + +2001-08-23 Jakub Jelinek + + * config/tc-ia64.c (dot_endp): Set function symbol sizes. + * config/obj-elf.c (obj_elf_size): When size is constant, free + and clear symbol_get_obj(sym)->size if any. + +2001-08-21 Thiemo Seufer + + * config/tc-mips.c (md_begin): Warn about incompatibility between + -march=FOO and -mipsN option, continue with default ISA. + +2001-08-21 Thiemo Seufer + + * config/tc-mips.c (md_parse_option): #ifdef the + traditional/non-traditional names as it is done in mips_target_format. + +2001-08-20 Richard Henderson + + * config/tc-alpha.h (MD_APPLY_FIX3): Define. + * config/tc-alpha.c (md_apply_fix3): Rename from md_apply_fix; + use seg parameter instead of now_seg. + +2001-08-18 H.J. Lu + + * config/tc-mips.c (show): Add the missing prototype. + +2001-08-18 Thiemo Seufer + + * config/tc-mips.c (S_EX_*): New enum for my_getSmallExpression() + return values. + (mips_ip): Use the new return values instead of characters. Add + support for %higher and %highest. + (LP): Remove. + (RP): Remove. + (my_getSmallExpression): Make parsing case insensitive and more + reliable. Add support for %higher and %highest. Further support to + parse %gprel and %neg is implemented but currently deactivated. + +2001-08-17 Alan Modra + + * ecoff.c (ecoff_frob_symbol): Remove casts from bfd_get_gp_size. + (ecoff_build_symbols): Likewise. + * read.c (s_lcomm_internal): Fix signed/unsigned warning. + +2001-08-16 Thiemo Seufer + + * config/tc-mips.c (mips_elf_final_processing): Set elf header flags + for n32 ABI if appropriate. + +2001-08-16 Thiemo Seufer + + * config/tc-mips.c (cons_fix_new_mips): Remove. + * config/tc-mips.h (TC_CONS_FIX_NEW): Remove. + (cons_fix_new_mips): Remove. + +2001-08-14 Jeff Johnston + + * expr.c (operand)[LITERAL_PREFIXDOLLAR_HEX]: Treat $L as + a label, not a hex constant. + +2001-08-13 Nick Clifton + + * config/tc-v850.h: Add missing prototypes. + +2001-08-12 Martin Schwidefsky + + * config/tc-s390.c (s390_elf_cons): Correct fixups for PLT + relocations. + +2001-08-12 TAKAI Kousuke + + * config/tc-sparc.c (cons_fix_new_sparc): Move + `sparc_no_align_cons = 0;' to... + (s_uacons): ...here so that sparc_no_align_cons will get + cleared properly. + +2001-08-11 Kazu Hirata + + * config/tc-mips.c: Fix a comment typo. + +2001-08-10 Richard Sandiford + + * config/tc-mips.c (move_register): New function. + (macro_build): Remove OPCODE_IS_MEMBER's gp32 argument. + (mips_ip): Likewise. + (macro2): Use move_register rather than macro_build for moves. + (mips16_macro): Likewise. + (macro): Likewise. Handle M_MOVE. + +2001-08-10 Andreas Jaeger + + * configure.in: Add -Wstrict-prototypes and -Wmissing-prototypes + to build warnings. + * configure: Regenerate. + +2001-08-10 Alan Modra + + * as.h (alloca): Don't declare if __GNUC__. Remove an old comment. + Comment indentation of #pragma. + * macro.c (alloca): Likewise. + + * config/tc-ppc.c: Revert 2001-08-08. + +2001-08-09 Alan Modra + + * symbols.c: Add missing prototypes. + * config/e-i386elf.c: Likewise. + * config/e-i386coff.c: Likewise. + * config/e-i386aout.c: Likewise. + * config/obj-coff.c: Likewise. + (def_symbol_in_progress, stack): Move definition. + * config/obj-elf.c: Add missing prototypes. + (obj_elf_change_section): Make static. + (obj_elf_parse_section_letters): Likewise. + (obj_elf_section_word): Likewise. + (obj_elf_section_type): Likewise. + +2001-08-08 Alan Modra + + From 1999-10-25 Torbjorn Granlund + * config/tc-ppc.c (md_apply_fix3): Replace haphazard code for + determining reloc type with code reading operands->reloc field. + +2001-08-08 Alan Modra + + * config/obj-elf.c (elf_copy_symbol_attributes): Make it a global + function, and expand old obj-elf.h OBJ_COPY_SYMBOL_ATTRIBUTES here. + * config/obj-elf.h (elf_copy_symbol_attributes): Declare. + (OBJ_COPY_SYMBOL_ATTRIBUTES): Call elf_copy_symbol_attributes. + + * output-file.c (output_file_create): Don't try to open a second + time as it's unnecessary. FOPEN_W was undefined too. + +2001-08-07 Thiemo Seufer + + * config/tc-mips.c (macro_build): Replace magic constants by defines. + (mips_ip): Likewise. Typo. + +2001-08-04 Thiemo Seufer + + * config/tc-mips.c (mips_abi_string): Initialize with NULL instead + of 0. + (RELAX_ENCODE): Replace bfd_vma by valueT. + (load_address): Formatting. + (macro): Likewise. Code cleanup. Typo. + (macro2): Formatting. + (md_parse_option): Typo. + (s_mipsset): Reorder cases to look nicer. + (md_estimate_size_before_relax): Formatting. Code cleanup. + (mips_elf_final_processing): Check against NULL instead of 0. + (md_obj_end): Remove ugly `' in message string. + (s_mips_ent): Remove ugly `' in message string. + +2001-07-30 Thiemo Seufer + + * config/tc-mips.c (md_begin): Take -mcpu value into account even when + -mipsX is specified. Make both -mcpu/-march and -mcpu/-mtune pairs + mutually exclusive (if they are different). + (md_parse_option): Warn if an -march/-mtune/-mcpu/-m option is + set more than once. + +2001-08-03 Richard Sandiford + + * config/tc-mips.c (md_apply_fix): Don't subtract the symbol value + from GPREL addends. + +2001-08-02 Richard Sandiford + + * doc/c-mips.tex (-mgp32, -mfp32): Added -mfp32, unified with -mgp32. + * config/tc-mips.c (mips_fp32, mips_32bit_abi): New static variables. + (md_long_opts): Add -mfp32 option. + (md_parse_option): Handle it. Set mips_32bit_abi given -mabi=32. + (md_show_usage): Show usage for -mfp32 and -mgp32. + (HAVE_32BIT_GPRS, HAVE_32BIT_FPRS): New macros. + (HAVE_64BIT_GPRS, HAVE_64BIT_FPRS): New macros, inverse of the above. + (HAVE_32BIT_ADDRESSES): New macro. + (load_register): Use HAVE_32BIT_GPRS to determine the register width. + (load_address): Use HAVE_32BIT_ADDRESSES to determine the address size. + (s_cprestore, s_cpadd): Likewise. + (macro): Use HAVE_32BIT_GPRS to determine the width of registers + used in branch and M_LI_D macros. Use HAVE_64BIT_FPRS to determine + the width registers used in M_LI_DD macros. Use HAVE_32BIT_ADDRESSES + to determine the width of addresses in load, store and jump macros. + (macro2): Use HAVE_32BIT_GPRS to determine the width of registers + used in set instructions; do not check the address size for them. + Use HAVE_32BIT_ADDRESSES to determine the width of addresses in + unaligned load and store macros. + (mips_ip): Use the new macros to check the width of a register when + processing float constants. Force a constant into memory if it is + destined for an FPR and the FPRs are wider than the GPRs. Warn about + odd FPR numbers if HAVE_32BIT_FPRS. Use HAVE_32BIT_GPRS rather + than mips_gp32 to select synthetic instructions. + (macro_build): Use HAVE_32BIT_GPRS rather than mips_gp32 to select + synthetic instructions. + +2001-08-01 Christian Groessler + + * config/tc-z8k.c (parse_reg): If a string starts with "r", "rl", + "rh", "rr", "rq", or "sp" then don't automatically assume + it's a register name. Check whether there is a number + following. + +2001-08-01 Alan Modra + + * config/tc-i386.c (lex_got): Match lower case relocation tokens. + Don't allocate more space than necessary for the input line copy. + +2001-08-01 Alan Modra + + * read.c: Standardize error/warning messages - don't capitalise, no + final period or newline, don't say "ignored" or "zero assumed" for + as_bad messages. In some cases, change the wording to that used + elsewhere for similar messages. + * app.c: Likewise. + * as.c: Likewise. + * atof-generic.c: Likewise. + * cgen.c: Likewise. + * cond.c: Likewise. + * depend.c: Likewise. + * dwarf2dbg.c: Likewise. + * ecoff.c: Likewise. + * expr.c: Likewise. + * frags.c: Likewise. + * input-file.c: Likewise. + * input-scrub.c: Likewise. + * listing.c: Likewise. + * output-file.c: Likewise. + * stabs.c: Likewise. + * subsegs.c: Likewise. + * symbols.c: Likewise. + * write.c: Likewise. + * ecoff.c (ecoff_directive_end): Test for missing name by + comparing input line pointers rather than reading string. + (ecoff_directive_ent): Likewise. + * read.c (s_set): Likewise. + (s_align): Report a warning rather than an error for + alignment too large. + (s_comm): Check for missing symbol name. + (s_lcomm_internal): Likewise. + (s_lsym): Likewise. + (s_globl): Use is_end_of_line instead of looking for '\n'. + (s_lcomm_internal): Likewise. + (ignore_rest_of_line): Report a warning rather than an error. + +2001-07-31 Geoffrey Keating + + * config/tc-ppc.c (ppc_elf_validate_fix): It's OK to have + any kind of relocation against a not-loaded section. + +2001-07-30 Alan Modra + + * config/obj-elf.c (obj_elf_symver): Temporarily modify lex_type + to include '@' in symbol names when parsing versioned symbols + rather than calling get_symbol_end multiple times. + * config/tc-i370.c (register_name): Format fixes. Don't call + get_symbol_end after parsing number. + * config/tc-mn10200.c (data_register_name): Format fixes. Hoist + code out of conditional. + (address_register_name): Likewise. + (other_register_name): Likewise. + * config/tc-mn10300.c (r_register_name): Likewise. + (xr_register_name): Likewise. + (data_register_name): Likewise. + (address_register_name): Likewise. + (other_register_name): Likewise. + * config/tc-ppc.c (register_name): Likewise. + * config/tc-s390.c (register_name): Likewise. + +2001-07-27 Stephane Carrez + + * config/tc-m68hc11.c (md_estimate_size_before_relax): Fix bsr + and bra relax: update fragP->fr_fix after the fixup. + +2001-07-27 Tracy Kuhrt + + * read.c (s_set): Check for missing symbol name. + +2001-07-26 Alan Modra + + * write.c (relax_segment ): Account for fr_fix. + +2001-07-25 H.J. Lu + + * config/tc-mips.c (md_estimate_size_before_relax): Make sure + we treat weak like extern only for ELF. + (mips_fix_adjustable): Make sure we don't adjust extern/weak + symbols only for ELF. + +2001-07-25 Chris Demetriou + + * config/tc-mips.c: Fix spelling error in comment. + +2001-07-25 Dave Brolley + + * app.c (LEX_IS_PARALLEL_SEPARATOR): New macro. + (IS_PARALLEL_SEPARATOR): New macro. + (do_scrub_begin): Set up characters in tc_parallel_separator_chars + as LEX_IS_PARALLEL_SEPARATOR, if it is defined. + (do_scrub_chars): Handle LEX_PARALLEL_SEPARATOR chars like + LEX_LINE_SEPARATOR except that we go to state 1 (as if the label has + been seen). + +2001-07-24 Alan Modra + + * Makefile.am (DEP_FLAGS): Define, add -DOBJ_MAYBE_ELF. + (DEP1, DEPTC, DEPOBJ, DEP2): Use it. + Update dependencies with "make dep-am". + * Makefile.in: Regenerate. + * doc/Makefile.in: Regenerate. + +2001-07-23 Kazu Hirata + + * config/tc-alpha.h: Fix formatting. + * config/tc-arc.c: Likewise. + * config/tc-d10v.h: Likewise. + * config/tc-hppa.c: Likewise. + * config/tc-i370.c: Likewise. + * config/tc-i386.h: Likewise. + * config/tc-i960.h: Likewise. + * config/tc-ia64.c: Likewise. + * config/tc-ia64.h: Likewise. + * config/tc-m32r.c: Likewise. + * config/tc-m68k.c: Likewise. + * config/tc-m88k.c: Likewise. + * config/tc-ns32k.c: Likewise. + * config/tc-pdp11.c: Likewise. + * config/tc-pj.h: Likewise. + * config/tc-s390.c: Likewise. + * config/tc-sparc.c: Likewise. + * config/tc-sparc.h: Likewise. + * config/tc-tic80.c: Likewise. + * config/tc-w65.h: Likewise. + +2001-07-23 Alan Modra + + * symbols.c (S_GET_VALUE): Don't treat O_constant and local + symbols specially. Always resolve, adding fr_address to value. + * write.c (write_object_file): Don't add fr_address to sym values. + (relax_frag): Likewise. + (relax_segment): Likewise. + * config/obj-ieee.c (do_symbols): Likewise. + * config/tc-cris.c (md_convert_frag): Likewise. + * config/tc-fr30.c (md_convert_frag): Likewise. + * config/tc-i386.c (md_convert_frag): Likewise. + * config/tc-m32r.c (md_convert_frag): Likewise. + * config/tc-m68hc11.c (md_convert_frag): Likewise. + * config/tc-mcore.c (md_convert_frag): Likewise. + * config/tc-mips.c (mips16_extended_frag): Likewise. + * config/tc-ns32k.c (md_convert_frag): Likewise. + * config/tc-m68k.c (md_convert_frag_1): Likewise. + (BRANCHBWL, BRABSJUNC, BRABSJCOND, BRANCHBW, FBRANCH, DBCCLBR, + DBCCABSJ, PCREL1632, PCINDEX, ABSTOPCREL): Decrement. + (md_relax_table): Remove first four entries. Format. + (md_estimate_size_before_relax): Remove old_fix. Don't bother + setting fr_var. Simplify byte branch checks. + +2001-07-23 Alan Modra + + * config/tc-hppa.c (pa_parse_nonneg_cmpsub_cmpltr): Remove + "isbranch" param as all calls have it set. + (pa_parse_neg_cmpsub_cmpltr): Likewise. + (pa_parse_nonneg_add_cmpltr): Likewise. Remember result of + strcasecmp in "nullify" var. + (pa_parse_neg_add_cmpltr): Likewise. + (pa_ip): Don't "save_s" unnecessarily. Update calls to above + functions. Don't print wrong conditions in error messages. + +2001-07-23 Andreas Jaeger + + * config/tc-s390.c (s390_force_relocation): Removed. + + * config/tc-s390.h: Remove double declaration of + TC_FORCE_RELOCATION. + +2001-07-22 H.J. Lu + + * config/tc-mips.c (s_mips_end): Remove unused variables. + (s_mips_frame): Add ATTRIBUTE_UNUSED. + +2001-07-17 Andreas Schwab + + * config/tc-m68k.c (md_pseudo_table) [OBJ_ELF]: Add .file and + .loc. + (md_assemble) [OBJ_ELF]: Call dwarf2_emit_insn before emitting + insn. + * config/tc-m68k.h (DWARF2_LINE_MIN_INSN_LENGTH): Define. + +2001-07-17 matthew green + + * config/tc-i386.c (comment_chars): Don't use '/' as comment start if + TE_NetBSD. + (line_comment_chars): Set to '/' if TE_NetBSD. + +2001-07-14 matthew green + + * configure.in (i386-*-netbsdelf*): New target. + * configure: Regenerate. + +2001-07-10 Mark Elbrecht + + * config/obj-coff.c (coff_frob_symbol): Don't merge if the storage + class of the non-debug symbol is C_NULL. + +2001-07-10 Anders Norlander + + * doc/as.texinfo (Incbin): Fix grammatical errors. + +2001-07-10 Nick Clifton + + * depend.c: Use FOPEN_.. macros in calls to fopen(). + * input-file.c: As above. + * itbl-ops.c: As above. + * listing.c: As above. + * output-file.c: As above. + * read.c: As above. + +2001-07-08 Anders Norlander + + * read.c (s_incbin): New .incbin function. + * read.c (potable): Add "incbin" pseudo-op. + * read.h: Add s_incbin prototype. + * doc/as.texinfo (incbin): Document .incbin pseudo-op. + * NEWS: Mention new feature. + +2001-07-07 Nick Clifton + + * ecoff.c (add_file): Only set debug_type to DEBUG_NONE if it is + DEBUG_UNSPECIFIED. + +2001-07-06 John Healy + + * cgen.c (gas_cgen_save_fixups): Modified to allow more than one + set of fixups to be stored. + (gas_cgen_restore_fixups): Modified to allow the fixup chain to be + restored to be chosen from any that are saved. + (gas_cgen_swap_fixups): Modified to allow the current set of + fixups to be swapped with any other set that has been saved. + (gas_cgen_initialize_saved_fixups_array): New routine. + * cgen.h: Modifed prototypes for gas_cgen_save_fixups, + gas_cgen_restore_fixups, and gas_cgen_swap_fixups. Added definitions + or MAX_SAVED_FIXUP_CHAINS. + * config/tc-m32r.c (assemble_two_insns): Changed calls to fixup + store, swap and restore fuctions to reflect the new interface. + +2001-07-06 Nick Clifton + + * config/tc-m68k.c (md_estimate_size_before_relax): Catch and + ignore empty, ineffectual alignment frags when deciding if a + branch can be short. + +2001-07-05 Steve Ellcey + + * config/tc-ia64.c (special_section): Add SPECIAL_SECTION_INIT_ARRAY + and SPECIAL_SECTION_FINI_ARRAY. + (special_section_name): Add .init_array and .fini_array. + (md_pseudo_table): Add init_array and fini_array. + (md): Add pointer_size and pointer_size_shift fields. + (setup_unwind_header): New static function. + (output_unw_records): Modify to use setup_unwind_header. + (generate_unwind_image, dot_endp): Modify to use md.pointer_size and + md.pointer_size_shift. + (md_begin): Initialize md.pointer_size and md.pointer_size_shift. + +2001-07-05 Ben Elliston + + * README (Supported platforms): m88k no longer suffers bitrot. + + * config/tc-m88k.c (md_pseudo_table): Remove redundant "global". + +2001-07-05 Alan Modra + + * struc-symbol.h (struct local_symbol): Rename lsy_offset to + lsy_value. Correct typos in comments. + * symbols.c (local_symbol_make): Update for name change. + (local_symbol_convert): Likewise. + (colon): Likewise. + (S_GET_VALUE): Likewise. + (S_SET_VALUE): Likewise. + (print_symbol_value_1): Likewise. + (resolve_symbol_value): Likewise. Don't divide local sym values + by OCTETS_PER_BYTE twice. + +2001-07-04 Jim Wilson + + * config/tc-ia64.c (md_pseudo_table): Add 2byte, 4byte, and 8byte. + + * config/tc-ia64.c (is_conditional_branch): Rewrite to exclude mod + sched branches. + +2001-07-05 Ben Elliston + + * read.c (s_fill): Correct spelling error in comments. + + * doc/c-m88k.texi: New file. + * doc/Makefile.am (CPU_DOCS): Add c-m88k.texi. + * doc/Makefile.in: Regenerate. + * doc/all.texi: Set M880X0. + * doc/as.texinfo: Hook in m88k-dependent documentation. + +2001-07-04 Eric Christopher + + * doc/c-mips.texi (MIPS Opts): Document 12000 as valid cpu. + + * config/tc-mips.c (mips_cpu_info_table): Add rm5200, rm5231, rm5261, + and rm5721 as valid cpu strings. + (md_show_usage): Add rm5200, rm5231, rm5261, rm5721. + +2001-07-04 Richard Sandiford + + * config/tc-mips.c (md_apply_fix): Prevent addend from becoming zero + if it's expected to be non-zero. + +2001-07-03 Nick Clifton + + * config/tc-sh.c (sh_frob_section): Replace symbol_get_frag() with + fscan->fx_frag. + + * write.c (TC_FINALIZE_SYMS_BEFORE_SIZE_SEG): Default to 1. + (write_object_file): Set finalize_syms to + TC_FINALIZE_SYMS_BEFORE_SIZE_SEG just before size_segs is + called. + + * doc/internals.texi: Document + TC_FINALIZE_SYMS_BEFORE_SIZE_SEG. + +2001-07-02 Alan Modra + + * config/tc-ppc.c: Formatting fixes. + +2001-07-01 Ben Elliston + + * config/tc-m88k.c: Back out warning fixes from 2001-06-24, as + they cause some subtle breakage. Will fix them again later. + +2001-06-28 Nick Clifton + + * config/obj-coff.c (obj_coff_ln): Treat a .ln directive + outside of a function as a .appline directive. + +2001-06-28 Eric Christopher + H.J. Lu + + * config/tc-mips.c (mips_arch): New. Use mips_arch instead + of mips_cpu for the ISA selection. + (md_longopts): Add OPTION_MARCH and OPTION_MTUNE. + (md_parse_option): Handle OPTION_MARCH and OPTION_MTUNE. + (mips_tune): New. Use mips_tune for scheduling and optimization + issues. + (append_insn): Use mips_tune and mips_arch. + (macro_build): Ditto. + (mips_ip): Ditto. + (md_begin): Handle mips_arch, mips_tune and mips_cpu. For + backwards compatability mips_cpu generates arch and tune. + (md_show_usage): Document new behavior. + + * doc/c-mips.texi (MIPS Opts): Document -march and -mtune. + Deprecate -mcpu. + + * NEWS: Update. + +2001-06-27 Nick Clifton + + * write.c (write_object_file): Do not set finalize_syms until + after the segments have been sized. Some backends may still + need to access the syms's frags in order to adjust relaxed + frags. + + * config/tc-arm.c (do_ldst): Use MVN to build simple inverted + constants. + +2001-06-27 Alan Modra + + * write.c (fixup_segment ): Don't + subtract MD_PCREL_FROM_SECTION for 68k. + (fixup_segment ): Only fudge + by adding MD_PCREL_FROM_SECTION for 68k or if not already pcrel. + +2001-06-27 Tracy A. Kuhrt + + * write.c (fixup_segment ): If + pcrel, subtract MD_PCREL_FROM_SECTION value. + +2001-06-24 Ben Elliston + + * stabs.c (generate_asm_file): Make local variable `len' a size_t. + +2001-06-24 Jakub Jelinek + + * config/tc-alpha.c (tc_gen_reloc): Handle relocs against SEC_MERGE + section symbols the same way as externs. + +2001-06-24 Ben Elliston + + * config/tc-m88k.c (md_number_to_imm): Remove; unused since 1993. + (emit_relocations): Ditto. + (s_bss): Ditto. + (md_begin): Reformat comments to conform to the GNU standards. + (md_assemble): Ditto. + + * config/tc-m88k.c (get_reg): Adjust type of `reg_prefix' to char. + (md_parse_option): Mark parameters as unused. + (md_show_usage): Ditto. + (calcop): Adjust type of `reg_prefix' to char. + (get_reg): Ditto. + (getval): Adjust type of local `c' to char. + (md_create_short_jump): Mark from_addr, to_addr params as unused. + (md_create_long_jump): Ditto. + (md_estimate_size_before_relax): Mark parameters as unused. + + * config/tc-m88k.c (md_pseudo_table): Properly terminate the table + to allay a possible compiler warning. + +2001-06-22 Nick Clifton + + * doc/internals.texi (CPU backend): Document md_atof. + +2001-06-22 Matthew Wilcox + + * config/tc-hppa.c (pre_defined_registers): Add %mrp (millicode + return pointer) alias for %r2 or %r31, depending on 32 or 64 bit + architecture. + +2001-06-21 Philip Blundell + + * config/tc-arm.c (cplong_flag): Rename to long_flag. All uses + updated. + (insns): Remove entry for adrl. Add long_flag for adr. + (do_adr): Handle `l' suffix. + (do_adrl): Delete. + +2001-06-21 Alan Modra + + * config/tc-hppa.c (CHECK_FIELD_WHERE): Define. + (md_apply_fix): Use it here. Replace printf with equivalent + as_bad_where. + (tc_gen_reloc): Use as_bad_where instead of as_bad. + (md_apply_fix): Here too. + * config/tc-i386.c (tc_gen_reloc): Use as_bad_where instead of as_bad. + * config/tc-m68k.c (tc_gen_reloc): Likewise. + (md_convert_frag_1): Likewise. + +2000-06-20 Tom Rix + + * config/tc-ppc.c (ppc_comm): Change default alignment to 4 bytes. + +2001-06-18 H.J. Lu + + * doc/Makefile.am (info): Depend on $(MANS). + (as.1): Remove the prefix `$(srcdir)/'. + * doc/Makefile.in: Regenerated. + + * as.1: Removed. + +2001-06-18 Philip Blundell + + * config/tc-arm.c (do_msr): Remove restriction on usage of + immediate operands. + +2001-06-19 Alan Modra + + * dwarf2dbg.c (dwarf2_finish): Output file info even when no + line info. + +2001-06-13 Philip Blundell + + * config/tc-arm.c (thumb_shift): Improve wording of error message. + (do_t_arit): Likewise. + +2001-06-13 Nick Clifton + + * config/tc-sh.c (md_pseudo_table): Only intercept the .file and + .loc pseudos if the dfwarf2 functions are available. + (md_assemble): Only call dwarf2_emit_insn if it is available. + + * expr.c: Fix typo in comment. + +2001-06-12 Nick Clifton + + * doc/as.texinfo (Infix Ops): Document that comparison and + combiner operators can be used as infix operators. + +2001-06-12 Peter Jakubek + + * config/tc-m68k.c (parse_mri_control_operand): Fix handling + of AND/OR. + (swap_mri_condition): Add HS (alias fo CC) and LO (alias for CS). + (reverse_mri_condition): Likewise. + (swap_mri_condition): Issue warning for conditions that can not be + swapped. + (build_mri_control_operand): Fix order of operands (swapped). + (build_mri_control_operand): Allow upper case extension in structured + control directives. + (s_mri_else): Likewise. + (s_mri_next): Likewise. + (s_mri_for): Likewise. + (s_mri_if): Fix handling comment ('*') in mri mode. + (s_mri_while): Likewise. + * macro.c (macro_expand): Allow macro invocation with empty + extension. + +2001-06-12 Nick Clifton + + * config/tc-arm.c: Fix test for overlow of literal pool. + +2001-06-11 H.J. Lu + + * NEWS: Updated for the new -n option for the MIPS assembler. + + * config/tc-mips.c (md_show_usage): Add -n. + + * doc/as.texinfo: Document the new -n option. + * doc/c-mips.texi: Likewise. + * doc/as.1: Regenerated. + +2001-06-10 Alan Modra + + * config/obj-coff.c (obj_coff_section): Formatting fix. + + * config/tc-i386.c (md_assemble): Accept branch hints as ",pt" and + ",pn". + +2001-06-08 H.J. Lu + + * config/tc-mips.c (warn_nops): New variable. Set to 0 to + disable warning about all NOPS that the assembler generates. + (macro): Warn NOPS generated only if warn_nops is not 0. + (md_shortopts): Add `n'. + (md_parse_option): Set warn_nops to 1 for `n'. + +2001-06-08 H.J. Lu + + * config/tc-mips.c (mips_ip): Properly handle illegal operands. + +2001-06-08 H.J. Lu + + * config/tc-mips.c (md_apply_fix): Don't adjust common + extern/weak symbols for ELF. + (md_estimate_size_before_relax): Treat weak like extern for + ELF. + (mips_fix_adjustable): Don't adjust extern/weak symbols for + ELF. + +2001-06-08 Alan Modra + + * Makefile.am: 'som' is not wrongly spelled 'some'. + * Makefile.in: Regenerate. + + * config/tc-mips.c (mips16_mark_labels): Reduce number of calls to + S_GET_VALUE by using a temp. + (append_insn): Likewise, and for S_SET_VALUE too. + (mips_emit_delays): Likewise. + (my_getExpression): Likewise. + (md_apply_fix): Likewise. Use "valueT" rather than "long" for "value". + (mips16_extended_frag): Remove code concerned with avoiding + locking in a frag address now that symbols are not finalized until + relaxation is complete. Cater for first relaxation pass having + bogus addresses. Use relax_marker to reliably determine whether a + symbol frag has been reached on the current pass. + +2001-06-07 H.J. Lu + + * configure.in: Move "mips-*-linux-gnu*" before "mips-*-gnu*". + * configure: Regenerate. + +2001-06-07 H.J. Lu + + * configure.in: Use MIPS_STABS_ELF for Linux/mips and remove + ecoff emulation. + * configure: Regenerate. + +2001-06-07 H.J. Lu + + * config/tc-mips.c (mips_pseudo_table): Add "extern" if + MIPS_STABS_ELF is defined. + +2001-06-06 Nick Clifton + + * as.c (show_usage): Remove L from listing options. It is not a + generic option. + +2001-06-06 Christian Groessler + + * config/tc-z8k.c: Removed many warnings by removing unused + variables and tagging unused parameters as such. + (md_begin): Fixed a typo (","instead of ";"). + (struct ctrl_table): Add parentheses to initialize array + correctly. + (struct flag_table): Likewise. + (struct intr_table): Likewise. + (struct table): Likewise. + (check_operand): "#if 0"'ed since it doesn't seem to be used. + +2001-06-06 Peter Jakubek + + * config/tc-m68k.c (md_show_usage): Add all supported ColdFire + options to list (e.g. m5206e, m5307, m5407). + +2001-06-06 Martin Schwidefsky + + * config/tc-s390.h (TC_FORCE_RELOCATION): Always emit relocations + BFD_RELOC_VTABLE_INHERIT and BFD_RELOC_VTABLE_ENTRY. + +2001-06-06 Alan Modra + + * config/tc-i386.c (md_assemble): Handle Pentium4 branch hints. + : Remove dead code. + +2001-06-06 Tracy Kuhrt + + * as.c (parse_args): Correct option name "listing-lhs-width2". + +2001-06-05 Nick Clifton + + * symbols.c (S_SET_EXTERNAL): Do not override a section symbol's + status. + +2001-05-30 Richard Henderson + + * read.c (emit_leb128_expr): Call md_cons_align. + +2001-05-28 Jeff Sturm + + * config/tc-sparc.c (md_apply_fix3): Handle BFD_RELOC_SPARC_UA16, + BFD_RELOC_SPARC_UA32 and BFD_RELOC_SPARC_UA64. + (tc_gen_reloc): Likewise. + (sparc_cons_align): Don't clear sparc_no_align_cons. + (cons_fix_new_sparc): Substitute BFD_RELOC_SPARC_UA{16|32|64} for + BFD_RELOC_{16|32|64} iff sparc_no_align_cons is set. + +2001-05-27 Alan Modra + + * write.c (relax_segment ): Check the section of a + symbol to determine whether it is absolute rather than comparing + its frag against zero_address_frag as listings play tricks with + frags. + + * config/tc-m68k.c (md_assemble): Ensure variable part of frag is + allocated in the same chunk as the fixed part. + +2001-05-26 Alan Modra + + * write.c (relax_segment ): Calculate growth using + addresses before stretch. Prevent repeated error messages. + From Peter Jakubek + Use as_bad_where and as_warn_where to pinpoint errors. + +2001-05-25 Alan Modra + + * symbols.c (resolve_symbol_value): Always set segment, even when + not finalizing symbol value. + + * config/obj-ieee.c (write_object_file): Set finalize_syms. + * config/obj-coff.c (write_object_file): Likewise. + * (size_section): Remove rs_space assert as fr_symbol is no longer + removed. + (fill_section): Likewise. + + * configure.in: Replace linuxoldld with linux*oldld. + * configure: Regenerate. + + From 2.11 branch 2001-03-30 Richard Henderson + * config/tc-i386.c (md_convert_frag): Don't die on local symbols + that have been finalized. + + * symbols.c (resolve_symbol_value): Clear sy_resolving before + taking exit_dont_set_value. + + * write.c (relax_segment ): Don't zap fr_symbol when + relaxing. + +2000-05-24 Tom Rix + + * config/obj-coff.c (add_lineno): xcoff allows negative line + numbers + * config/tc-ppc.c (ppc_stabx): fix generated symbol + +2001-05-24 Alan Modra + + * write.c (write_object_file): Set finalize_syms = 1 before + size_seg is called. + +2001-05-23 Thiemo Seufer + + * config/tc-mips.c (ISA_HAS_64BIT_REGS): Add ISA_MIPS64 as 64 bit + architecture, remove erraneous ISA_MIPS32. + (md_show_usage): Add MIPS r12k support. + (mips_cpu_info_table): Add MIPS r12k support. + +2001-05-22 Alan Modra + + * config/tc-arc.c (md_assemble): Use is_end_of_line instead of + testing for NULs. + + * symbols.c (resolve_symbol_value): Remove "finalize" param, + instead use finalize_syms directly. Don't treat expressions + specially with regard to finalize_syms. Update calls to self. + (resolve_local_symbol): Update call to resolve_symbol_value. + (S_GET_VALUE): Likewise. Return resolve_symbol_value if + !finalize_syms. + * symbols.h (resolve_symbol_value): Update prototype. + * config/obj-aout.c (obj_crawl_symbol_chain): Update call + to resolve_symbol_value. + * config/obj-bout.c (obj_crawl_symbol_chain): Likewise. + * config/obj-coff.c (do_relocs_for): Likewise. + (yank_symbols): Likewise. + (fixup_segment): Likewise. + * config/obj-vms.c (obj_crawl_symbol_chain): Likewise. + * config/tc-mips.c (md_convert_frag): Likewise. + * config/tc-ppc.c (ppc_frob_symbol): Likewise. + (ppc_fix_adjustable): Likewise. + * dwarf2dbg.c (dwarf2dbg_estimate_size_before_relax): Likewise. + (dwarf2dbg_convert_frag): Likewise. + * ehopt.c (eh_frame_estimate_size_before_relax): Likewise. + (eh_frame_convert_frag): Likewise. + * expr.c (make_expr_symbol): Likewise. + * write.c (adjust_reloc_syms): Likewise. + (write_object_file): Likewise. + (relax_segment): Likewise. + (fixup_segment): Likewise. + (finalize_syms): Init to zero, and update comment. + (write_object_file): Set finalize_syms to 1 rather than 2. + * doc/internals.texi (sy_value): Mention finalize_syms. + (S_GET_VALUE): Remove restriction on when S_GET_VALUE can be called. + + * config/tc-m68k.c (relaxable_symbol): Only treat external symbols + as relaxable if embedded system, make weak syms non-relaxable. + Move definition.. + (tc_m68k_fix_adjustable): ..so it can be used here. + (md_apply_fix_2): Sign extend without conditional. + + * config/tc-v850.c: Update copyright. + +2001-05-16 Jeff Johnston + + * cgen.c (gas_cgen_tc_gen_reloc): Changed error message when + howto entry is not found. + +2001-05-15 Alexandre Oliva + + * config/tc-mn10300.c (mn10300_force_relocation): Don't + optimize differences between symbols in code sections to + constants. + (mn10300_fix_adjustable): Don't adjust to section+offset + relocations pointing at symbols in code sections. + +2001-05-16 Alan Modra + + * config/tc-arc.c (md_assemble): Correct dwarf2_emit_insn param + for 8 byte insns. + * config/tc-i386.c (md_assemble): Call dwarf2_emit_insn before + opcodes are output rather than after. Delete insn_size. + * config/tc-v850.c (md_assemble): Similarly, but delete + total_insn_size. + +2001-05-14 Richard Henderson + + * ehopt.c (eh_frame_convert_frag): Fix missed subtype adjustment + last change. + +2001-05-14 Richard Henderson + + * ehopt.c (get_cie_info): Rename from eh_frame_code_alignment; + also collect whether to expect an FDE augmentation. + (check_eh_frame): Rewrite as a state machine. Track where in + an FDE we are located, skip any augmentation. + (eh_frame_estimate_size_before_relax): Get code alignment from + the fragment subtype. + (eh_frame_relax_frag, eh_frame_convert_frag): Likewise. + * read.c (emit_leb128_expr): Call check_eh_frame. + +2001-05-14 Alexandre Oliva + + * config/tc-mn10300.c (md_assemble): Anchor dwarf2 line info + before a relaxable insns. + +2001-05-13 Alexandre Oliva + + * config/tc-mn10300.c (tc_gen_reloc): Don't reject differences + between symbols if the base symbol is in the current section; + emit a PC-relative relocation instead. + +2001-05-12 Peter Targett + + * config/tc-arc.c: Update copyright and tidy source comments. + (md_pseudo_table): Add directive .cpu back as an alias for + .option. Add .file and .line for dwarf2 support. + (arc_mach_type): Make bfd_mach_arc_6 default. + (md_longopts): Add entry 'pre-v6' representing old command line + option when assembling for 'arc5' core versions. + (md_parse_option): Make OPTION_ARC same as OPTION_ARC6, for new + default behaviour. + (arc_code_symbol): Make symbol value for @h30 fixup expression + equal to O_constant. + (md_assemble): Call dwarf2_emit_insn. + Include "dwarf2dbg2.h". Formatting fixes throughout file. + * config/tc-arc.h (DWARF2_LINE_MIN_INSN_LENGTH): Define. + * doc/c-arc.texi (ARC_CORE_DEFAULT): Update to new default. + +2001-05-11 Jakub Jelinek + + * config/tc-ia64.c (special_linkonce_name): New. + (make_unw_section): Map .gnu.linkonce.t.FOO text section into + .gnu.linkonce.ia64unw{,i}.FOO. + (ia64_elf_section_type): Handle .gnu.linkonce.ia64unw{,i}.FOO. + (dot_endp): Add comment about it. + +2001-05-11 Nick Clifton + + * config/tc-arm.c (arm_handle_align): When truncating an aligned + block, ensure that the low order bits of the alignment are + preserved. + +2001-05-10 Alan Modra + + * config/obj-vms.c (obj_crawl_symbol_chain): Don't take address of + symbol_next. + + * config/tc-fr30.c (md_estimate_size_before_relax): Return size of + current variable part of frag. + * config/tc-m32r.c (md_estimate_size_before_relax): Likewise. + * config/tc-openrisc.c (md_estimate_size_before_relax): Likewise. + * config/tc-m68hc11.c (RELAX_STATE): Define. + (RELAX_LENGTH): Define. + (md_estimate_size_before_relax): Handle non-relaxable cases + separately from relaxable cases for clarity, and return correct + size for multi-pass relaxation. + * config/tc-tahoe.c (RELAX_LENGTH): Correct. + (md_estimate_size_before_relax): As for tc-m68hc11.c. + (md_convert_frag): Remove "length_code". + * config/tc-vax.c (RELAX_STATE): Define. + (RELAX_LENGTH): Define. + (md_relax_table): Add missing entry. + (md_estimate_size_before_relax): As for tc-m68hc11.c. + (md_convert_frag): Remove "length_code". + * config/tc-ns32k.c (md_estimate_size_before_relax): Simplify and + don't bother setting fr_var. Return correct size for multi-pass + relaxation. + * config/tc-v850.c (md_estimate_size_before_relax): Rewrite. + (md_convert_frag): Don't bother clearing fr_var. + (md_pseudo_table): Correct initialization. + * config/tc-h8500.c (md_convert_frag): Don't bother clearing fr_var. + (md_estimate_size_before_relax): No need to set fr_var. + * config/tc-mcore.c (md_convert_frag): Don't bother clearing fr_var. + (md_estimate_size_before_relax): No need to set fr_var. + +2001-05-09 Richard Henderson + + * config/tc-ia64.c (generate_unwind_image): Align the fragment + beginning a function's unwind info block. + +2001-05-09 Alexandre Oliva + + * config/tc-mn10300.c (md_apply_fix3): Accept PC-relative relocs. + +2001-05-08 Andreas Schwab + + * config/tc-m68k.c: Instead of replacing -1 by 64 in assignment to + fx_pcrel_adjust explicitly sign extend when reading it. + +2001-05-08 Alan Modra + + * config/tc-m68k.c (md_estimate_size_before_relax): Set fr_var + from md_relax_table, and combine some switch cases. + +2001-05-06 Alexandre Oliva + + * config/tc-mn10300.c (md_assemble): Subtract operand->shift + from offset in non-pcrel operands too. + +2001-05-06 Nick Clifton + + * config/tc-arm.h (MAX_MEM_FOR_RS_ALIGN_CODE): Define. + * config/tc-arm.c (arm_handle_align): Do not insert more than + MAX_MEM_FOR_RS_ALIGN_CODE bytes. + (arm_frag_align_code): Use MAX_MEM_FOR_RS_ALIGN_CODE. + +2001-05-03 Thiemo Seufer + + * Makefile.am (TARG_ENV_HFILES): Add te-hppa64.h and te-hppalinux64.h. + Run "make dep-am". + * Makefile.in: Regenerate. + * configure.in: Remove duplicate mips-*-ecoff* entry. + * configure: Regenerate. + + * config/obj-ecoff.c (obj_pseudo_table): Fix terminating entry. + (n_names): Cast away type mismatch. + (ecoff_sec_sym_ok_for_reloc): Add unused attribute. + (obj_ecoff_frob_symbol): Likewise. + * ecoff.c: (add_file): Add unused attribute. + (ecoff_directive_begin): Likewise. + (ecoff_directive_bend): Likewise. + (ecoff_directive_def): Likewise. + (ecoff_directive_dim): Likewise. + (ecoff_directive_scl): Likewise. + (ecoff_directive_size): Likewise. + (ecoff_directive_type): Likewise. + (ecoff_directive_tag): Likewise. + (ecoff_directive_val): Likewise. + (ecoff_directive_endef): Likewise. + (ecoff_directive_end): Likewise. + (ecoff_directive_ent): Likewise. + (ecoff_directive_extern): Likewise. + (ecoff_directive_file): Likewise. + (ecoff_directive_fmask): Likewise. + (ecoff_directive_frame): Likewise. + (ecoff_directive_mask): Likewise. + (ecoff_directive_loc): Likewise. + (mark_stabs): Likewise. + (ecoff_stab): Likewise. + (ecoff_frob_symbol): Cast away type mismatch. + (ecoff_padding_adjust): Likewise. + (ecoff_build_symbols): Likewise. + (ecoff_build_procs): Likewise. + (ecoff_build_aux): Likewise. + (ecoff_build_strings): Likewise. + (ecoff_build_fdr): Likewise. + (ecoff_build_debug): Likewise. + * itbl-ops.c (itbl_assemble): Variable initialization. + +2001-05-03 Alan Modra + + * config/tc-i386.c (i386_displacement): Call as_bad for bad GOTOFF + expressions rather than triggering an assert. + +2001-05-02 Johan Rydberg + + * config/tc-openrisc.c: New file. + * config/tc-openrisc.h: Likewise. + + * Makefile.am: Add OpenRISC target. + * Makefile.in: Regenerated. + + * configure.in (openrisc-*-*): Add target. + * configure: Regenerated. + +2001-05-02 Nick Clifton + + * config/tc-arm.c (arm_frag_align_code): Change error message to + more explanatory version. + +2001-04-29 Keith M Wesolowski + + * config/tc-mips.c (md_parse_option): Also accept + elf64-tradbigmips and elf64-tradlittlemips for OPTION_64. + +2001-04-27 David Mosberger + + * config/tc-ia64.c (dot_spillmem_p): Fix output_spill_?sprel_p() + argument passing order: predicate goes last, not first. + +2001-04-27 Sean McNeil + + * configure.in: Add arm-vxworks. + * configure: Regenerate. + +2001-04-26 Nick Clifton + + * config/tc-arm.c (arm_handle_align): New Function: Generate + no-op filled alignment frags. + (arm_frag_align_code): New Function: Create a code alignment frag. + (arm_init_frag): New Function: Initialse the target dependent + parts of a frag. + + * config/tc-arm.h (TC_FRAG_TYPE): Define. + (TC_FRAG_INIT): Define. + (HANDLE_ALIGN): Define. + (md_do_align): Define. + +2001-04-25 Nick Clifton + + * config/obj-coff.c (do_linenos_for): Check to see if the filename + symbol has been initialised before extracting its symbol index. + +2001-04-24 H.J. Lu + + * configure: Regenerated with the right version of autoconf. + +2001-04-24 Christian Groessler + + * config/tc-z8k.c (build_bytes): 12 and 16 bit displacements now + generate R_CALLR and R_REL16 relocations + +2000-04-20 Jason Eckhardt + + * config/tc-d10v.h (tc_frob_label): Update the symbol's frag + since frag_now can change after d10v_cleanup is called. + +2001-04-16 David O'Brien + + * configure.in: Add the em type for FreeBSD targets. + * configure: Regenerate. + +2001-04-14 Alexandre Oliva + + * struc-symbol.h (struct local_symbol): New TC_LOCAL_SYMFIELD_TYPE. + * symbols.c (local_symbol_convert): Call TC_LOCAL_SYMFIELD_CONVERT. + + * config/tc-mn10300.c (md_assemble): Simplify offset adjustment of + pc-relative relocations not placed at the end of the instruction. + +2001-04-13 Jim Wilson + + * tc-ia64.c (is_conditional_branch): Return true for br, brl, and br. + excluding br.i. + +2001-04-13 Jakub Jelinek + + * config/obj-elf.c (obj_elf_change_section): Add entsize argument, + handle SHF_MERGE and SHF_STRINGS. + (obj_elf_parse_section_letters): Set SHF_MERGE and SHF_STRINGS. + (obj_elf_section): Allow additional argument specifying entity size. + * write.c (adjust_reloc_syms): Keep relocations against local symbols + in SEC_MERGE sections. + +2001-04-12 Jason Merrill + + * dwarf2dbg.c (process_entries): Don't optimize redundant line notes. + +2001-04-12 Alexandre Oliva + + * expr.c (operand): Pass &c to md_parse_name(). + * config/tc-ia64.h, config/tc-ppc.h, config/tc-tic54x.h: Adjust. + +2001-04-07 Steven J. Hill + + * config/tc-mips.c: Support ELF64 for traditional MIPS targets. + + * Makefile.am: (TARG_ENV_HFILES): Add tc-mips.h. + * Makefile.in: Regenerated. + + * configure.in: Use traditional MIPS targets for Linux/MIPS. + * configure: Regenerated. + +2001-04-06 Alexandre Oliva + + * config/tc-mn10300.c (xr_registers): Added `pc'. + +2001-04-05 Alan Modra + + * configure.in: Add h8500-*-coff and h8500-*-rtems targets. + * configure: Regenerate. + + * config/tc-h8500.c (md_estimate_size_before_relax): Add missing + cases, and always return size based on current fr_subtype. + (md_begin): Move initialization of md_relax_table.. + (md_relax_table): ..to static initializer. Set rlx_length for + UNDEF_WORD_DISP cases. + * config/tc-w65.c (md_estimate_size_before_relax): Likewise. + (md_begin): Likewise. + (md_relax_table): Likewise. + * config/tc-mcore.c (md_estimate_size_before_relax): Likewise. + (md_relax_table): Set rlx_length for UNDEF_WORD_DISP cases. + Set rlx_backward and rlx_forward to zero for unused states. + * config/tc-sh.c (md_estimate_size_before_relax): Likewise. + (md_relax_table): Set rlx_length for UNDEF_WORD_DISP cases. + (UNCOND12, UNCOND32): Remove duplicate defines. + +2001-04-04 Hans-Peter Nilsson + + * config/tc-cris.c (md_estimate_size_before_relax) : Don't emit + 32-bit branch, just set fragP->fr_subtype. Set fragP->fr_var. + : Always set fragP->fr_var using md_cris_relax_table. + Add cases to cover all relax states. + (cris_insn_first_word_frag): New. + (md_assemble): Call cris_insn_first_word_frag to get the first + frag in an insn, not frag_more. Don't call dwarf2_emit_insn at + end. Drop variable insn_size. + (gen_bdap): Call cris_insn_first_word_frag, not frag_more. + (cris_sym_leading_underscore): Wrap first as_bad parameter in _(). + (cris_sym_no_leading_underscore, s_cris_file, s_cris_loc): Ditto. + + * write.c (write_object_file): Reset broken word state before + calling relax_seg. + +2001-03-31 Alan Modra + + * listing.c (listing_listing): Enable listing on EDICT_NOLIST_NEXT + for one line if not already enabled. + * cond.c (s_elseif): Correct conditional assembly listing. + (s_else): Likewise. + + * cond.c (s_endif): Correct handling of "if .. elseif .." trees. + Don't abort on NULL current_cframe. + +2001-03-30 Alan Modra + + * dwarf2dbg.c (dwarf2_directive_file): Fix warnings. + (dwarf2dbg_convert_frag): Pass `finalize_syms' to resolve_symbol_value. + * config/obj-aout.c (obj_crawl_symbol_chain): Likewise. + * config/obj-bout.c (obj_crawl_symbol_chain): Likewise. + * config/obj-coff.c (do_relocs_for): Likewise. + (yank_symbols): Likewise. + (fixup_segment): Likewise. + * config/tc-ppc.c (ppc_frob_symbol): Likewise. + (ppc_fix_adjustable): Likewise. + * config/tc-mips.c (md_convert_frag): Likewise. + * config/obj-vms.c (obj_crawl_symbol_chain): Likewise. + * ehopt.c (eh_frame_convert_frag): Likewise. + * expr.c (make_expr_symbol): Likewise. + + * frags.h (struct frag): Add last_fr_address. Reorder fields for + better packing. + * symbols.c (resolve_symbol_value): Don't fix expression values + until relaxation is complete. + (resolve_local_symbol): Pass `finalize_syms' to resolve_symbol_value. + (S_GET_VALUE): Likewise, and return unresolved expression value. + * write.c (finalize_syms): New. + (relax_and_size_seg): Split into.. + (relax_seg): New function, returns 1 if anything changed.. + (size_seg): And the remainder of relax_and_size_seg. + (fixup_segment): Arrange for final resolution of sym values. + (adjust_reloc_syms): Likewise. + (write_object_file): Likewise, and repeatedly call relax_seg until + nothing more changes. + (relax_segment): Return 1 if anything changed. Use correct types + for rs_org `target' and `after'. + * write.h (finalize_syms): Declare. + (relax_segment): Update prototype. + + * config/tc-sh.c (md_estimate_size_before_relax): Add extra + do-nothing cases to switch to avoid abort on a second relaxation + pass, and tidy code a little. + * config/tc-cris.c (md_estimate_size_before_relax): Likewise. + * config/tc-h8500.c (md_estimate_size_before_relax): Likewise. + * config/tc-w65.c (md_estimate_size_before_relax): Likewise. + * config/tc-i386.c (UNCOND_JUMP, COND_JUMP, COND_JUMP86): Decrement. + (md_relax_table): Remove first four unused entries. Increment + rlx_length by one throughout table, and update comments to suit. + (md_estimate_size_before_relax): Return size of current variable + part of frag to reflect reality when relaxing more than once. + * config/tc-mcore.c (COND12, UNCD12): Rename to DISP12 throughout. + (COND32, UNCD32): Rename to DISP32 throughout. + (UNDEF_WORD_DISP): Renumber to 3. + (md_estimate_size_before_relax): Add extra do-nothing cases. + * config/tc-mn10200.c (md_estimate_size_before_relax): Rewrite. + * config/tc-mn10300.c (md_estimate_size_before_relax): Rewrite. + * config/tc-ns32k.c (md_estimate_size_before_relax): Add cases to + handle word and dword branches. + +2001-03-29 Hans-Peter Nilsson + + * config/tc-cris.h (tc_fix_adjustable): Allow only + BFD_RELOC_CRIS_32_GOTREL of the PIC relocs. + * config/tc-cris.c (cris_get_pic_suffix): Correct reloc type in + example in comment to valid type. + +2001-03-28 H.J. Lu + + * read.c (equals): Set to local for COFF only if it hasn't been + defined before. + +2001-03-28 Alan Modra + + * config/tc-hppa.c (DEFAULT_LEVEL): Define. + (md_begin): Use it when setting default architecture. + +2001-03-27 Nick Papadonis + + * read.c (equals): (for COFF) default symbols to being local. + +2001-03-27 Hans-Peter Nilsson + + * configure.in (cris-*-*): Change default emulation to criself. + (cris-*-*aout*): New rule. + * configure: Regenerate. + +2001-03-26 Martin Schwidefsky + + * config/tc-s390.c (tc_s390_fix_adjustable): Add test for + BFD_RELOC_390_GOTENT. + * config/tc-s390.h (TC_RELOC_RTSYM_LOC_FIXUP): Add test for + BFD_RELOC_390_GOTENT. + +2001-03-26 Nick Clifton + + * config/tc-s390.h (TC_FORCE_RELOCATION): Define. + * config/tc-s390.c (s390_force_relocation): New function: Force + relocations for VTINHERIT relocs. + +2001-03-23 Stephane Carrez + + * doc/as.texinfo: Put @c man begin to generate the as man page. + When generating man, define all the variables. Re-organize some + options to obtain better indentation of man page. + * doc/Makefile.am (MANCONF, TEXI2POD, POD2MAN): New variable. + (as.1): Build from as.texinfo. + * doc/Makefile.in: Regenerate.Index: binutils/Makefile.am + +2001-03-25 Alan Modra + + * config/tc-i386.c (i386_scale): Accept an absolute expression for + scale factor, and return the end of the expression. + (i386_operand): Modify for above. + +2001-03-23 Nick Clifton + + * doc/as.texinfo: Document --listing-XXX command line switches. + Explain why listings behave differently when -pipe is used. + +2001-03-23 Richard Sandiford + + * write.c (fix_new_exp): Print an error if passed a register. + +2001-03-23 Hans-Peter Nilsson + + * config/tc-cris.c: Tweak attribution. Fix typos. PIC support. + (PIC_SUFFIX_CHAR): New macro. + (cris_get_pic_suffix, cris_get_pic_reloc_size): New functions. + (pic): New variable. + (md_longopts): New option --pic. + (OPTION_PIC): Define. + (md_estimate_size_before_relax): Tweak longish comment. + (md_create_long_jump): Make the long jumps generate ADD.D offset,PC. + (md_assemble): Handle a PIC relocation on prefix and normal + instruction operands. + : Handle + "complex" operand expressions. Call frag_more outside + gen_cond_branch_32 parameter list. + (cris_process_instruction): Handle PIC relocs on parsed + operand expressions. Validize PIC reloc sizes. + (get_autoinc_prefix_or_indir_op): Handle PIC suffix. + (gen_bdap): Handle "complex" operand expressions. + (gen_cond_branch_32): Use as_warn_where, not as_warn. Use + ADD.D offset,PC as jump instruction if generating PIC. Generate + error instead of crashing on complex expressions. + (cris_number_to_imm): Add segT parameter. All callers changed. + Use segT parameter, not now_seg, for segment of fixup. Handle + PCREL relocations but check that they are fully resolved. + (md_parse_option): Handle OPTION_PIC. + (tc_gen_reloc): Handle PIC relocs. + (md_show_usage): Update for --pic. + (md_apply_fix3): Renamed from md_apply_fix. + (md_pcrel_from): Accept emitting PCREL relocs when ELF. + (md_cris_force_relocation): Force relocation for PIC relocs. + + * config/tc-cris.h: Tweak attribution. + (MD_APPLY_FIX3): Define. + (IS_CRIS_PIC_RELOC): New macro. + (TC_RELOC_RTSYM_LOC_FIXUP): Define. + (tc_fix_adjustable): Don't adjust a globally visible symbol when + generating ELF. + (tc_frob_symbol): Avoid emitting undefined symbols. + +2001-03-20 Alan Modra + + * frags.h (struct frag): Add relax_marker. + * write.c (is_dnrange): Delete. + (relax_frag): Use correct types for `aim', `target', `address'. + Delete `offset', `was_address'. Test `relax_marker' instead of + using fragile (and slow) address test. + (relax_segment): Init and flip `relax_marker'. + +2001-03-19 Alan Modra + + * config/tc-i386.c (md_assemble ): Correct + used register name. + +2001-03-18 Stephane Carrez + + * config/tc-m68hc11.c (md_pseudo_table): Recognize xrefb to comply + with 'Motorola specification for assembly language input standard'. + +2001-03-17 Richard Henderson + + * dwarf2dbg.c (user_filenum, user_filenum_allocated): Remove. + (dwarf2_directive_loc): Don't use them. + (dwarf2_directive_file): Reject duplicate file definitions. + (get_filenum): Zero allocated memory. + (out_file_list): Complain about missing file definitions. + +2001-03-17 Alan Modra + + * read.c (do_org): Handle complex expressions. + * cgen.c (gas_cgen_finish_insn): Likewise. + +2001-03-15 David Mosberger + + * config/tc-ia64.c (md): New member keep_pending_output. + (ia64_flush_pending_output): Flush only if md.keep_pending_output + is not set. + (dot_xdata): Turn on md.keep_pending_output for the duration of + this function. + (dot_xfloat_cons): Ditto. + (dot_xstringer): Ditto. + (dot_xdata_ua): Ditto. + (dot_xfloat_cons_ua): Ditto. + +2001-03-15 Jim Wilson + + * config/tc-ia64.c (ia64_unrecognized_line, case '['): Add local + label support. + +2001-03-15 Alexandre Oliva + + * config/tc-sh.c (parse_reg): Match capital MACH and MACL. + +2001-03-15 DJ Delorie + + * stabs.c (s_stab_generic): Don't corrupt the notes obstack by + blindly freeing string if it isn't at the top of the obstack. + +2001-03-13 Alan Modra + + * config/tc-i386.c (RELOC_ENUM): Define. Use throughout file. + (NUM_FLAG_CODE): Define. + (lex_got): New function. + (got_reloc): New global var. + (x86_cons_fix_new): New function. + (x86_cons): New function. + (i386_immediate): Use lex_got here, replacing inline code. Change + "ignoring junk.." error message to "junk.." + (i386_displacement): Likewise. + * config/tc-i386.h (TC_PARSE_CONS_EXPRESSION): Define. + (x86_cons): Declare. + (TC_CONS_FIX_NEW): Define. + (x86_cons_fix_new): Declare. + +2001-03-12 Nick Clifton + + * config/tc-arm.c (md_begin): Always set machine type based on + cpu_variant. + +2001-03-07 Alan Modra + + * config/tc-i386.c (struct _i386_insn): Rename disp_reloc to reloc. + (md_assemble) : Use correct field of i.op[] + union. + : Use correct i.disp_reloc[]. + : Likewise. + +2001-03-06 Nick Clifton + + * config/tc-arm.c (md_apply_fix3): Clear bit zero of offset in + BLX(1) instruction. + +2001-03-06 Igor Shevlyakov + + * config/tc-m68k.c : Add 5407 to archs[] table. + (HAVE_LONG_BRANCH): Add mcf5407. + (select_control_regs): Recognize 5407. + +2001-03-02 Dave Brolley + + * config/tc-m32r.c (expand_debug_syms): Call frag_align_code rather + than m32r_do_align. + +2001-03-02 Richard Sandiford + + * config/atof-ieee.c (TC_LARGEST_EXPONENT_IS_NORMAL): New macro. + (gen_to_words): Print warnings if NaNs are found and the target CPU + does not support them. Allow largest exponent to be used in normal + numbers if TC_LARGEST_EXPONENT_IS_NORMAL evaluates to true. + +2001-02-28 Andreas Jaeger , Bo Thorsen + + * config/tc-i386.c (tc_gen_reloc): Remove ugly hack which is not needed + anymore since we use bfd_elf_generic_reloc now. + (md_apply_fix3): Only apply hack for partial_inplace if not using RELA. + +2001-02-27 Alan Modra + + * configure.in (BFD_VERSION): New. + (AM_INIT_AUTOMAKE): Use $BFD_VERSION. + * configure: Regenerate. + * Makefile.am: Run "make dep-am" + * Makefile.in: Regenerate. + * doc/Makefile.in: Regenerate. + +2001-02-26 Mark Elbrecht + + * config/obj-coff.c [BFD_ASSEMBLER] (obj_coff_section): Set + SEC_NEVER_LOAD when the 'n' flag is used. + Add SEC_NEVER_LOAD to matchflags. + +2001-02-24 Stephane Carrez + + * symbols.c (decode_local_label_name): Initialize message_format + only when an error is reported (perf pb due to I18N). + +2001-02-23 H.J. Lu + + * dwarf2dbg.c (dwarf2_directive_file): Call s_app_file (0) if + BFD_ASSEMBLER is not defined. + +2001-02-23 Richard Sandiford + + * config/tc-mn10300.c (md_apply_fix3): Don't mark a fixup as + done if it's against a symbol. + +2001-02-22 Timothy Wall + + * config/tc-ia64.c (ia64_target_format): Return ia64-aix-specific + target formats if applicable. + * config/te-ia64aix.h: New. Configuration for AIX5 on IA-64. + * Makefile.am (TARG_ENV_HFILES): Added config/te-ia64aix.h. + * Makefile.in: Regenerated. + * configure.in: Added configuration for ia64-*-aix*. + * configure: Regenerated. + +2001-02-21 David Mosberger + + * config/tc-ia64.c (enum operand_match_result): New type. + (operand_match): Change return type to operand_match_result. + Fix all returns appropriately, adding support for returning the + out-of-range result. + (parse_operands): New locals result, error_pos, out_of_range_pos, + curr_out_of_range_pos. Rewrite operand matching loop to give better + error messages. + +2001-02-21 David Mosberger + + * config/tc-ia64.c (struct unwind): Add member "prologue_count". + (dot_proc): Clear unwind.prologue_count to zero. + (dot_prologue): Increment unwind.prologue_count. + (dot_restore): If second operand is omitted, use + unwind.prologue_count -1 for "ecount" (# of additional regions to + pop). Decrement unwind.prologue_count by number of regions + popped. + +2001-02-21 Nick Clifton + + * doc/as.texinfo (Section): Note that some flags to the COFF + version of .section remove attributes rather than setting them. + +2001-02-20 Kazu Hirata + + * config/tc-pdp11.c: Fix formatting. + * config/tc-pdp11.h: Likewise. + +2001-02-20 Bo Thorsen + + * config/tc-i386.c (tc_i386_fix_adjustable): Fix GOTPCREL GOT + entry. + +2001-02-18 David O'Brien + + * configure.in (cpu_type, arch): Add a generic FreeBSD specification as + all FreeBSD platforms should look the same at this level. + * configure: Rebuilt. + * config/tc-i386.c: Add support for old FreeBSD a.out hosts. + +2001-02-18 lars brinkhoff + + * Makefile.am: Add PDP-11 target. + * configure.in: Likewise. + * config/tc-pdp11.c: New file. + * config/tc-pdp11.h: New file. + * doc/Makefile.am: Add PDP-11 documentation. + * doc/all.texi: Likewise. + * doc/as.texinfo: Likewise. + * doc/c-pdp11.texi: New file. + +2001-02-16 matthew green + + * cgen.c (gas_cgen_md_apply_fix3): Support BFD_RELOC_64. + +2001-02-13 Jim Wilson + + * config/tc-ia64.c (operand_match, case TAG13): Make a BFD_RELOC_UNUSED + reloc instead of a 0 reloc. + (md_apply_fix3): Check for BFD_RELOC_UNUSED instead of 0, and mark it + as done. + * config/tc-ia64.h (TC_RELOC_RTSYM_LOC_FIXUP): Likewise. + +2001-02-13 Ian Lance Taylor + + * write.c (is_dnrange): Stop as soon as the address becomes + larger. + (relax_frag): Add segment parameter. Only call symbol_get_frag + once. Only call is_dnrange if the symbol is in the same segment, + and the symbol address is larger. + (relax_segment): Pass segment to md_relax_frag and relax_frag. + * write.h (relax_frag): Update declaration. + * config/tc-fr30.c (fr30_relax_frag): Add segment parameter. Pass + it to relax_frag. + * config/tc-m32r.c (m32r_relax_frag): Likewise. + * config/tc-m32r.h (md_relax_frag): Add segment parameter. + (m32r_relax_frag): Update declaration. + * config/tc-mips.h (md_relax_frag): Add segment parameter. + * config/tc-tic54x.h (md_relax_frag): Likewise. + * doc/internals.texi (CPU backend): Update documentation for + md_relax_frag. + +2001-02-13 Alan Modra + + * doc/c-i386.texi (i386-Arch): Add "jumps"/"nojumps" blurb. + Mention effect of < 386 architectures on jump promotion. + (i386-Jumps): xref above. Don't assume long disp is 32 bits. + + * config/tc-i386.c (no_cond_jump_promotion): New. + (set_cpu_arch): Parse "jumps" arch modifier. + (insn_size): Modify usage comment. + (ENCODE_RELAX_STATE): Reformat and protect macro arg. + (SIZE_FROM_RELAX_STATE): Rename to DISP_SIZE_FROM_RELAX_STATE. + (TYPE_FROM_RELAX_STATE): New define. + (UNCOND_JUMP, COND_JUMP): Renumber. + (md_relax_table): Reorder to suit. + (COND_JUMP86): New define. + (md_relax_table): Handle COND_JUMP86 cases. Add a few comments. + (md_assemble): Create frag var for jumps of max size, encode relax + state for COND_JUMP86. + (md_estimate_size_before_relax): Handle COND_JUMP86 cases, and + leave conditional jumps small if no_cond_jump_promotion. + (md_convert_frag): Likewise. + + * expr.c (operator): Don't bump input_line_pointer for two char + operators. Instead return operator size via new param num_chars. + (expr): Use above to parse multi-char operators correctly. + +2001-02-12 Jan Hubicka + + * config/tc-i386.c (i386_displacement): Fix handling of + BFD_RELOC_X86_64_GOTPCREL. + (i386_validate_fix): Likewise. + +2001-02-12 Philip Blundell + + * config/tc-arm.c (do_ldst): Improve warnings for unpredictable + ldrt/strt instructions. + +2001-02-11 Maciej W. Rozycki + + * config/tc-mips.c (macro): For M_LA_AB emit a + BFD_RELOC_MIPS_CALL16 relocation or a + BFD_RELOC_MIPS_CALL_HI16/BFD_RELOC_MIPS_CALL_LO16 pair instead of + BFD_RELOC_MIPS_GOT16 and + BFD_RELOC_MIPS_GOT_HI16/BFD_RELOC_MIPS_GOT_LO16, respectively for + loading the jump register when generating SVR4_PIC code. + +2001-02-10 Chris Demetriou + + * configure.in: Make 'mipself' and 'mipsecoff' emulations + map to MIPS-specific files, as they used to do before the + change on 2000-05-21. + * configure: Regerate. + +2001-02-10 Chris Demetriou + + * config/tc-mips.c (md_parse_option): Don't try to compile + ELF-only option code if not ELF. + +2001-02-08 David Mosberger + + * config/tc-ia64.h (md_elf_section_type): New macro. + (ELF_TC_SPECIAL_SECTIONS): Drop .IA_64.unwind and .IA_64.unwind_info + (they're now handled via ia64_elf_section_type. + + * config/tc-ia64.c (unwind): New members saved_text_seg, + saved_text_subseg, and force_unwind_entry. + (optimize_unw_records): New function to optimize away unnecessary + unwind directives. + (ia64_elf_section_type): New function. + (output_unw_records): Generate unwind info only if the size is + non-zero or if it's forced for some other reason (e.g., + handlerdata or a personality routine). + (generate_unwind_image): Don't switch back to previous + section---stay inside the unwind info section instead so that + handlerdata that may follow goes into the right place. + (dot_handlerdata): Force generation of unwind entry and save the + current active text segment before generating unwind image. + (dot_unwentry): Force generation of unwind entry. + (dot_personality): Ditto. + (dot_endp): Generate unwind table entry only if there is + some unwind info or the unwind entry was forced. + + * config/tc-ia64.c (make_unw_section_name): New macro to form + unwind section name. + (generate_unwind_image): Add "text_name" argument. Use it to + form unwind section name. + (dot_handlerdata): Determine current segment (section) name and + pass it to generate_unwind_image(). + (dot_endp): Determine current segment (section) name and use + it to determine the appropriate unwind section name. + (ia64_md_do_align): Add missing ATTRIBUTE_UNUSED declarations to + n, fill, and max arguments. + +2001-02-09 Schwidefsky + + * Makefile.am: Add linux target for S/390. + * configure.in: Likewise. + * config/tc-s390.c: New file. + * config/tc-s390.h: New file. + +2001-02-09 Alexandre Oliva + + * config/tc-sh.c (md_pseudo_table): Add uaquad. Use s_uacons for + 2byte, 4byte and 8byte. + +2001-02-08 Alan Modra + + * config/tc-hppa.c (pa_build_unwind_subspace): Don't call + md_number_to_chars with size > sizeof (valueT). + +2001-02-06 H.J. Lu + + * config/tc-ia64.h (TC_RELOC_RTSYM_LOC_FIXUP): Do fixup if + there is no relocation. + +2001-02-06 H.J. Lu + + * config/tc-ia64.h (TC_RELOC_RTSYM_LOC_FIXUP): New. Defined. + + * config/tc-ia64.c (md_parse_option): Only accept the valid + ia64 options on "-axxx". + +2001-02-05 Jim Wilson + + * config/tc-ia64.c (errata_nop_necessary_p): Return 0 instead of + aborting for invalid operands. + +2001-02-06 Alan Modra + + * config/tc-hppa.c (fix_new_hppa): Pass in unwind directly rather + than via pointer. Update all callers. + (UNWIND_LOW32): Define. + (UNWIND_HIGH32): Define. + (pa_build_unwind_subspace): Use the above macros instead of dumping + bitfields directly. Call frag_more once rather than multiple times. + (md_assemble): Use UNWIND_LOW32. + (pa_entry): Likewise + (pa_procend): Likewise. + (process_exit): Use UNWIND_HIGH32. + +2001-02-04 Stephane Carrez + + * config/tc-m68hc11.h (LISTING_HEADER): Use m68hc11_listing_header + function to select the header according to the cpu. + (md_after_pass_hook, md_do_align): Remove. + (md_cleanup, m68hc11_cleanup): Remove. + (md_pcrel_from_section): Declare. + * config/tc-m68hc11.c (build_dbranch_insn): Remove insn_size. + (build_jump_insn, build_insn): Likewise. + (m68hc11_listing_header): New function. + (m68hc11_cleanup): Remove. + +2001-02-02 Stephane Carrez + + * config/tc-m68hc11.c (relaxable_symbol): Relax externally visible + symbols because there is no support for shared libraries and these + symbols can't be overridden (unless they are weak). + +2001-02-01 Momchil Velikov + + * dwarf2dbg.c (out_debug_abbrev): Terminate the abbreviations + for the compilation unit with a zero byte. + +2001-01-30 Alan Modra + + * config/tc-hppa.c (pa_ip): Support 12 bit branches to absolute + destinations. Correct range check for 17 and 22 bit branches. + +2001-01-25 Nick Clifton + + * config/tc-m68k.c (tc_gen_reloc): Do not abort if tcbit is + still set. Issue an error message instead. + (md_estimate_size_before_relax): Delete unused variable + 'buffer_address'. Fixup parentheses around if statement. + +2001-01-23 Kazu Hirata + + * as.c: Fix formatting. + * ehopt.c: Likewise. + * messages.c: Likewise. + * stabs.c: Likewise. + * symbols.c: Likewise. + +2001-01-23 Ben Elliston + + * config/tc-m32r.c (m32r_handle_align): Declare type of fragp. + +2001-01-22 Kazu Hirata + + * config/tc-alpha.c: Fix formatting. + +2001-01-19 Kazu Hirata + + * config/tc-alpha.c: Fix formatting. + +2001-01-18 Kazu Hirata + + * config/tc-alpha.c: Fix formatting. + +2001-01-18 Nick Clifton + + * config/tc-arm.c (ldm_flags): Remove redundant bit from "fa" and + "da" flags. + (stm_flags): Remove redundant bit from "ed" and "da" flags. + +2001-01-18 Alexandre Oliva + + * configure.in (cpu_type, arch): Match i386 too. + * configure: Rebuilt. + +2001-01-16 Kazu Hirata + + * config/tc-i386.c: Fix formatting. + +2001-01-16 Alan Modra + + * config/tc-hppa.c (tc_gen_reloc): Use SEGREL32 instead of DIR32 + relocs for .PARISC.unwind section. + + * config/tc-hppa.c (pa_build_unwind_subspace): Build unwind + depending on section flags, not just for .text. + +2001-01-15 Jim Wilson + + * config/tc-ia64.c (ia64_flush_insns): Handle unwind directives + not immediately followed by an instruction. + +2001-01-15 Kazu Hirata + + * config/tc-m68hc11.c: Fix formatting. + +2001-01-15 Nick Clifton + + * symbols.c (colon): Change 'already defined symbol' from a + fatal error to an ordinary error. There is no reason why this + error should be fatal. + + * message.c (as_fatal): Delete output file, if one has been + created. + +2001-01-14 Alan Modra + + * config/tc-hppa.h (TARGET_FORMAT): Add hppa-linux variants. + +2001-01-14 Kazu Hirata + + * config/tc-alpha.c: Fix formatting. + * config/tc-arc.c: Likewise. + * config/tc-arc.h: Likewise. + * config/tc-d10v.c: Likewise. + * config/tc-i370.c: Likewise. + * config/tc-i386.c: Likewise. + * config/tc-i960.c: Likewise. + * config/tc-m68k.c: Likewise. + * config/tc-ppc.c: Likewise. + * config/tc-sparc.c: Likewise. + * config/tc-tahoe.c: Likewise. + * config/tc-vax.c: Likewise. + + * config/tc-arc.c: Fix formatting. + + * config/tc-arc.c: Fix formatting. + +2001-01-14 Alan Modra + + * config/tc-hppa.c (pa_build_unwind_subspace): Use SEGREL32 for + both 32 and 64 bit ELF. + + * config/tc-hppa.c (pa_ip): Store `a' flag in bit zero of operand + and don't bother storing `m' for "ce" completer. Tidy handling of + 'J' and 'K' operands to suit. Handle '<' and '>' operands. + +2001-01-14 Jan Hubicka + + * config/tc-i386.h (TARGET_MACH): New macro. + (i386_mach): Declare. + * config/tc-i386.c (i386_mach): New function. + +2001-01-13 Philip Blundell + + * doc/as.texinfo: Fix spelling and cross-references. + + * doc/c-arm.texi: Fix typos. Say that `;' is a line separator + character for all systems, not just GNU/Linux. Make it explicit + that `-k' doesn't affect code generation, just ELF flags. + +2001-01-13 Jan Hubicka + + * config/tc-i386.c (md_assemble): Check cpu_flags even for nullary + instructions. + +2001-01-12 Frank Ch. Eigler + + * cgen.c (gas_cgen_finish_insn): Call dwarf2_emit_insn. + +2001-01-12 Nick Clifton + + * as.c (print_args): Update copyright date to 2001. + +2001-01-12 Peter Targett + + * doc/c-arc.texi: New file. + Some sections to be expanded. + +2001-01-12 Alan Modra + + * config/tc-i386.c (md_longopts): Recognize "--64" only for ELF. + (md_parse_option): Always accept "--32". + +2001-01-11 Peter Targett + + * as.h (TC_ARC): Ensure struc-symbol.h included. + * as.c (dwarf2dbg.h): Include to remove implicit declaration + warnings. + * struc-symbol.h (SYMBOLS_NEED_BACKPOINTERS): Define. + (TARGET_SYMBOL_FIELDS) added. + + * doc/Makefile.am (CPU_DOCS): Added c-arc.texi. + * doc/c-arc.texi: New file. + Some sections to be expanded. + * doc/as.texinfo: Update command-line options. + Removed outdated text for ARC dependant features, instead include + text from above file. + + * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): Define local flag. + (TARGET_SYMBOL_FIELDS): Alias to previous definition. + (targ-cpu.h) header. + * config/tc-arc.h: + * config/tc-arc.c: New updated configuration for + ARC, including selection of core variants, and extensibility of + instructions, registers etc. through directives. + + * config/tc-arc.c (arc_extinst): Minor corrections for + error messages. + (arc_common) Likewise. Make alignment argument optional for local + symbols also, with default of zero. + +2001-01-11 Stephane Carrez + + * config/tc-m68hc11.c (md_estimate_size_before_relax): Fix + STATE_INDEXED_OFFSET when the symbol is undefined (16-bit offset). + (build_indexed_byte): Don't relax indexed byte, use 16-bit offset + and fix_new_exp() instead. + (md_convert_frag): For indexed post byte use the symbol value + rather than the displacement. + (md_relax_table): Fix indexed offset relax. + +2001-01-11 Stephane Carrez + + * config/tc-m68hc11.c (md_estimate_size_before_relax):Don't + relax weak symbols. + (relaxable_symbol): New function. + +2001-01-11 Andreas Jaeger + + * config/tc-i386.h (TC_RELOC_GLOBAL_OFFSET_TABLE): Removed, it's + not used anywhere. + +2001-01-10 Nick Clifton + + * config/tc-arm.c (arm_fix_adjustable): Define for OBJ_COFF. + * config/tc-arm.h (obj_fix_adjustable): Define for OBJ_COFF + +2001-01-10 Nick Clifton + + * symbols.c (DOLLAR_LABEL_CHAR): New constant - the magic + character used to dollar local symbols. + (LOCAL_LABEL_CHAR): New constant - the magic character used to + local label symbols. + (dollar_label_name): Use DOLLAR_LABEL_CHAR. + (fb_label_name): Prefix local labels with LOCAL_LABEL_PREFIX, + if defined. + Use LOCAL_LABEL_CHAR. + (decode_local_label_name): Skip LOCAL_LABEL_PREFIX. + Use DOLLAR_LABEL_CHAR and LOCAL_LABEL_CHAR. + (S_IS_LOCAL): Use DOLLAR_LABEL_CHAR and LOCAL_LABEL_CHAR. + +2001-01-08 Bo Thorsen + + * config/tc-i386.c (i386_immediate, i386_displacement): + GOTPCREL check fix. + +2001-01-07 Ian Lance Taylor + + * doc/c-i386.texi (i386-Arch): Remove spaces incorrectly inserted + in last change. + +2001-01-07 Philip Blundell + + * doc/as.texinfo (Bug Reporting): Update email address for + reports. + * README: Likewise. + +2001-01-06 Jan Hubicka + + * configure.in: Define DEFAULT_ARCH for i386. + * config/tc-i386.c (md_assemble): Return after the error message; + move testing for 64bit operands to proper place. + +2001-01-06 Jan Hubicka , Andreas Jaeger + + * doc/as.texinfo: Document '#' as comment character for i386 and + x86_64. Add AMD x86-64 into menu of machine dependent information. + + * doc/c-i386.texi: Document x86_64 extensions. + +2001-01-05 Jan Hubicka + + * config/tc-i386.c (md_assemble): Handle third byte of the opcode as prefix. + +2001-01-04 Jan Hubicka + + * config/tc-i386.c (cpu_arch): Add Pentium4 and modify sledgehammer entry. + * NEWS: Add note about Pentium4 support. + +2001-01-04 Jan Hubicka + + * config/tc-i387.c (pi, pte, pt): Update. + (type_names): Add new types. + +2001-01-03 Jan Hubicka + + * config/tc-i386.h (CpuK6, CpuAthlon, CpuSledgehammer, CpuMMX, Cpu3dnow, + CpuUnknown): Renumber + (CpuP4, CpuSSE2): New. + (CpuUnknownFlags): Add CpuP4 and CpuSSE2 + +2001-01-03 Philip Blundell + + * config/tc-alpha.c (alpha_force_relocation): Handle vtable + relocs. + (alpha_fix_adjustable): Likewise. + (md_apply_fix): Likewise. + +2000-12-31 H.J. Lu + + * listing.c (listing_message): Allocate string only if it is + used. + + * configure: Rebuild. + +2000-12-31 Hans-Peter Nilsson + + * doc/internals.texi (Relaxing with a table) : + Point out caveats with generating fixups for the opcode in a frag. + +2000-12-30 Jan Hubicka + + * configure.in: Add support for x86_64 and x86_64-*-linux-gnu* + * NEWS: Add x86_64. + +2000-12-29 H.J. Lu + + * listing.c (calc_hex): Print the variable part only if the + fragment type is rs_fill. + +2000-12-29 Hans-Peter Nilsson + + * doc/internals.texi (tc_conditional_pseudoop, + TC_LINKRELAX_FIXUP): Fix typos. + +2000-12-28 Richard Henderson + + * write.c (subsegs_finish): Fix thinko last change -- don't + "optimize" the alignment == 0 case. + +2000-12-28 Richard Henderson + + * as.h (rs_align_test): New. + * frags.c (NOP_OPCODE): Move default from read.c. + (MAX_MEM_FOR_RS_ALIGN_CODE): New default. + (frag_align_code): New. + * frags.h (frag_align_code): Declare. + * read.c (NOP_OPCODE): Remove. + (do_align): Use frag_align_code. + * write.c (NOP_OPCODE): Remove. + (get_recorded_alignment): New. + (cvt_frag_to_fill): Handle rs_align_test. + (relax_segment): Likewise. + (subsegs_finish): Align last subseg in section to the + section alignment. Use frag_align_code. + * write.h (get_recorded_alignment): Declare. + * config/obj-coff.c (size_section): Handle rs_align_test. + (fill_section, fixup_mdeps): Likewise. + (write_object_file): Use frag_align_code. + + * config/tc-alpha.c (alpha_align): Use frag_align_code. + (alpha_handle_align): New. + * config/tc-alpha.h (HANDLE_ALIGN): New. + (MAX_MEM_FOR_RS_ALIGN_CODE): New. + + * config/tc-i386.h (md_do_align): Use frag_align_code. + (MAX_MEM_FOR_RS_ALIGN_CODE): New. + + * config/tc-ia64.c (ia64_md_do_align): Don't do code alignment. + (ia64_handle_align): New. + * config/tc-ia64.h (HANDLE_ALIGN): New. + (MAX_MEM_FOR_RS_ALIGN_CODE): New. + + * config/tc-m32r.c (m32r_do_align): Remove. + (m32r_handle_align): New. + (fill_insn): Use frag_align_code. + * config/tc-m32r.h (md_do_align): Remove. + (HANDLE_ALIGN, MAX_MEM_FOR_RS_ALIGN_CODE): New. + * config/tc-m88k.c, config/tc-m88k.h: Similarly. + * config/tc-mips.c, config/tc-mips.h: Similarly. + + * config/tc-sh.c (sh_cons_align): Use rs_align_test. + (sh_handle_align): Likewise. Handle rs_align_code. + (sh_do_align): Remove. + * config/tc-sh.h (md_do_align): Remove. + (MAX_MEM_FOR_RS_ALIGN_CODE): New. + + * config/tc-sparc.c (sparc_cons_align): Use rs_align_test. + (sparc_handle_align): Likewise. Handle rs_align_code. + * config/tc-sparc.h (md_do_align): Remove. + (MAX_MEM_FOR_RS_ALIGN_CODE): New. + +2000-12-22 DJ Delorie + + * config/tc-d10v.c (md_assemble): set prev_seg and prev_subseg + when we assemble the first half of a pair. + +2000-12-22 H.J. Lu + + * config/tc-i386.c (reloc): Update the macro for non-bfd + assembler. + (BFD_RELOC_X86_64_GOTPCREL): Set to 0 for non-bfd assembler. + +2000-12-22 H.J. Lu + + * dwarf2dbg.c (dwarf2_finish): Remove #if BFD_ASSEMBLER. + +2000-12-20 Jan Hubicka + + * config/tc-i386.h (i386_target_format): Define even for ELFs. + (QWORD_MNEM_SUFFIX): New macro. + (CpuK6,CpuAthlon,CpuSledgehammer, Cpu64, CpuNo64, CpuUnknownFlags): + New macros + (CpuMMX,CpuSSE,Cpu3dnow, CpuUnknown): Renumber. + (IgnoreSize, DefaultSize, No_?Suf, FWait, IsString, regKludge, IsPrefix, + ImmExt): Renumber. + (Size64, No_qSuf, NoRex64, Rex64): New macros. + (Reg64, Imm32S, Imm64, Disp32S, Disp64): New macros. + (Imm8, Imm8S, Imm16, Imm32, Imm1, BaseIndex, Disp8, Disp16, Disp32, + InOutPortReg,ShiftCount, Control, Debug, Test, FloatReg, FloatAcc, + SReg2, SReg3, Acc, JumpAbsolute, RegMMX, RegXMM, EsSeg, InvMem): + Renumber. + (Reg, WordReg): Add Reg64. + (Imm): Add Imm32S and Imm64. + (EncImm): New. + (Disp): Add Disp64 and Disp32S. + (AnyMem): Add Disp32S. + (RegRex, RegRex64): New macros. + (rex_byte): New type. + * config/tc-i386.c (set_16bit_code_flag): Kill. + (fits_in_unsigned_long, fits_in_signed_long): New functions. + (reloc): New parameter "signed"; support x86_64. + (set_code_flag): New. + (DEFAULT_ARCH): New macro; default to "i386". + (default_arch): New static variable. + (struct _i386_insn): New fields Operand_PCrel; rex. + (flag_16bit_code): Kill; All tests replaced to "flag_code == CODE_64BIT" + (flag_code): New enum and static variable. + (use_rela_relocations): New static variable. + (flag_code_names): New static variable. + (cpu_arch_flags): Default to CpuUnknownFlags|CpuNo64. + (cpu_arch): Add "sledgehammer"; Add CPUAthlon to Athlon and CpuK6 to + K6 and Athlon. + (i386_align_code): Return plain "nop" for x86_64. + (mode_from_disp_size): Support Disp32S. + (smallest_imm_type): Support Imm32S and Imm64. + (offset_in_range): Support size of 8. + (set_cpu_arch): Do not clobber to Cpu64/CpuNo64. + (md_pseudo_table): Add "code64"; use set_code_flat. + (md_begin): Emit sane error message on hash failure. + (tc_i386_fix_adjustable): Support x86_64 relocations. + (md_assemble): Support QWORD_MNEM_SUFFIX, REX registers, + instructions supported on particular arch just partially, + output of 64bit immediates, handling of Imm32S and Disp32S type. + (i386_immedaite): Support x86_64 relocations; support 64bit constants. + (i386_displacement): Likewise. + (i386_index_check): Cleanup; support 64bit addresses. + (md_apply_fix3): Support x86_64 relocation and rela. + (md_longopts): Add "32" and "64". + (md_parse_option): Add OPTION_32 and OPTION_64. + (i386_target_format): Call even for ELFs; choose between + elf64-x86-64 and elf32-i386. + (i386_validate_fix): Refuse GOTOFF in 64bit mode. + (tc_gen_reloc): Support rela relocations and x86_64. + (intel_e09_1): Support QWORD. + +2000-12-15 Diego Novillo + + * config/tc-i386.c (intel_e09_1): Only flag as a memory operand if + it's not an offset expression. + (intel_e10_1): Ditto. Also, if the operand is an offset expression, + keep the braces '[' and ']' in the output string. + (intel_e11): Ditto. Also remove comparison intel_parser.op_modifier + != FLAT. There is no such op_modifier. + +2000-12-14 Michael Sokolov + + * dwarf2dbg.c: If we don't have , try including + if we have it. + +2000-12-13 Kazu Hirata + + * as.h: Fix formatting. + * cgen.h: Likewise. + * dwarf2dbg.c: Likewise. + * input-scrub.c: Likewise. + * read.h: Likewise. + +2000-12-13 Mark Elbrecht + + * configure.in (i386-*-msdosdjgpp): Set bfd_gas to yes. + configure: Regenerate. + +2000-12-13 Michael Sokolov + + * dwarf2dbg.c: #include only if it exists. + +2000-12-13 Rodney Brown + + * config/tc-hppa.c (pa_ip): Correct CHECK_FIELD typo. + (md_apply_fix): Here too. + +2000-12-12 Jim Wilson + + * config/tc-ia64.h (ia64_init): Add prototype. + +2000-12-12 H.J. Lu + + * dwarf2dbg.c: Enabled only if BFD_ASSEMBLER is defined. + + * read.h (outputting_stabs_line_debug): Change it to int. + * stabs.c (outputting_stabs_line_debug): Likewise. + +2000-12-12 Geoffrey Keating + + * config/obj-bout.c (obj_crawl_symbol_chain): Don't take + the address of a function result. + +2000-12-12 Franz Sirl + + * config/tc-ppc.c (md_pseudo_table): Add .file and .loc. + (md_assemble): Call dwarf2_emit_insn. + (shlib): Fix typo SHILB -> SHLIB. + (md_parse_option): Likewise. + (ppc_elf_validate_fix): Likewise: + * config/tc-ppc.h (DWARF2_LINE_MIN_INSN_LENGTH): New. + +2000-12-12 Nick Clifton + + * cgen.h: Fix formatting. + * input-scrub.c: Fix formatting. + * macro.c: Fix formatting. + * config/tc-mips.c: Fix formatting. + * doc/c-mips.texi: Fix formatting. + +2000-12-11 Jan hubicka + + * config/tc-i386.c (md_assemble): Refuse 's' and 'l' suffixes in the intel + mode; convert 'd' suffix to 's' or 'l'; remove all DWORD_MNEM_SUFFIX + references. + (intel_e09_1): Convert QWORD to 'l' suffix for FP operations; refuse + otherwise. + * config/tc-i386.h (DWORD_MNEM_SUFFIX): Kill. + (No_dSuf): Kill. + + * i386.h (*_Suf): Remove No_dSuf. + (d_suf, wld_Suf,sld_Suf, sldx_Suf, bwld_Suf, d_FP, sld_FP, sldx_FP) + Remove. + (i386_optab): Remove 'd' in the suffixes. + +2000-12-06 Mark Elbrecht + + * config/tc-i386.c (T_SHORT): Undefine before defining. + +2000-12-05 Kazu Hirata + + * config/tc-mips.c: Fix formatting. + +2000-12-04 Matthew Hiller + + * config/tc-d10v.c (flag_allow_gstabs_packing): New variable. + (md_longopts): New options --gstabs-packing, --no-gstabs-packing. + (md_show_usage): Ditto. + (md_parse_option): Ditto. + (d10v_cleanup): Writes pending instruction only if + ! outputting_stabs_line_debug || ! flag_allow_gstabs_packing. + Fix compile time warning messages. + + * doc/c-d10v.texi: Documents new options. + +2000-12-04 Matthew Hiller + + * stabs.c (outputting_stabs_line_debug): New variable. + (stabs_generate_asm_lineno): Set outputting_stabs_line_debug at + function entry and unset at function exit. + + * read.h (outputting_stabs_line_debug): New extern declaration. + + * as.c: Include dwarf2dbg.h for definition of dwarf2_finish. + + * dwarf2dbg.c: Fix compile time warning messages. + +2000-12-03 Kazu Hirata + + * config/tc-a29k.c: Fix formatting. + * config/tc-alpha.c: Likewise. + * config/tc-arm.c: Likewise. + * config/tc-cris.c: Likewise. + * config/tc-hppa.c: Likewise. + * config/tc-i370.c: Likewise. + * config/tc-i386.c: Likewise. + * config/tc-i860.c: Likewise. + * config/tc-i960.c: Likewise. + * config/tc-ia64.c: Likewise. + * config/tc-m68hc11.c: Likewise. + * config/tc-m68k.c: Likewise. + * config/tc-m88k.c: Likewise. + * config/tc-pj.c: Likewise. + * config/tc-ppc.c: Likewise. + * config/tc-sh.c: Likewise. + * config/tc-sparc.c: Likewise. + * config/tc-tahoe.c: Likewise. + * config/tc-vax.c: Likewise. + +2000-12-01 Chris Demetriou + + * config/tc-mips.c (mips_ip): When calculating offsets, + don't accept as constant the difference between the + addresses of symbols in two different sections. + + * config/tc-mips.c (macro_build): Add new 'U' and 'J' operand + specifiers. + (validate_mips_insn): Likewise. Also, update 'B' operand + specifier to use OP_*_CODE20 constants and delete 'm' operand + specifier. + (mips_ip): Remove 'm' operand specifier, add 'U' and 'J' + operand specifiers. Change warning generated by 'B' operand + specifier to reflect its new multi-purpose usage. + + * config/tc-mips.c (mips_set_options): Use ISA_UNKNOWN rather than + -1, and update comment. + (file_mips_isa): Likewise. + (mips_cpu): Use CPU_UNKNOWN rather than -1, and update comment. + (ISA_HAS_COPROC_DELAYS, ISA_HAS_64BIT_REGS, gpr_interlocks): Use + ISA_* constants rather than hard-coded numbers. + (mips_cpu_info): New structure. + (mips_cpu_info_table): New table describing CPU and ISA names + and numbers. + (mips_cpu_info_from_name, mips_cpu_info_from_isa, + mips_cpu_info_from_cpu): New functions. + (mips_isa_to_str): New function to get string for ISA name. + (mips_cpu_to_str): Convert to use mips_cpu_info_from_cpu, and + return const char *. + (md_begin): Redo CPU and ISA selection logic, using + mips_cpu_info_from_*. Convert to use ISA_* constants rather + than hard-coded numbers. + (append_insn, mips_emit_delays, macro, macro2): Convert to use + ISA_* constants rather than hard-coded numbers. + (mips_ip): Convert to use mips_isa_to_str to get ISA name. + (md_longopts): Delete OPTION_NO_MIPS32. + (md_parse_option): Convert to use ISA_* constants rather than + hard-coded numbers. Make OPTIONS_MIPS32 case treat MIPS32 + as an ISA. Delete OPTION_NO_MIPS32 case. Convert OPTION_MCPU + to use strcasecmp to recognize "default" and to use + mips_cpu_info_from_name to get CPU numbers from argument. + (md_show_usage): Move -mips32 so it's with the rest of the ISA + flags. Change 4Kc, 4Kp and 4Km CPU entries to just be + mips32-4k. + (s_mipsset): Accept ISA value 32. + * doc/as.texinfo: Clean up MIPS options summary slightly, + remove -no-mips32. Add note about -mips4 and -mips32 + specifying those ISA levels. Delete -mips32 and -no-mips32 + cpu flag descriptions. + * doc/c-mips.texi: Add -mips32 to list of ISA switches. Clean + up the supported CPU switch list, and replace 4Kc, 4Km, and + 4Kp entries with a single mips32-4k entry. Note that you can + use ".set mips32". + + * config/tc-mips.c (ISA_HAS_64BIT_REGS): Add checks for ISA_MIPS5 and + ISA_MIPS64. + (md_longopts, OPTION_MIPS5, OPTION_MIPS64): Add options for + -mips5 and -mips64. + (md_parse_option): Add cases for OPTION_MIPS5 and + OPTION_MIPS64. + (md_show_usage): Mention -mips5 and -mips64 arguments. + (s_mipsset): Add cases for MIPS5 and MIPS64. + (mips_cpu_info_table): Add entries for MIPS5 and MIPS64 ISAs + and pseudo-CPUs. + * doc/as.texinfo: Mention -mips5 and -mips64 options + and their meanings. + * doc/c-mips.texi: Likewise. Also update introduction + and ".set" usage information. + + * config/tc-mips.c (md_show_usage): Add "sb1" to the + CPU list. + (mips_cpu_info_table): Add SB-1 entries. + * doc/c-mips.texi: Add "sb1" to the list of CPUs + known to the -mcpu option. + + * doc/as.texinfo: Correct description of MIPS -mcpu + option, by copying some of the text from doc/c-mips.texi. + +2000-12-01 Joel Sherrill + + * configure.in (arm-*-rtems*, a29k-*rtems*, h8300-*-rtems*): + New targets. + (sparc*-*-rtemself*, sparc*-*-rtemsaout*): New targets. + (sparc*-*-rtems*): Switched from a.out to ELF. + * configure: Regenerate. + * config.in: Regenerate. + * Makefile.in: Regenerate. + * aclocal.m4: Regenerate. + * po/gas.pot: Regenerate. + +2000-11-30 Philip Blundell + + * config/obj-coff.c (obj_coff_weak): Use S_SET_WEAK if it exists, + even in non BFD_ASSEMBLER case. + +2000-11-30 Diego Novillo + + * config/tc-i386.c (md_assemble): Swap i.disp_relocs when using intel + syntax. + +2000-11-29 Richard Henderson + + * dwarf2dbg.c: Rewrite from scratch. Queue all debugging output + until dwarf2_finish; use relaxation to get cross-fragment offsets; + thread multiple subsegments properly; handle multiple code + sections properly; emit proper compilation unit info for assembler + generated debugging. + + * as.h (enum _relax_state): Add rs_dwarf2dbg. + * dwarf2dbg.h (struct dwarf2_line_info): Remove filename. + (dwarf2dbg_estimate_size_before_relax): Declare. + (dwarf2dbg_relax_frag, dwarf2dbg_convert_frag): Declare. + * write.c: Include dwarf2dbg.h. + (cvt_frag_to_fill): Handle rs_dwarf2dbg. + (relax_segment): Likewise. + +2000-11-28 Hans-Peter Nilsson + + * config/tc-sh.c (md_convert_frag) : Use as_bad_where instead of as_bad. Tweak error message + accordingly. Stabilize frag by updating fix part and resetting + variant part. + : Ditto. + (sh_elf_cons): Cast *input_line_pointer to unsigned char when + indexing is_end_of_line[]. + (md_assemble): Initialize size to 0. + (md_section_align): Mark parameter seg as unused. + (parse_reg): Parse names case-insensitively. + +2000-11-28 Kazu Hirata + + * config/obj-aout.h: Fix formatting. + * config/obj-bout.h: Likewise. + * config/obj-coff.c: Likewise. + * config/obj-coff.h: Likewise. + * config/obj-elf.h: Likewise. + * config/obj-som.h: Likewise. + * config/obj-vms.c: Likewise. + * config/obj-vms.h: Likewise. + * config/tc-h8300.h: Likewise. + * config/tc-ns32k.h: Likewise. + * config/tc-sparc.h: Likewise. + * config/tc-tic54x.h: Likewise. + * config/tc-z8k.h: Likewise. + +2000-11-28 Nick Clifton + + * doc/as.1 (COPYING): Mention that the GNU Free Documentation + License is present in the sources, but not the output, and + also available from the GNU website. + (GNU Free Documentation License): Comment out this section. + +2000-11-28 Hans-Peter Nilsson + + * Makefile.am (CPU_OBJ_VALID): Add case to filter out invalid coff + targets. Remove i860 from valid a.out targets. + * Makefile.in: Regenerate. + + * config/tc-cris.c: Include dwarf2dbg.h. + (md_pseudo_table): Add .file and .loc. + (md_assemble): Call dwarf2_emit_insn if generating ELF. + (s_cris_file, s_cris_loc): New. + * config/tc-cris.h (DWARF2_LINE_MIN_INSN_LENGTH): Define. + * Makefile.am: Regenerate dependencies. + * Makefile.in: Regenerate. + +2000-11-28 Alan Modra + + * expr.c (STANDARD_MUL_PRECEDENCE): Correct value. + (MRI_MUL_PRECEDENCE): Likewise. + (op_rank): Fix a comment typo. + +2000-11-26 Stephane Carrez + + * config/tc-m68hc11.c (build_indexed_byte): Print the offset in + the error message. + (get_operand): Fix analysis for movw/movb instructions. + +2000-11-24 Nick Clifton + + * configure.in (xscale-elf): Add target. + (xscale-coff): Add target. + * configure: Regenerate. + + * config/tc-arm.c (ARM_EXT_V5E): New ARM architecture + extenstion. + (ARM_EXT_XSCALE): New ARM architecture extension. + (ARM_LONGMUL): Rename to ARM_EXT_LONGMUL. + (ARM_HALFWORD): Rename to ARM_EXT_HALFWORD. + (ARM_THUMB): Rename to ARM_EXT_THUMB. + (ARM_ARCH_V4): Remove processor from architecture. + (ARM_ARCH_3M): New architecutre definition. + (ARM_ARCH_V5TE): New architecutre definition. + (ARM_ARCH_XSCALE): New architecutre definition. + (CPU_DEFAULT): Allow to be defaulted to XScale. + (atpcs): New boolean variable. + (ldr_flags): Support 'd' flag for double word loads. + (str_flags): Support 'd' flag for double word stored. + (do_mia): New function. + (do_mar): New function. + (do_mra): New function. + (do_pld): New function. + (do_ldrd): New function. + (do_blx): New function. + (do_bkpt): New function. + (do_clz): New function. + (do_lstc2): New function. + (do_cdp2): New function. + (do_t_blx): New function. + (do_t_bkpt): New function. + (do_smla): New function. + (do_smlal): New function. + (do_smul): New function. + (do_qadd): New function. + (do_co_reg2c): New function. + (LONGEST_INSN): Redefine to 7. + + * doc/c-arm.texi: Document -mxscale, -mmarmv5te and -matpcs + command line switches. + +2000-11-22 Jim Wilson + + * config/tc-ia64.c (pseudo_func): Add missing initializers. + (struct rsrc): Make line unsigned. + (gr_values): Add missing initializer. + (SLOT_NUM_NOT_SET): Add unsigned cast. + (ia64_elf_section_flags, output_vbyte_mem, count_output, dot_radix, + dot_fframe, dot_vframe, dot_vframesp, dot_vframepsp, dot_save, + dot_restore, dot_restorereg, dot_restorereg_p, dot_handlerdata, + dot_unwentry, dot_altrp, dot_saveg, dot_savef, dot_saveb, dot_savegf, + dot_spill, dot_spillreg, dot_spillreg_p, dot_label_state, + dot_copy_state, dot_unwabi, dot_personality, dot_proc, dot_body, + dot_prologue, dot_endp, dot_regstk, dot_psr, dot_alias, dot_ln, + dot_reg_val, dot_entry, dot_mem_offset, ia64_init, mark_resource, + md_undefined_symbol, md_apply_fix3, tc_gen_reloc, ia64_md_do_align): + Add ATTRIBUTE_UNUSED to unused parameters. + (convert_expr_to_ab_reg): Add parens. + (convert_expr_to_xy_reg): Add parens. Comment out >= REG_GR test. + (dot_prologue): Initialize grsave when declared. + (md_pseudo_table): Add missing initializers. + (operand_match): Add casts to bfd_vma. + (emit_one_bundle): Delete unused local prev. Make required_template + unsigned. + (specify_resource): Cast i to unsigned. + (note_register_values): Use fprintf_vma. + (print_dependency): Likewise. + +2000-11-21 Jim Wilson + + * config/tc-ia64.c (generate_unwind_image): Call record_alignment + for unwind info section. + (dot_endp): Likewise for unwind section. + + * config/tc-ia64.c (emit_one_bundle): Pass size of 8 not 4 to + fix_new_exp. + +2000-11-21 Jakub Jelinek + + * config/tc-sparc.c (md_pseudo_table): Add .file and .loc. + (output_insn): Call dwarf2_emit_insn. + * config/tc-sparc.h (DWARF2_LINE_MIN_INSN_LENGTH): New. + +2000-11-17 Richard Henderson + + * ehopt.c (eh_frame_code_alignment): New arg `in_seg', update all + callers. Don't switch segments. Expect CIE == -1 in .debug_frame. + (check_eh_frame): Handle .eh_frame and .debug_frame concurrently. + +2000-11-17 Nick Clifton + + * config/tc-arm.c (md_pseudo_table): Add support for .line and + .file pseudo ops. + +2000-11-17 Richard Henderson + + * config/tc-i386.c (md_pseudo_table): Add .file and .loc. + +2000-11-17 Richard Henderson + + * dwarf2dbg.c (dwarf2_gen_line_info): Early out for no line number. + * config/obj-elf.h (ECOFF_DEBUGGING) [TC_ALPHA]: Adjust for + tri-state definition of alpha_flag_mdebug. + * config/tc-alpha.c (alpha_flag_mdebug): Init to -1. + (s_alpha_file): Store first .file directive. + (s_alpha_stab): New. + (md_pseudo_table): Add stabs and stabn. + +2000-11-17 Richard Henderson + + * config/tc-i386.c (md_assemble): Call dwarf2_emit_insn. + +2000-11-17 Richard Henderson + + * as.c (debug_type): Init to DEBUG_UNSPECIFIED. + (main): Call dwarf2_finish. + * as.h (debug_type): Clarify documentation of the meaning + of this variable. + * dwarf2dbg.c (DWARF2_LINE_MIN_INSN_LENGTH): Default to 1. + (print_stats): Fix parenthesis problem. + (now_subseg_size): New. + (dwarf2_finish): Use it. If DEBUG_DWARF2, emit bits for .debug_info. + (dwarf2_directive_file): Don't set debug_type. + (dwarf2_where): Honor DEBUG_DWARF2 first. + (dwarf2_emit_insn): Renamed from dwarf2_generate_asm_lineno; + do nothing if not emitting dwarf2 debug info, or no work. + * dwarf2dbg.h (dwarf2_emit_insn): Update. + * ecoff.c (add_file): Turn on DEBUG_ECOFF only if DEBUG_UNSPECIFIED. + (ecoff_new_file): Likewise. + * read.c (generate_lineno_debug): Kill ecoff hackery. Update + commentary wrt dwarf2. + + * config/tc-alpha.c (alpha_adjust_symtab_relocs): Add + ATTRIBUTE_UNUSED as needed. + (emit_insn): Call dwarf2_emit_insn. + (s_alpha_file): New. + (s_alpha_loc): New. + (s_alpha_coff_wrapper): Don't handle them. + (md_pseudo_table): Update for .file and .loc. + * config/tc-alpha.h (DWARF2_LINE_MIN_INSN_LENGTH): New. + + * config/tc-arm.c (output_inst): Update for dwarf2_emit_insn; + don't protect with debug_type. + * config/tc-hppa.c (md_assemble): Likewise. + * config/tc-m68hc11.c (m68hc11_new_insn): Likewise. + * config/tc-mn10300.c (md_assemble): Likewise. + * config/tc-sh.c (md_assemble): Likewise. + * config/tc-v850.c (md_assemble): Likewise. + + * config/tc-arm.c (arm_end_of_source): Remove. + * config/tc-hppa.c (pa_end_of_source): Remove. + * config/tc-m68hc11.c (m68hc11_end_of_source): Remove. + * config/tc-mn10300.c (mn10300_finalize): Remove. + * config/tc-sh.c (sh_finalize): Remove. + * config/tc-v850.c (sh_finalize): Remove. + + * config/tc-arm.h (md_end): Remove. + * config/tc-hppa.h (md_end): Remove. + (DWARF2_LINE_MIN_INSN_LENGTH): New. + * config/tc-m68hc11.h (md_end): Remove. + * config/tc-mn10300.h (md_end): Remove. + * config/tc-sh.h (md_end): Remove. + * config/tc-v850.h (md_end): Remove. + + * config/tc-ia64.c (emit_one_bundle): Don't protect + dwarf2 bits with debug_type. + (md_assemble): Likewise. + (ia64_end_of_source): Don't call dwarf2_finish. + +2000-11-16 Jim Wilson + + * config/tc-ia64.c (errata_nop_necessary_p): Abort if general regno + >= 128 instead of > 128. Abort if predicate regno is >= 64 instead of + > 16. + +2000-11-16 H.J. Lu + + * config/obj-elf.c (obj_elf_symver): Don't check the missing + version name. + +2000-11-15 Kazu Hirata + + * config/tc-tic30.c: Fix formatting. + * config/tc-tic80.c: Likewise. + * config/tc-v850.c: Likewise. + * config/tc-vax.c: Likewise. + * config/tc-w65.c: Likewise. + * config/tc-z8k.c: Likewise. + +2000-11-14 DJ Delorie + + * config/tc-v850.c: Support dwarf2. + * config/tc-v850.h: Ditto. + + * config/tc-v850.c (cons_fix_new_v850): Don't rely on + parse_cons_expression_v850 to initialize hold_cons_reloc. + +2000-11-15 Bernd Schmidt + + * config/tc-ia64.c (struct md): New entries LAST_GROUPS, GROUP_IDX. + (errata_nops_necessary_p): New function. + (emit_one_bundle): Call it. Update the GROUP_IDX field in struct + md. + +2000-11-14 Jim Wilson + + * config/tc-ia64.c (ia64_target_format): If EF_IA_64_BE not set, then + return little endian bfd formats. + +2000-11-14 Kazu Hirata + + * config/aout_gnu.h: Fix formatting. + * config/atof-vax.c: Likewise. + * config/m68k-parse.h: Likewise. + * config/m88k-opcode.h: Likewise. + * config/obj-elf.c: Likewise. + * config/tc-arm.c: Likewise. + * config/tc-cris.c: Likewise. + * config/tc-i386.c: Likewise. + * config/tc-ia64.c: Likewise. + * config/tc-mn10300.c: Likewise. + * config/te-386bsd.h: Likewise. + * config/te-hppa.h: Likewise. + * config/te-nbsd.h: Likewise. + * config/te-ppcnw.h: Likewise. + * config/te-sparcaout.h: Likewise. + * config/te-tmips.h: Likewise. + * config/vax-inst.h: Likewise. + * config/vms-conf.h: Likewise. + +2000-11-14 Jakub Jelinek + + * config/tc-alpha.c (s_alpha_prologue): Preserve visibility bits. + +2000-11-13 H.J. Lu + + * config/obj-elf.c (elf_frob_symbol): Support + ".symver name,name2@@@nodename". + (elf_frob_file_before_adjust): Likewise. + + * doc/as.texinfo: Updated for ".symver name,name2@@@nodename" + and ".symver name,name2@@@nodename". + Fix a typo. + +2000-11-12 H.J. Lu (hjl@gnu.org) + + * config/obj-elf.c (obj_elf_symver): Check missing version + name. + +2000-11-12 H.J. Lu (hjl@gnu.org) + + * dwarf2dbg.c (dwarf2_generate_asm_lineno): Use addressT + instead of bfd_vma for non-bfd assemblers. + +2000-11-09 Kazu Hirata + + * itbl-ops.c: Fix comment typos. + +2000-11-08 Jim Wilson + + * config/tc-ia64.c (struct unw_rec_list): Add slot_frag field. + (struct unwind): Add next_slot_frag field. + (slot_index): New parameters slot_frag and first_frag. Add code + to add in frag sizes when different. Add comments. + (fixup_unw_records): New locals first_frag and last_frag. Pass new + arguments to slot_index. + (emit_one_bundle): Set slot_frag field. Set next_slot_number after + loop end. Set next_slot_frag field. + +2000-11-07 H.J. Lu + + * doc/as.texinfo (.symver): Updated for versioned symbol + reference. + + * obj.h (format_ops): Add the frob_file_before_adjust field. + + * config/obj-aout.c (aout_format_ops): Set the + frob_file_before_adjust field to 0. + * config/obj-coff.c (coff_format_ops): Likewise. + * config/obj-ecoff.c (ecoff_format_ops): Likewise. + + * config/obj-elf.c (obj_elf_symver): Allow duplicated version + name. + (elf_frob_file_before_adjust): New function to remove unneeded + versioned symbols from the symbol table. + (elf_format_ops): Set the frob_file_before_adjust field to + elf_frob_file_before_adjust. + + * config/obj-elf.h (obj_frob_file_before_adjust): Defined if + not defined. + + * config/obj-multi.h (obj_frob_file_before_adjust): Defined. + +2000-11-07 Peter Targett + + * config/tc-arc.h: Avoid warnings for LITTLE_ENDIAN and + BIG_ENDIAN macros. + * config/tc-arc.c: Use S_IS_LOCAL to test local symbols. + Fix compile time warning messages. + +2000-11-07 Nick Clifton + + * stabs.c (generate_asm_file): Increase length of xmalloc'ed + buffer in order to avoid buffer overflows. + +2000-11-06 Steve Ellcey + + * config/tc-ia64.c (md_shortopts, md_parse_option, md_show_usage): + Change M to m for -milp32 or -mlp64 to match gcc. + (dot_endp): Use bytes_per_address instead of 8. + (emit_one_bundle): Use number_to_chars_littleendian instead of + md_number_to_chars. + (fix_insn): Likewise. + (ia64_init): New function. + (ia64_target_format): New function. + (md_begin): Set endianness, arch, and machine as appropriate. + * config/tc-ia64.h: (TARGET_BYTES_BIG_ENDIAN, md_number_to_chars): + Make these macros depend on TE_HPUX macro. + (TARGET_FORMAT): Define. + (HOST_SPECIAL_INIT): Define. + * config/te-hpux.h: New file. + * configure.in: Add "ia64-*-hpux*" target to configure. + * configure: Regenerate. + +2000-11-06 Kazu Hirata + + * as.c: Fix formatting. + * dwarf2dbg.c: Likewise. + * input-file.c: Likewise. + * input-file.h: Likewise. + * input-scrub.c: Likewise. + * itbl-ops.c: Likewise. + * listing.c: Likewise. + * macro.h: Likewise. + * messages.c: Likewise. + * read.c: Likewise. + * subsegs.c: Likewise. + * subsegs.h: Likewise. + * write.c: Likewise. + +2000-11-06 Nick Clifton + + * doc/as.texinfo: Add GNU Free Documentation License. + * doc/gasp.texi: Add GNU Free Documentation License. + * doc/as.1: Add GNU Free Documentation License. + +2000-11-05 Nick Clifton + + * config/tc-arm.c: Add include of "dwarf2dbg.h" + +2000-11-02 Per Lundberg + + * configure.in: Recognise i[3456]86-chaosdev-storm-chaos. + * configure: Regenerate. + +2000-11-01 Nick Clifton + + * read.c (original_case_string): New global variable. + (read_a_source_file): Copy opcode string into + original_case_string if clobbering the case of the opcode. + * read.h: Export the definition of original_case_string. + * config/tc-arm.c (md_assembler): When parsing a .req + directive use the original opcode string, not the case + clobbered version. + +2000-11-02 Nick Clifton + + * config/tc-mn10300.c (debug_line): Remove this static + variable. + (md_assemble): Call dwarf2_generate_asm_lineno instead of + dwarf2_where and dwarf2_gen_line_info. + +2000-11-02 Theo Honohan + + * config/tc-arm.c (do_msr): Improve error message. + +2000-10-31 Eric Christopher + + * config/tc-mn10300.c (md_apply_fix3): Use valuep if fully resolved + or pc-relative, else use fx_offset. + +2000-10-31 Jim Wilson + + * config/tc-ia64.c (struct md): New field tag_fixups. + (ia64_flush_insns): Handle tag_fixups. Error if dangling + qualifying predicate. + (emit_one_bundle): Delete spurious multiplication by one. Handle + tag_fixups. + (ia64_start_line): Error if dangling qualifying predicate. + (defining_tag): New static variable. + (ia64_unrecognized_line, case '['): Parse tags. + (ia64_frob_label): Create tag_fixups. + (md_assemble): Reset md.qp.X_op after using it. + +2000-10-31 Kaz Kojima + + * config/tc-sh.c (md_apply_fix [BFD_RELOC_SH_PCDISP12BY2]): Allow 4094. + +2000-10-31 Bernd Schmidt + + * config/tc-ia64.c (extra_goodness): Only prefer F in slot 1 and B in slot 2. + +2000-10-30 Kazu Hirata + + * expr.c: Fix formatting. + * flonum-copy.c: Likewise. + * flonum.h: Likewise. + * gasp.c: Likewise. + * hash.c: Likewise. + +2000-10-30 Hans-Peter Nilsson + + * as.h (OPTION_MD_BASE): Bump to 190. + * as.c (parse_args) : Add comment about the need to + check OPTION_MD_BASE in as.h. + + * config/tc-sh.c (md_apply_fix): For ELF, do not "adjust back" VAL + for weak symbols. + +2000-10-27 Nick Clifton + + * configure.in (emulations): Add m68hc12. + * configure: Regenerate. + * po/gas.pot: Regenerate. + +2000-10-27 Aldy Hernandez + + * config/tc-arm.c (psrs): Remove lowercase versions of spsr* and + cpsr*. + (arm_psr_parse): Handle lowercase CPSR and SPSR. + +2000-10-25 Nick Clifton + + * dwarf2out.c (dwarf2_generate_asm_lineno): New function: Generate + a DWARF2 line number information sequence. + + *dwarf2out.h: Add prototype for dwarf2_generate_asm_lineno. + + * read.c (generate_lineno_debug): Update comment describing why + DWARF2 line number debug information is not generated + automatically by this function. + + * doc/as.texinfo: Note that --gdwarf2 only works on some targets, + not all. + + * config/tc-arm.h (md_end): Define. + (DWARF2_LINE_MIN_INSN_LENGTH): Define. + + * config/tc-arm.c (output_inst): Call dwarf2_generate_asm_lineno + if generating DWARF2 line numbers. + (arm_end_of_source): New function. Call dwarf2_finish if + necessary. + + * config/tc-hppa.c (md_assemble): Use dwarf2_generate_asm_lineno. + * config/tc-m68hc11.c (m68hc11_new_insn): Use dwarf2_generate_asm_lineno. + * config/tc-sh.c (md_assemble): Use dwarf2_generate_asm_lineno. + +2000-10-25 Diego Novillo + + * config/tc-i386.c: Fix prototype declarations for functions taking no + arguments. + +2000-10-24 Diego Novillo + + * config/tc-i386.c (i386_operand_modifier): Remove. + (build_displacement_string): Remove. + (i386_parse_seg): Remove. + (i386_intel_memory_operand): Remove. + (i386_intel_operand): Re-write using recursive descent parser based + on MASM documentation. + (struct intel_parser_s): New structure. + (intel_parser): New static variable. + (struct intel_token): New structure. + (cur_token, prev_token): New static variables. + (T_NIL): Define. + (T_CONST): Define. + (T_REG): Define. + (T_BYTE): Define. + (T_WORD): Define. + (T_DWORD): Define. + (T_QWORD): Define. + (T_XWORD): Define. + (T_SHORT): Define. + (T_OFFSET): Define. + (T_PTR): Define. + (T_ID): Define. + (intel_match_token): New function. + (intel_get_token): New function. + (intel_putback_token): New function. + (intel_expr): New function. + (intel_e05): New function. + (intel_e05_1): New function. + (intel_e06): New function. + (intel_e06_1): New function. + (intel_e09): New function. + (intel_e09_1): New function. + (intel_e10): New function. + (intel_e10_1): New function. + (intel_e11): New function. + +2000-10-20 Jakub Jelinek + + * config/tc-sparc.c (sparc_ip): Fix a bug which caused v9_arg_p + instructions to loose any special insn->architecture mask. + + * config/tc-sparc.c (v9a_asr_table): Add v9b ASRs. + (sparc_md_end, sparc_arch_types, sparc_arch, + sparc_elf_final_processing): Handle v8plusb and v9b architectures. + (sparc_ip): Handle siam mode operands. Support v9b ASRs (and + request v9b architecture if they are used). + +2000-10-18 Michael Sokolov + + * config/tc-m68k.c: Fix the previous misapplied patch. + +2000-10-18 Michael Sokolov + + * config/tc-m68k.h (RELAX_RELOC_*): New definitions for both + BFD_ASSEMBLER and !BFD_ASSEMBLER. + * config/tc-m68k.c (md_convert_frag_1): Use them instead of + BFD_RELOC_*. + +2000-10-17 Kazu Hirata + + * debug.c: Fix formatting. + * depend.c: Likewise. + * dwarf2dbg.c: Likewise. + * dwarf2dbg.h: Likewise. + * ecoff.c: Likewise. + * expr.c: Likewise. + * expr.h: Likewise. + * flonum-konst.c: Likewise. + * frags.h: Likewise. + +2000-10-17 Chandrakala Chavva + + * as.c: New option OPTION_TARGET_HELP. Prints all target specific + options. + * doc/as.texinfo: Added notes about this new option. + +2000-10-16 Hans-Peter Nilsson + + * config/tc-sh.c (JREG): Remove. + (md_convert_frag): Remove #if 0:d code using JREG. + +2000-10-15 Diego Novillo + + * config/tc-i386.c (i386_operand_modifier): Only match + modifiers SHORT and FLAT if they are followed by a space. + (parse_register): When `allow_naked_reg' is set, do not confuse + identifiers that start with a register name with a register. + +2000-10-12 Kazu Hirata + + * app.c: Fix formatting. + * as.c: Likewise. + * as.h: Likewise. + * bit_fix.h: Likewise. + * cgen.c: Likewise. + * cgen.h: Likewise. + * cond.c: Likewise. + +2000-10-11 Alan Modra + + * config/obj-elf.c (elf_frob_symbol): Revert 2000-10-07 change. + +2000-10-07 Alan Modra + + * config/tc-hppa.c (md_apply_fix): Remove plainly wrong assert. + Re-arrange function a little and improve error message. + + * write.c (write_relocs): Fix a comment. + + * config/obj-elf.c (elf_frob_symbol): Make section syms global on + link-once sections. + +2000-10-05 Jim Wilson + + * config/tc-ia64.c (resources_match): Handle IA64_RS_PRr. + +2000-10-05 Alan Modra + + * config/tc-i386.c: Delete some useless comments, reformat others. + + * config/tc-i386.h (TC_FIX_ADJUSTABLE): Add check to cover + non-global syms in linkonce sections. + +2000-10-04 Ralf Baechle + + * config/tc-ia64.c (operand_match): Don't use // style comments. + * config/tc-i370.c: Likewise. + +2000-09-29 Hans-Peter Nilsson + + Changes to handle varying register prefix and user symbol prefix. + * config/tc-cris.c (SYNTAX_RELAX_REG_PREFIX, + SYNTAX_ENFORCE_REG_PREFIX, SYNTAX_USER_SYM_LEADING_UNDERSCORE, + SYNTAX_USER_SYM_NO_LEADING_UNDERSCORE, REGISTER_PREFIX_CHAR): New. + (s_syntax, cris_force_reg_prefix, cris_relax_reg_prefix, + cris_sym_leading_underscore, cris_sym_no_leading_underscore): New. + (demand_register_prefix): New variable. + (md_pseudo_table): New pseudo ".syntax". + (md_longopts): New options --no-underscore and --underscore. + (cris_target_format): Return elf32-us-cris or elf32-cris depending + on symbols_have_leading_underscore. + (get_gen_reg): Accept or require REGISTER_PREFIX_CHAR. + (get_spec_reg): Ditto. + (cris_number_to_imm) : Remove FIXME. + Fix formatting. + (md_parse_option) : Deprecate; add reference to + --help. + : New. + (md_show_usage): Be brief and reformat to match continuation of + --help. + * po/gas.pot: Regenerate. + +2000-09-28 Alan Modra + + * config/tc-hppa.c (hppa_force_relocation): If OBJ_SOM, don't + force relocs for 12 bit branches. + (md_apply_fix): Similarly, adjust logic here. + +2000-09-28 Alan Modra + + * config/tc-hppa.c (md_apply_fix): Add fmt assertion. Don't + adjust for external and weak syms as we will use a reloc. Allow + for +8 offset when calculating limits of branches. + (hppa_fix_adjustable): Undo 2000-09-23 change. + (hppa_force_relocation): Likewise. Add fx_addsy assertion. + Correct distance calculation. + (tc_gen_reloc): Print the file name and line number if we can't + handle a fixup. + + From John David Anglin + * config/tc-hppa.c (nonzero_dibits): Define. + (arg_reloc_stub_needed): Check each arg and return value + separately for zero case. + (pa_align): Declare argument `bytes'. + +2000-09-25 Kazu Hirata + + * config/tc-cris.c: Fix formatting. + * config/tc-d10v.h: Likewise. + * config/tc-d30v.c: Likewise. + * config/tc-d30v.h: Likewise. + * config/tc-fr30.c: Likewise. + * config/tc-fr30.h: Likewise. + * config/tc-m68k.c: Likewise. + * config/tc-m68k.h: Likewise. + * config/tc-pj.h: Likewise. + * config/tc-ppc.c: Likewise. + * config/tc-ppc.h: Likewise. + * config/tc-sh.c: Likewise. + * config/tc-sh.h: Likewise. + * config/tc-sparc.c: Likewise. + * config/tc-v850.h: Likewise. + * config/tc-vax.h: Likewise. + * config/tc-w65.h: Likewise. + * config/tc-z8k.h: Likewise. + +2000-09-23 Alan Modra + + * config/tc-hppa.c (hppa_fix_adjustable): Do the external and weak + checks only for ELF. + (hppa_force_relocation): Likewise. + +2000-09-22 Jim Wilson + + * config/tc-ia64.c (dv_sem): Add "stop". + (specify_resource, case IA64_RS_PR): Only handles regs 1 to 15 now. + (specify_resource, case IA64_RS_PRr): New for regs 16 to 62. + (specify_resource, case IA64_RS_PR63): Reorder (note == 7) test to + match above. + (mark_resources): Check IA64_RS_PRr. + +2000-09-22 Michael Sokolov + + * config/tc-m68k.c (md_relax_table, m68k_ip, md_convert_frag_1, + md_estimate_size_before_relax): Redesign and clean up the + relaxation mechanism. + +2000-09-21 Kazu Hirata + + * config/tc-ns32k.c: Fix formatting. + * config/tc-ns32k.h: Likewise. + +2000-09-20 Kazu Hirata + + * config/tc-m32r.c: Fix formatting. + * config/tc-m32r.h: Likewise. + * config/tc-m68851.h: Likewise. + * config/tc-m68hc11.c: Likewise. + * config/tc-m68hc11.h: Likewise. + * config/tc-m88k.c: Likewise. + * config/tc-mcore.c: Likewise. + * config/tc-mcore.h: Likewise. + * config/tc-mips.c: Likewise. + * config/tc-mips.h: Likewise. + * config/tc-mn10200.h: Likewise. + * config/tc-mn10300.h: Likewise. + * config/tc-tahoe.c: Likewise. + * config/tc-tahoe.h: Likewise. + +2000-09-19 Michael Sokolov + + * config/tc-vax.c (synthetic_votstrs): Remove jbssi and jbcci. + Likewise in relaxation description comments. + +2000-09-18 Alan Modra + + * config/tc-hppa.h (TC_FORCE_RELOCATION_SECTION): Allow + subtraction of two syms without emitting a relocation. + + From David Huggins-Daines + * config/tc-hppa.c (hppa_force_relocation): Force relocations for + global or weak symbols. + +2000-09-15 Kazu Hirata + + * config/tc-h8300.h: Fix formatting. + * config/tc-h8500.c: Likewise. + * config/tc-h8500.h: Likewise. + * config/tc-hppa.h: Likewise. + * config/tc-i370.h: Likewise. + * config/tc-i386.h: Likewise. + * config/tc-i860.c: Likewise. + * config/tc-i860.h: Likewise. + * config/tc-i960.h: Likewise. + * config/tc-ia64.c: Likewise. + * config/tc-ia64.h: Likewise. + +2000-09-14 Kazu Hirata + + * config/tc-a29k.c: Fix formatting. + * config/tc-alpha.c: Likewise. + * config/tc-arc.c: Likewise. + * config/tc-arc.h: Likewise. + * config/tc-arm.c: Likewise. + * config/tc-arm.h: Likewise. + * config/tc-avr.c: Likewise. + * config/tc-avr.h: Likewise. + * config/tc-tic30.c: Likewise. + * config/tc-tic30.h: Likewise. + * config/tc-tic54x.c: Likewise. + * config/tc-tic54x.h: Likewise. + * config/tc-tic80.c: Likewise. + * config/tc-tic80.h: Likewise. + +2000-09-14 Timothy Wall + + * config/tc-ia64.c (specify_resource): For PR%/PR63, note types of + parallel comparisons for later use. + (struct rsrc): Add parallel comparison type. + (resources_match): Skip special cases of PR usage (non-conflicting + parallel compares). + +2000-09-13 Kazu Hirata + + * config/obj-ecoff.c: Fix formatting. + * config/obj-elf.c: Likewise. + * config/obj-elf.h: Likewise. + * config/obj-evax.h: Likewise. + * config/obj-generic.h: Likewise. + * config/obj-hp300.c: Likewise. + * config/obj-hp300.h: Likewise. + * config/obj-ieee.h: Likewise. + * config/obj-vms.c: Likewise. + * config/obj-vms.h: Likewise. + +2000-09-13 Anders Norlander + + * config/tc-mips.c (md_begin): Recognize 4Kc, 4Km and 4Kp processors. + (md_parse_option): Ditto. + (md_longopts): Add -mips32 option. + (md_show_usage): Document new options. + (mips_ip): Assemble sdbbp 20 bit 'm' args for MIPS32. + (mips_ip): Assemble mfc0 with a sub-selection code. + (validate_mips_insn): Handle 'H' (OP_*_SEL) and 'm' (OP_*_CODE20). + (mips_cpu_to_str): New function. + (mips_ip): Use mips_cpu_to_str instead of printing numeric cpu value. + Use CPU_* defines instead of hardcoded numbers. + + * doc/as.texinfo: Document new options. + * doc/c-mips.texi: Ditto. + +2000-09-12 Kazu Hirata + + * as.h: Fix formatting. + * asintl.h: Likewise. + * bit_fix.h: Likewise. + * config/obj-aout.c: Likewise. + * config/obj-aout.h: Likewise. + * config/obj-bout.c: Likewise. + * config/obj-bout.h: Likewise. + * config/obj-coff.c: Likewise. + * config/obj-coff.h: Likewise. + * dwarf2dbg.h: Likewise. + * expr.h: Likewise. + * flonum.h: Likewise. + * frags.h: Likewise. + * itbl-ops.h: Likewise. + * macro.h: Likewise. + * read.h: Likewise. + * sb.h: Likewise. + * struc-symbol.h: Likewise. + * subsegs.h: Likewise. + * symbols.h: Likewise. + * tc.h: Likewise. + * write.h: Likewise. + +2000-09-11 Kazu Hirata + + * bignum-copy.c: Fix formatting. + * config/tc-i370.c: Likewise. + * config/tc-i960.c: Likewise. + * config/tc-m68k.c: Likewise. + * ehopt.c: Likewise. + * flonum-copy.c: Likewise. + * flonum-konst.c: Likewise. + * flonum-mult.c: Likewise. + * literal.c: Likewise. + * read.c: Likewise. + * sb.c: Likewise. + * stabs.c: Likewise. + * subsegs.c: Likewise. + +2000-09-09 Philip Blundell + + * configure.in (arm*-*-uclinux*): New target. + * configure: Regenerate. + +2000-09-09 Kazu Hirata + + * input-file.c: Fix formatting. + * itbl-ops.c: Likewise. + * messages.c: Likewise. + +2000-09-08 Philip Blundell + + * config/tc-arm.c (md_apply_fix3): Correct handling of ADRL when + offset is negative. + +2000-09-07 H.J. Lu + + * configure.in (AC_ISC_POSIX): Put after AC_CANONICAL_SYSTEM. + * configure: Rebuild. + +2000-09-07 Kazu Hirata + + * atof-generic.c: Fix formatting. + * config/tc-mips.c: Likewise. + * config/tc-vax.c: Likewise. + * input-scrub.c: Likewise. + +2000-09-07 Alexandre Oliva + + * config/tc-sh.h (TARGET_FORMAT): Use sh-linux targets. + * configure.in (sh-*-linux*): Added. + * configure: Rebuilt. + +2000-09-06 Kazu Hirata + + * config/tc-hppa.c: Fix formatting. + + * ecoff.c: Fix formatting. + +2000-09-06 Alexandre Oliva + + * configure: Rebuilt with new libtool.m4. + +2000-09-05 Kazu Hirata + + * cgen.c: Fix formatting. + * config/tc-ia64.c: Likewise. + +2000-09-05 Nick Clifton + + * aclocal.m4: Regenerate. + * config.in: Regenerate. + * configure: Regenerate. + * po/gas.pot: Regenerate. + +2000-09-05 Hans-Peter Nilsson + + * config/tc-cris.c: Correct comment typos. + +2000-09-05 Eric Christopher + + * config/tc-mn10300.c: Cleanup. + (md_pcrel_from): Enable. + +2000-09-05 Alan Modra + + * expr.c (operand): Fix a comment typo. + * write.c (write_relocs): Fix a signed/unsigned warning. + + * config/tc-hppa.c (fudge_reg_expressions): New + (hppa_force_reg_syms_absolute): New. + (pa_equ): Allow reg_section expressions. + * config/tc-hppa.c (md_optimize_expr): Define. + (hppa_force_reg_syms_absolute): Prototype. + + * config/tc-hppa.c (pa_11_fp_reg_struct): Delete. + (pa_parse_number): Pass in arg to select fp reg parsing. + Return 1 to indicate format checks pass. If strict, then only + accept a register or register symbol. Return value in... + (pa_number): New static for pa_parse_number. + (FP_REG_BASE): Define. + (FP_REG_RSEL): Define. + (pre_defined_registers): Apply FP_REG_BASE and FP_REG_RSEL as + appropriate. White space changes. + (need_pa11_opcode): Don't bother passing any params, get them from + globals instead. + (pa_ip): Modify all calls to pa_parse_number and need_pa11_opcode. + Remove extraneous check in case 'Q'. + (pa_equ): Modify call to pa_parse_number to do strict parsing. If + reg, set section of resulting symbol to reg_section. + (pa_parse_space_stmt): Modify call to pa_parse_number. + (pa_space): Likewise. + + * config/tc-hppa.c: (md_apply_fix): Handle vtable relocs. + (hppa_force_relocation): Handle vtable relocs. + (pa_vtable_entry): New. + (pa_vtable_inherit): New. + (md_pseudo_table): Add entries for vtable pseudos. + (hppa_fix_adjustable): Reject reduction of R_PARISC_GNU_VTINHERIT + and R_PARISC_GNU_VTENTRY relocs. Reject reduction of relocs + against weak syms. + (tc_gen_reloc): Remove ELF_ARG_RELOC_INSN code. + (pa_type_args): Don't call symbol_get_bfdsym multiple times. + Set STT_PARISC_MILLICODE for OBJ_ELF when encountering a + millicode import. + * config/obj-elf.c (obj_elf_type): Allow md_elf_symbol_type to + specify a symbol type. + + * config/tc-hppa.h: Reorganize file a little, grouping OBJ_ELF + dependent things together. + (md_elf_symbol_type): Define. + + * config/tc-hppa.c (fix_new_hppa): Elide "$PIC_pcrel$0" pseudo + symbol. + * config/tc-hppa.h (tc_frob_symbol): Elide "$PIC_pcrel$0" here too. + + * config/obj-elf.h (obj_elf_vtable_inherit): Declare. + (obj_elf_vtable_entry): Declare. + + * config/obj-elf.c (obj_elf_vtable_inherit): Return struct fix * + and export function. + (obj_elf_vtable_entry): Similarly. + (elf_pseudo_table): Fix the damage with a cast. + +2000-09-03 Richard Henderson + + * config/tc-ia64.c (emit_one_bundle): Stop collecting insns + for template selection when a label is needed. + +2000-09-02 Kazu Hirata + + * config/tc-ia64.c: Fix formatting. + +2000-09-02 Nick Clifton + + * configure.in: Increase version number to 2.10.91. + * configure: Regenerate. + * aclocal.m4: Regenerate. + * config.in: Regenerate. + * po/gas.pot: Regenerate. + * Makefile.in: Regenerate. + +2000-09-01 Alexandre Oliva + + * config/tc-sh.h [OBJ_ELF] (TC_FIX_ADJUSTABLE): Define. + * config/tc-sh.c (md_apply_fix): Map 32-bit relocations that + become PC-relative to BFD_RELOC_32_PCREL. Reject 16- or 8-bit + similar relocs. + (sh_obj_adjustable): Return 1 for PC-relative offsets used in + branches. + +2000-09-01 Niibe Yutaka , Kaz Kojima , Alexandre Oliva + + * config/tc-sh.h (DIFF_EXPR_OK, GLOBAL_OFFSET_TABLE_NAME, + TC_RELOC_GLOBAL_OFFSET_TABLE, TC_RELOC_RTSYM_LOC_FIXUP): Define. + * config/tc-sh.c (sh_elf_cons, sh_elf_suffix): New functions. + [OBJ_ELF] (md_pseudo_table) : Use them. + (GOT_symbol): New variable. + (md_undefined_symbol): Set it. + +2000-09-01 Richard Henderson + + * config/tc-ia64.c (match): Don't inline. + (extra_goodness): New. + (md_begin): Prefer nop.f and nop.b for best_template. + +2000-08-31 Kazu Hirata + + * as.c: Fix formatting. + * cond.c: Likewise. + * frags.c: Likewise. + * macro.c: Likewise. + +2000-08-31 Eric Christopher + + * config/tc-mn10300.c: Cleanup and fix warnings. + (md_pseudo_table): Add initializers. + (md_show_usage): Cleanup. + (md_parse_option): Fix warnings. + (md_undefined_symbol): Fix warnings. + (md_conver_frag): Fix warnings. + (tc_gen_reloc): Fix warnings. + (md_apply_fix3): Fix warnings. + (check_operand): Fix warnings. + +2000-08-31 Alexandre Oliva + + * acinclude.m4: Include libtool and gettext macros from the + top level. + * aclocal.m4, configure: Rebuilt. + +2000-08-30 Mark Hatle + + * config/tc-ppc.c (md_parse_option): Recognize -m405. + +2000-08-31 Kazu Hirata + + * listing.c: Fix formatting. + +2000-08-29 Kazu Hirata + + * app.c: Fix a comment typo. Fix formatting. + +2000-08-25 J. David Anglin + + * config/tc-vax.c (md_convert_frag): Correctly calculate the pc relative + offset of the target destination for jmp instructions. + (md_assemble): Change mode to VAX_ABSOLUTE_MODE as per comments. + +2000-08-24 Hans-Peter Nilsson + + * NEWS: Mention support for CRIS. + +2000-08-24 Denis Chertykov + + * config/tc-avr.h (TC_IMPLICIT_LCOMM_ALIGNMENT): New macros. + Sets `.lcomm' alignment to zero. + +2000-08-23 Alexandre Oliva + + * config/tc-i386.h (OBJ_MAYBE_ELF, OBJ_MAYBE_COFF, + TC_FIX_ADJUSTABLE): Define. + +2000-08-23 Jim Wilson + + * config/tc-ia64.c (output_unw_records): Set U & E flags only if + unwind.personality_routine is set. + +2000-08-23 H.J. Lu + + * write.c (TC_FIX_ADJUSTABLE): Remove the duplicate. + +2000-08-23 Alexandre Oliva + + * config/tc-i386.h (TC_FIX_ADJUSTABLE): Do *NOT* define if target + environment is pe. + +2000-08-22 H.J. Lu + + * config.in (STRICTCOFF): New for strict COFF. + + * configure.in: Define STRICTCOFF for i386-*-msdosdjgpp*, + i386-*-go32* and i386-go32-rtems*. + * configure: Rebuilt. + + * config/obj-coff.c (obj_coff_endef): Follow the historical + behavior if STRICTCOFF is not defined. + + * doc/internals.texi: Document STRICTCOFF. + +2000-08-22 Alexandre Oliva + + * write.c (TC_FIX_ADJUSTABLE): Define to 1, if not defined. + (fixup_segment) Use it instead of TC_DONT_FIX_NON_ADJUSTABLE. + * config/tc-i386.h (TC_DONT_FIX_NON_ADJUSTABLE): Remove. + (TC_FIX_ADJUSTABLE): Define. + * config/tc-arm.h (TC_DONT_FIX_NON_ADJUSTABLE): Remove. + (TC_FIX_ADJUSTABLE): Define. + * config/tc-i960.h, config/tc-m68k.h, config/tc-v850.h: + Likewise. + +2000-08-22 Eric Christopher + + * config/tc-mn10300.c: (md_apply_fix): New function. + (mn10300_force_relocation): New function. + (mn10300_fix_adjustable): New function. + + * config/tc-mn10300.h: (TC_FORCE_RELOCATION): Define. + (TC_HANDLES_FX_DONE): Define. + (obj_fix_adjustable): Define. + (MD_APPLY_FIX3): Define. + (TC_LINKRELAX_FIXUP): Define. + + * write.c: (TC_LINKRELAX_FIXUP): Define if not + previously defined. + (fixup_segment): Use TC_LINKRELAX_FIXUP. + + * doc/internals.texi: Document TC_LINKRELAX_FIXUP. + +2000-08-21 Jason Eckhardt + + * config/tc-i860.c (md_apply_fix3): Do not insert the immediate + if the fixup resulted in a relocation. + +2000-08-18 Nick Clifton + + * config/tc-arm.c (decode_shift): Replace as_tsktsk with as_warn. + Make reference to first element of shift_names explicit. + +2000-08-18 Alexandre Oliva + + * write.c (fixup_segment) [TC_DONT_FIX_NON_ADJUSTABLE]: Use + obj_fix_adjustable() and tc_fix_adjustable() to tell whether to + add a symbol's address. Removed all target-specific #ifdefs that + used to accomplished the same. + * config/tc-v850.h (TC_DONT_FIX_NON_ADJUSTABLE): Define. + * config/tc-m68k.h (TC_DONT_FIX_NON_ADJUSTABLE): Define. + * config/tc-arm.h (TC_DONT_FIX_NON_ADJUSTABLE): Define. + * config/tc-i960.h (TC_DONT_FIX_NON_ADJUSTABLE): Define. + * config/tc-i386.h (TC_DONT_FIX_NON_ADJUSTABLE): Define. + +2000-08-17 Kazu Hirata + + * dwarf2dbg.c: Fix formatting. + +2000-08-17 Nick Clifton + + * config/tc-arm.c (decode_shift): Allow illegal shifts by zero + to be recoded as logical shift lefts by zero. + +2000-08-16 Jim Wilson + + * config/tc-ia64.c (specify_resource, case IA64_RS_GR): Handle + postincrement modified registers. Handle IA64_OPND_R3_2 addl + source registers. + (note_register_values): Handle IA64_OPND_R3_2 operands. + +2000-08-16 Jason Eckhardt + + * config/tc-i860.c (md_operand): Silly typo fixed. + +2000-08-16 Nick Clifton + + * config/tc-arm.c (struct asm_shift): Delete. + (shift[]): Delete. + (enum asm_shift_index): New. + (struct asm_shift_properties): New. + (struct asm_shift_name): New. + (shift_properties[]); New. + (shift_names[]); New. + + (decode_shift): Use new structures. + Issue a warning is "ROR #0" is used. + Issue a warning if "ASR #0" or "LSR #0" is used. + + (md_begin): Initialise arm_shift_hsh table from new + asm_shift_name array. + +2000-08-16 Jakub Jelinek + + * config/tc-sparc.c: Kill all warnings. + (md_parse_option): Set -32/-64 for -xarch=, allow all -A archs + in -xarch= as well. + (md_show_usage): Update usage text. + +2000-08-16 Nick Clifton + + * config/tc-arm.c (do_bx): Warn about "bx px" not being very + useful. + +2000-08-15 Will Cohen + + * config/tc-sh.h (DWARF2_LINE_MIN_INSN_LENGTH): Defined. + + * config/tc-sh.c (md_assemble): Changed so debug_type + test performed for ppi_assemble + * config/tc-sh.c: Included dwarf2dbg.h. + (debug_line): Defined. + (md_assemble): Generates dwarf2 line info. + (sh_finalize): New function. Finalize dwarf2 info. + (assemble_ppi): Returns size of code generated. + (build_Mytes): Returns size of code generated. + (md_pseudo_table): Added "file" and "loc" psuedo ops. + * config/tc-sh.h (md_end): Defined. + (sh_finalize): Declared. + +2000-08-15 Alexandre Oliva + + * config/tc-sh.c (md_apply_fix) [BFD_RELOC_32, BFD_RELOC_16]: Use + md_number_to_chars. + +2000-08-14 Nick Clifton + + * config/tc-arm.c (do_bx): Allow "bx pc". + +2000-08-14 Jim Wilson + + * config/tc-ia64.c (md_longopts): Add -mconstant-gp and -mauto-pic. + (md_parse_option): Add OPTION_MCONSTANT_GP and OPTION_MAUTO_PIC. + (md_begin): Change assignment to md.flag to OR in the new bit. + +2000-08-14 Mark Elbrecht + + * config/obj-coff.c (obj_coff_endef) [BFD_ASSEMBLER]: Set the debug + flag for storage types C_ARG, C_REGPARM, C_FIELD, C_MOS, C_MOE, + C_MOU, and C_EOS. + +2000-08-14 Jason Eckhardt + + * NEWS: Mention i860 support. + +2000-08-14 Jeffrey A Law (law@cygnus.com) + + * config/tc-mn10300.h (DWARF2_LINE_MIN_INSN_LENGTH): Define. + +2000-08-14 Andreas Schwab + + * doc/c-arm.texi (ARM Directives): Fix warnings from makeinfo. + +2000-08-11 Andreas Schwab + + * doc/c-i860.texi (Opcodes for i860): Remove braces from @item + argument. + +2000-08-11 Kazu Hirata + + * expr.c: Fix formatting. + * config/obj-bout.c: Likewise. + +2000-08-10 Jason Eckhardt + + * doc/c-i860.texi: Flesh out the i860 section more. + +2000-08-10 Kazu Hirata + + * symbols.c: Fix formatting. + * expr.c: Likewise. + +2000-08-09 Diego Novillo + + * config/tc-i386.c (md_assemble): Skip suffix check if the opcode + modifier has the IgnoreSize bit set. + +2000-08-09 Alan Modra + + From Rodney Brown + * configure.in: Use elf on Unixware 7 (i586-sco-sysv5uw7.1.0) + * configure: Regenerate. + +2000-08-09 Kazu Hirata + + * hash.c: Fix formatting. + * gasp.c: Likewise. + +2000-08-08 Jason Eckhardt + + * config/tc-i860.h: Rework completely for BFD_ASSEMBLER. + (i860_fix_info): New enum. + (MD_APPLY_FIX3): Define. + (WORKING_DOT_WORD): Define. + (TC_HANDLES_FX_DONE): Define. + (DIFF_EXPR_OK): Define. + (LISTING_HEADER): Define. + (TARGET_FORMAT): Select target format based on endian flag. + (TARGET_BYTES_BIG_ENDIAN): Default to little endian. + (target_big_endian): Add external declaration. + + * config/tc-i860.c: All existing code reworked completely. Other + new code shown below. + (SYNTAX_SVR4): Define. + (target_warn_expand): New variable. + (md_shortopts): Declare and define (-Qy, -Qn, and -V options). + (md_longopts): Declare and define with new options (-EL, -EB, + and -mwarn-expand). + (md_show_usage): New function. + (md_operand): New function. + (obtain_reloc_for_imm16): New function. + (md_apply_fix3): New function. + (tc_gen_reloc): New function. + +2000-08-08 Stephane Carrez + + * config/tc-m68hc11.c (build_jump_insn): Make sure the + 2 bytes of the jump address are in the same frag. + (find): Accept 68hc12 register indirect modes. + + * NEWS: Mention 68HC11 & 68HC12 support. + +2000-08-07 Richard Henderson + + * config/tc-ia64.c (unwind): Add prologue_mask member. + (dot_vframe): Elide psp_gr record if it overlaps prologue_gr. + (dot_save): Likewise for pfs_gr, rp_gr, and preds_gr. + (dot_body): Clear unwind.prologue_mask. + (dot_prologue): Set it. Accept a register second argument. + +2000-08-07 Kazu Hirata + + * config/atof-ieee.c: Fix formatting. + * config/atof-tahoe.c: Likewise. + +2000-08-06 Nick Clifton + + * config/tc-sparc.c (md_begin): Fix typo in recent formatting + work. + + * doc/as.texinfo (Pseudo Ops): Update to include descriptions + of .popsection, .previous, .pushsection, .subsection, + .version, .vtable_entry, .vtable_inherit and .weak. + +2000-08-05 Kazu Hirata + + * config/tc-cris.c: Fix formatting. + * config/tc-i386.c: Likewise. + * config/tc-sparc.c (sparc_ip): Simplify the code. + +2000-08-04 Kazu Hirata + + * config/tc-cris.c: Rearrange code for readability. + * config/tc-d10v.c: Fix formatting. + * config/tc-m32r.c: Likewise. + * config/tc-sparc.c: Likewise. + +2000-08-02 Jim Wilson + + * config/tc-ia64.c (emit_one_bundle): Call ia64_free_opcode + before ia64_find_opcode. + (md_assemble): Likewise. + +2000-08-01 Nick Clifton + + * config/tc-arm.c (do_mrs): Fix skip of 'cpsr_all' flag. + Undo some formatting fixes. + +2000-08-01 Kazu Hirata + + * config/obj-som.c: Fix formatting. + * config/obj-ieee.c: Likewise. + * config/tc-arm.c: Likewise. + * config/tc-v850.c: Likewise. + +2000-08-01 Nick Clifton + + * doc/c-m68k.texi (section M680x0 Options): Turn into a table + index by command line option. + +2000-08-01 Michael Sokolov + + * doc/c-m68k.texi (@cindex @samp{--pcrel}): Rewrite option description. + (@node M68K-Branch): Rewrite to match the reality. + +2000-07-31 Jason Eckhardt + + * doc/c-i860.texi: New file. + * doc/Makefile.am (CPU_DOCS): Add c-i860.texi. + * doc/Makefile.in: Regenerate. + * doc/all.texi: Add I860 as relevant architecture. + * doc/as.texinfo: Include i860 dependent file c-i860.texi. + +2000-07-31 Kazu Hirata + + * config/tc-d30v.c: Fix formatting. + +2000-07-31 Michael Sokolov + + * config/tc-m68k.c (flag_keep_pcrel, OPTION_PCREL): Add --pcrel option. + (md_convert_frag_1, md_estimate_size_before_relax): When making DBcc + long emit a long branch if available instead of an absolute jump, never + emit absolute jumps for anything with --pcrel. + + * doc/c-m68k.texi: Document new command line option. + +2000-07-29 Marek Michalkiewicz + + * config/tc-avr.c: Use PARAMS macro in function declarations. + Don't declare md_pcrel_from_section (already in tc-avr.h). + (avr_operands): Use AVR_UNDEF_P and AVR_SKIP_P macros. + (avr_operand): Don't set (unsigned) op_mask to -1. + +2000-07-28 Jason Eckhardt + + * configure.in: Add bits for i860-stardent-{sysv4, elf}*. + * configure: Regenerated. + * config/obj-elf.c (obj_elf_type): Recognize a fifth type + of operand to the .type directive (.e.g, "type"). + +2000-07-28 Alan Modra + + * as.h (warn_comment, found_comment, found_comment_file): Declare. + * app.c (do_scrub_chars): Record where first comment found. + * read.c (read_a_source_file): Init found_comment on entry, and + notify whether comments found on exit. + * config/tc-hppa.c (md_shortopts): Add "c". + (md_longopts): Add warn-comment. + (md_parse_option): Handle it. + (md_show_usage): Show available options. + * config/tc-hppa.h (WARN_COMMENTS): Define if TE_LINUX + +2000-07-27 Andrew Cagney + + * config/tc-mn10300.c (md_convert_frag): Fix printfs. + (tc_gen_reloc): Add cast when assigning bfd_abs_symbol to + sym_ptr_ptr + (md_estimate_size_before_relax): Don't fall off end of function. + +2000-07-27 Kazu Hirata + + * config/tc-avr.c: Fix formatting. + * config/tc-ns32k.c: Likewise. + +2000-07-27 Alan Modra + + * config/tc-d10v.c (find_opcode): Remove extraneous `='. + +2000-07-27 Kazu Hirata + + * config/tc-d10v.c: Fix formatting. + * config/tc-z8k.c: Likewise. + * config/tc-sparc.c: Likewise. + +2000-07-26 Dave Brolley + + * cgen.c (queue_fixup): Declare opinfo. + (gas_cgen_parse_operand): Mark unused parameters with ATTRIBUTE_UNUSED. + (gas_cgen_md_operand): Ditto. + (gas_cgen_md_apply_fix3): Ditto. + +2000-07-24 Mark Elbrecht + + * config/obj-coff.c (obj_frob_symbol): Don't merge + labels. Don't merge if the symbol isn't constant. Return + immediately if a symbol is merged. + +2000-07-22 Alan Modra + + * frags.c (frag_align): Correct absolute section alignment. + +2000-07-20 DJ Delorie + + * config/obj-coff.c (obj_frob_symbol): revert previous change, + it breaks linking against DLLs. + +2000-07-20 Hans-Peter Nilsson + + * configure.in: Add CRIS support. + * configure: Regenerate. + * Makefile.am: (CPU_TYPES): Add cris. + (CPU_OBJ_VALID) [aout]: Add cris. + (MULTI_CPU_TYPES): Add cris. + (MULTI_CPU_OBJ_VALID) [aout]: Add cris. + [coff]: Only i386 and mips are valid. + (TARGET_CPU_CFILES): Add config/tc-cris.c. + (TARGET_CPU_HFILES): Add config/tc-cris.h. + (MULTI_CFILES): Add config/e-crisaout.c and config/e-criself.c. + Regenerate dependencies. + * Makefile.in: Regenerate. + * aclocal.m4: Regenerate. + * as.c: Declare crisaout, criself. + * config/tc-cris.h, config/tc-cris.c: New. + * config/e-criself.c, config/e-crisaout.c: New. + * po/POTFILES.in, po/gas.pot: Regenerate. + +2000-07-20 Kazu Hirata + + * read.c: Fix formatting. + * write.c: Fix formatting. + +2000-07-19 H.J. Lu + + * sb.c: Include if exists for abort (). + +2000-07-19 Alan Modra + + * config/tc-hppa.c (hppa_fix_adjustable): Correct LR%/RR% comment. + (arg_reloc_stub_needed): #ifdef OBJ_SOM, not #ifdef SOM. + (pa_type_args): Same here. + +2000-07-17 Mark Elbrecht + + * config/obj-coff.c (obj_frob_symbol): Don't merge labels. Don't + merge if the symbol isn't constant. Don't call S_SET_EXTERNAL if + the storage class is already set. + +2000-07-17 Kazu Hirata + + * config/tc-m68hc11.c: Fix formatting. + * config/tc-mn10200.c: Likewise. + * config/tc-mn10300.c: Likewise. + * config/tc-pj.c: Likewise. + * config/tc-tic80.c: Likewise. + * config/tc-w65.c: Likewise. + +2000-07-17 Frank Ch. Eigler + + * expr.c (operand): Permit %bin literals if LITERAL_PREFIXPERCENT_BIN + is defined. + +2000-07-15 Ian Lance Taylor + + * doc/c-mips.texi (MIPS Opts): Remove erroneous space after + @code. + +2000-07-15 Alan Modra + + * config/tc-hppa.c (hppa_fix_adjustable): Use the same checks for + ELF as are used for SOM (except the 32-bit reloc one) to decide + whether a symbol can be reduced to a section symbol. Expand on + the comment for symbols involved in LR% and RR% expressions. + +2000-07-14 Nick Clifton + + * config/tc-mips.c (mips_disable_float_construction): New + static variable. Set to true if doubles should not be + constructed by loading two single width fp registers with + halves of the value. + (mips_ip): Test mips_disable_float_construction. + (md_longopts): Add command line switches --construct-floats + and --no-construct-floats. + (md_parse_option): Parse new command line options. + (md_show_usage): Describe new command line options. + + * doc/c-mips.texi: Document new command line options. + +2000-07-13 Koundinya K + + * configure.in: Remove the test /usr/dde for mips-*-sysv4*MP* + * configure: Regenerate. + +2000-07-13 Hans-Peter Nilsson + + * configure.in (DEFAULT_EMULATION setting): Revert part of + 2000-07-01 change that set te_multi=multi unless set to tmips. + * configure: Regenerate. + +2000-07-12 Mark Elbrecht + + * config/obj-coff.c (coff_frob_section): Add padding to the last + section when aligning it increases its size. + +2000-07-11 Kazu Hirata + + * config/tc-tic54x.c: Fix formatting. + +2000-07-10 Kazu Hirata + + * config/tc-h8500.c: Fix formatting. + * config/tc-tic54x.c: Fix formatting. + +2000-07-10 Alan Modra + + * config/tc-hppa.c (md_apply_fix): Check fmt 12 and 22 pc-rel + displacements correctly. + + * read.h (s_abort): Add ATTRIBUTE_NORETURN. + +2000-07-10 Ryan Bradetich + + * hash.c (hash_insert): Add cast to obstruct_alloc to fix + warning. + (hash_jam): Ditto. + +2000-07-09 Alan Modra + + From David Huggins-Daines + * config/te-hppalinux64.h: Add a new emulation. + * configure.in (emulations): Add configure bits to support the + 64-bit Linux/parisc target. + * configure: Regenerate. + + * config/tc-hppa.c (md_parse_option): Support `-V' for ELF. + (md_shortopts): Add `V' for ELF. + + * config/tc-hppa.c (arg_reloc_stub_needed): Define as zero except + when SOM or ELF_ARG_RELOC are defined. + (pa_type_args): Only set symbol_arg_reloc_info when SOM or + ELF_ARG_RELOC are defined. + (pa_stringer_aux): Don't pa_check_current_space_and_subspace here.. + (pa_stringer): ..Do it here instead. Fix comment typos. + (hppa_force_relocation): Cast enums to int before comparing with + ints. + + From Ryan Bradetich + * config/tc-hppa.c: Removed unneeded libbfd.h to fix macro + redifinition warning. + (md_apply_fix): Added cast from enum to int for fixP->fx_r_type. + (hppa_force_relocation): ditto + (md_apply_fix): Added cast to buf to fix warnings. + + * config/tc-hppa.h (pa_define_label, parse_cons_expression_hppa, + cons_fix_new_hppa, hppa_force_relocation): Prototype. + + * config/tc-hppa.c (reloc_type): It's an enum for OBJ_ELF. + (R_N0SEL, R_N1SEL): Define only for OBJ_SOM. + (tc_gen_reloc): Make `code' a reloc_type and `codes' a + reloc_type** to avoid warnings in switch. + (md_apply_fix): Make insn, val signed. Zap buf_wd and read insn a + little earlier instead. + + * config/tc-hppa.c (symbol_arg_reloc_info): Define for both som + and elf. + (pa_type_args): Use symbol_arg_reloc_info. + (struct pa_it): Make arg_reloc unsigned int. + (struct hppa_fix_struct): Likewise for fx_arg_reloc. + (pa_text, pa_data, pa_comm): Don't compile for TE_LINUX. + (pa_code): Delete. pa_text duplicates this function. + (md_pseudo_table): Call obj_elf_text for ".code" if TE_LINUX. + (fix_new_hppa): Argument offset is offsetT, arg_reloc is unsigned + int. + (cons_fix_new_hppa): Actually change selector to e_fsel when + warning about assuming so. + (tc_gen_reloc): More example elf arg reloc code. + (md_apply_fix): Use arg_reloc_stub_needed for elf too. + (hppa_force_relocation): Likewise. + + * config/tc-hppa.h: Use TARGET_ARCH_SIZE to select target include + files. + (pa_end_of_source): Prototype. + (hppa_fix_adjustable): Prototype. + (LABELS_WITHOUT_COLONS): Move it.. + * config/te-hppa.h: To here. + + * config/te-hppa64.h: New file. + + * config/tc-hppa.c: Use TARGET_ARCH_SIZE to select target reloc + type. + (md_apply_fix): Pass stdoutput to bfd_hppa_insn2fmt. Handle + format -10, -16, 16 relocs. + (hppa_elf_mark_end_of_function): Test for null + last_call_info->start_symbol + + * config/tc-hppa.c (pa_ip): In case 'V', pass `strict' to + CHECK_FIELD, not INSERT_FIELD_AND_CONTINUE. Don't pass opcode to + re_assesmble_* functions. Delete extraneous statements. Fix + typos in comments. + (md_apply_fix): Compare against 1048575 in case 21. Don't pass + insn to re_assemble_*. + +2000-07-08 Ulf Carlsson + + * doc/internals.texi (Expressions): Fix typo. + +2000-07-08 Kazu Hirata + + * config/tc-sh.c: Fix formatting. + * config/tc-tic54x.c: Fix formatting. + * depend.c: Fix formatting. + * flonum-konst.c: Likewise. + * flonum-mult.c: Likewise. + +2000-07-07 Kazu Hirata + + * config/tc-sh.c: Fix comments. + * config/obj-vms.c: Fix comments. + * config/tc-a29k.c: Likewise. + * config/tc-alpha.c: Likewise. + * config/tc-h8300.c: Likewise. + * config/tc-h8500.c: Likewise. + * config/tc-i370.c: Likewise. + * config/tc-ia64.c: Likewise. + * config/tc-m68hc11.c: Likewise. + * config/tc-m68k.c: Likewise. + * config/tc-mips.c: Likewise. + * config/tc-ns32k.c: Likewise. + * config/tc-ppc.c: Likewise. + * config/tc-z8k.c: Likewise. + +2000-07-06 Mark Elbrecht + + * config/obj-coff.c (TC_COFF_SECTION_DEFAULT_ATTRIBUTES): New. + Default to '(SEC_LOAD | SEC_DATA)'. + (obj_coff_section) [BFD_ASSEMBLER]: Use it. + + * doc/internals.texi (CPU Backend): Describe + TC_COFF_SECTION_DEFAULT_ATTRIBUTES. + +2000-06-06 Andrew Cagney + + * as.c (parse_args): NULL terminate the long option list. + +2000-06-04 Andrew Cagney + + * config/tc-d30v.h: Include "write.h" for fixS. + (d30v_start_line, md_pcrel_from_section): Add function prototypes. + +2000-07-05 Nick Clifton + + * config/tc-d30v.c (write_2_short): Further changes to warning + messages produced when combining EITHER_BUT_PREFER_MU attributed + opcodes. + +2000-07-05 DJ Delorie + + * MAINTAINERS: new + +2000-07-04 Alexandre Oliva + + * config/tc-arm.c (psrs): Accept combinations of flags. + +2000-07-03 Marek Michalkiewicz + + * config/tc-avr.c: Change _ () to _() around all strings marked + for translation (exception from the usual coding style). + (avr_opt): New struct variable, how the new switches are set. + (OPTION_MMCU): Define as 'm' and actually use. + (md_longopts): Add -mall-opcodes, -mno-skip-bug, -mno-wrap. + (show_mcu_list): New function, display the list of known MCUs. + (md_show_usage): Document the new switches. Call show_mcu_list. + (avr_set_arch): Change 'm' to OPTION_MMCU. + (md_parse_option): Call show_mcu_list if unknown MCU specified. + Handle the new switches. + (avr_operands): Disable warnings for undefined combinations of + operands if -mall-opcodes. Disable warnings for skipping two-word + instructions if enhanced core or -mno-skip-bug. + (avr_operand): Accept all addressing modes on avr1 if -mall-opcodes. + (md_apply_fix3): Reject 8K wrap if >8K or -mno-wrap. + (md_assemble): Accept opcodes not supported by MCU if -mall-opcodes. + (avr_ldi_expression): Warn about implicit lo8(). + * config/tc-avr.h (md_pcrel_from_section): Add prototype. + +2000-07-01 Koundinya K + + * configure.in: Add entry for mips-*-sysv4*MP* + * configure: Rebuild + * config/tc-mips.c (mips_target_format): Return elf32-tradbigmips or + elf32-tradlittlemips for traditional mips targets. + * config/tc-mips.c (md_estimate_size_before_relax): Duplicate the + test for Link Once sections as in adjust_reloc_syms. + * config/te-tmips.h: New file for traditional mips targets. Define + TE_TMIPS. + +2000-06-29 Mark Elbrecht + + * config/obj-coff.c (obj_coff_setcion) [BFD_ASSEMBLER]: If the + flags argument is not present, don't change an existing section's + section's attributes. If the flags argument is present, warn if the + attributes don't match the section's current attributes. When + long section names are supported, set SEC_LINK_ONCE and + SEC_LINK_DUPLICATES_DISCARD for a new .gnu.linkonce section. + +2000-06-29 Hans-Peter Nilsson + + * config/obj-aout.c (obj_aout_type): Do not ignore for undefined + symbols; create them. + +2000-06-29 Mark Elbrecht + + * write.c (set_segment_vma): New: Set vma and lma for a segment. + (write_object_file) [BFD_ASSEMBLER && OBJ_COFF && TE_GO32]: Use it. + +2000-06-27 Aldy Hernandez + + * config/tc-mips.c (mips_ip): handle "(foo-.-4)" type of + expressions. Ignore the problem when handling 16 bit signed + immediates, because the assembler will take care of the relocation + later. + +2000-06-27 Nick Clifton + + * config/tc-d30v.c (write_2_short): Do not allow opcodes with + the EITHER_BUT_PREFER_MU attribute to be combined into a reverse + sequential order, and emit warning messages if the input source + code contains constructs like that, or parallel constructs + containing such opcodes. + +2000-06-26 Marek Michalkiewicz + + * config/tc-avr.c (mcu_types): Rename avr4 to avr5, add avr4. + Add more MCU types for avr4 and avr5. Replace at94k{10,20,40} + with just at94k. Change AVR_ISA_85xx back to AVR_ISA_2xxx. + (md_show_usage): Update usage message. + (md_parse_option): Allow redefinition of MCU type within the + same avr[1-5] bfd machine type. Show both old and new MCU type + in the error message. + (md_apply_fix3): Support 8K wrap if AVR_ISA_MEGA is not set. + Simplify 8K wrap code. + +2000-06-25 Kazu Hirata + + * config/obj-aout.c: Remove all uses of DEFUN. + * config/obj-ieee.c: Likewise. + * config/tc-sh.c: Fix comment typos. + * config/tc-tahoe.c: Likewise. + * config/tc-vax.c: Likewise. + * config/tc-w65.c: Likewise. + * config/tc-z8k.c: Likewise. + * config/tc-h8300.c (build_bytes): Assemble ldmac correctly. + +2000-06-24 DJ Delorie + + * config/tc-i386.c (md_estimate_size_before_relax): Revert + more changes from Sept 1999 + (tc_i386_fix_adjustable): ditto + (md_apply_fix3): ditto + +2000-06-24 Frank Ch. Eigler + + * cgen.c (expr_jmp_buf_p): New validity flag for expr_jmp_buf. + (gas_cgen_parse_operand): Set it around expression() call. + (gas_cgen_md_operand): Test for it before longjmp(). + +2000-06-24 Kazu Hirata + + * config/tc-h8500.c: Remove all uses of DEFUN. + * config/tc-sh.c: Likewise. + * config/tc-w65.c: Likewise. + * config/tc-z8k.c: Likewise. + + * config/tc-h8500.c: Fix typos in comments. + +2000-06-23 Frank Ch. Eigler + + * expr.c (operand): Permit $hex literals if LITERAL_PREFIXDOLLAR_HEX + is defined. + +2000-06-23 matthew green + + * expr.c (operand): Do not as_bad() if RELAX_PAREN_GROUPING is + defined. Fix error message for `[' grouping. + +2000-06-22 Kazu Hirata + + * config/tc-h8300.c: Fix formatting and comment typos. + +2000-06-22 Timothy Wall + + * config/tc-ia64.c (note_register_values): Move premature QP + notation clearing into the appropriate place. + +2000-06-22 Alan Modra + + * dep-in.sed: Escape literal `.'s on patterns. Trim off `../' + first before anything else. Add bin-bugs.h, emul.h and progress.h + Sort list of files as for $(OBJS) in Makefile.am. + + * Makefile.am (DEP): grep for leading `/' in DEPA, and fail if we + find one. Remake dependencies. + ($(OBJS)): Add bin-bugs.h, emul.h, and progress.h Sort the list. + * Makefile.in: Regenerate. + * doc/Makefile.in: Regenerate. + + * config/tc-i386.c (i386_displacement): Don't assume a constant + displacement is necessarily 16 bits when in 16 bit code mode. + (md_assemble): Instead size the displacement here after we know + for sure that a .code16gcc operand hasn't automatically added + operand size prefixes. + +2000-06-21 H.J. Lu + + * Makefile.am: Rebuild dependency. + * Makefile.in: Rebuild. + +2000-06-21 Kazu Hirata + + * config/tc-h8300.c (parse_reg): Make the function static. + (parse_exp): Likewise. + +2000-06-20 DJ Delorie + + * config/tc-i386.c (tc_i386_fix_adjustable): Revert change from + Sept 1999; RVA relocs need to be treated more like DIR32 relocs + for cygwin import libraries to work properly. + +2000-06-20 H.J. Lu + + * Makefile.am: Rebuild dependency. + * Makefile.in: Rebuild. + * configure: Likewise. + * doc/Makefile.in: Likewise. + +2000-06-20 Timothy Wall + + * doc/internals.texi (CPU backend): Add @itemx for + TC_START_LABEL_WITHOUT_COLON. + * doc/c-tic54x.texi: New. + * doc/as.texinfo: Add tic54x features and include primary tic54x + documentation file. + * doc/all.texi: Add C54X. + * doc/Makefile.am (CPU_DOCS): Add c-tic54x.texi. + * doc/Makefile.in: Regenerate. + * configure.in: Add tic54x and define LIBM for tic54x. + * configure: Regenrate. + * config/tc-tic54x.[ch]: New. + * config/obj-coff.h: Add tic54x. + * Makefile.am: (CPU_TYPES): Add tic54x. + (TARGET_CPU_CFILES): Add 'tc-tic54x.c'. + (TARGET_CPU_HFILES): Add 'tc-tic54x.h'. + (as_new_LDADD): Add $(LIBM). + * Makefile.in: Regenerate. + +2000-06-18 Stephane Carrez + + * doc/Makefile.am (CPU_DOCS): Added 68hc11 file. + * doc/c-m68hc11.texi: Document 68HC11 and 68HC12 port. + * doc/as.texinfo: Likewise. + + * configure, Makefile.in: Regenerate. + * configure.in (emulations): Recognize m6811 and m6812. + * Makefile.am (CPU_TYPES, TARGET_CPU_CFILES, TARGET_CPU_HFILES): + Added files for 68hc11 and 68hc12 assembler. + * config/tc-m68hc11.c: Assembler for 68hc11 and 68hc12. + * config/tc-m68hc11.h: Header definition for that assembler. + +2000-06-18 Nick Clifton + + * symbols.c (resolve_symbol_value): Use bfd_octets_per_byte + instead of OCTETS_PER_BYTE. + + * config/tc-v850.c: Fix compile time warnings. + * config/tc-ppc.c: Fix compile time warnings. + +2000-06-18 H.J. Lu + + * configure.in: Don't emulate i386-pc-pe-coff with i386coff. + * configure: Rebuild. + +2000-06-17 Mark Elbrecht + + * config/obj-coff.c (obj_coff_weak): Typo fix: Change BFD_ASSEMLER + to BFD_ASSEMBLER. + +2000-06-16 Nick Clifton + + * config/tc-mips.c (md_parse_option): Accept RM5200,RM5230, + RM5231, RM5261, RM5721 and RM7000 as r5000 cpu variants. + + * doc/c-mips.texi: Document newly accepted cpu variants. + +2000-06-15 Ulf Carlsson + + * config/tc-mips.h: Remove definition of ONLY_STANDARD_ESCAPES. + +2000-06-13 Ulf Carlsson + + * macro.c (getstring): Make it possible to escape the quote + character. + +2000-06-13 Catherine Moore + + * config/tc-hppa.c (pa_export): Weak symbols can be global. + +2000-06-13 H.J. Lu + + * configure: Regenerate. + +2000-06-09 Alan Modra + + * app.c (do_scrub_begin): Don't default lex[';'] as a line + separator. + * doc/internals.texi (line_separator_chars): Semicolon is no + longer a default. Mention null and newline as defaults. + + * read.c (is_end_of_line): Remove ifdef TC_HPPA. + + * config/tc-i386.h (line_separator_chars): Explicitly mention `;' + * config/tc-i860.h (line_separator_chars): Likewise. + * config/tc-h8300.c (line_separator_chars): Likewise. + * config/tc-i960.c (line_separator_chars): Likewise. + * config/tc-m68k.c (line_separator_chars): Likewise. + * config/tc-mips.c (line_separator_chars): Likewise. + * config/tc-ns32k.c (line_separator_chars): Likewise. + * config/tc-sparc.c (line_separator_chars): Likewise. + * config/tc-vax.c (line_separator_chars): Likewise. + + * config/tc-h8300.c (comment_chars): Use string initialiser. + * config/tc-i960.c (line_comment_chars): Likewise. + * config/tc-z8k.c (comment_chars, line_comment_chars, + line_separator_chars): Likewise. + + * config/tc-arm.c (line_separator_chars): Always use `;', not just + for TE_LINUX. + +2000-06-08 Nick Clifton + + * config/tc-arm.c (cons_fix_new_arm): Assign correct reloc value + for size 1 fixes. + +2000-06-08 David O'Brien + + * configure.in (VERSION): Update to show this is the CVS mainline. + +2000-06-08 Matthew Jacob + + * config/tc-alpha.c (md_undefined_symbol): Properly understand that + $at is the integer register $r28, vs. both $r28 and the floating + point register $f28. + +2000-06-08 James E. Wilson + + * config/tc-ia64.c (generate_unwind_image): Call ia64_flush_insns. + (dot_endp): Don't call ia64_flush_insns. + (emit_one_bundle): Don't delete prologue/body records from + unwind_record list in first loop. Rewrite second loop to account for + this. + +2000-06-07 David Mosberger + + * config/tc-ia64.c: Add missing prototypes. + (generate_unwind_image): Cast argument to output_unw_records call. + +2000-06-07 Denis Chertykov + + * config/tc-avr.c (avr_operand): fix the formatting of the comment. + +2000-06-07 Denis Chertykov + + * config/tc-avr.c (AVR_ISA_???): moved to include/opcode/avr.h + (REGISTER_P): likewise. + (avr_opcodes): uses include/opcode/avr.h + (avr_operand): enable ld r,Z or st r,Z for at90s1200. + +2000-06-04 Alan Modra + + * read.c (is_end_of_line): No ';' for TC_HPPA. Add missing + initializers too. + +2000-06-03 H.J. Lu + + * read.c (is_end_of_line): Put back `;'. + +2000-06-03 Alan Modra + + * config/tc-i386.c (md_shortopts): Remove 'm', add 'q' to non-elf. + +2000-06-01 Alan Modra + + * expr.c (operand): Test is_end_of_line outside switch to catch + line separator chars that are also operators. + (operator): Return O_illegal for line separator chars. + + * read.c (is_end_of_line): Use 1 instead of 99. Don't set `;' + entry (or `!' entry for TC_HPPA). + + * config/tc-arm.c (my_get_float_expression): Cast to unsigned char + before indexing is_end_of_line. Remove redundant check for '\0'. + (fp_op2): Likewise. + * config/tc-h8500.c (md_assemble): Likewise. + * config/tc-mcore.c (md_assemble): Likewise. + * config/tc-tic30.c (tic30_find_parallel_insn): Likewise. + (md_atof): Likewise + + * config/tc-m88k.c (s_bss): Cast to unsigned char before indexing + is_end_of_line. + * config/tc-mcore.c (mcore_cons): Likewise. + (mcore_float_cons): Likewise. + (mcore_stringer): Likewise. + * config/tc-tic30.c (tic30_find_parallel_insn): Likewise. + +2000-06-01 Scott Bambrough + + * config/tc-arm.c (do_mrs): Allow SPSR_BIT to be set correctly. + +2000-05-29 Nick Clifton + + * config/tc-sh.c: Fix compile time warning messages. + + * config/tc-mips.c: Fix compile time warning messages. + +2000-05-29 Philip Blundell + + * doc/as.texinfo: Update copyright dates. + (Local Labels): Delete misplaced mention of ARM. + * NEWS: Mention ARM ELF support. + +2000-05-27 Alexandre Oliva + + * config/tc-mn10300.c (md_assemble): Copy size to real_size before + it is modified, and use the real_size to compute the frag address + for dwarf2 line info. + +2000-05-27 Alan Modra + + * Makefile.am (DEP, DEP1, dep, dep-in, dep-am): Use a better sed + line-matching scheme to cope with automake moving variables around. + ($(TARG_CPU_O)): Remove dependency on TARG_CPU_DEP_@target_cpu_type@ + * Makefile.in: Regenerate. + +2000-05-26 Jakub Jelinek + + * config/tc-sparc.c (sparc_relax): New. + (md_longopts): Add -relax and -no-relax options. + (md_parse_options, md_show_usage): Likewise. + (md_apply_fix3): Optimize tail call into branch always if possible. + +2000-05-04 Donald Lindsay + + * config/tc-d10v.c (write_2_short, parallel_ok, md_assemble, + d10v_cleanup) implement Mitsubishi's newly explained branch-packing + rules, with warning when a GAS statement specifies a packing that + will result in an instruction being squashed. + Added typdef packing_type and enumerals, changed various integer + literals to use the enumerals. + +2000-05-24 David Mosberger + + * config/tc-ia64.c (dot_restorereg_p): New function. + (md_pseudo_table): Add restorereg.p. + (output_X3_format): Fix typo: record type should be UNW_X3, not UNW_X1. + (output_X4_format): Fix typo: record type should be UNW_X4, not UNW_X2. + + * config/tc-ia64.h (unw_record_type): Add unwabi. + (unw_r_record): Rename member MASK to GRMASK. Add sub-structure + called MASK with members for imask, and the masks produced by + fr_mem, gr_mem, br_mem, and frgr_mem. + (unw_p_record): Add members ABI and CONTEXT. + (unw_x_record): Add member AB. + * config/tc-ia64.c (enum reg_symbol): Add REG_PSP and REG_PRIUNAT + as pseudo-register for use during unwind info generation. + (AR_PFS, AR_LC): New macros. + (enum pseudo_type): Add PSEUDO_FUNC_REG to permit declaring registers + whose names start with an at sign (as in "@priunat"). + (pseudo_func): Add "svr4", "hpux", "nt" constants and "priunat" + register. + (unwind_list, unwind_tail, current_unwind_entry, proc_start, + proc_end, unwind_info, personality_routine): Consolidate into + "unwind" structure to reduce offset-table use. Add member + NEXT_SLOT_NUMBER to track the slot number for the next instruction + to be emitted. + (output_R1_format, output_R3_format, output_P3_format, + output_P6_format): Initialize R with zero to reduce compiler warnings. + (output_P7_format): Ditto. Add `default' branch to switch + statement to reduce compiler warnings. + (output_P8_format, output_B1_format, output_B4_format): Ditto. + (output_P4_format): Rename 2nd & 3rd arg to IMASK and IMASK_SIZE. + (format_ab_reg): Rename from format_a_b_reg. Merge A and B args + into single argument. + (output_X1_format, output_X3_format): Initialize R with zero to reduce + compiler warnings. Merge A and B args into single argument. + (output_X2_format, output_X4_format): Remove unused variable R. Merge + A and B args into single argument. + (free_record): Removed (wasn't used). + (free_list_records): Also free imasks in prologue records. + (output_prologue, output_prologue_gr): Initialize mask bits to zero. + (output_spill_mask): Remove. + (output_unwabi): New function. + (output_epilogue, output_label_state, output_copy_state): Call + alloc_record. + (output_spill_psprel, output_spill_sprel, output_spill_psprel_p, + output_spill_sprel_p, output_spill_reg, output_spill_reg_p): Add AB + argument. + (process_one_record): New locals FR_MASK and GR_MASK. Ignore + gr_mem, fr_mem, br_mem, and frgr_mem records and instead emit them + as part of handling the prologue records. Emit region's imask if + we have one. Handle unwabi, epilogue, label_state, copy_state, + spill_psprel, spill_sprel, spill_reg, spill_psprel_p, + spill_sprel_p, and spill_reg_p records. + (set_imask, count_bits, slot_index): New function. + (fixup_unw_records): Fix region size computation. Handle + epilogue, spill_reg, spill_sprel, spill_psprel, spill_reg_p, + spill_sprel_p, and spill_psprel_p records. Merge mask bits of + frgr_mem, fr_mem, gr_mem, br_mem on a per-region basis and + set_imask accordingly. Update imask for gr_gr, and br_gr records. + (convert_expr_to_ab_reg, convert_expr_to_xy_reg): New function. + (dot_save): Use manifest constants for applicaton registers. + Handle REG_PR and REG_PRIUNAT. + (dot_restore): Don't just ignore it. + (dot_restorereg): New function.. + (generate_unwind_image): Ensure unwind info is a multiple of eight + bytes, not just four bytes. + (dot_handlerdata, dot_unwentry): Demand empty rest of line. + (dot_altrp): Don't just ignore it. + (dot_savemem): New function. Replaces dot_savesp() and + dot_savepsp(). Use manifest constants for applicaton registers. + Handle REG_PR and REG_PRIUNAT. + (dot_savef): Simplify. + (dot_saveb): Support generation of br_gr. + (dot_spillreg, dot_spillmem, dot_spillreg_p, dot_spillmem_p, + dot_label_state, dot_copy_state): New function. + (dot_unwabi): Don't just ignore it. + (md_pseudo_table): Add restorereg, spillreg, spillsp, spillpsp, + spillreg.p, spillsp.p, spillpsp, label_state, copy_state, + unwabi, vframesp, and vframepsp. Fix typo alprp->altrp. + (emit_one_bundle): Set slot number for prologue/body records + *before* emitting the first insn. + (emit_one_bundle): Set UNWIND.NEXT_SLOT_NUMBER. + (md_begin): Declare "psp" pseudo-register. + (md_operand): Handle PSEUDO_FUNC_REG. Fix printing of error message + so we don't get segfault. + (output_psp_sprel): Output sp/psp relative offsets as 4-byte word + counts as required per SW Conventions manual + (output_rp_psprel, output_rp_sprel, output_pfs_psprel,output_pfs_sprel, + output_preds_psprel, output_preds_sprel, output_spill_base, + output_unat_psprel, output_unat_sprel, output_lc_psprel, + output_lc_sprel, output_fpsr_psprel, output_fpsr_sprel, + output_priunat_psprel, output_priunat_sprel, output_bsp_psprel, + output_bsp_sprel, output_bspstore_psprel, output_bspstore_sprel, + output_rnat_psprel, output_rnat_sprel, output_spill_psprel, + output_spill_sprel, output_spill_psprel_p, output_spill_sprel_p):Ditto. + (dot_vframe): Implement. + (dot_vframesp, dot_vframepsp): New function. + +2000-05-23 Hans-Peter Nilsson + + * configure.in (i386-*-freebsd a.out entry): Quote properly. + * configure: Regenerate. + +2000-05-23 Alan Modra + + * config/tc-i386.c (md_assemble): Pass jump reloc in fr_var... + (md_estimate_size_before_relax): so we can use it here instead of + old kludges. Localise vars to blocks. Comment. + + * frags.c (frag_new): Update fr_var comments. + * frags.h (struct frag): Ditto. + +2000-05-22 Richard Henderson + + * config/tc-ia64.c (FUNC_PC_RELATIVE): New. + (pseudo_func): Add pcrel. + (operand_match): Handle IA64_OPND_TGT64. + (build_insn): Likewise. + (md_begin): Initialize pseudo_func[FUNC_PC_RELATIVE]. + (ia64_gen_real_reloc_type): Handle FUNC_PC_RELATIVE. + (fix_insn): Handle all three 64-bit relocation types. + +2000-05-22 Hans-Peter Nilsson + + * obj.h (struct format_ops): New members begin, app_file, + s_set_other, s_set_desc, s_get_type, s_set_type, + separate_stab_sections, init_stab_section. + + * config/obj-multi.h: Update GPL notice to v2. + (obj_begin): New. + (obj_app_file): New. + (S_SET_SIZE): Test s_set_size for NULL before calling. + (S_SET_ALIGN): Similar for s_set_align. + (S_SET_OTHER): New. + (S_SET_DESC): New. + (S_GET_TYPE): New. + (S_SET_TYPE): New. + (SEPARATE_STAB_SECTIONS): New. + (INIT_STAB_SECTION): New. + (EMIT_SECTION_SYMBOLS): New. + (AOUT_STABS) [OBJ_MAYBE_AOUT]: Define. + + * config/obj-elf.h: Update GPL notice to v2. + Mention that this file is included from obj-multi.h. + (obj_begin): Wrap definition in ifndef. + (elf_file_symbol): Constify declaration. + (obj_app_file): Ditto. + (SEPARATE_STAB_SECTIONS, INIT_STAB_SECTION, OBJ_PROCESS_STAB): + Wrap in ifndef SEPARATE_STAB_SECTIONS. + + * config/obj-elf.c (elf_s_set_other): New. + (elf_file_symbol): Constify argument. + (elf_separate_stab_sections): New. + (elf_init_stab_section): New. + (elf_format_ops): Add new members. Remove comma at end. + + * config/obj-ecoff.c (ecoff_separate_stab_sections): New. + (ecoff_format_ops): Add new fields. Remove comma at end. + Mention inconsistency for emit_section_symbols. + + * config/obj-coff.h (c_dot_file_symbol): Constify declaration. + + * config/obj-coff.c (c_dot_file_symbol): Constify argument. + (coff_separate_stab_sections): New. + (coff_format_ops): Add new members. + + * config/obj-aout.c (obj_aout_sec_sym_ok_for_reloc): New. + (obj_aout_s_set_other): New. + (obj_aout_s_set_desc): New. + (obj_aout_s_get_type): New. + (obj_aout_s_set_type): New. + (obj_aout_separate_stab_sections): New. + (aout_format_ops): New members added. Use obj_aout_process_stab, + not 0. Use obj_aout_sec_sym_ok_for_reloc, not 0. + (obj_aout_frob_symbol): Add ATTRIBUTE_UNUSED to args as + appropriate. + (obj_aout_line, obj_aout_weak, obj_aout_type): Ditto. + +2000-05-22 Alan Modra + + * config/tc-i386.c (tc_i386_fix_adjustable): Prevent adjustment + for OBJ_MAYBE_ELF too. Use S_IS_EXTERNAL instead of S_IS_EXTERN. + (md_estimate_size_before_relax): Ensure jumps to weak and + externally visible symbols are relocatable. + +2000-05-20 Hans-Peter Nilsson + + * stabs.c (aout_process_stab): Make global. + (s_desc): Add ATTRIBUTE_UNUSED to args as appropriate. + * read.h (aout_process_stab): Declare. + + * configure.in (EMULATIONS) [i386aout, i386coff, i386elf]: + Generalize to *aout, *coff *elf. + * configure: Regenerated. + + * doc/internals.texi (Object format backend): Say + SEPARATE_STAB_SECTIONS needs to be nonzero, not just defined. + + * Makefile.am (TARG_ENV_HFILES): Delete te-multi.h. + * Makefile.in: Regenerated. + +2000-05-19 Catherine Moore + + * cgen.h (GAS_CGEN_MAX_FIXUPS): Check if already defined. + +2000-05-18 Alan Modra + + * config/tc-hppa.c (md_apply_fix): Mask out immediate bits of + instruction to reflect change in re_assemble_*. + +2000-05-18 Jeffrey A Law (law@cygnus.com) + + * configure.in (hppa-*-hpux11*): If the cpu is hppa*64*, then + build PA64 ELF tools. + * configure: Rebuilt. + +2000-05-17 Alan Modra + + * Makefile.am: Regenerate dependencies. + * Makefile.in: Regenerate. + +2000-05-15 Nick Clifton + + * config/tc-arm.c (struct asm_psr): Add boolean field + distinguishing between CSPR and SPSR. Rename 'number' field + to 'field'. + (psrs): Rearrange contents to match new asm_psr structure. + (arm_psr_parse): Move next to psr_required_here. Make it + return an asm_psr structure. + (psr_required_here): Use asm_psr structure returned by + arm_psr_parse. + (do_msr): Reorganise to allow psr_required_here to be called + only once. + (md_undefined_name): Mark 'name' parameter as unused, since + the COFF target does not use it. + +2000-05-14 David O'Brien + + * config/te-386bsd.h: Clean up comments to adhere to the GNU coding + standards. + * config/te-aux.h: Likewise. + * config/te-dpx2.h: Likewise. + * config/te-go32.h: Likewise. + * config/te-hp300.h: Likewise. + * config/te-hppa.h: Likewise. + * config/te-i386aix.h: Likewise. + * config/te-ic960.h: Likewise. + * config/te-interix.h: Likewise. + * config/te-nbsd532.h: Likewise. + * config/te-pc532mach.h: Likewise. + * config/te-ppcnw.h: Likewise. + * config/te-psos.h: Likewise. + * config/te-sparcaout.h: Likewise. + * config/te-sun3.h: Likewise. + * config/te-sysv32.h: Likewise. + +2000-05-14 Alan Modra + + * config/tc-h8300.c (do_a_fix_imm): Don't rely on `short' being 16 + bits. Instead explicitly mask and sign extend. Do the 8 bit mask + and sign extend without an if statement. + (build_bytes): Likewise. + +2000-05-14 Kazu Hirata + + * config/tc-h8300.c (do_a_fix_imm): Output a reloc for no + X_add_symbol L_32 case. + +2000-05-14 David O'Brien + + * config/te-freebsd.h: New file. + +2000-05-13 Alan Modra + + * asintl.h (gettext, dgettext, dcgettext, textdomain, + bindtextdomain): Replace defines with those from intl/libgettext.h + to quieten gcc warnings. + + * NEWS: Mention x86 .arch and -q. + + * config/tc-i386.c (quiet_warnings): New. + (md_assemble): Use quiet_warnings. + (md_parse_option): Set quiet_warnings from -q. + (md_show_usage): Mention -q, delete -m. + (flag_do_long_jump): Delete. + (md_parse_option): Remove -m. + (md_show_usage): Remove -m. + (md_create_long_jump): Remove useless flag_do_long_jump code. + + * as.c (parse_args): In case OPTION_DEFSYM, use a valueT to hold + the symbol value, and use bfd_scan_vma if BFD_ASSEMBLER. + +2000-05-13 Alan Modra + Alexander Sokolov + + * doc/c-i386.texi (i386-Arch): New section. + (i386-Syntax): Mention .intel_syntax and .att_syntax. + + * config/tc-i386.c (cpu_arch_name, cpu_arch_flags): New. + (smallest_imm_type): Use smallest opcode for shift by one if cpu + architecture has been given and is not 486. + (set_cpu_arch): New. + (md_pseudo_table): Add .arch. + (md_assemble): Warn if cpu architecture has been given and an + unsupported instruction. + + * config/tc-i386.h (SMALLEST_DISP_TYPE): Delete. + Move operand_types bit defines after relevant template field. + (template): Add cpu_flags. + (Cpu*): Define. + (arch_entry): New. + +2000-05-12 Alexandre Oliva + + * config/tc-mn10300.h (md_end): Define. + (mn10300_finalize): Declare. + * config/tc-mn10300.c: Include dwarf2dbg.h. + (debug_line): Define. + (md_assemble): Generate dwarf2 line info. + (mn10300_finalize): New function. Finalize dwarf2 info. + +2000-05-11 Ulf Carlsson + + * config/tc-mips.c (md_estimate_size_before_relax): Use the + external version of the relocation for weak symbols. + +2000-05-08 David Mosberger + + * config/tc-ia64.c (output_P7_format, case mem_stack_f): Output fixed + frame size in units of 16 bytes, as required per SW Conventions manual. + (output_unw_records): Output info-block header as a dword to get + byte-order right. + +2000-05-08 Alan Modra + + * as.h: #include "file", not on files from ../include. + (as_abort, as_fatal): Add ATTRIBUTE_NORETURN. + * config/tc-m68k.c (m68k_ip): Fix signed/unsigned warnings. + (md_convert_frag): Add ATTRIBUTE_UNUSED. + (tc_coff_symbol_emit_hook): Ditto. + (OPTCOUNT): Cast to int to avoid compiler warning. + (md_begin): Fix signed/unsigned warnings. + +2000-05-08 Michael Sokolov + + * config/tc-m68k.c (md_convert_frag_1): Abort if we end up in the + ABRANCH LONG case for a conditional branch on a 68000. + (md_estimate_size_before_relax): Likewise. Also handle + flag_short_refs correctly for ABRANCH, BCC68000, and DBCC. + (m68k-ip: case ABSL): Relax absolute references to 16-bit + PC-relative on all CPUs. + (md_estimate_size_before_relax): Likewise. + +2000-05-04 Alan Modra + + * as.c (parse_args): Just mention current year in printed + copyright message. + +2000-05-03 J.T. Conklin + + * config/tc-ppc.c (pre_defined_registers): Add entries for vector + unit registers. + (md_parse_option): Recognize -m7400. + +2000-05-03 Ian Lance Taylor + + * config/atof-ieee.c (gen_to_words): When adding carry back in, + don't permit lp to become less than the words array. + +2000-05-03 Rodney Brown + + config/tc-mcore.c (md_apply_fix3): BFD_RELOC_MCORE_PCREL_IMM11BY2 + Fix little-endian case. + +2000-05-03 David O'Brien + + * as.c (parse_args): Update copyright. + +2000-05-03 Mark Elbrecht + + * config/tc-i386.h (SUB_SEGMENT_ALIGN): If TE_GO32, return 4 + for the .bss section too. + +2000-05-02 Alan Modra + + * configure.in: Set em=linux for hppa-*-linux. + * configure: Regenerate. + * doc/Makefile.in: Regenerate with correct automake. + + * frags.c (frag_grow): Sanity check chunk_size. + + * config/obj-elf.h: #include "bfd.h" not + * config/obj-som.h: Likewise. + * config/obj-ieee.h: Likewise. + + * config/tc-hppa.h: Test BFD_ARCH_SIZE, not BFD64. + + * config/tc-hppa.c (log2): Only compile when OBJ_SOM. + (md_pseudo_table): Fully initialise OBJ_ELF cases. + (fix_new_hppa): Add ATTRIBUTE_UNUSED to args as appropriate. + (pa_ip): low_sign_unext now returns via function value. Use + re_assemble_* instead of dis_assemble_* and + INSERT_FIELD_AND_CONTINUE combination. Don't call sign_unext + unnecessarily. + (md_convert_frag): Add ATTRIBUTE_UNUSED to args as appropriate. + (md_section_align, md_parse_option, md_show_usage, + md_undefined_symbol, pa_align, pa_block, pa_brtab, pa_try, + pa_callinfo, pa_code, pa_comm, pa_end, pa_enter, pa_entry, + pa_exit, pa_export, pa_import, pa_label, pa_leave, pa_level, + pa_origin, pa_param, pa_proc, pa_procend, pa_space, pa_spnum, + pa_version, pa_compiler, pa_copyright, pa_data, pa_fill, pa_lsym, + pa_text): Likewise. + (md_apply_fix): Change type of new_val to offsetT. Delete w1, w2, + w, resulti. Add insn, val. Move bfd_get_32 and bfd_put_32 + outside of switch. Correct mask and shifting errors in case 10 + and case -11. In case 21, compare against signed range to suit + hppa_field_adjust changes. In case 12, use re_assemble_12. In + case 17 and case 22, use offsetT variable to properly check range. + Use re_assemble_* here too. + (evaluate_absolute): Change type of value to offsetT. Call + hppa_field_adjust to do the work for us. + (pa_parse_cmpb_64_cmpltr): Delete save_s. + (pa_parse_cmpib_64_cmpltr): Ditto. + (pa_build_unwind_subspace): Delete unused var subseg. Change type + of i to unsigned int. + (pa_type_args): Conditionally declare symbol if OBJ_SOM. + (pa_end_of_source): Return type is void. + +2000-05-01 Catherine Moore + + * macro.c (macro_expand_body): Don't prepend macro number with zeroes. + +2000-05-01 Denis Chertykov + + * config/tc-avr.c: ATTRIBUTE_UNUSED added to the necessary places. + More comments added. + (md_begin): Removed "construct symbols for each register name". + Because register names conflicts with GCC generated function + names. + (avr_operand): Now constant numbers can be used as a register + identifiers (0 as r0, 31 as r31). + (md_assemble): use skip_space () before parsing instruction + operands. + +2000-05-01 Alan Modra + + * configure.in: Set bfd_gas=yes on i386-*-pe and i386-*-nt* to + ensure all pe targets use bfd. Remove unnecessary bfd_gas=yes on + arm-*-netbsd* and arm-*-wince as this is set for all arm*. + * configure: Regenerate. + +2000-04-29 Andreas Jaeger + + * as.h: Correctly check GCC version. + +2000-04-26 David O'Brien + + * doc/as.1: Fix unbalanced brackets. + + * config/tc-i386.c (comment_chars): Don't use '/' as comment start if + TE_FreeBSD. + (line_comment_chars): Set to '/' if TE_FreeBSD. + +2000-04-25 Jeffrey A Law (law@cygnus.com) + + * configure.in: Configury support for PA64 (currently disabled). + * configure: Rebuilt. + +2000-04-25 Machida Hiroyuki + + * config/tc-mips.c (s_change_sec): Use record_alignment, not + bfd_set_section_alignment. + +2000-04-25 Alan Modra + + * config/tc-i386.c (offset_in_range): Ensure shift counts are less + than 32. + +2000-04-24 Nick Clifton + + * doc/c-arm.texi (ARM Directives): Document behaviour of .align 0. + * doc/as.texinfo (Align): Include arm and strongarm in list of + targets that have the second form of the behaviour of the .align + directive. + +2000-04-24 Mark Klein + + * config/obj-som.c: Terminate obj_pseudo_table. + +2000-04-24 Clinton Popetz + + * as.c (parse_args): Allow md_parse_option to override -a listing + option. + * config/obj-coff.c (add_lineno): Change type of offset parameter + from "int" to "bfd_vma." + * config/tc-ppc.c (md_pseudo_table): Add "llong" and "machine." + (ppc_mach, ppc_subseg_align, ppc_target_format): New. + (ppc_change_csect): Align correctly for XCOFF64. + (ppc_machine): New function, which discards "ppc_machine" line. + (ppc_tc): Cons for 8 when code is 64 bit. + (md_apply_fix3): Don't check operand->insert. Handle 64 bit + relocations. + (md_parse_option): Handle -a64 and -a32. + (ppc_xcoff64): New. + * config/tc-ppc.h (TARGET_MACH): Define. + (TARGET_FORMAT): Move to function. + (SUB_SEGMENT_ALIGN): Use ppc_subseg_align. + +2000-04-23 Denis Chertykov + + * config/tc-avr.c: New AVR_ISA_ defined. + (md_assemble): Handle opcodes with optional operands (lpm,elpm). + (avr_operand): Handle 'a', 'v' and 'z' constraint letters needed + for `fmul', `movw' and `lpm R,Z' instructions. + (avr_operands): Warn if current opcode is a two-word instruction + and previous opcode was cpse/sbic/sbis/sbrc/sbrs. + (avr_opcodes): New commands added. + (REGISTER_P): Check 'a' and 'v' constraint letters. + (mcu_types): New MCU added. + +2000-04-22 Timothy Wall + + * config/tc-ia64.c (pseudo_func[]): Add new "nat" entry equivalent + to "natval". + (operand_match): Conditionally insert default bit values for IMMU9. + +2000-04-14 Matthew Green + + * configure.in: Add NetBSD/sparc ELF and NetBSD/sparc64 support. + * configure: Rebuilt. + +2000-04-21 Jeffrey A Law (law@cygnus.com) + Jason Eckhardt + + * config/tc-hppa.c (md_apply_fix): Handle new PA2.0 formats. + + * config/tc-hppa.c (CHECK_ALIGN): New macro. + Added handling of new operand types l,y,&,fe,fE,fx. + +2000-04-21 Richard Henderson + David Mosberger + Timothy Wall + Andrew MacLeod + Jim Wilson + + * Makefile.am (CPU_TYPES): Add ia64. + (TARGET_CPU_CFILES): Add config/tc-ia64.c. + (TARGET_CPU_HFILES): Add config/tc-ia64.h. + * Makefile.in: Rebuild. + * app.c (do_scrub_chars): Handle DOUBLESLASH_COMMENTS. + * configure: Rebuild. + * configure.in: Recognize ia64 as cpu type. Set bfd_gas. + (ia64-*-elf*, ia64-*-linux-gnu*): New targets. + * expr.c (expr): Handle md_optimize_expr. + * read.c (LEX_HASH): Add comment. + * config/tc-ia64.c, config/tc-ia64.h: New files. + +2000-04-21 Richard Henderson + + * config/tc-d30v.c (write_2_short): Disregard opcode1->ecc when + bundling a non-delayed branch type instruction. + +2000-04-20 Alexandre Oliva + + * config/tc-mn10300.c (HAVE_AM30): Define. + (md_assemble): Use it. + +2000-04-19 Alan Modra + + * config/obj-elf.c (obj_elf_change_section): Check for changed + section attributes. + + * Makefile.am: (CPU_MULTI_VALID): Remove. + (MULTI_CPU_TYPES): Define. + (MULTI_CPU_OBJ_VALID): Define. + (DEPTC): Use the above. + (DEPOBJ): Same here. + (DEP2): And here. + Regenerate dependencies. + * Makefile.in: Regenerate. + +2000-04-19 Michael Sokolov + + * Makefile.am (YACC, LEX): Get them from configure. + +2000-04-18 H.J. Lu (hjl@gnu.org) + + * config/tc-i386.c (offset_in_range): Use addressT instead of + bfd_vma for non-bfd assemblers. + +2000-04-17 Alan Modra + + * config/tc-i386.c (offset_in_range): Sign extend val so BFD64 + doesn't give spurious errors. + +2000-04-14 Michael Sokolov + + * as.h (SEEK_SET): Define if undefined. + +2000-04-13 Alan Modra + + * config/tc-arm.c (md_apply_fix3): Don't use UL suffix on + constants, and don't assume offsetT is 32 bits. + +2000-04-12 Andrew Cagney + + * config/tc-d10v.h: Include "write.h" to get definition of fixS. + (md_pcrel_from_section): Add prototype. + (d10v_fix_adjustable): Add prototype. + (d10v_force_relocation): Replace 'struct fix' with 'fixS'. + + * config/tc-d10v.c (md_apply_fix3): Add paren around &&. + +2000-04-12 Nick Clifton + + * config/tc-d10v.c (find_opcode): Correctly calculate position of + symbol in frag chain. + +2000-04-10 Alan Modra + + * config/tc-i386.c (fits_in_signed_byte): Change arg to offsetT. + (fits_in_unsigned_byte, fits_in_unsigned_word): Ditto. + (fits_in_signed_word, smallest_imm_type): Ditto. + (md_assemble): Use an offsetT var to hold offsetT values, not a + long. + (offset_in_range): New. + (md_assemble): Use it. + (md_convert_frag): Change type of target_address, opcode_address, + and displacement_from_opcode_start to offsetT. + (md_create_short_jump): Change type of offset to offsetT. + (md_create_long_jump): Ditto. + (md_apply_fix3): Use -4, not 0xfffffffc for BFD_RELOC_386_PLT32. + (md_chars_to_number): Remove. + (output_invalid): Remove duplicate prototype. + +2000-04-09 Nick Clifton + + * Makefile.am (CPU_TYPES): Add 'avr'. + (TARGET_CPU_CFILES): Add 'tc-avr.c'. + (TARGET_CPU_HFILES): Add 'tc-avr.h'. + + * Makefile.in: Regenerate. + + * doc/as.texinfo: Add M32R documentation. + +2000-04-07 Andrew Cagney + + * configure.in (WARN_CFLAGS): Set to -W -Wall by default. Add + --enable-build-warnings option. + * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions. + * Makefile.in, configure: Re-generate. + +2000-04-07 Nick Clifton + + * config/tc-arm.c (md_apply_fix3): Treat BFD_RELOC_ARM_PCREL_BLX + in the same way as BFD_RELOC_ARM_PCREL_BRANCH, and + BFD_RELOC_THUMB_PCREL_BLX lie BFD_RELOC_THUMB_PCREL_BRANCH. + (tc_gen_reloc): Accept BFD_RELOC_{ARM|THUMB}_PCREL_BLX. + (arm_force_relocation): Force relocations for + BFD_RELOC_{ARM|THUMB}_PCREL_BLX as well. + +2000-04-05 J"orn Rennecke + + * config/tc-sh.c (get_operands): There's no third operand if the + first operand is an immediate. + +2000-04-05 J"orn Rennecke + + * config/tc-sh.c (immediate): Delete. + (sh_operand_info): Add immediate member. + (parse_reg): Use A_PC for pc. + (parse_exp): Add second argument 'op'. All callers changed. + (parse_at): Expect pc to be coded as A_PC. + Use immediate field in *op. + (insert): Add fourth argument 'op'. All callers changed. + (build_relax): Add second argument 'op'. All callers changed. + (insert_loop_bounds): New function. + (build_Mytes): Remove DISP_4. + Split IMM_[48]{,BY[24]} into IMM[01]_[48]{,BY[24]}. Add REPEAT. + (assemble_ppi): Use immediate field in *operand. + (sh_force_relocation): Handle BFD_RELOC_SH_LOOP_{START,END}. + (md_apply_fix): Likewise. + (tc_gen_reloc): Likewise. Check for a pcrel BFD_RELOC_SH_LABEL. + +2000-04-05 Alexandre Oliva + + * config/tc-sparc.c (sparc_ip): Avoid string pasting. + +2000-04-04 Hans-Peter Nilsson + + * internals.texi (CPU backend): Document + TC_CHECK_ADJUSTED_BROKEN_DOT_WORD. + +2000-04-04 Alan Modra + + * po/gas.pot: Regenerate. + + * as.c (show_usage): Restore translated part of bug string. + * gasp.c (show_usage): Likewise. + + * Makefile.am (MKDEP): Use gcc -MM rather than ../mkdep. + (DEP): Quote when passing vars to sub-make. Use "mv -f" rather + than move-if-change. + (DEP1): Modify for "gcc -MM". + (DEPTC): Likewise. + (DEPOBJ): Likewise. + (DEP2): Likewise. + (CLEANFILES): Add DEPTCA, DEPOBJA, DEP2a, DEPA. + Update dependencies. + * Makefile.in: Regenerate. + +2000-04-03 Alexandre Oliva + + * config/tc-mn10300.c (md_pseudo_table): Use constant names. + (md_begin): Likewise. + (HAVE_AM33): New macro. + (md_assemble): Use it. Match r_regs and xr_regs only if + HAVE_AM33. + +2000-04-03 Alan Modra + + * as.h: #include "bin-bugs.h" + * as.c (show_usage): Use REPORT_BUGS_TO. + * gasp.c: #include "bin-bugs.h" + (show_usage): Use REPORT_BUGS_TO. + + * config/tc-sparc.c (md_show_usage): Add a trailing newline. + +2000-04-03 Hans-Peter Nilsson + + * write.c (write_object_file) [! WORKING_DOT_WORD]: If defined, + call TC_CHECK_ADJUSTED_BROKEN_DOT_WORD for each word after + adjustments. + +2000-04-03 Alan Modra + + * config/tc-i386.c (i386_immediate): Don't assume a constant + immediate is necessarily 16 bits when in 16 bit code mode. + (md_assemble): Instead set guess_suffix here after we have checked + registers. + +2000-04-02 Richard Henderson + + * config/tc-d30v.c (check_range): Allow signed or unsigned 32-bit + quantities. Correct right shift sign extension. + (build_insn): Make `number' unsigned long. Mask top 6 bits of + 32-bit value when shifting into place. + +2000-04-01 Ian Lance Taylor + + * app.c: Add ATTRIBUTE_UNUSED as needed. + * config/tc-ppc.c: Likewise. + (ppc_size): Make unsigned long. + (ppc_insert_operand): Add casts to avoid warnings. + +2000-03-31 Nick Clifton + + * config/tc-d10v.h (md_flush_pending_output): Define. + +2000-03-29 Nick Clifton + + * config/tc-sh.h (SEG_NAME): New macro: return the name of a + segment. Works for both BFD_ASSEMBLER and others. + (SUB_SEGMENT_ALIGN): Use SEG_NAME. + +2000-03-29 Nick Clifton + + * listing.c (LISTING_LHS_WIDTH): Default depends on + LISTING_WORD_SIZE. + (LISTING_LHS_WIDTH_SECOND): Default to LISTING_LHS_WIDTH. + +2000-03-27 Ian Lance Taylor + + * config/tc-sh.c (md_show_usage): Use backslash before newline in + string literal. + +2000-03-27 Alan Modra + + * config/tc-avr.h (TC_HANDLES_FX_DONE): Define. + + * config/tc-avr.c (mcu_types): Add missing initialiser. + (md_pcrel_from_section): Add prototype. + (avr_operand): Remove redundant test of unsigned < 0. + (avr_cons_fix_new): Ensure exp_mod_pm zero on function exit. + +2000-03-27 Denis Chertykov + + * config/tc-avr.c: New file for AVR support. + * config/tc-avr.h: Likewise. + * configure.in: Add AVR support. + * configure: Regenerate. + +2000-03-26 Timothy Wall + + * gasp.c (macro_op): Add new argument to check_macro call. + Macro structure definitions moved to macro.h + * sb.h: Add argument to prototype for input_scrub_include_sb. + * input-scrub.c (input_scrub_include_sb): Allow disabling of sb + nesting checks with an additional flag. + (struct input_save): Add flag to indicate whether current sb + should be checked for proper macro/conditional nesting. + (input_scrub_push/pop): Save/restore nest check flag. + (input_scrub_next_buffer): Ditto. Also call end of macro hook if + defined. + * macro.c (check_macro): Allow caller to retrieve parsed macro + information if a pointer is provided. This information may be + used by the new macro hooks. + * macro.h: Update prototype for check_macro. Macro struct + definitions moved here from macro.c/gasp.c. + * read.c (read_a_source_file): Add parameter to check_macro call, + and pass macro info to the macro hook, if defined. + (input_scrub_insert_line): New. Allow insertion of a line of + characters into the input stream. + (input_scrub_insert_file): New. Allow insertion of an arbitrary + file into the input stream. + (s_include): Use input_scrub_insert_file. + * internals.texi: Document new macro hooks. + * as.h: New prototypes added. + +2000-03-26 Alan Modra + + * config/tc-i386.c: Don't start any as_bad or as_warn message with + an initial capital letter. + (i386_index_check): Reindent. + +2000-03-19 Nick Clifton + + * config/tc-arm.c (md_apply_fix3): Fix bug detecting overflow of pc + relative branches. + +2000-03-17 Thomas de Lellis + + * config/tc-arm.c (do_t_adr): Flag "adr Rd,label" + instruction operand bad if Rd > 7 when generating + thumb instructions. Prevents for example, + "adr r12,label" from silently failing and generating + the wrong instruction. + +2000-03-17 Nick Clifton + + * config/tc-arm.c (md_apply_fix3): Handle same-section relocations + that have a destingation >= 0x400000. + Fix compile time warning messages. + +2000-03-16 J"orn Rennecke + + * config/tc-sh.c (md_begin): When encountering insn that are + not supported by the current arch, only change the name if + its contents are the same as prev_name. + (get_specific): If the the architecture doesn't match, fail. + +2000-03-16 J"orn Rennecke + + * config/tc-sh.c (IDENT_CHAR): Define. + (parse_reg): Use it instead of isalnum. Put r[0..7]_bank operand + matching back where it came from. + +2000-03-16 J"orn Rennecke + + * config/tc-sh.c (md_show_usage): Add description of -dsp. + +2000-03-15 Jonathan Larmour + + * config/tc-sh.c (parse_reg): Match r[0..7]_bank operands before + normal operands. + +2000-03-15 Kazu Hirata + + * config/tc-h8300.c: Add ATTRIBUTE_UNUSED as appropriate. + +2000-03-13 Hans-Peter Nilsson + + * expr.c (operand) [case 'f']: When testing if '0f' can start a + floating-point-number, make sure 'f' is in FLT_CHARS. + +2000-03-11 Hans-Peter Nilsson + + * read.c (TC_IMPLICIT_LCOMM_ALIGNMENT): New default-definition. + (s_lcomm_internal): Use it. + * doc/internals.texi (CPU backend): Document it. + * config/obj-evax.h (TC_IMPLICIT_LCOMM_ALIGNMENT): Set to 2**3 + bytes. + +2000-03-10 Geoffrey Keating + + * config/tc-mips.c (mips_ip): Don't put stuff in .rodata + when embedded-pic. + + * config/tc-mips.c (SWITCH_TABLE): The ELF embedded-pic + implementation doesn't have special handling for switch + statements. + (macro_build): Allow for code in sections other than .text. + (macro): Likewise. + (mips_ip): Likewise. + (md_apply_fix): Do pc-relative relocation madness for MIPS ELF. + Don't perform relocs if we will be outputting them. + (tc_gen_reloc): For ELF, just use fx_addnumber for pc-relative + relocations. Allow BFD_RELOC_16_PCREL_S2 relocs when + embedded-pic. + +2000-03-09 Catherine Moore + + * config/tc-m32r.c (m32r_fix_adjustable): Look up the + relocation type based on the entry in the fixup structure. + Put S_IS_EXTERN processing back in. + +2000-03-08 H.J. Lu (hjl@gnu.org) + + * Makefile.am (install-exec-tooldir): Depend on + install-exec-bindir for parallel make. + * Makefile.in: Regenerated. + +2000-03-06 Nick Clifton + + * config/tc-m32r.c (struct md_longopts): Add -m32r command line + switch. + (md_parse_option): Parse -m32r command line switch - disable m32rx + compatability. + (md_show_usage): Document new option. + + * doc/Makefile.am (CPU_DOCS): Add c-m32r.texi. + * doc/Makefile.in: Regenerate. + * doc/c-m32r.texi (M32R-Opts): Document new command line switch. + +2000-03-02 Michael Meissner + + * config/tc-d30v.c (check_range): Remove code that incorrectly + sign extended values where bits < 32. + +2000-03-02 H.J. Lu (hjl@gnu.org) + + * configure.in: Support --enable-targets=all on ia32. + * configure: Regenerated. + +2000-03-01 Nick Clifton + + * gasp.c (do_align): Remove bogus check of alignment value. + +2000-02-27 Thomas de Lellis + + * config/obj-elf.c (elf_frob_symbol): Remove code which when + TC_PPC was defined forced the type of a symbol with no other type + to be BSF_OBJECT. + +2000-02-27 Hans-Peter Nilsson + + * doc/internals.texi (CPU backend): Mention that + line_separator_chars do not break up comments. Fix typos for + LEX_AT and LEX_NAME descriptions. Document operands for + TC_EQUAL_IN_INSN, md_operand and md_section_align. Correct + description of md_create_short_jump usage. Document argument for + md_undefined_symbol. + +2000-02-27 Jakub Jelinek + + * config/tc-sparc.c (OPTION_UNDECLARED_REGS): New option. + (md_parse_option): Handle it. + (md_show_usage): Document it. + +2000-02-27 Ian Lance Taylor + + * config/tc-alpha.c (md_assemble): Accept `1' and `9' in an + opcode, for the instruction `pal19'. From Andrea Arcangeli + . + +2000-02-26 Alan Modra + + * config/tc-i386.c (i386_immediate): Move constant operand sizing + from here.. + (md_assemble): To here, before template operands are matched. + Also ensure a constant immediate is sign extended when we know the + size is at most 16 bits. This is to catch cases like "add + $0xffc0,%ax" where we don't know the size, and thus that the + immediate can be represented as Imm8S until after parsing the + register operand. + (i386_displacement): Similarly sign extend 16 bit constant + displacements. + (md_assemble): Relax 16-bit jump constant range check to suit sign + extended displacements. + +2000-02-26 Andreas Jaeger + + * doc/c-mips.texi (MIPS Opts): Fix typo in last patch. + +2000-02-25 Alan Modra + + * config/tc-i386.c (md_assemble): Don't swap intersegment jmp and + call operands when intel_syntax. + (intel_float_operand): Return 2 for "fi...". + (i386_operand_modifier): Change "DWORD PTR" test to suit above. + Return SHORT_MNEM_SUFFIX for "WORD PTR" when "fi...". Revert + earlier "SHORT" change. + (md_assemble): When determining suffix from Regs, exclude + InOutPortReg. + +2000-02-24 Nick Clifton + + * configure: Add arm-wince, mips-pe and sh-pe targets. + * configure: Regenerate. + + * config/obj-coff.h (COFF_WITH_PE): Define for mips-pe and + sh-pe targets. + (TARGET_FORMAT): Set to "pe-shl" for the sh-pe target and to + "pe-mips" for the mips-pe target. + + * config/tc-arm.c (insns): Change displacement encoded in BL + and B instructions if the target port is arm-wince. + (do_ldst): Do not bias the relocation offset if the target + port is arm-wince. + (md_pcrel_from): Add in missing relocation offset bias if the + target os arm-wince. + + * config/tc-mips.c (mips_target_format): Support COFF flavour. + (md_begin): Disable -G support for mips-pe target. + (md_apply_fix): Treat BFD_RELOC_RVA reloc as BFD_RELOC_32. + * config/tc-mips.h (USE_GLOBAL_POINTER_OPT): Add support for + COFF flavour. + + * config/tc-sh.c (md_begin): sh-pe target is little endian. + * config/tc-sh.h (SUB_SEGMENT_ALIGN): If using a BFD + assembler, just set the alignment to 4. + + * config/te-wince-pe.h: New file for WinCE targets. Define + TE_WINCE. + +2000-02-25 Alan Modra + + * config/tc-i386.c (md_assemble): Swap segments too for intel mode + string instructions. + (i386_operand_modifier): Set i.suffix = WORD_MNEM_SUFFIX for SHORT. + (i386_intel_memory_operand): After finding a segment override, + check again for no `[' before looking for a displacement. Bomb if + more than one displacement rather than silently discarding the + second and subsequent ones. Free strings malloc'd by + build_displacement_string. + +2000-02-24 Catherine Moore + + * config/obj-som.c (obj_pseudo_table): Add "weak". + (obj_som_weak): New routine. + +2000-02-24 Alan Modra + + * config/tc-i386.c (union i386_op): New. + (struct _i386_insn): Delete disps[], imms[], regs[]. Add op[]. + Throughout file replace occurences of disps[n], imms[n], regs[n] + with equivalent op[n].disps, op[n].imms, op[n].regs. Simplify + intel mode operand swapping. Add assert in regKludge and + fake_zero_displacement code. Test i.types[n] when outputting + displacements and immediates. Combine output of Disp16 with + Disp32. + (md_assemble): Don't try to fix broken UNIXWARE_COMPAT opcodes + when in intel mode by (not) reversing fsub and fdiv operands + before the template search. This fails for single operand + shorthand forms of the instruction, and if UNIXWARE_COMPAT is + undefined. Instead fix the base_opcode after we've found the + template. Move base_opcode xor with found_reverse_match from + opcode output code to before this fix so we test for the correct + opcodes. + (md_assemble): Don't use strcmp when deciding to ignore the suffix + check in intel mode. Instead compare opcodes. + + * config/tc-i386.h (TC_RELOC): Delete. + * config/tc-i386.c (TC_RELOC): Delete. Replace usage of TC_RELOC + with equivalent call to reloc. + + * as.h (flag_m68k_mri): Move declaration after target include, and + only declare when TC_M68K defined. Define as zero otherwise. + (LABELS_WITHOUT_COLONS, NO_PSEUDO_DOT): If undefined, define as 0. + * app.c (scrub_m68k_mri): Declare only when TC_M68K defined. + Define as zero otherwise. + (do_scrub_begin): Use m68k_mri parameter only when TC_M68K defined. + (struct app_save): Declare scrub_m68k_mri only when TC_M68K. + (app_push, app_pop): Save scrub_m68k_mri only when TC_M68K. + (do_scrub_chars): Use LABELS_WITHOUT_COLONS directly rather than + testing whether defined. + * cond.c (ignore_input): Use NO_PSEUDO_DOT directly. + * expr.c (operand): #ifdef unused case labels when TC_M68K undefined. + * read.c: Use LABELS_WITHOUT_COLONS and NO_PSEUDO_DOT directly + rather than testing whether defined. + (s_mri): Set flag_m68k_mri only when TC_M68K defined. + (parse_mri_cons): Declare and use only when TC_M68K. + * config/tc-hppa.h (LABELS_WITHOUT_COLONS): Define as 1. + * config/tc-m68k.h (NO_PSEUDO_DOT): Define as 1. + * config/tc-m88k.h (NO_PSEUDO_DOT): Define as 1. + + * NEWS: Mention IBM 370 support. + +2000-02-23 Richard Henderson + + * config/tc-i386.c (md_assemble): When swapping operands for + intel_syntax, assume everything that's not Imm or Disp is a + register. + +2000-02-23 Linas Vepstas + + * config/tc-i370.c, config/tc-i370.h: New files. + * Makefile.am: Add support for Linux/IBM 370. + * configure.in: Likewise. + * app.c (do_scrub_begin): Don't lex single quote when TC_I370. + * config/obj-elf.c: Include elf/i370.h + (obj_elf_section): Don't do anything special for flag_mri if TC_I370. + + * Makefile.in: Regenerate. + * configure: Regenerate. + + * doc/c-i370.texi: New file. + * doc/all.texi: Include it. + * doc/as.texinfo: And here. + * doc/Makefile.am(CPU_DOCS): Add c-i370.texi. + * doc/Makefile.in: Regenerate. + +2000-02-19 Michael Meissner + + * config/tc-d30v.c (parallel_ok): Use FLAG_NOT_WITH_ADDSUBppp to + determine if an instruction can be used in parallel with an ADDppp + or SUBppp instruction. + +2000-02-22 Andrew Haley + + * doc/c-mips.texi (MIPS Opts): Document -mgp32 and -mgp64. + +2000-02-22 Andrew Haley + + * config/tc-mips.c (mips_gp32): New variable. + (macro_build) Use mips_gp32. + (mips_ip): Ditto. + (md_longopts): Add "-mgp32" and "-mgp64". + (md_parse_option): Add OPTION_GP32 and OPTION_GP64. + + (OPTION_M7900): Change offset + (OPTION_NO_M7900): Ditto. + +2000-02-22 Alexandre Oliva + + * config/obj-coff.c (add_lineno): Accept non-positive lineno with + warning, and bump it to 1. + +2000-02-22 Ian Lance Taylor + + From Brad Lucier : + * dwarf2dbg.c (print_stats): Add cast to force printf argument to + match format. + +2000-02-21 Catherine Moore + + * config/tc-mips.c (MF_HILO_INSN): Define. + (mips_7000_hilo_fix): Declare. + (append_insn): Conditionally insert nops after an mfhi/mflo insn. + (md_parse_option): Check for 7000_HILO_FIX options. + (OPTION_M7000_HILO_FIX): Define. + (OPTION_NO_M7000_HILO_FIX): Define. + * doc/c-mips.texi (-mfix7000): Describe. + +2000-02-21 Alan Modra + + * listing.c (print_lines): Remove unused variable `end'. + + * config/tc-i386.c (md_assemble): Use `reloc()' to select reloc + type for JumpInterSegment output. Use enum bfd_reloc_code_real for + reloc_type when BFD_ASSEMBLER. + (md_estimate_size_before_relax): Use enum bfd_reloc_code_real for + reloc_type when BFD_ASSEMBLER. Move common code out of switch + statement and quell signed vs. unsigned comparison warning. + +2000-02-18 Nick Clifton + + * config/tc-d10v.c (find_opcode): Add a symbol's value to + the computed frag offset, rather than overwriting it. + +2000-02-17 J"orn Rennecke + + * config/tc-sh.c ("elf/sh.h"): Include. + (sh_dsp, valid_arch, reg_x, reg_y, reg_efg): New static variables. + (md.begin): Initialize target_arch. + Only include opcodes in has table that match selected architecture. + (parse_reg): Recognize register names for sh-dsp. + (parse_at): Recognize post-modify addressing. + (get_operands): The leading space is now optional. + (get_specific): Remove FDREG_N support. Add support for sh-dsp + arguments. Update valid_arch. + (build_Mytes): Add support for SDT_REG_N. + (find_cooked_opcode): New function, broken out of md_assemble. + (assemble_ppi, sh_elf_final_processing): New functions. + (md_assemble): Use find_cooked_opcode and assemble_ppi. + (md_longopts, md_parse_option): New option: -dsp. + * config/tc-sh.h (elf_tc_final_processing): Define. + (sh_elf_final_processing): Declare. + +2000-02-11 Jeffrey A Law (law@cygnus.com) + + * config/tc-hppa.c (pa_build_unwind_subspace): Use subseg_new to create + the unwinder subspace. Save the current seg/subseg before creating + the new seg/subseg. + +2000-02-10 Nick Clifton + + * config/tc-mcore.c (INST_BYTE0): Redefine to handle big and + little endian targets. + (INST_BYTE1): Redefine to handle big and little endian + targets. + (cpu_type): New type: Select between M340 and M210. + (parse_psrmod): New function: Parse the PSRCLR and PSRSET + instructions of the M340. + (md_assemble): Add support for the MULSH and OPSR classes of + instructions. + (md_atof): Add support for little endian targets. + (md_parse_option): Add support for -EL, -EB and -mcpu command + line switches. + (md_convert_frag): Add support for little endian targets. + (md_apply_fix3): Add support for little endian targets. + (md_number_to_chars): Add support for little endian targets. + +2000-02-10 Timothy Wall + + * read.c (read_a_source_file): If TC_START_LABEL_WITHOUT_COLON is + defined, use it to verify the symbol just read should be a label. + +2000-02-10 Timothy Wall + + * app.c (do_scrub_chars): Handle "||" for parallel instructions + when DOUBLEBAR_PARALLEL is defined. Avoid stripping whitespace + around colons when KEEP_WHITE_AROUND_COLON is defined. + * doc/internals.texi (CPU backend): Document DOUBLEBAR_PARALLEL + and KEEP_WHITE_AROUND_COLON. + +2000-02-08 Timothy Wall + + * read.c (s_rept): Call do_repeat, which abstracts the repeat + logic. + (do_repeat): New. Abstract repeat logic so that a "break" can be + implemented. + (end_repeat): New. Provide support for a "break" out of the + repeat loop. + * read.h: Add prototypes for new functions. + +2000-02-08 Timothy Wall + + * doc/internals.texi: Document NUMBERS_WITH_SUFFIX macro. + * as.h: Provide a default NUMBERS_WITH_SUFFIX definition (zero). + * expr.c: Handle numbers with suffixes if NUMBERS_WITH_SUFFIX is + non-zero. + +2000-02-08 Timothy Wall + + * read.c: Added elseif to directives table. + * read.h: Added prototype for s_elseif. + * doc/as.texinfo: Added description for elseif. + * cond.c (s_elseif): New function + +2000-02-04 Timothy Wall + + * listing.c (print_lines): Remove conditionals causing bug in + listings. + +2000-02-03 Timothy Wall + + * as.h: Define OCTETS_PER_BYTE and OCTETS_PER_BYTE_POWER + default values. + * frags.c (frag_new): Calculate fr_fix in octets + (frag_now_fix) Return offset as target address offset (bytes). + (frag_now_fix_octets) New - Return offset in octets (8-bit + quantities). + * frags.h: Added prototype for frag_now_fix_octets(). + Distinguish between octets and bytes in field descriptions. + * listing.c (calc_hex): Account for octets vs bytes when + printing addresses/offsets. + (print_lines) Ditto. Also, if LISTING_WORD_SIZE is not 1, and + target is little-endian, print the octets in a word in big-endian + order so that the display looks like a proper hexadecimal number, + instead of having the octets reversed. + * read.c (do_align): When recording alignment, alignment power + should be in terms of target bytes (minimum addressible unit) + instead of octets. + (do_org) Convert ORG target address (byte) argument into an + octet offset when generating a variable fragment. + * symbols.c (resolve_symbol_value): Symbol final value + converted to a target address offset (bytes) from its octet offset. + * config/obj-coff.c (coff_frob_symbol): Symbol target address + offset (bytes) is adjusted by the frag offset (octets) converted + to bytes. + (coff_frob_section) Section alignment power is in terms of bytes; + convert it to an octet alignment power when calculating size (and + size mask) in octets. Don't modify the section size in order to + "align" it for TI COFF, since that format has a different method + for storing alignment information. + +2000-02-01 Timothy Wall + + * stabs.c (generate_asm_file): Escape backslashes in stabs file + entries, matching the way GCC generates them. If not escaped, the + filename is encoded incorrectly. + +2000-01-31 Nick Clifton + + * config/tc-arm.c (reg_table): Add support for ATPCS register + naming conventions. + +2000-01-31 Geoff Keating + + * config/obj-coff.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Don't define if + already defined. + * config/tc-ppc.h [OBJ_XCOFF] (OBJ_COPY_SYMBOL_ATTRIBUTES): + New macro. + * config/tc-ppc.c (ppc_fix_adjustable): Don't look at the frag + of a symbol when we really care about its value. + +2000-01-19 Chandra Chavva + + * config/tc-mcore.c (md_assemble): Give warning message if + operands passes to instruction are more than the spec. + +2000-01-27 Thomas de Lellis + + * config/tc-arm.c (armadjust_symtab): If the assembler is in + Thumb mode but the label seen was not declared as '.thumb_func' + then set the ST_INFO type to STT_ARM_16BIT mode. This allows + correct disassembly of Thumb code bounded by non function labels. + +2000-01-27 Alan Modra + + * Makefile.am (MULTI_CFILES): Add config/e-i386aout.c + Add dependencies for e-i386aout.o. Fix 2 comment lines. + + * Makefile.in: Same here. + Update copyright. + + * configure.in: Set bfd_gas for i386-aout when primary target + is bfd. Handle i386aout emulation. Don't use te_file=multi, as + we may need the primary te_file. Remove incorrect comment. + + * configure: Regenerate. + + * config/e-i386aout.c: New file. + + * as.c (USE_EMULATIONS): Move to before print_version_id. + (struct emulation): Add i386aout. + (show_usage): Split text strings. Reformat -a text. Add --em + help. + Update copyright. + + * obj.h (struct format_ops): Add s_get_other and s_get_desc. + (aout_format_ops): New. + Update copyright. + + * read.c (s_lcomm_internal): Rewrite OBJ_AOUT,OBJ_BOUT + preprocessor conditional and add aout USE_EMULATIONS tests. + (read_a_source_file): Don't pass error strings to printf as + format arg. + Update copyright. + + * gasp.c (exp_get_abs): Don't pass error strings to printf as + format arg. + (do_data): Same here. + (process_file): And here. + Update copyright. + + * symbols.c (colon): Rewrite "already defined" fatal message + code for aout with USE_EMULATIONS. + Update copyright. + + * config/obj-aout.c (OBJ_HEADER): Define. + (obj_pseudo_table): Rename to aout_pseudo_table. Init all + fields of sentinel. + (obj_aout_frob_symbol): Expand S_GET_DESC, S_GET_TYPE, + S_GET_OTHER, S_SET_TYPE macros since we don't need obj-multi + forms here. + (obj_aout_type): Expand S_SET_OTHER here too. + (obj_read_begin_hook): Remove. + (aout_pop_insert): New. + (obj_aout_s_get_other): New. + (obj_aout_s_get_desc): New. + (aout_format_ops): New. + Update copyright. + + * config/obj-aout.h (obj_pop_insert): Define so non-multi usage + gets aout_pseudo_table. + (aout_pseudo_table): Declare. + (obj_read_begin_hook): Define. + Update copyright. + + * config/obj-coff.c (obj_pseudo_table): Rename to + coff_pseudo_table. + (coff_pop_insert): Use coff_pseudo_table. + (coff_sec_sym_ok_for_reloc): Remove. + (coff_format_ops): Add 0 entries for s_get_size, s_set_size, + and comment all zero entries and remove #if 0 code. + Update copyright. + + * config/obj-coff.h (obj_pop_insert): Define. + (coff_pseudo_table): Declare. + Update copyright. + + * config/obj-ecoff.c (ecoff_format_ops): Add 0 entries for + s_get_size, s_set_size. Comment all zero entries. + Update copyright. + + * config/obj-elf.c (elf_s_get_other): New function. + (obj_read_begin_hook): Rename to elf_obj_read_begin_hook. + (obj_symbol_new_hook): Rename to elf_obj_symbol_new_hook. + (elf_format_ops): Add elf_s_get_other, 0 s_get_size entry, and + comment. + (obj_elf_parse_section_letters): Don't pass error strings to + printf as format arg. + Update copyright. + + * config/obj-elf.h (ECOFF_DEBUGGING): Define when + OBJ_MAYBE_ECOFF. + (elf_s_get_other): Declare. + (S_GET_OTHER) Define as elf_s_get_other if not already + defined. + (S_SET_OTHER): Only define when not already defined. + (elf_obj_read_begin_hook): Declare. + (obj_read_begin_hook): Define. + (elf_obj_symbol_new_hook): Declare. + (obj_symbol_new_hook): Define. + Update copyright. + + * config/obj-multi.h: Add copyright header and protect against + multiple inclusion. Add * to all function pointers. + (OBJ_HEADER): If defined, include it rather than other defines + in this file. + (obj_frob_file_after_relocs): Test for NULL. + (obj_symbol_new_hook): Here too. + (obj_sec_sym_ok_for_reloc): And here. + (S_GET_OTHER): Define. + (S_GET_DESC): Define. + (ECOFF_DEBUGGING): Remove as it's done in obj-elf.h + (OBJ_MAYBE_ELF): Update comment. + + * config/tc-i386.c (i386_immediate): Add OBJ_MAYBE_AOUT to + OBJ_AOUT preprocessor conditional and handle emulation by + testing OUTPUT_FLAVOR. + (i386_displacement): Here too. + (md_section_align): Similarly here. + (i386_target_format): Conditionally compile when more than one + of OBJ_MAYBE_{ELF,COFF,AOUT} defined. Add aout case. + (i386_immediate): Fix error message for aout BFD_ASSMBLER. + (i386_displacement): Here too. + Update copyright. + + * config/tc-i386.h (AOUT_TARGET_FORMAT): Define for each TE_*. + Define TARGET_FORMAT for aout only when not multi. + Update copyright. + + * config/te-multi.h: Delete file as it's identical to te-generic.h + +2000-01-15 Alan Modra + + * config/tc-i386.h (DWORD_MNEM_SUFFIX): Delete. + * config/tc-i386.c (DWORD_MNEM_SUFFIX): Rename all occurrences to + LONG_MNEM_SUFFIX. + + * config/tc-i386.h (INTEL_DWORD_MNEM_SUFFIX): Rename to + DWORD_MNEM_SUFFIX. + * config/tc-i386.c (INTEL_DWORD_MNEM_SUFFIX): Here too. Fix some + comments. + +2000-01-13 Clinton Popetz + + * config/tc-mips.c (mips_do_align): New function. + * config/tc-mips.h (md_do_align): Define. + +2000-01-10 Philip Blundell + + * doc/c-arm.texi (ARM Options): Fix typo. + (ARM-Chars): Correct description of `#'. Mention that `;' is a + line separator for Linux. + * doc/as.texinfo (Comments): Mention the ARM. + +2000-01-10 Philip Blundell + + * configure.in (arm*-*-conix*): New target. + (arm*-*-linux-gnu*): Match instead of arm-*-linux* and + armv*-*-linux-gnu. + * configure: Regenerate. + +2000-01-03 Martin v. Loewis + + * config/obj-elf.c (elf_pseudo_table): Define visibility pseudos. + (obj_elf_visibility): New function. + + * doc/as.texinfo (Visibility): New node: document visibility + pseudo ops. + +For older changes see ChangeLog-9899 -- 2.30.2