diff options
author | Alan Modra <amodra@gmail.com> | 2004-01-02 11:16:21 +0000 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2004-01-02 11:16:21 +0000 |
commit | c9e214e571d08fa968a53210682a14060261b91c (patch) | |
tree | fcc02945c69d3f5a03272d39552c237efd648ab6 /gas/ChangeLog-0203 | |
parent | 031d7588c2eec4f2e738433eb316dfba077d7c86 (diff) | |
download | gdb-c9e214e571d08fa968a53210682a14060261b91c.zip gdb-c9e214e571d08fa968a53210682a14060261b91c.tar.gz gdb-c9e214e571d08fa968a53210682a14060261b91c.tar.bz2 |
Split ChangeLog files.
Diffstat (limited to 'gas/ChangeLog-0203')
-rw-r--r-- | gas/ChangeLog-0203 | 7519 |
1 files changed, 7519 insertions, 0 deletions
diff --git a/gas/ChangeLog-0203 b/gas/ChangeLog-0203 new file mode 100644 index 0000000..e22a5d5 --- /dev/null +++ b/gas/ChangeLog-0203 @@ -0,0 +1,7519 @@ +2003-12-29 Paul Brook <paul@codesourcery.com> + + * gas/config/tc-arm.c (arm_cpus): Add 926ejs and 1026ejs. + * gas/doc/c-arm.texi: Document them. + +2003-23-12 Paul Brook <paul@codesourcery.com> + + * config/tc-arm.c (arm_archs): Add armv6. + * doc/c-arm.texi: Document -march=armv6. + +2003-12-20 Nick Clifton <nickc@redhat.com> + + * config/tc-ppc.c (md_apply_fix3): Handle the case where a + .byte directive generates a pc-relative relocation. + +2003-12-19 Nick Clifton <nickc@redhat.com> + Andreas Schwab <schwab@suse.de> + + * messages.c (as_perror): Save errno around library calls. + * input-file.c [BFD_ASSEMBLER]: Set the BFD error to + bfd_error_system_call before each call to as_perror. + (input_file_open): Simplify the error reporting code to just use + as_perror(). + * output-file.c (output_file_create) [BFD_ASSEMBLER]: Set the BFD + error to bfd_error_system_call before calling as_perror. + (output_file_close) [BFD_ASSEMBLER]: Likewise. + (output_file_append) [BFD_ASSEMBLER]: Likewise. + * listing.c (listing_print) [BFD_ASSEMBLER]: Likewise. + +2003-12-19 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com> + + Add m32r-linux and PIC support. Add new ABI that uses RELA. + * configure.in: Add m32r-linux targets. + * configure: Regenerate. + * config/tc-m32r.c (md_parse_option): Add -KPIC option. + (tc_gen_reloc): Added. + (debug_sym, md_estimate_size_before_relax, md_convert_frag, + md_pcrel_from_section, m32r_fix_adjustable): Changed for PIC. + * config/tc-m32r.h (tc_gen_reloc, EXTERN_FORCE_RELOC): Undefined. + (TC_HANDLES_FX_DONE, TC_FIX_ADJUSTABLE, TC_RELOC_RTSYM_LOC_FIXUP): + Defined. + * doc/c-m32r.texi: Document -KPIC option. + * NEWS: Mention the support m32r Linux and PIC. + +2003-12-18 Nick Clifton <nickc@redhat.com> + + * input-file.c (input_file_open): Remove call to stat(). + Add a check for getc() failing, and catch the case where the + failure is due to an attempt to read a directory. + +2003-12-18 Richard Sandiford <rsandifo@redhat.com> + + * config/tc-mips.c (mips_need_elf_addend_fixup): Delete. + (md_apply_fix3): Remove bfd_install_relocation workarounds. + (tc_gen_reloc): Likewise. Factor handling of pc-relative relocations + and treat fx_addnumber as relative to the relocation address. + +2003-12-18 Richard Sandiford <rsandifo@redhat.com> + + * config/tc-mips.c (s_change_section): When parsing the MIPS-specific + .section syntax, map SHT_MIPS_DWARF to SHT_PROGBITS. + +2003-12-17 Mark Mitchell <mark@codesourcery.com> + + * config/tc-arm.c (arm_archs): Change "armv6" to "armv6j". + * doc/c-arm.texi (ARM Options): Likewise. + +2003-12-17 Nick Clifton <nickc@redhat.com> + + * config/tc-m32r.c (error_explicit_parallel_conflicts): Rename + to 'ignore_parallel_conflicts'. + (md_longopts): Change option names as well. + (md_parse_option): Separate the warn_explicit and ignore + parallel conflicts options. + (md_show_usage): Update descriptions of these options. + (first_writes_to_seconds_operands): Do not run this check if + ignoring parallel conflicts. + (assemble_two_insns): Remove code that checked + error_explicit_parallel_conflicts. + * doc/c-m32r.texi: Update descriptions of the options. + +2003-12-16 Dmitry Semyonov <Dmitry.Semyonov@oktet.ru> + + * tc-arm.c (do_adr): Do not adjust pc by -8 if TE_WINCE is + defined. + (do_adrl): Likewise. + +2003-12-15 Christian Groessler <chris@groessler.org> + + * config/tc-z8k.c (struct z8k_exp): Remove, not used anywhere. + (ctrl_table): Add "flags" keyword and some comments. + (flag_table): Convert to uppercase. + (get_flags_operand): Be case insensitive. + (get_interrupt_operand): Be case insensitive. Support notation + where the inperrupt arguments are separated by commas. + (get_operands): Check whether get_flags_operand consumed all + arguments. Return failure if get_ctrl_operand didn't recognize a + valid control register. + (get_specific): Add case CLASS_CTRL: Test for valid control + register for ldctlb opcode. + (build_bytes): Check for valid control registers. + +2003-12-15 Nick Clifton <nickc@redhat.com> + + * config/obj-aout.c (obj_crawl_symbol_chain): Skip defined + symbols which resolve to symbolic values. + +2003-12-13 Alan Modra <amodra@bigpond.net.au> + + * config/obj-elf.c: Convert to C90, remove unneeded prototypes and + casts. Formatting. + * config/obj-elf.h: Remove PARAMS. + + * read.c (s_lcomm_internal): Make global. + * read.h (s_lcomm_internal): Declare. + * config/obj-elf.c (elf_pseudo_table): Handle lcomm. + (obj_elf_lcomm): New function. + +2003-12-13 Alan Modra <amodra@bigpond.net.au> + + * read.c: Remove unneeded prototypes. + (s_comm): Split out code to.. + (s_comm_internal): ..here. Tidy error returns. Rearrange so that + "name" from input line may be used in more places. Merge code + testing for valid size from elf_common. Merge code from + s_lcomm_internal. Call comm_parse_extra. + (bss_alloc): New function, split out of s_lcomm_internal and + elf_common. + (parse_align): Likewise. + (s_lcomm_internal): Rewrite. + (s_lcomm, s_lcomm_bytes): Use s_comm_internal. + * read.h (bss_alloc, parse_align, s_comm_internal): Declare. + * config/obj-elf.c (elf_common): Split out code to.. + (elf_common_parse): ..here. Remove code common to s_comm_internal, + parse_align and bss_alloc. Rearrange and Tidy. + * config/tc-alpha.h (TC_IMPLICIT_LCOMM_ALIGNMENT): Define. + +2003-12-10 Zack Weinberg <zack@codesourcery.com> + + * tc-ppc.c (md_assemble): Rewrite comment about optional operands + to indicate that 'all or none' is also handled. Pluralize a + word in another comment. + +2003-12-10 Paul Brook <paul@codesourcery.com> + + * config/tc-arm.c (FPU_MAVERICK): Define. + (FPU_ARCH_MAVERICK): Define. + (arm_float_abi): Define. + (mfloat_abi_opt): New variable. + (md_begin): Use them. + (arm_opts): Add msoft-float and mhard-float. + (arm_cpus): Use FPU_ARCH_MAVERICK. + (arm_fpus): Add maverick. + (arm_float_abis): Add. + (arm_parse_float_abi): New function. + (arm_long_options): Add mfloat-abi. + * doc/as.texinfo: Document -mfloat-abi=. + * doc/c-arm.text: Ditto. Menution -fpu=maverick. + +2003-12-09 Paul Brook <paul@codesourcery.com> + + * config/tc-arm.c (do_umaal): Fix typo. + +2003-12-06 Kazu Hirata <kazu@cs.umass.edu> + + * dwarf2dbg.c: Convert to ISO-C. + * write.c: Likewise. + * write.h: Likewise. + +2003-12-06 Richard Sandiford <rsandifo@redhat.com> + + * config/tc-mips.c (macro): Switch misordered call to frag_grow() + and setting of tc_fr_offset. + +2003-12-05 Ricardo Anguiano <anguiano@codesourcery.com> + Mark Mitchell <mark@codesourcery.com> + Richard Earnshaw <rearnsha@arm.com> + + Add V6 support. + * config/tc-arm.c (ARM_EXT_V6): New macro. + (ARM_ARCH_V6): Likewise. + (SHIFT_IMMEDIATE): Likewise. + (SHIFT_LSL_OR_ASR_IMMEDIATE): Likewise. + (SHIFT_ASR_IMMEDIATE): Likewise. + (SHIFT_LSL_IMMMEDIATE): Likewise. + (do_cps): New function. + (do_cpsi): Likewise. + (do_ldrex): Likewise. + (do_pkhbt): Likewise. + (do_pkhtb): Likewise. + (do_qadd16): Likewise. + (do_rev): Likewise. + (do_rfe): Likewise. + (do_sxtah): Likewise. + (do_sxth): Likewise. + (do_setend): Likewise. + (do_smlad): Likewise. + (do_smlald): Likewise. + (do_smmul): Likewise. + (do_ssat): Likewise. + (do_usat): Likewise. + (do_srs): Likewise. + (do_ssat16): Likewise. + (do_usat16): Likewise. + (do_strex): Likewise. + (do_umaal): Likewise. + (do_cps_mode): Likewise. + (do_cps_flags): Likewise. + (do_endian_specifier): Likewise. + (do_pkh_core): Likewise. + (do_sat): Likewise. + (do_sat16): Likewise. + (insns): Add V6 instructions. + (do_t_cps): New function. + (do_t_cpy): Likewise. + (do_t_setend): Likewise. + (THUMB_CPY): New macro. + (tinsns): Add V6 instructions. + (decode_shift): Handle V6 restricted-shift options. + (thumb_mov_compare): Support CPY. + (arm_cores): Add arm1136js and arm1136jfs. + (arm_archs): Add armv6. + (arm_fpus): Add arm1136jfs. + * doc/c-arm.texi (ARM Options): Mention arm1136js, arm1136jfs, and + armv6 options. + +2003-12-06 Christian Groessler <chris@groessler.org> + + * config/tc-z8k.c (parse_reg): Be case insensitive when checking + register names. + (get_ctrl_operand): Be case insensitive when checking ctrl names. + +2003-12-05 Nick Clifton <nickc@redhat.com> + + * config/tc-sh.c (md_show_usage): Fix compilation errors + introduced by the previous delta. + +2003-12-03 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-sh.c: Add support for sh4a and no-fpu variants. + * testsuite/gas/sh/basic.exp: Call tests for sh4a. + * testsuite/gas/sh/{err-sh4a-fp.s, err-sh4a.s, + err-sh4al-dsp.s, sh4a-dsp.d, sh4a-dsp.s, sh4a-fp.d, + sh4a-fp.s, sh4a.d, sh4a.s, sh4al-dsp.d, sh4al-dsp.s: + New files, tests for sh4a and related variants. + +2003-12-05 Michael Snyder <msnyder@redhat.com> + + * config/tc-sh.c (md_show_usage): Mention new -isa options. + * doc/c-sh.texi: Document new -isa options. + * doc/c-sh64.texi: Ditto. + * NEWS: Mention new support for sh4a. + +2003-12-03 H.J. Lu <hongjiu.lu@intel.com> + + * config/tc-alpha.c (s_alpha_end): Don't crash if there is no + matching .ent. + +2003-12-04 Alan Modra <amodra@bigpond.net.au> + + * tc.h (md_pcrel_from): Don't declare if defined as a macro. + +2003-12-03 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com> + + * config/tc-m32r.h : Add support for new machine m32r2. + * config/tc-m32r.c : Likewise. + Add new command line switches and directives to allow endian-ness + to be selected and some warnings to be turned into errors. + (line_separator_chars) : Use '!'. + * doc/c-m32r.texi: Document new switches and directives. + * NEWS: Mention new support. + +2003-12-03 Dave Airlie <airlied@linux.ie> + + * configure.in: Likewise. + * configure: Regenerate. + * config/tc-vax.c (md_shortopts): Add 'Q'. + (md_parse_option): Ignore 'Q' for now. + +2003-12-02 Kazu Hirata <kazu@cs.umass.edu> + + * messages.c: Convert to ISO-C. + * obj.h: Likewise. + * output-file.c: Likewise. + * output-file.h: Likewise. + * sb.c: Likewise. + * sb.h: Likewise. + * stabs.c: Likewise. + * subsegs.c: Likewise. + * subsegs.h: Likewise. + * tc.h: Likewise. + +2003-12-02 Kazu Hirata <kazu@cs.umass.edu> + + * config/obj-elf.c: Remove ARGSUSED. + +2003-12-02 Alan Modra <amodra@bigpond.net.au> + + * Makefile.am: Run "make dep-am". + * Makefile.in: Regenerate. + +2003-11-30 Kazu Hirata <kazu@cs.umass.edu> + + * symbols.c: Convert to ISO-C. + * symbols.h: Likewise. + +2003-11-28 Christian Groessler <chris@groessler.org> + + * config/tc-z8k.c: Convert to ISO-C. + * config/tc-z8k.h: Likewise. + +2003-11-27 Kazu Hirata <kazu@cs.umass.edu> + + * read.c: Convert to ISO-C. + * read.h: Likewise. + +2003-11-27 Nick Clifton <nickc@redhat.com> + + * config/tc-sh.c (sh_elf_cons): If md_cons_align is defined + call it to make sure that the constants that are going to be + emitted are correctly aligned. + +2003-11-27 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-frv.c (md_pcrel_from_section): Don't adjust when + referencing symbol in a different section. + +2003-11-26 Christian Groessler <chris@groessler.org> + + * config/tc-z8k.c (s_segm): Fix indentation. + (md_apply_fix3): Likewise. + (cc_names): Add alias names for the names generated by the + disassembler. + (get_cc_operand): Be case insensitive. + (get_operands): Improve error handling for cc operands. + (check_operand): Not used, remove. + (md_assemble): Remove unused variable prev_opcode. Skip + whitespace until end-of-line only. Restore *op_end after call to + hash_find. + +2003-11-26 Nick Clifton <nickc@redhat.com> + + * config/tc-h8300.c (get_operand): Allow er4-er7 for ldm/stm + instructions on the H8SX. + +2003-11-25 Kazu Hirata <kazu@cs.umass.edu> + + * config/tc-h8300.c (h8_exp): Remove. + +2003-11-25 Asgari Jinia <asgarij@kpitcummins.com> + + * config/tc-h8300.c (md_assemble): Check operands validity for + ldm/stm. + (get_operand): Check register pair's validity as per technical + note TN-H8*-193A/E from Renesas for H8s and for H8Sx manual. + +2003-11-24 Kazu Hirata <kazu@cs.umass.edu> + + * listing.c: Convert to ISO-C. + * listing.h: Likewise. + * macro.c: Likewise. + * macro.h: Likewise. + +2003-11-24 Jakub Jelinek <jakub@redhat.com> + + * app.c (do_scrub_chars): Add PUT (ch) and ch = GET () + when transitioning from states 14 or 15 to 0 or 1. + +2003-11-23 Kazu Hirata <kazu@cs.umass.edu> + + * hash.c: Convert to ISO-C. + * hash.h: Likewise. + * input-file.c: Likewise. + * input-file.h: Likewise. + * input-scrub.c: Likewise. + * itbl-ops.c: Likewise. + * itbl-ops.h: Likewise. + +2003-11-23 Kazu Hirata <kazu@cs.umass.edu> + + * config/tc-h8300.c (Hmode): Make it global. + (Smode): Likewise. + (Nmode): Likewise. + (SXmode): Likewise. + +2003-11-22 Kazu Hirata <kazu@cs.umass.edu> + + * ehopt.c: Convert to ISO-C. + * emul.h: Likewise. + * expr.c: Likewise. + * expr.h: Likewise. + * flonum-copy.c: Likewise. + * flonum-mult.c: Likewise. + * flonum.h: Likewise. + * frags.c: Likewise. + * frags.h: Likewise. + +2003-11-22 Alan Modra <amodra@bigpond.net.au> + + * doc/c-ppc.texi (PowerPC-Pseudo): Add section. + + * app.c (do_scrub_chars): Revert 2003-04-23 and 2003-04-22. + +2003-11-21 Kazu Hirata <kazu@cs.umass.edu> + + * ecoff.c: Convert to ISO-C. + * ecoff.h: Likewise. + +2003-11-22 Alan Modra <amodra@bigpond.net.au> + + * config/tc-ppc.c (parse_cpu): New function, broken out from.. + (md_parse_option): ..here. + (ppc_setup_opcodes): New function, broken out from.. + (md_begin): ..here. + (ppc_machine): Implement .machine pseudo op. + +2003-11-20 Kazu Hirata <kazu@cs.umass.edu> + + * depend.c: Convert to ISO-C. + * dwarf2dbg.c: Likewise. + * dwarf2dbg.h: Likewise. + +2003-11-20 Kazu Hirata <kazu@cs.umass.edu> + + * app.c: Convert to ISO-C. + * as.h: Likewise. + * atof-generic.c: Likewise. + * bignum-copy.c: Likewise. + * bignum.h: Likewise. + * cgen.c: Likewise. + * cgen.h: Likewise. + * cond.c: Likewise. + +2003-11-20 DJ Delorie <dj@redhat.com> + + * config/tc-sh64.c (shmedia_frob_section): Only frob elf32 + sections. + +2003-11-19 Kazu Hirata <kazu@cs.umass.edu> + + * config/tc-h8300.c: Make some functions and global + variables static appropriately. + +2003-11-19 Kazu Hirata <kazu@cs.umass.edu> + + * config/obj-ieee.c: Remove duplicate prototypes. + * config/tc-h8300.c: Likewise. + +2003-11-19 Kazu Hirata <kazu@cs.umass.edu> + + * config/tc-h8300.c: Convert to ISO-C. + * config/tc-h8300.h: Likewise. + +2003-11-19 Kazu Hirata <kazu@cs.umass.edu> + + * config/tc-mcore.h: Remove prototypes already in tc.h. + * config/tc-tic4x.c: Likewise. + +2003-11-19 Kazu Hirata <kazu@cs.umass.edu> + + * config/tc-arc.c: Remove a local prototype of atof_ieee. + * config/tc-ip2k.c: Likewise. + * config/tc-iq2000.c: Likewise. + * config/tc-tic30.c: Remove a comment. + +2003-11-19 Bob Wilson <bob.wilson@acm.org> + + * config/tc-xtensa.c (xg_emit_insn): Include "dwarf2dbg.h" and add + call to dwarf2_emit_insn. + +2003-11-18 Maciej W. Rozycki <macro@ds2.pg.gda.pl> + + * config/tc-mips.c (macro): Handle new macros: "lca" and "dlca" + for loading addresses using CALL relocations. + Don't emit CALL relocations when a base register is used. + +2003-11-15 Maciej W. Rozycki <macro@ds2.pg.gda.pl> + + * config/tc-mips.c: Formatting fixes. + +2003-11-14 Ben Elliston <bje@wasabisystems.com> + + * config/tc-arm.c (arm_elf_change_section): Not static. + +2003-11-13 Nick Clifton <nickc@redhat.com> + + * tc-arm.c (mapping_state): New function. Emit a mapping + symbol if necessary. + (arm_elf_change_section): New function. Intercept section + changes and generate mapping symbols. + (s_bss): Likewise. + (s_arm_elf_cons): Likewise. + (opcode_select): Choose the correct mapping state. + (md_assemble): Likewise. + * tc-arm.h (md_elf_section_change_hook): Define. + * doc/c-arm.texi (ARM Mapping Symbols): New node. + * NEWS: Mention new feature. + +2003-11-12 Daniel Jacobowitz <drow@mvista.com> + + * Makefile.am (install, install-info, RECURSIVE_TARGETS): Define. + * doc/Makefile.am (install-info): Define. + + * aclocal.m4: Regenerate. + * Makefile.in: Regenerate. + * doc/Makefile.in: Regenerate. + +2003-11-11 Dmitry Semyonov <Dmitry.Semyonov@oktet.ru> + + * configure.in: Add support for arm-wince-pe target. + * configure: Regenerate. + +2003-11-11 Jan Hubicka <jh@suse.cz> + + * config/tc-i386.c (tc_i386_fix_adjustable): + +2003-11-10 Alan Modra <amodra@bigpond.net.au> + + * config/tc-ia64.c (ia64_handle_align): Remove bogus be_nop. + +2003-11-10 Alan Modra <amodra@bigpond.net.au> + + * README: Update bug report address. Move bug reporting info to + binutils/README. + +2003-11-07 Christian Groessler <chris@groessler.org> + + * doc/c-z8k.texi: Document command-line options. Fix byte + register names. Document '.z8001' and '.z8002' directives. + Extend addressing modes documentation. + +2003-11-07 Jonathan R. Grant <jg-binutils@jguk.org> + + * input-file.c (input_file_open): Use "No such file" error + message. + +2003-11-06 Pete Gonzalez <pgonzalez@bluel.com> + + * config/tc-arm.texi (struct reg_entry): Add new field 'builtin'. + (rn_table, iwmmxt_table, cp_table, cn_table, fn_table, sn_table, + dn_table, mav_mvf_table, mac_mvd_table, mav_mvfx_table, + mav_mvax_table, mav_dspc_table): Initialise new field. + (insert_reg_alias): Initialise new field. + (md_pseudo_table): Add "unreq" entry. + (s_unreq): New function: Undo the effects of a previous .req. + * doc/c-arm.texi: Document new pseudo op. + * NEWS: Mention new feature. + +2003-11-06 Bruno Rohee <bruno@rohee.com> + + * config/obj-vms.c: Fix "the the" typo. + * doc/c-arm.texi: Likewise. + +2003-11-06 Nick Clifton <nickc@redhat.com> + + * config/obj-vms.c: Convert to ISO-C. + +2003-11-05 Alan Modra <amodra@bigpond.net.au> + + * config/tc-ppc.h (TC_FORCE_RELOCATION): Only define for ELF and XCOFF. + +2003-10-31 Christian Groessler <chris@groessler.org> + + * config/tc-i860.c (md_pcrel_from): Fix typo in comment. + +2003-10-29 Phil Edwards <phil@codesourcery.com> + + * configure.in (arm-*-vxworks, i386-*-vxworks, mips-*-vxworks, + ppc-*-vxworks, ppc-*-windiss): Remove separate outdated stanzas. + (*-*-vxworks, *-*-windiss): Use common stanzas, all ELF. + * configure: Regenerated. + +2003-10-27 Kazu Hirata <kazu@cs.umass.edu> + + * ChangeLog: Fix typos. + * ChangeLog-9295: Likewise. + * as.c: Fix comment typos. + * as.h: Likewise. + * atof-generic.c: Likewise. + * bit_fix.h: Likewise. + * frags.h: Likewise. + * hash.c: Likewise. + * input-file.c: Likewise. + * input-scrub.c: Likewise. + * itbl-ops.c: Likewise. + * itbl-parse.y: Likewise. + * listing.c: Likewise. + * macro.h: Likewise. + * read.c: Likewise. + * sb.c: Likewise. + * sb.h: Likewise. + * symbols.c: Likewise. + * symbols.h: Likewise. + +2003-10-27 Stephane Carrez <stcarrez@nerim.fr> + + * config/tc-m68hc11.c: Convert to ISO C90. + * config/tc-m68hc11.h: Likewise. + +2003-10-26 Kazu Hirata <kazu@cs.umass.edu> + + * doc/c-sh64.texi: Fix a typo. + +2003-10-26 Kazu Hirata <kazu@cs.umass.edu> + + * doc/c-alpha.texi: Fix typos. + * doc/c-ia64.texi: Likewise. + * doc/c-mmix.texi: Likewise. + * doc/c-sh64.texi: Likewise. + * doc/c-xtensa.texi: Likewise. + * doc/internals.texi: Likewise. + +2003-10-24 H.J. Lu <hongjiu.lu@intel.com> + + * config/obj-elf.c (obj_elf_change_section): Allow SHF_ALLOC + for .interp, .strtab and .symtab. Use specified section + attributes. + +2003-10-22 Andreas Schwab <schwab@suse.de> + H.J. Lu <hongjiu.lu@intel.com> + Jim Wilson <wilson@specifixinc.com> + + * config/tc-ia64.c (update_qp_mutex): New. + (note_register_values): Properly handle one of PRs in compare + is PR0. Don't add a mutex relation for .and.orcm/.or.andcm. + Clear mutex relation for .none/.unc. Don't clear mutex relation + on predicated compare. + +2003-10-21 Wouter van Heyst <wouter@vidicode.nl> + + * config/tc-arm.c (all_reg_maps): Correct text describing Maverick + register requirements. + (md_begin): Remove F_SOFT_FLOAT if enabling MAVERICK FP. + +2003-10-21 Peter Barada <pbarada@mail.wm.sps.mot.com> + Bernardo Innocenti <bernie@develer.com> + + * config/tc-m68k.c: Add MCF528x (MCFv4) support. + * config/m68k-parse.h: Likewise. + * NEWS: Mention the new support. + * doc/c-m68k.texi: Document new processor selection switch. + +2003-10-19 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (normalize_constant_expr): New function to fix sign + extensions broken by gas' expression evaluation of constants. + (check_absolute_expr): Use it. + (mips_ip): Likewise. + +2003-10-18 Hans-Peter Nilsson <hp@bitrange.com> + + Generate BFD_RELOC_MMIX_PUSHJ_STUBBABLE for PUSHJ when possible. + * doc/c-mmix.texi (MMIX-Opts): Document --no-pushj-stubs and + --no-stubs. + * config/tc-mmix.c: Include limits.h. Expand on mmix_relax_table + comment. + (expand_op, mmix_next_semicolon_is_eoln): Fix head comment. + (pushj_stubs): New variable. + (OPTION_NOPUSHJSTUBS, STATE_PUSHJSTUB, PUSHJSTUB_MIN) + (PUSHJSTUB_MAX): New macros. + (md_longopts): New options "--no-pushj-stubs" and synonym + "--no-stubs". + (mmix_relax_table): Handle new entry for STATE_PUSHJSTUB. + (md_parse_option): Handle OPTION_NOPUSHJSTUBS. + (md_estimate_size_before_relax): Modify STATE_PUSHJ state for + PUSHJ stub relaxation. + (md_convert_frag): Handle STATE_PUSHJSTUB. + (md_apply_fix3): Handle BFD_RELOC_MMIX_PUSHJ_STUBBABLE. + (tc_gen_reloc): Ditto. + (mmix_md_relax_frag): Handle PUSHJ stub relaxation. + * config/tc-mmix.h (TC_SEGMENT_INFO_TYPE): Define. + (struct mmix_segment_info_type): New. + +2003-10-17 Paul Dale <pauli@snapgear.com> + Bernardo Innocenti <bernie@develer.com> + + * config/tc-m68k.c (make_pcrel_absolute): Enforce + PC-relative jumps with --pcrel. + (md_convert_frag_1): Likewise. + (md_create_long_jump): Likewise. + +2003-10-17 Shrinivas Atre <shrinivasa@KPITCummins.com> + + * config/tc-h8300.c (PSIZE): Correct for Normal mode. + (get_operand): Accept both 16 bit 32 bit registers as pointer + registers, when operating in Normal mode. + (fix_operand_size): Make default address size 16 for Normal mode. + +2003-10-17 Ian Lance Taylor <ian@wasabisystems.com> + + * config/tc-arm.c (do_iwmmxt_byte_addr): Reject control + registers. + (do_iwmmxt_word_addr): With a control register, reject conditional + execution and reject a non-word size. + +2003-10-16 Peter Bergner <bergner@vnet.ibm.com> + + * configure.in: Set em=linux for ppc-*-linux-gnu* target. + * configure: Regenerate. + +2003-10-15 Alan Modra <amodra@bigpond.net.au> + + * doc/as.texinfo (Align): Correct list of byte targets. + +2003-10-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (macro_build_ldst_constoffset,load_register,macro): + Fix indentation. Better error message. + +2003-10-14 Bob Wilson <bob.wilson@acm.org> + + * config/tc-xtensa.c (xtensa_create_property_segments): Remove bfd + argument in call to xtensa_get_property_section_name. Formatting. + +2003-10-11 Kaz Kojima <kkojima@rr.iij4u.or.jp> + + * config/tc-sh.h (sh_coff_reloc_mangle): Delete an extra + parenthesis. + +2003-10-11 Kaz Kojima <kkojima@rr.iij4u.or.jp> + + * config/tc-sh.c: Convert to ISO C90. Remove unnecessary + prototypes and casts. + * config/tc-sh.h: Likewise. + * config/tc-sh64.c: Likewise. + * config/tc-sh64.h: Likewise. + +2003-10-08 Dave Brolley <brolley@redhat.com> + + * config/tc-frv.c (fr550_check_insn_acc_range): New function. + (fr550_check_acc_range): New function. + (md_assemble): Call fr550_check_acc_range. + +2003-10-08 Dave Brolley <brolley@redhat.com> + + * config/tc-frv.c: Handle DEFAULT_CPU_FR550. + (md_parse_option): Handle OPTION_CPU==fr550. + (md_show_usage): Document fr550. + +2003-10-08 Philippe De Muyter <phdm@macqel.be> + + * as.c (use_gnu_debug_info_extensions) : New variable. + (parse_args) : Accept new --gstabs+ option, and set + `use_gnu_debug_info_extensions'. + (show_usage) : Document --gstabs+ option. + * as.h (use_gnu_debug_info_extensions) : New extern declaration. + * stabs.c (stabs_generate_asm_file) : If + `use_gnu_debug_info_extensions' is set, add the compilation + directory to the stabs debug info. + * doc/as.texinfo : Document --gstabs+ option. + * NEWS: Mention new feature. + +2003-10-06 Matt Thomas <matt@3am-software.com> + + Switch NetBSD/hppa to use Linux PA-RISC ELF ABI and + assembler syntax. + + * tc-hppa.c: Add "%farg[0-3]", "%fret", "%t[1-4]", "%tf[1-4]" + register names. Change all "defined (TE_LINUX)" to + "(defined (TE_LINUX) || defined (TE_NETBSD))". + + * tc-hppa.h: Make NetBSD use "elfXX-hppa-linux" bfd target. + Remove NetBSD's use of LABELS_WITHOUT_COLONS. + +2003-10-06 Robert Millan <robertmh@gnu.org> + + * configure.in: Match GNU/KNetBSD with new knetbsd*-gnu triplet. + * configure: Regenerate. + +2003-10-05 Nick Clifton <nickc@redhat.com> + + * as.c (parse_args): Revert patch to change handling of -f + option. Its behaviour is mandated by the POSIX 2 spec. + +2003-10-04 Christian Groessler <chris@groessler.org> + + * tc-z8k.c (newfix): Tell fix_new_exp about pc relativeness. + (md_apply_fix3): Fix R_JR, R_DISP7, and R_CALLR cases. + (md_pcrel_from): This function now gets called. Supply return + value. + +2003-10-04 Nick Clifton <nickc@redhat.com> + + * as.c: Convert to ISO C90. + +2003-10-04 Nick Clifton <nickc@redhat.com> + + * as.c (std_shortopts): Remove 'f'. + (std_longopts): Add 'f'. Doing this prevents -f<foo> being + acecpted as an alias for -f. + +2003-10-04 Danny Smith <danny_r_smith_2001@yahoo.co.nz> + + * config/obj-coff.c (obj_coff_section [BEF_ASSEMBLER]): + Make 'r' mean readonly data. + +2003-10-01 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (macro_build_ldst_constoffset,load_register,macro): + Unbreak overflow checks. + +2003-10-01 Chris Demetriou <cgd@broadcom.com> + + * config/tc-mips.c (s_cpreturn): Correct errors in comment. + +2003-10-01 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (macro_build_ldst_constoffset): Fix sign extension + tests. + (load_register): Likewise. + (macro): Likewise. + +2003-09-30 Chris Demetriou <cgd@broadcom.com> + + * config/tc-mips.c (mips_ip): Capitalize first word of + existing condition code warning, and add condition code + warnings for .ps instructions, and for bc1any[24][tf]. + +2003-09-30 Chris Demetriou <cgd@broadcom.com> + + * NEWS: Mention support for MIPS64 Release 2. + +2003-09-30 Chris Demetriou <cgd@broadcom.com> + + * NEWS: Add an indication of the cutoff for 2.14. + +2003-09-30 Chris Demetriou <cgd@broadcom.com> + + * configure.in (mipsisa64r2, mipsisa64r2el, mipsisa64r2*): New CPUs. + * configure: Regenerate. + * config/tc-mips.c (imm2_expr): New variable. + (md_assemble, mips16_ip): Initialize imm2_expr. + (ISA_HAS_64BIT_REGS, ISA_HAS_DROR, ISA_HAS_ROR): Add ISA_MIPS64R2. + (macro_build): Handle +A, +B, +C, +E, +F, +G, and +H format operands. + (macro): Handle M_DEXT and M_DINS. + (validate_mips_insn): Handle +E, +F, +G, +H, and +I format operands. + (mips_ip): Likewise. + (OPTION_MIPS64R2): New define. + (md_longopts): New entry for -mips64r2 (OPTION_MIPS64R2). + OPTION_ASE_BASE): Increase to compensate for OPTION_MIPS64R2. + (md_parse_option): Handle OPTION_MIPS64R2. + (s_mipsset): Handle setting "mips64r2" ISA. + (mips_cpu_info_table): Add mips64r2. + (md_show_usage): Document -mips64r2 option. + * doc/as.texinfo: Docuemnt -mips64r2 option. + * doc/c-mips.texi: Likewise. + +2003-09-27 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> + + * config/tc-hppa.c (pa_ip): Check for invalid 64-bit conditions. + +2003-09-26 Matt Thomas <matt@3am-software.com> + + * config/tc-vax.c (md_shortopts): Fix a typo. Remove 'K'. + (OPTION_PIC): Define. + (md_longopts): Add "pic" option. + (md_parse_option): Change 'K' to OPTION_PIC. + +2003-09-23 Alan Modra <alan@modra.org> + + * config/obj-elf.c (obj_elf_change_section): Adjust for + _bfd_elf_get_sec_type_attr changes. Allow SHF_MERGE and SHF_STRINGS + to be set when defaults are not. Don't set attr from defaults if + old_sec. + +2003-09-18 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (macro_build_ldst_constoffset): Don't silently + truncate values which won't fit im 32 bits. + (load_register): Likewise. + (macro): Likewise. + +2003-09-17 Dmitry Diky <diwil@mail.ru> + + * config/tc-msp430.c (MAX_OP_LEN): Set to 256. + (msp430_operands): Remove redundant l2[16] within switch-case. + +2003-09-16 Ralf Corsepius <corsepiu@faw.uni-ulm.de> + + * configure.in: Handle arm-*-rtems* and thumb-*rtems*. + * configure: Regenerate. + +2003-09-14 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (HAVE_64BIT_ADDRESS_CONSTANTS): Remove. + (macro_build_ldst_constoffset): Sign-extend 32-bit constants. Change + the function prototype. + (load_register): Likewise. Simplify the checks for sign-extended + constants. + (macro): Likewise. Fix code generation for 64-bit address constants + outside the 32-bit compatibility space. Adjust + macro_build_ldst_constoffset calls. + (s_cprestore): Adjust macro_build_ldst_constoffset call. + +2003-09-11 Bob Wilson <bob.wilson@acm.org> + + * config/tc-xtensa.c (insn_labels, free_insn_labels, saved_insn_labels, + literal_syms): New global variables. + (xtensa_define_label, add_target_symbol, xtensa_find_label, + map_over_defined_symbols, is_loop_target_label, + xtensa_mark_target_fragments, xtensa_move_frag_symbol, + xtensa_move_frag_symbols, defined_symbols, branch_targets): Delete. + (xtensa_begin_directive): Call md_flush_pending_output. Move symbols + from insn_labels to saved_insn_labels when entering a literal region. + (xtensa_end_directive): Call md_flush_pending_output. Restore + insn_labels list when leaving a literal region. + (xtensa_literal_position): Call xtensa_clear_insn_labels. + (xtensa_literal_pseudo): Add check to disallow .literal inside a + literal region. Move insn_labels to saved_insn_labels and then restore + insn_labels on exit. + (xg_add_branch_and_loop_targets): Replace add_target_symbol calls with + code to set is_loop_target or is_branch_target flag on the symbol + (xtensa_create_literal_symbol): Call xtensa_add_literal_sym. + (xtensa_add_literal_sym, xtensa_add_insn_label, + xtensa_clear_insn_labels): New functions. + (xtensa_move_labels): Remove old_frag and old_offset arguments. Add + loops_ok argument. Rewrite to use insn_labels list instead of + calling xtensa_find_label and to check the is_loop_target flag on + symbols when loops_ok is false. + (xtensa_frob_label): Remove call to xtensa_define_label. Add call + to either xtensa_add_literal_sym or xtensa_add_insn_label. Adjust + call to xtensa_move_labels. Propagate is_branch_target and + is_loop_target flags from symbols to frags. + (xtensa_flush_pending_output): Call xtensa_clear_insn_labels. + (md_assemble): Use xtensa_move_labels with loops_ok = FALSE when + aligning a loop instruction. Adjust call to xtensa_move_labels for + aligning entry instructions. Add call to xtensa_clear_insn_labels. + (xtensa_end): Remove call to xtensa_mark_target_fragments. + (xtensa_move_literals): Replace xtensa_move_frag_symbols call with + code to use new literal_syms list. + * config/tc-xtensa.h (xtensa_symfield_type): Add is_loop_target and + is_branch_target flags. + +2003-09-09 Bob Wilson <bob.wilson@acm.org> + + * config/tc-xtensa.c (xtensa_mark_literal_pool_location): Remove + "move_labels" argument and corresponding call to xtensa_move_labels. + (md_assemble): Add a separate call to xtensa_move_labels and remove + argument for call to xtensa_mark_literal_pool_location. + (xtensa_literal_position, xtensa_switch_to_literal_fragment): Fix + calls to xtensa_mark_literal_pool_location. + (xtensa_create_local_symbol): Delete and inline the code into... + (xtensa_create_literal_symbol): ...here. + (xtensa_frob_label): Combine conditionals. + (expression_maybe_register, xtensa_symbol_new_hook, + fix_new_exp_in_seg): Use symbol_get_tc. + +2003-09-09 Bob Wilson <bob.wilson@acm.org> + + * config/tc-xtensa.c (xtensa_literal_pseudo): Remove code for + combining identical literals. + (expression_maybe_register): Remove call to find_lit_sym_translation. + (is_duplicate_expression, cache_literal, is_duplicate_literal, + add_lit_sym_translation, find_lit_sym_translation): Delete. + +2003-09-07 Nick Clifton <nickc@redhat.com> + + * doc/as.texinfo (Comments): Comment character for PPC is #. + +2003-09-06 Stephane Carrez <stcarrez@nerim.fr> + + PR savannah/4358: + * config/tc-m68hc11.c (s_m68hc11_relax): Use 2 for size to avoid + overflow complain. + +2003-09-05 Richard Sandiford <rsandifo@redhat.com> + + * config/tc-frv.c (md_pcrel_from_section): Heed TC_FORCE_RELOCATION. + +2003-09-04 Nick Clifton <nickc@redhat.com> + + * config/tc-v850.c (set_machine): Accept v850e1 machine number. + (md_pseudo_table): Add .v850e1 pseudo op. + (md_show_usage): Document -mv850e1 switch. + (md_parse_option): Accept -mv850e1 switch. + (md_begin): Allow TARGET_CPU to be v850e1. + * doc/c-v850.texi: Document -mv850e1 switch and .v850e1 pseudo op. + * NEWS: Mention support for v850e1. + +2003-09-04 Alan Modra <amodra@bigpond.net.au> + + * config/tc-ppc.c (md_parse_option): Add PPC_OPCODE_ANY to existing + ppc_cpu selection rather than replacing. + (ppc_set_cpu): Ignore and preserve PPC_OPCODE_ANY in ppc_cpu. + (md_begin): When PPC_OPCODE_ANY, insert all opcodes in ppc_hash. + +2003-09-03 Robert Millan <robertmh@gnu.org> + + * configure.in: Match GNU/KFreeBSD with new kfreebsd*-gnu + triplet. + * configure: Regenerate. + +2003-09-02 Daniel Jacobowitz <drow@mvista.com> + + * configure.in: Update AC_PREREQ to 2.57. Use AC_CONFIG_FILES + and AC_CONFIG_COMMANDS instead of the three-argument AC_OUTPUT. + Specify AC_CONFIG_AUX_DIR. + * aclocal.m4: Regenerated with aclocal-1.7. + * configure: Regenerated with autoconf 2.57. + * Makefile.in, doc/Makefile.in: Regenerated with automake-1.7. + +2003-08-29 Jakub Jelinek <jakub@redhat.com> + + * dw2gencfi.c (cfi_pseudo_table): Add cfi_window_save. + (dot_cfi, output_cfi_insn): Handle DW_CFA_GNU_window_save. + (output_cie): Don't use DW_EH_PE_pcrel if neither DIFF_EXPR_OK + nor tc_cfi_emit_pcrel_expr are defined. + (output_fde): Use tc_cfi_emit_pcrel_expr if available and + DIFF_EXPR_OK is not defined. + * config/tc-sparc.h (TARGET_USE_CFIPOP): Define. + (tc_cfi_frame_initial_instructions, tc_regname_to_dw2regnum, + tc_cfi_emit_pcrel_expr): Define. + (sparc_cfi_frame_initial_instructions, sparc_regname_to_dw2regnum, + sparc_cfi_emit_pcrel_expr): New prototypes. + (sparc_cie_data_alignment): New decl. + (DWARF2_DEFAULT_RETURN_COLUMN, DWARF2_CIE_DATA_ALIGNMENT): Define. + * config/tc-sparc.c: Include dw2gencfi.h. + (sparc_cie_data_alignment): New variable. + (md_begin): Initialize it. + (sparc_cfi_frame_initial_instructions): New function. + (sparc_regname_to_dw2regnum): Likewise. + (sparc_cfi_emit_pcrel_expr): Likewise. + * doc/as.texinfo: Document .cfi_window_save. + + * config/tc-sparc.c (s_common): Cast last argument to long and + change format string to shut up warning. + +2003-08-25 Jason Eckhardt <jle@rice.edu> + + * doc/c-i860.texi: Update text about relocatable address expansions. + +2003-08-24 Jason Eckhardt <jle@rice.edu> + + * config/tc-i860.c (md_assemble): Use isrc2 from the original + instruction when expanding E_ADDR. + +2003-08-21 Nick Clifton <nickc@redhat.com> + + * po/tr.po: Updated Turkish translation. + +2003-08-20 Alan Modra <amodra@bigpond.net.au> + + * config/tc-ppc.c (md_parse_option): Add PPC_OPCODE_ISEL and + PPC_OPCODE_RFMCI to -m440 selected ppc_cpu. + +2003-08-19 Nick Clifton <nickc@redhat.com> + + * config/tc-arm.c (cp_address_required_here): Add code to handle + unindexed addressing mode. + +2003-08-19 Alan Modra <amodra@bigpond.net.au> + + * config/tc-ppc.c (md_parse_option): Handle -m440. + (md_show_usage): Add -m440. + (md_apply_fix3): Warning fix. + * doc/c-ppc.texi: Document -m440. + +2003-08-16 Benjamin Kalytta <bkausbk@web.de> + + * read.c (s_print): Check for NULL. + +2003-08-16 Alan Modra <amodra@bigpond.net.au> + + * write.c (fixup_segment): When handling an expression involving + the subtraction of two symbols in the same segment, don't clear + fx_pcrel except for TC_M68K. + +2003-08-14 Alan Modra <amodra@bigpond.net.au> + + * config/tc-i386.h: Remove BFD_ASSEMBLER tests and all !BFD_ASSEMBLER + code. + * config/tc-i386.c: Likewise. + (RELOC_ENUM): Don't define. Replace throughout with enum. + + * dep-in.sed: Remove libintl.h. Ignore include/fopen-*.h + * Makefile.am (POTFILES.in): Unset LC_COLLATE. + Run "make dep-am". + * Makefile.in: Regenerate. + +2003-08-08 Andreas Schwab <schwab@suse.de> + + * config/tc-m68k.h (TARGET_USE_CFIPOP) + (DWARF2_DEFAULT_RETURN_COLUMN, DWARF2_CIE_DATA_ALIGNMENT) + (tc_regname_to_dw2regnum, tc_cfi_frame_initial_instructions): + Define. + * config/tc-m68k.c: Include "dw2gencfi.h". + (tc_m68k_regname_to_dw2regnum) + (tc_m68k_frame_initial_instructions): New functions. + +2003-08-08 Dmitry Diky <diwil@mail.ru> + + * config/tc-msp430.c: Add xW42 and xE42 parts. Sort MPU list + according to gcc order. + +2003-08-07 Jason Eckhardt <jle@rice.edu> + + * config/tc-i860.c (i860_check_label): New function. + * config/tc-i860.h (i860_check_label): New prototype. + (tc_check_label): Define macro as i860_check_label. + +2003-08-06 Jason Eckhardt <jle@rice.edu> + + * config/tc-i860.c (s_align_wrapper): New function and prototype. + (md_pseudo_table): Change s_align_bytes to s_align_wrapper, remove + surrounding OBJ_ELF ifdef, and re-format slightly. + * doc/c-i860.texi: Document the special .align syntax available + in Intel mode. + +2003-08-06 Jason Eckhardt <jle@rice.edu> + + * config/tc-i860.c (i860_handle_align): New function. + * config/tc-i860.h (HANDLE_ALIGN): Define macro. + (MAX_MEM_FOR_RS_ALIGN_CODE): Define macro. + +2003-08-06 Jason Eckhardt <jle@rice.edu> + + * config/tc-i860.c (i860_process_insn): Check that instructions + with their dual-bit set are 8-byte aligned. + +2003-08-06 Nick Clifton <nickc@redhat.com> + + * po/fr.po: Updated French translation. + +2003-08-05 Jason Eckhardt <jle@rice.edu> + + * config/tc-i860.c (i860_process_insn): Don't handle dual-bit + setting during flop argument parsing. Instead, do it after + instruction is fully parsed. + +2003-08-05 Jason Eckhardt <jle@rice.edu> + + * doc/c-i860.texi: Mention that .dual, .enddual, and .atmp + directives are only available in Intel syntax mode. + +2003-08-05 Jason Eckhardt <jle@rice.edu> + + * config/tc-i860.c (s_dual): Accept .dual directive only in + the Intel syntax mode. + (s_enddual): Likewise for .enddual. + (s_atmp): Likewise for .atmp. + +2003-08-04 Alan Modra <amodra@bigpond.net.au> + + * config/tc-i386.c (i386_intel_operand): Always call i386_index_check + for memory operands. Pass the full operand_string to i386_index_check. + +2003-08-01 Jason Eckhardt <jle@rice.edu> + + * config/tc-i860.c: Remove SYNTAX_SVR4 macro and occurrences. + (target_intel_syntax): Declare variable. + (OPTION_INTEL_SYNTAX): Declare macro. + (md_longopts): Add option -mintel-syntax. + (md_parse_option): Set target_intel_syntax. + (md_show_usage): Add -mintel-syntax usage. + (md_begin): Set reg_prefix based on target_intel_syntax. + (i860_process_insn): Skip register prefix only if there is one. + Parse relocatable expressions in either Intel or AT&T syntax based + on target_intel_syntax instead of the SYNTAX_SVR4 macro. + * doc/c-i860.texi: Document -mintel-syntax option and give blurb + about the differences in syntax. + +2003-08-01 Dmitry Diky <diwil@mail.ru> + + * config/tc-msp430.c (msp430_srcoperand): Extend 'push' bug workaround + to all arches. + +2003-07-30 J"orn Rennecke <joern.rennecke@superh.com> + + * config/tc-sh.c (md_assemble): For branches, check & update + valid_arch here. + +2003-07-30 Jason Eckhardt <jle@rice.edu> + + * config/tc-i860.c: Convert to ISO C90. + +2003-07-30 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> + + * read.c (s_space): Revert 2003-07-28 change. + +2003-07-30 Alan Modra <amodra@bigpond.net.au> + + * config/obj-elf.c (obj_elf_change_section): Allow "x" for .note*. + +2003-07-29 Alan Modra <amodra@bigpond.net.au> + + * config/tc-sh.c (tc_gen_reloc): Test for R_SH_IND12W only when ELF. + +2003-07-29 Jakub Jelinek <jakub@redhat.com> + + * config/tc-ppc.c (md_apply_fix3): Fix check for lq insns. + +2003-07-28 H.J. Lu <hongjiu.lu@intel.com> + + * config/obj-elf.c (obj_elf_section_type): Also accept "note". + +2003-07-28 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> + + * read.c (s_space): Don't warn about .space 0. + +2003-07-28 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> + + * config/tc-mips.c (mips_flag_pdr): Define. + (md_begin) [OBJ_ELF]: Use it to control .pdr creation. + (s_mips_end) [OBJ_ELF]: Likewise. + (md_longopts) [OBJ_ELF]: Define OPTION_PDR, OPTION_NO_PDR. + (md_parse_option) [OBJ_ELF]: Handle them. + (md_show_usage) [OBJ_ELF]: Document -mpdr, -mno-pdr. + + * doc/c-mips.texi (MIPS Opts): Document -mpdr, -mno-pdr. + * doc/as.texinfo (Overview) [MIPS]: Likewise. + +2003-07-25 H.J. Lu <hongjiu.lu@intel.com> + + * config/obj-elf.c (obj_elf_change_section): Update + elf_section_type and elf_section_flags only when they are + specified. + +2003-07-25 H.J. Lu <hongjiu.lu@intel.com> + + * config/obj-elf.c (obj_elf_change_section): Always set section + type and flags. + +2003-07-25 H.J. Lu <hongjiu.lu@intel.com> + + * config/obj-elf.c (special_sections): Removed. + (obj_elf_change_section): Call _bfd_elf_get_sec_type_attr. Set + elf_section_type and elf_section_flags. + (elf_frob_file): Set SHT_GROUP. + + * config/obj-elf.h (obj_sec_set_private_data): New. + + * config/tc-alpha.h (ELF_TC_SPECIAL_SECTIONS): Removed. + * config/tc-ia64.h: Likewise. + * config/tc-m32r.h: Likewise. + * config/tc-m68hc11.h: Likewise. + * config/tc-mcore.h: Likewise. + * config/tc-mips.h: Likewise. + * config/tc-ppc.h: Likewise. + * config/tc-sh64.h: Likewise. + * config/tc-v850.h: Likewise. + * config/tc-xtensa.h: Likewise. + + * config/tc-v850.h (SHF_V850_GPREL): Removed. + (SHF_V850_EPREL): Likewise. + (SHF_V850_R0REL): Likewise. + + * subsegs.c (subseg_get): Call obj_sec_set_private_data if it + is defined. + +2003-07-24 Stephane Carrez <stcarrez@nerim.fr> + + * config/tc-m68hc11.h (DWARF2_ADDR_SIZE): Use 32-bit address for + debugging symbols so that we handle page memory correctly. + +2003-07-24 Nick Clifton <nickc@redhat.com> + + * po/fr.po: Updated French translation. + +2003-07-23 Daniel Jacobowitz <drow@mvista.com> + + * config/tc-arm.c (arm_archs): Add iwmmxt. + +2003-07-22 H.J. Lu <hongjiu.lu@intel.com> + + * read.c (do_parse_cons_expression): Mark nbytes unused to + silence gcc. + +2003-07-22 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-h8300.c (get_specific): No PCREL8 encoding for bsr/bc + or bsr/bs. + + * config/tc-h8300.c (md_assemble): Make sure characters after + slash and dot are lower-case. + +2003-07-17 Nick Clifton <nickc@redhat.com> + + * po/es.po: New Spanish translation. + * po/tr.po: New Turkish translation. + * po/opcodes.pot: Regenerate. + +2003-07-16 Alan Modra <amodra@bigpond.net.au> + + * dwarf2dbg.c (get_frag_fix): Revert 2001-11-15 change. + (generic_dwarf2_emit_offset): Don't define function when + TC__DWARF2_EMIT_OFFSET is defined. + +2003-07-15 Richard Sandiford <rsandifo@redhat.com> + + * config/tc-mips.c (hilo_interlocks): True for CPU_RM7000. + (mips_cpu_info_table): Add rm7000 and rm9000 entries. + * doc/c-mips.texi: Document -march=rm9000. + +2003-07-15 Alan Modra <amodra@bigpond.net.au> + + * config/tc-v850.c (md_assemble): When no reloc, create pcrel fixups + only for V850_OPERAND_DISP operands. + +2003-07-15 Alan Modra <amodra@bigpond.net.au> + + * frags.c (frag_more): Move segment checks to.. + (frag_alloc_check): ..here. New function. + (frag_append_1_char): Call frag_alloc_check. + +2003-07-14 Nick Clifton <nickc@redhat.com> + + * po/tr.po: Update with latest version. + * po/POTFILES.in: Regenerate. + * po/gas.pot: Regenerate. + * configure: Regenerate. + +2003-07-14 Nick Clifton <nickc@redhat.com> + + * config/tc-ip2k.c: Remove inclusion of <ctype.h> + * config/tc-tic4x.c: Replace inclusion of <ctype.h> with + "safe-ctype.h" and update use of macros. + * Makefile.am: Update dependencies. + * Makefile.in: Regenerate. + +2003-07-11 Alan Modra <amodra@bigpond.net.au> + + * po/gas.pot: Regenerate. + +2003-07-10 Jakub Jelinek <jakub@redhat.com> + + * config/tc-ppc.h (DWARF2_LINE_MIN_INSN_LENGTH): Define always. + (TARGET_USE_CFIPOP, tc_cfi_frame_initial_instructions, + tc_regname_to_dw2regnum, DWARF2_DEFAULT_RETURN_COLUMN, + DWARF2_CIE_DATA_ALIGNMENT): Define. + (ppc_cfi_frame_initial_instructions, tc_ppc_regname_to_dw2regnum): New + prototypes. + (ppc_cie_data_alignment): Declare. + * config/tc-ppc.c: Include dw2gencfi.h. + (ppc_cie_data_alignment): Define. + (md_begin): Initialize ppc_cie_data_alignment. + (ppc_cfi_frame_initial_instructions, tc_ppc_regname_to_dw2regnum): New + functions. + * config/tc-s390.h (DWARF2_LINE_MIN_INSN_LENGTH): Define always. + (TARGET_USE_CFIPOP, tc_cfi_frame_initial_instructions, + tc_regname_to_dw2regnum, DWARF2_DEFAULT_RETURN_COLUMN, + DWARF2_CIE_DATA_ALIGNMENT): Define. + (s390_cfi_frame_initial_instructions, tc_s390_regname_to_dw2regnum): + New prototypes. + (s390_cie_data_alignment): Declare. + * config/tc-s390.c: Include dw2gencfi.h. + (s390_cie_data_alignment): Define. + (md_begin): Initialize s390_cie_data_alignment. + (s390_cfi_frame_initial_instructions, tc_s390_regname_to_dw2regnum): + New functions. + +2003-07-10 Alexandre Oliva <aoliva@redhat.com> + + 2002-12-12 Alexandre Oliva <aoliva@redhat.com> + * config/tc-mn10300.h (EXTERN_FORCE_RELOC): Don't define to zero. + 2001-05-09 Alexandre Oliva <aoliva@redhat.com> + * configure.in (am33_2.0, mn10300-*-linux*): Added. + * configure: Rebuilt. + * config/tc-mn10300.h (TARGET_FORMAT) [TE_LINUX]: Define to + elf32-am33lin. + * config/tc-mn10300.c (md_begin) [TE_LINUX]: Choose AM33/2.0 + by default. + +2003-07-09 Alexandre Oliva <aoliva@redhat.com> + + 2003-02-25 Alexandre Oliva <aoliva@redhat.com> + * config/tc-mn10300.c (mn10300_check_fixup): Set GOT_PCREL type + for subtracts from GLOBAL_OFFSET_TABLE that could not be + simplified. + 2002-07-18 Alexandre Oliva <aoliva@redhat.com> + * config/tc-mn10300.c (mn10300_check_fixup): Accept subtracts that + could not be simplified. + (tc_gen_reloc): Turn an absolute fx_subsy into part of fx_offset. + 2001-11-04 Alexandre Oliva <aoliva@redhat.com> + * config/tc-mn10300.h (TC_RELOC_RTSYM_LOC_FIXUP): Don't adjust + BDF_RELOC_MN10300_GOT32. + * config/tc-mn10300.c (mn10300_fix_adjustable): If + TC_RELOC_RTSYM_LOC_FIXUP doesn't hold, it's not adjustable. + 2001-05-09 Alexandre Oliva <aoliva@redhat.com> + * config/tc-mn10300.c (mn10300_parse_name): Don't return a + symbol if we know its value. + 2001-05-09 Alexandre Oliva <aoliva@redhat.com> + * config/tc-mn10300.h (GLOBAL_OFFSET_TABLE_NAME): Remove + duplicate underscore prefix. + 2001-05-09 Alexandre Oliva <aoliva@redhat.com> + * config/tc-mn10300.c (mn10300_parse_name): Store relocation + type in X_md, not X_add_number. Zero X_add_number. + (mn10300_check_fixup): Extract relocation type from X_md. + * config/tc-mn10300.h: Update comment. + 2001-04-14 Alexandre Oliva <aoliva@redhat.com> + * config/tc-mn10300.h (O_GOTOFF, O_PLT, O_GOT): Replace with... + (O_PIC_reloc): this. + * config/tc-mn10300.c (mn10300_PIC_related_p): Use it. + (mn10300_check_fixup): Likewise. + (mn10300_parse_name): Set X_add_number to relocation type. + * config/tc-mn10300.h (DIFF_EXPR_OK, GLOBAL_OFFSET_TABLE_NAME, + TC_RELOC_RTSYM_LOC_FIXUP, md_parse_name, TC_CONS_FIX_NEW, + O_GOTOFF, O_PLT, O_GOT): Define. + * config/tc-mn10300.c (mn10300_PIC_related_p): New fn. + (mn10300_check_fixup): New fn. + (md_assemble): Call it. Check for PIC-related relocs. + (mn10300_cons_fix_new): Likewise. New fn. + (mn10300_end_of_match): New fn. + (mn10300_md_parse_name_cont): New fn. + +2003-07-09 Alexandre Oliva <aoliva@redhat.com> + + 2000-05-25 Alexandre Oliva <aoliva@cygnus.com> + * config/tc-mn10300.c (mn10300_insert_operand): Negate negative + accumulator's shift. + 2000-05-08 Alexandre Oliva <aoliva@cygnus.com> + * config/tc-mn10300.c (md_relax_table, md_convert_frag, + md_assemble, md_estimate_size_before_relax): Handle fbCC. + 2000-04-20 Alexandre Oliva <aoliva@cygnus.com> + * config/tc-mn10300.c (HAVE_AM33): Redefine in terms of + HAVE_AM33_2. + 2000-04-03 Alexandre Oliva <aoliva@cygnus.com> + * config/tc-mn10300.c (md_pseudo_table): Use AM33_2 constant. + (HAVE_AM33): Match AM33_2 too. + (HAVE_AM33_2): New macro. + (md_assemble): Use it. Match 2.0 registers only if HAVE_AM33_2. + 2000-04-01 Alexandre Oliva <aoliva@cygnus.com> + * config/tc-mn10300.c (md_pseudo_table): Added `am33_2'. + (float_registers, double_registers): New variables. + (float_register_name, double_register_name): New functions. + (md_assemble): Recognize FP registers. Implement FMT_D3. + (mn10300_insert_operand): Support FP registers. + +2003-07-08 Chris Demetriou <cgd@broadcom.com> + + * config/tc-mips.c (mips_validate_fix): Do not warn about branch + target being a global symbol if not compiling SVR4 PIC code. + +2003-07-07 Nick Clifton <nickc@redhat.com> + + * doc/c-m32r.texi (M32R-Directives): New node. Document the + .high, .shigh and .low directives. + +2003-07-07 Richard Sandiford <rsandifo@redhat.com> + + * config/tc-h8300.c (h8300sxnmode): Add prototype. + (DSYMMODE): Remove. + (parse_exp): Replace expressionS argument with a h8_op. Parse the + operand size as well. + (skip_colonthing): Remove unused expression argument. Tighten checks + for 2-digit sizes. + (colonmod24): Remove. + (get_mova_operands): Combine calls to parse_exp and skip_colonthing. + (get_operand): Likewise. Use the standard code to read the size of + pc-relative operands. + (fix_operand_size): Include the size-guessing logic that used to be + in colonmod24 and get_operand. Don't apply dd:2 optimizations to + offsets with a symbolic component. + +2003-07-04 Nick Clifton <nickc@redhat.com> + + * config/tc-i386.c (tc_x86_regname_to_dw2regnum): Use ARRAY_SIZE + macro to compute size of selected register name array. + +2003-07-01 Martin Schwidefsky <schwidefsky@de.ibm.com> + + * config/tc-s390.c (md_parse_option): Add cpu type z990. + (md_begin): Add minimal cpu type logic for instructions with different + binary format depending on the cpu. + (md_assemble): Remove check for minimal cpu. + (s390_insert_operand): Add support for long displacements. + (md_gather_operands): Likewise. + (tc_s390_fix_adjustable): Likewise. + (tc_s390_force_relocation): Likewise. + (md_apply_fix3): Likewise. + +2003-06-30 Chris Demetriou <cgd@broadcom.com> + + * config/tc-mips.c (s_mipsset): Implement -march= handling + differently. + +2003-06-30 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c: Convert to ISO C90 prototypes. Remove unnecessary + prototypes and casts. Replace PTR with void *. Reformat. + * config/tc-mips.h: Likewise. + +2003-06-30 Alan Modra <amodra@bigpond.net.au> + + * config/tc-ia64.c (note_register_values): Warning fix. + * config/tc-mips.c (append_insn): Likewise. + +2003-06-29 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (mips_set_options,mips_opts): Support for + .set arch=FOO. + (file_mips_arch): Rename mips_arch. + (mips_arch_info,mips_tune_info): Remove. + (hilo_interlocks,gpr_interlocks,cop_interlocks): Use mips_opts.arch. + (mips_cpu_info_from_arch): New function. + (md_begin): Use file_mips_arch. + (macro_build,macro,mips_ip): Use mips_opts.arch. + (mips_set_architecture): Init file_mips_arch and mips_opts.arch. + (mips_after_parse_args): Remove mips_arch_info and mips_tune_info. + Use file_mips_arch. + (s_mipsset): Support for .set arch=FOO. + (mips_cpu_info_table): Fix typo. + +2003-06-26 H.J. Lu <hongjiu.lu@intel.com> + + * config/tc-i386.c (md_assemble): Declare "exp" before "if". + +2003-06-25 Richard Sandiford <rsandifo@redhat.com> + + * config/tc-h8300.c (get_specific): Allow ':8' to be used for + unsigned 8-bit operands. + +2003-06-24 Nick Clifton <nickc@redhat.com> + + * read.c (s_comm): Change error message to assume an unsigned size + has been passed to .comm. + * config/tc-sparc.c (s_common): Likewise. + * write.c (write_contents): Replace 'unsigned long' with + 'addressT' and 'long' with offsetT in order to allow computations + with very large values to work for 64-bit addressed targets. + (relax_and_size_all_segments): Likewise. + (relax_frag): Likewise. + (relax_segment): Likewise. + +2003-06-23 Mark Mitchell <mark@codesourcery.com> + + * config/tc-ppc.c (ppc_cleanup): Use bytes to count APUinfo slots. + +2003-06-23 H.J. Lu <hongjiu.lu@intel.com> + + * gas/config/tc-i386.c (md_assemble): Support Intel Precott New + Instructions. + + * gas/config/tc-i386.h (CpuPNI): New. + (CpuUnknownFlags): Add CpuPNI. + +2003-06-23 <davidm@hpl.hp.com> + + * config/tc-ia64.c (pseudo_func): Add ABI constants for linux, + freebsd, openvms, and nsk (non-stop kernel). + +2003-06-22 Jason Thorpe <thorpej@wasabisystems.com> + + * config/tc-ns32k.c (md_begin): Initialize inst_hash_table after + all locals have been declared. + +2003-06-21 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (ADDRESS_ADD_INSN,ADDRESS_ADDI_INSN): Remove + special handling for n32 ABI. + (macro): Likewise. + +2003-06-19 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (s_cpsetup,s_cprestore,s_cpreturn): Revert + 2003-06-11 change. + +2003-06-19 Christian Groessler <chris@groessler.org> + + * config/tc-z8k.c (parse_reg): Invalid registers generate an error + now, not only a warning. Add some more checks to detect invalid + registers. + (get_operand): For CLASS_IR remember register size in mode struct. + (get_specific): Handle new CLASS_IRO type. Add register size + checks for CLASS_IR and CLASS_IRO. + (md_apply_fix3): Fix undefined usage of buf. + +2003-06-19 Alan Modra <amodra@bigpond.net.au> + + * config/tc-ppc.c (ppc_csect): Pass alignment to ppc_change_csect. + (ppc_change_csect): Add align param. Align frag at start of csect. + (ppc_section, ppc_named_section): Adjust ppc_change_csect calls. + (ppc_frob_section): Align vma. + +2003-06-18 Jakub Jelinek <jakub@redhat.com> + + * dw2gencfi.c (EH_FRAME_ALIGNMENT): Define if not defined. + (output_cie): Don't pad. + (output_fde): Add align argument. Pad to align if not 0. + (cfi_finish): Set .eh_frame alignment to EH_FRAME_ALIGNMENT. + Pad just last FDE to EH_FRAME_ALIGNMENT. + +2003-06-18 Martin Schwidefsky <schwidefsky@de.ibm.com> + + * config/tc-s390.c (init_default_arch): Make current_mode_mask + dependent on s390_arch_size and current_cpu dependent on + current_mode_mask. + +2003-06-18 Svein E. Seldal <Svein.Seldal@solidas.com> + + * configure.in: Add c4x as an architecture variant to tic4x. + * configure: Regenerate. + * Makefile.in: Regenerate. + * doc/Makefile.in: Regenerate. + +2003-06-18 Alan Modra <amodra@bigpond.net.au> + + * config/tc-ppc.c (ppc_elf_suffix): Don't remove symbols other than + ".TOC." from PPC64_TOC relocs. + +2003-06-17 Alan Modra <amodra@bigpond.net.au> + + * config/tc-ppc.c (md_apply_fix3): Allow BRTAKEN, BRNTAKEN relocs. + +2003-06-16 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (ADDRESS_ADD_INSN,ADDRESS_ADDI_INSN, + ADDRESS_LOAD_INSN,ADDRESS_STORE_INSN): New macros. + (macro_build_ldst_constoffset,load_address,macro,s_cpsetup, + s_cprestore,s_cpadd): Use them. + +2003-06-16 Hans-Peter Nilsson <hp@axis.com> + + * configure.in: Add specific case for cris-*-linux-gnu* with + em=linux. + * configure: Regenerate. + * config/tc-cris.c (DEFAULT_CRIS_AXIS_LINUX_GNU): New macro, TRUE + if TE_LINUX defined, else FALSE. + (bfd_boolean demand_register_prefix): Set default from + DEFAULT_CRIS_AXIS_LINUX_GNU. + (symbols_have_leading_underscore): Similar. + * config/tc-cris.h (LOCAL_LABELS_DOLLAR): Define to 1. + +2003-06-13 Richard Earnshaw <rearnsha@arm.com> + + * tc-arm.c (FPU_DEFAULT, case TE_LINUX): Default to FPU_ARCH_FPA. + (FPU_DEFAULT, case TE_NetBSD): Default to FPU_ARCH_VFP for ELF, + FPU_ARCH_FPA for AOUT. + (md_begin): Don't try to guess the floating point architecture from + the CPU if the OS ABI (Linux, NetBSD) mandates a particular form. + +2003-06-13 Robert Millan <zeratul2@wanadoo.es> + + * configure.in: Add i386-netbsd-gnu target. + * configure: Regenerate. + +2003-06-12 Tom Tromey <tromey@redhat.com> + + * doc/as.texinfo (Comm): Added @node. Moved before CFI + directives node. + +2003-06-12 Richard Sandiford <rsandifo@redhat.com> + + * config/tc-mips.c (append_insn): In a compound relocation, take the + field width from the final (outermost) operator. + +2003-06-11 Richard Henderson <rth@redhat.com> + + * dw2gencfi.c (struct cfi_escape_data): New. + (cfi_add_CFA_nop): Remove. + (CFI_escape, dot_cfi_escape): New. + (dot_cfi): Remove nop. + (cfi_pseudo_table): Remove nop; add escape. + (output_cfi_insn): Likewise. + (select_cie_for_fde): Stop on escape. + * dw2gencfi.h (cfi_add_CFA_nop): Remove. + * read.c, read.h (do_parse_cons_expression): New. + * doc/as.texinfo (.cfi_escape): New. + +2003-06-11 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (s_cpsetup): Use mips_frame_reg instead of SP. + (s_cprestore): Likewise. + (s_cpreturn): Likewise. + +2003-06-11 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (tc_gen_reloc): Initialize retval amd reloc + with zeros. + +2003-06-11 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (md_pcrel_from): Return actual pcrel address. + (md_apply_fix3): Ignore non-special relocations. Remove superfluous + exceptions from size assert. Remove most of the addend fixup + specialcasing. Remove value, use valP directly. simplify fx_addnumber + handling. Remove zero addend specialcases. + (tc_gen_reloc): Use appropriate value for reloc2 addend. Remove + the addend fixup specialcase. + * config/tc-mips.h (MD_APPLY_SYM_VALUE): Define as 0. + +2003-06-11 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * write.c (write_relocs): Use xcalloc. Fix relocs initialization + in the RELOC_EXPANSION_POSSIBLE case. + +2003-06-11 Alan Modra <amodra@bigpond.net.au> + + * config/tc-i960.c (line_comment_chars): Add '#'. + * config/tc-mn10200.c (tc_gen_reloc): Don't ignore fx_subsy. + +2003-06-11 H.J. Lu <hongjiu.lu@intel.com> + + * po/Make-in (DESTDIR): New. + (install-data-yes): Support $(DESTDIR). + (uninstall): Likewise. + +2003-06-11 Alan Modra <amodra@bigpond.net.au> + + * Makefile.am: Run "make dep-am". + * Makefile.in: Regenerate. + * po/POTFILES.in: Regenerate. + +2003-06-10 Doug Evans <dje@sebabeach.org> + + * cgen.c (gas_cgen_finish_insn): CGEN_INSN_RELAX renamed to + CGEN_INSN_RELAXED. + * config/tc-fr30.c (md_estimate_size_before_relax): Ditto. + * config/tc-m32r.c (md_estimate_size_before_relax): Ditto. + * config/tc-openrisc.c (md_estimate_size_before_relax): Ditto. + +2003-06-10 Alan Modra <amodra@bigpond.net.au> + Gary Hade <garyhade@us.ibm.com> + + * config/tc-ppc.c (md_assemble): Handle PPC_OPERAND_DQ. + (md_apply_fix3): Special case lq insn. + +2003-06-10 Richard Sandiford <rsandifo@redhat.com> + + * config/tc-h8300.c (get_rtsl_operands): Accept unbracketed register + lists. Allow single-register ranges. + +2003-06-10 Richard Sandiford <rsandifo@redhat.com> + + * config/tc-h8300.c (h8300sxnmode): New. + (md_pseudo_table): Add .h8300sxn entry. + +2003-06-09 H.J. Lu <hongjiu.lu@intel.com> + + * NEWS: Updated for the new -n option for the i386 assembler. + + * config/tc-i386.c (optimize_align_code): New. + (md_shortopts): Add 'n'. + (md_parse_option): Handle 'n'. + (md_show_usage): Add '-n'. + + * config/tc-i386.h (optimize_align_code): Declared. + (md_do_align): Optimize code alignment only if optimize_align_code + is not 0. + + * doc/as.texinfo: Add the new -n option. + + * doc/c-i386.texi: Document the new -n option. + +2003-06-07 Richard Henderson <rth@redhat.com> + + * doc/as.texinfo: Document .cfi_rel_offset. + + * dw2gencfi.c (struct cfa_save_data, cfa_save_stack): New. + (cfi_add_CFA_offset): Detect invalid offsets. + (cfi_add_CFA_remember_state): Save cur_cfa_offset. + (cfi_add_CFA_restore_state): Restore it. + (CFI_rel_offset): New. + (cfi_pseudo_table): Add it. + (dot_cfi): Handle it. + +2003-06-07 H.J. Lu <hongjiu.lu@intel.com> + + * app.c (do_scrub_chars): Add states 14 and 15 to handle + predicate for ia64. + +2003-06-05 Michael Snyder <msnyder@redhat.com> + + * config/tc-h8sx.c (get_specific): Distinguish h8h from h8s ops. + (build_bytes): Ditto. + +2003-06-05 Richard Sandiford <rsandifo@redhat.com> + + * config/tc-h8sx.c (DMODE): Remove. + (colonmod24): Don't choose a default if the operand is a 16-bit + constant integer. + (fix_operand_size): New function. + (md_assemble): Use it to choose between @(d:2, ERn) and @(d:16,ERn). + Adjust @(d:2,ERn) operands before choosing the specific opcodes. + +2003-06-05 Michal Ludvig <mludvig@suse.cz> + + * dw2gencfi.c (cfi_add_CFA_insn, cfi_add_CFA_insn_reg) + (cfi_add_CFA_insn_reg_reg, cfi_add_CFA_insn_reg_offset): New. + (cfi_add_CFA_offset, cfi_add_CFA_def_cfa) + (cfi_add_CFA_register, cfi_add_CFA_def_cfa_register) + (cfi_add_CFA_def_cfa_offset): Use cfi_add_CFA_insn_*(). + (cfi_add_CFA_restore, cfi_add_CFA_undefined) + (cfi_add_CFA_same_value, cfi_add_CFA_remember_state) + (cfi_add_CFA_restore_state, cfi_add_CFA_nop): New. + (cfi_pseudo_table): New directives .cfi_return_column, + .cfi_restore, .cfi_undefined, .cfi_same_value, + .cfi_remember_state, .cfi_restore_state, .cfi_nop. + (dot_cfi, output_cfi_insn): Handle new directives. + * dw2gencfi.h (cfi_add_CFA_restore, cfi_add_CFA_undefined) + (cfi_add_CFA_same_value, cfi_add_CFA_remember_state) + (cfi_add_CFA_restore_state, cfi_add_CFA_nop): New prototypes. + +2003-06-04 Richard Henderson <rth@redhat.com> + + * dw2gencfi.c (output_cfi_insn): Fix typo for negative offsets. + + * dw2gencfi.c (cfi_finish): Set .eh_frame read-only. + +2003-06-04 Richard Henderson <rth@redhat.com> + + * config/tc-alpha.c (s_alpha_usepv): New. + (md_pseudo_table): Add it. + (alpha_cfi_frame_initial_instructions): New. + * config/tc-alpha.h (TARGET_USE_CFIPOP): New. + (tc_cfi_frame_initial_instructions): New. + * doc/c-alpha.texi: Document .usepv. + +2003-06-04 Jakub Jelinek <jakub@redhat.com> + + * as.c (show_usage): Document --execstack and --noexecstack. + (parse_args): Add --execstack and --noexecstack. + (main): Create .note.GNU-stack section if --execstack or + --noexecstack was given on comand line, set its SHF_EXECINSTR bit. + * as.h (flag_execstack, flag_noexecstack): New. + +2003-06-03 Chris Demetriou <cgd@broadcom.com> + + * config/tc-mips.c: (OPTION_ARCH_BASE, OPTION_ASE_BASE) + (OPTION_COMPAT_ARCH_BASE, OPTION_FIX_BASE) + (OPTION_MISC_BASE): New defines. + (OPTION_BREAK, OPTION_CONSTRUCT_FLOATS, OPTION_EB, OPTION_EL) + (OPTION_ELF_BASE, OPTION_FIX_VR4122, OPTION_FP32, OPTION_FP64) + (OPTION_GP32, OPTION_GP64, OPTION_M3900, OPTION_M4010, OPTION_M4100) + (OPTION_M4650, OPTION_M7000_HILO_FIX, OPTION_MARCH, OPTION_MDMX) + (OPTION_MEMBEDDED_PIC, OPTION_MIPS1, OPTION_MIPS16, OPTION_MIPS2) + (OPTION_MIPS3, OPTION_MIPS32, OPTION_MIPS32R2, OPTION_MIPS3D) + (OPTION_MIPS4, OPTION_MIPS5, OPTION_MIPS64) + (OPTION_MNO_7000_HILO_FIX, OPTION_MTUNE, OPTION_NO_CONSTRUCT_FLOATS) + (OPTION_NO_FIX_VR4122, OPTION_NO_M3900, OPTION_NO_M4010) + (OPTION_NO_M4100, OPTION_NO_M4650, OPTION_NO_MDMX, OPTION_NO_MIPS16) + (OPTION_NO_MIPS3D, OPTION_NO_RELAX_BRANCH, OPTION_RELAX_BRANCH) + (OPTION_TRAP): Redefine in terms of new defines. + (md_longopts): Reorder entries. + +2003-05-14 Michael Snyder <msnyder@redhat.com> + From Bernd Schmidt <bernds@redhat.com> + and Michael Snyder <msnyder@redhat.com> + and Alexandre Oliva <aoliva@redhat.com> + * config/tc-h8300.c: Add insns and addressing modes for h8300sx. + * config/tc-h8300.h: Ditto. + +2003-06-03 Nick Clifton <nickc@redhat.com> + + * tc-v850.c (tc-gen_reloc): Translate BFD_RELOC_32 into + BFD_RELOC_32_PCREL if the reloc is pc-relative. Do this + before calling bfd_reloc_type_lookup. + +2003-06-02 Alan Modra <amodra@bigpond.net.au> + + * read.c (emit_expr): Set dot_value. + * dw2gencfi.c (output_fde): Remove pcrel reloc hack. + +2003-06-02 Alan Modra <amodra@bigpond.net.au> + + * macro.c (sub_actual): Don't lose string if it turns out that + &string wasn't an arg. + +2003-05-31 Richard Henderson <rth@redhat.com> + + * dw2gencfi.c (output_fde): Use fix_new to emit pc-relative reloc. + (cfi_finish): Set flag_traditional_format around .eh_frame data. + +2003-05-29 Richard Henderson <rth@redhat.com> + + * config/tc-alpha.c (alpha_cur_ent_sym): Remove. + (all_frame_data, plast_frame_data, cur_frame_data): New. + (s_alpha_ent): Record data for dwarf2 cfi. + (s_alpha_end, s_alpha_mask, s_alpha_frame, s_alpha_prologue): Likewise. + (alpha_elf_md_end): Emit dwarf2 cfi for ecoff unwind directives. + * config/tc-alpha.h (md_end): New. + (DWARF2_DEFAULT_RETURN_COLUMN): New. + (DWARF2_CIE_DATA_ALIGNMENT): New. + +2003-05-29 Nick Clifton <nickc@redhat.com> + + * configure.in: Add i386-*-freebsd* entry. + * configure: Regenerate. + +2003-05-29 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com> + + * config/tc-m32r.c: Amend comment to refer to Renesas + +2003-05-27 Richard Henderson <rth@redhat.com> + + * expr.c (make_expr_symbol): Fold FAKE_LABEL_NAME use into the + symbol_create call. + (current_location): Use symbol_temp_new_now. + * stabs.c (s_stab_generic): Use symbol_temp_new. + * symbols.c (temp_label_name): Remove. + (symbol_temp_new, symbol_temp_make): Use FAKE_LABEL_NAME. + +2003-05-27 Richard Henderson <rth@redhat.com> + + * dw2gencfi.c, dw2gencfi.h: Rewrite from scratch. + * as.c (main): Always call cfi_finish. + * config/tc-i386.c (x86_dwarf2_return_column): New. + (x86_cie_data_alignment): New. + (md_begin): Set them. + (tc_x86_cfi_init): Remove. + (tc_x86_regname_to_dw2regnum): Fix 32-bit register numbers; + return int, not unsigned long; don't as_bad here. + (tc_x86_frame_initial_instructions): Streamline; use + updated api. + * config/tc-i386.h (tc_cfi_init): Remove. + (DWARF2_DEFAULT_RETURN_COLUMN): New. + (DWARF2_CIE_DATA_ALIGNMENT): New. + +2003-05-27 Richard Henderson <rth@redhat.com> + + * symbols.c (temp_label_name): New. + (symbol_temp_new, symbol_temp_new_now, symbol_temp_make): New. + (symbol_set_value_now): New. + * symbols.h: Prototype them. + * dwarf2dbg.c: Use them. + (fake_label_name, symbol_new_now, set_symbol_value_now): Remove. + +2003-05-23 Jason Eckhardt <jle@rice.edu> + + * config/tc-i860.c (target_xp): Declare variable. + (OPTION_XP): Declare macro. + (md_longopts): Add option -mxp. + (md_parse_option): Set target_xp. + (md_show_usage): Add -mxp usage. + (i860_process_insn): Recognize XP registers bear, ccr, p0-p3. + (md_assemble): Don't try expansions if XP_ONLY is set. + * doc/c-i860.texi: Document -mxp option and i860XP support. + +2003-05-23 Eric Christopher <echristo@redhat.com> + + * config/tc-mips.c (macro_build_jalr): Warning patrol. + +2003-05-22 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (append_insn): Use actual relocation size for new + fixp's. Don't relax overflow checking for partial_inplace relocations. + Use the actual relocation type in combined relocs, not just the type + of the first one. + (macro_build_jalr): Use actual relocation size for new fix. + (s_cpsetup, s_gpdword): Likewise. + +2003-05-22 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (macro): Don't use uninitialized tempreg. + +2003-05-22 Nick Clifton <nickc@redhat.com> + + * config/tc-xstormy16.c (md_pcrel_from_section): Do not produce + section relative offsets for relocs that will not be based on the + section symbol. + (xstormy16_md_apply_fix3): Remove previous patch to this + function. + +2003-05-07 Eric Christopher <echristo@redhat.com> + + * config/tc-mips.c (mips_abicalls): New variable. + (md_parse_option): Use. + (s_option): Ditto. + (s_abicalls): Ditto. + (mips_elf_final_processing): Set EF_MIPS_PIC and + EF_MIPS_CPIC dependent on above. + +2003-05-21 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> + + * tc-hppa.c (hppa_symbol_chars): Remove `,' and `!'. + +2003-05-21 Nick Clifton <nickc@redhat.com> + + * config/obj-elf.c: Include dwarf2dbg.h. + (elf_pseudo_tab): Add .file and .loc. + * config/tc-arc.c (md_pseudo_table): Remove .file and .loc. + * config/tc-arm.c: Likewise. + * config/tc-h8300.c: Likewise. + * config/tc-hppa.c: Likewise. + * config/tc-ia64.c: Likewise. + * config/tc-m68hc11.c: Likewise. + * config/tc-m68k.c: Likewise. + * config/tc-mmix.c: Likewise. + * config/tc-mn10300.c: Likewise. + * config/tc-ppc.c: Likewise. + * config/tc-sh.c: Likewise. + * config/tc-sparc.c: Likewise. + * config/tc-v850.c: Likewise. + * config/tc-frv.c: Likewise, and remove redundant inclusion of + dwarf2dbg.h. + * config/tc-ip2k.c: Likewise. + * config/tc-iq2000.c: Likewise. + * config/tc-xstormy16.c: Likewise. + * config/tc-xtensa.c: Likewise. + * Makefile.am: Regenerate dependencies. + * Makefile.in: Regenerate. + * aclocal.m4: Regenerate. + * config.in: Regenerate. + * configure: Regenerate. + * po/POTFILES.in: Regenerate. + * po/gas.pot: Regenerate. + +2003-05-21 Nick Clifton <nickc@redhat.com> + + * dw2gencfi.c (cfi_get_label): Use symbol_make for non + BFD_ASSEMBLER targets. + (cfi_startproc): Change type of saved_seg and cfi_seg to segT. + (dot_cfi_endproc): Only call bfd_set_section_flags for targets + defining BFD_ASSEMBLER. + +2003-05-20 Michal Ludvig <mludvig@suse.cz> + + * as.c (main): Remove tc_cfi_init(). + * dw2gencfi.c (cfi_parse_arg): Allow regnames beginning + with '%'. + (cfi_pseudo_table): Add "cfi_register" entry. + (cfi_make_insn): Handle CFA_register. + (cfi_output_insn): Ditto. + (dot_cfi): Ditto. + (cfi_get_label): Add 'simple' modifier to .cfi_startproc. + (dot_cfi_endproc): Reuse already emitted CIEs. + * testsuite/gas/cfi/cfi-i386.d: New pattern. + * testsuite/gas/cfi/cfi-x86-64.d: Ditto. + +2003-05-20 Nick Clifton <nickc@redhat.com> + + * config/tc-xstormy16.c: Include dwarf2dbg.h. + (md_pseudo_table): Add entries for .loc and .line. + +2003-05-20 Alan Modra <amodra@bigpond.net.au> + + * dw2gencfi.c (cfi_parse_arg): Only use tc_regname_to_dw2regnum if + defined. + (dot_cfi_endproc): Avoid C99 construct. + +2003-05-20 Michal Ludvig <mludvig@suse.cz> + + * dw2gencfi.c, dw2gencfi.h: New files. + * config/tc-i386.c (tc_x86_cfi_init): New function. + * config/tc-i386.h (TARGET_USE_CFIPOP, tc_cfi_init): New defines. + * as.c (parse_args): Set verbose flag on --verbose. + (main): Call tc_cfi_init()/cfi_finish(). + * as.h (verbose): New external variable. + * read.c (pobegin): Insert CFI pops to the list. + * symbols.c (local_symbol_make): Make symbol external. + * symbols.h (local_symbol_make): New prototype. + * Makefile.am: Add dw2gencfi.[ch] files. Run "make dep-am". + * Makefile.in: Regenerate. + * doc/as.texinfo: Added node "CFI directives" with description of + all implemented .cfi_* directives. + * doc/Makefile.in: Regenerate. + * po/POTFILES.in: Regenerate. + +2003-05-19 Svein E. Seldal <Svein.Seldal@solidas.com> + + * config/tc-tic4x.c (md_assemble): Added support for one-line parallel + insns. + * config/tc-tic4x.h: Added DOUBLEBAR_PARALLEL definition + +2003-05-18 Jason Eckhardt <jle@rice.edu> + + * config/tc-i860.c (i860_process_insn): Initialize fc after + each opcode mismatch. + +2003-05-16 Kelley Cook <kelleycook@wideopenwest.com> + + * configure.in: Accept i[3-7]86 variants. + * configure: Regenerate. + +2003-05-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.h: Fix comment formatting. + +2003-05-13 Hans-Peter Nilsson <hp@axis.com> + + * read.c (old_buffer, old_input, old_limit): Remove variables. + (read_a_source_file): Delete label contin. + <handling #APP/#NO_APP>: Use an "sb" to push #APP expansion into + input as with macros, instead of in separate old_* variables. + Zero-terminate string being scrubbed. + +2003-05-12 Nick Clifton <nickc@redhat.com> + + * config/tc-xstormy16.c (skipping_fptr): New local variable. + (md_assemble): Reset skipping_fptr. + (md_operand): If @fptr() is followed by a minus sign, set + skipping_fptr and ignore the fptr. If skipping_fptr is set and an + @fptr is detected, ignore it and reset skipping_fptr. + +2003-05-11 Jason Eckhardt <jle@rice.edu> + + * config/tc-i860.c (MAX_FIXUPS): Define. + (struct i860_fi fi[]): New struct. + (struct i860_it the_insn): Add above as member and move fields + exp, reloc, pcrel and fup into i860_fi. + (md_assemble): Replace all instances of exp, reloc, pcrel + and fup with fi[].exp, fi[].reloc, fi[].pcrel, fi[].fup. + Add a loop to possibly emit multiple fix-ups for each insn. + (i860_process_insn): Likewise. + (i860_get_expression): Likewise. + (md_apply_fix3): Use a bitwise check for OP_IMM_U5, not equality. + +2003-05-09 Martin Schwidefsky <schwidefsky@de.ibm.com> + + * config/tc-s390.c (s390_target_format): Always call init_default_arch. + +2003-05-07 H.J. Lu <hongjiu.lu@intel.com> + + * config/tc-ia64.c (alias_hash): New. + (alias_name_hash): New. + (secalias_hash): New. + (secalias_name_hash): New. + (md_pseudo_table): Add "secalias". + (md_begin): Initialize alias_hash, alias_name_hash, + secalias_hash and secalias_name_hash. + (struct alias): New. + (dot_alias): Implement .alias and .secalias directives. + (do_alias): New. + (ia64_adjust_symtab): New. + (do_secalias): New. + (ia64_frob_file): New. + + * config/tc-ia64.h (ia64_adjust_symtab): New. + (tc_adjust_symtab): Defined. + (ia64_frob_file): New. + (tc_frob_file): Defined. + +2003-05-07 Dmitry Diky <diwil@mail.ru> + + * tc-msp430.c: Add missing lines to known cpus list. + +2003-05-06 Alexandre Oliva <aoliva@redhat.com> + + * configure.in (MIPS_DEFAULT_ABI): AC_DEFINE. + * config/tc-mips.c (mips_after_parse_args): Set mips_abi to it. + * config.in, configure: Rebuilt. + +2003-05-05 H.J. Lu <hjl@gnu.org> + + * config/tc-mips.c (tc_gen_reloc): Add addend just once if + howto->partial_inplace is false. + +2003-05-05 Daniel Jacobowitz <drow@mvista.com> + + * config/tc-mips.c (mips_need_elf_addend_fixup): Remove + symbol_used_in_reloc_p check. + (md_apply_fix3): Remove check for howto->pcrel_offset. + +2003-05-03 H.J. Lu <hjl@gnu.org> + + * config/obj-elf.c (obj_elf_parse_section_letters): Make it a + fatal error for unknown section attribute. + + * config/tc-alpha.c (alpha_elf_section_letter): Return -1 for + unknown section attribute. + * config/tc-ia64.c (ia64_elf_section_letter): Likewise. + * config/tc-ppc.c (ppc_section_letter): Likewise. + + * config/tc-ia64.c (ia64_elf_section_letter): Handle 'o'. + (ia64_elf_section_type): Accept "unwind". + +2003-05-02 H.J. Lu <hjl@gnu.org> + + * read.h (demand_copy_string): New. + + * config/tc-alpha.c (demand_copy_string): Removed. + +2003-05-02 Michael Snyder <msnyder@redhat.com> + + * write.h (FAKE_LABEL_NAME): Allow override + (for targets that like eg. a leading dot in a local label). + +2003-05-02 Nick Clifton <nickc@redhat.com> + + * config/tc-xstormy16.c (xstormy16_md_apply_fix3): Do not bias the + addend with the symbol's value for pc-relative relocations against + a defined symbol - this will be done automatically. + +2003-05-01 H.J. Lu <hjl@gnu.org> + + * config/obj-elf.c (obj_elf_type): Accept "notype" and + "STT_NOTYPE". + +2003-05-01 H.J. Lu <hjl@gnu.org> + + * config/tc-ia64.h (tc_canonicalize_section_name): New. + + * config/obj-elf.c (obj_elf_section_name): Call + tc_canonicalize_section_name if it is defined. + +2003-05-01 H.J. Lu <hjl@gnu.org> + + * config/tc-ia64.c (ia64_check_label): New. + * config/tc-ia64.h (tc_check_label): New. + + * read.c (read_a_source_file): Call tc_check_label after + creating a user-defined label if defined. + +2003-05-02 Alan Modra <amodra@bigpond.net.au> + + * config/tc-ppc.c (md_show_usage): Mention -a32, -a64, -l, -le, -b, + -be and split strings to below 509 bytes in length. + +2003-05-01 Christian Groessler <chris@groessler.org> + + * expr.h: Fix comments in operatorT typedef. + * config/tc-z8k.c: Add 2003 to copyright message. + Fold s_segm() and s_unseg() into one function s_segm(parm) which + decides by the parameter. + (md_begin): Don't set linkrelax. Only set Z8002 default if no + command line argument was given to select the intended + architecure. + (get_interrupt_operand): Warn if NOP type code is emitted. + (newfix): New parameter 'size', forward it to 'fix_new_exp'. + (apply_fix): Call newfix with additional 'size' parameter. + (build_bytes): Remove unused variable 'nib'. Detect overflow in + 4 bit immediate arguments. + (md_longopts): Add 'linkrelax' option. + (md_parse_option): Adapt to new s_segm function. Set 'linkrelax' + variable when 'linkrelax' command line option is specified. + (md_show_usage): Display 'linkrelax' option. + (md_apply_fix3): Fix cases R_IMM4L, R_JR, and R_IMM8. Add cases + R_CALLR and R_REL16. + * config/tc-z8k.h: Undef WARN_SIGNED_OVERFLOW_WORD. + +2003-04-30 H.J. Lu <hjl@gnu.org> + + * config/tc-ia64.c (ia64_number_to_chars): New function pointer. + (ia64_float_to_chars): Likewise. + (dot_byteorder): Set target_big_endian, ia64_number_to_chars + and ia64_float_to_chars by tc_segment_info_data.endian from + the current segment if byteorder == -1. + (md_begin): Call dot_byteorder to set target_big_endian. + (md_atof): Call ia64_float_to_chars to convert floating point. + (ia64_float_to_chars_bigendian): New function. + (ia64_float_to_chars_littleendian): Likewise. + (ia64_elf_section_change_hook): Likewise. + + * config/tc-ia64.h (ia64_number_to_chars): New. + (md_number_to_chars): Changed to (*ia64_number_to_chars) + (ia64_elf_section_change_hook): New. + (md_elf_section_change_hook): Defined. + (ia64_segment_info_type): New struct. + (TC_SEGMENT_INFO_TYPE): Defined. + +2003-04-30 H.J. Lu <hjl@gnu.org> + + * config/tc-ia64.c (md_section_align): Deleted. + + * config/tc-ia64.h (SUB_SEGMENT_ALIGN): New. + (md_section_align): New. + +2003-04-30 H.J. Lu <hjl@gnu.org> + + * config/tc-ia64.c (stmt_float_cons): Fix alignment for real10 + and add real16. + (md_pseudo_table): Add "xreal16", "xreal16.ua", "real16" and + "real16.ua". + (md_atof): Add 6 byte padding of zero for real16. + +2003-04-29 Nick Clifton <nickc@redhat.com> + + * config/obj-elf.c (obj_elf_symver): Skip whitespace before the + start of a version name. + +2003-04-28 Chris Demetriou <cgd@broadcom.com> + + * configure.in (mips-*-*n*bsd*): Replace with... + (mips-*-netbsd*, mips-*-openbsd*): These. + * configure: Regenerate. + +2003-04-28 H.J. Lu <hjl@gnu.org> + + * config/tc-hppa.c (hppa_symbol_chars): New. + * config/tc-hppa.h (tc_symbol_chars): Likewise. + +2003-04-26 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.h (TC_FORCE_RELOCATION_SUB_SAME): Define again. + +2003-04-25 Chris Demetriou <cgd@broadcom.com> + + * NEWS: Belatedly mention support for MIPS32 Release 2. + +2003-04-24 Eric Christopher <echristo@redhat.com> + + * config/tc-mips.c (nopic_need_relax): Revert previous + change. + +2003-04-24 Dhananjay Deshpande <dhananjayd@kpitcummins.com> + + * config/tc-h8300.h (DWARF2_LINE_MIN_INSN_LENGTH): New + * config/tc-h8300.c (dwarf2dbg.h): Include + (md_pseudo_table): Handle .loc and .file + (md_assemble): Call dwarf2_emit_insn if BFD_ASSEMBLER. + * Makefile.am: Add dependency on dwarf2dbg.h for h8300 targets. + * Makefile.in: Regenerate. + +2003-04-24 Dhananjay Deshpande <dhananjayd@kpitcummins.com> + + * config/tc-h8300.c (Nmode, h8300hnmode, h8300snmode): New. + (md_pseudo_table): Add h8300hn, h8300sn. + * config/tc-h8300.h (COFF_MAGIC): Handle h8300hn, h8300sn. + * doc/c-h8300.texi : Add documentation for new machine directives. + +2003-04-24 Nick Clifton <nickc@redhat.com> + + * config/tc-ppc.c (ppc_symbol_chars): Define. + * config/tc-ppc.h (tc_symbol_chars): Define. + +2003-04-23 J"orn Rennecke <joern.rennecke@superh.com> + + * config/tc-sh.c: Amend comment to refer to SuperH. + * config/tc-sh.h: Likewise. + (LISTING_HEADER): Amend to refer to SuperH. + * config/tc-sh64.c: Change comment to refer to SuperH. + * config/tc-sh64.h (LISTING_HEADER): Change to refer to SuperH. + * doc/as.texinfo [SH, GENERIC]: Amend / Change to refer to SuperH. + * doc/c-sh.texi: Amend to refer to SuperH. + Add SuperH architecture documentation references. + * doc/c-sh64.texi: Change to refer to SuperH. + +2003-04-23 H.J. Lu <hjl@gnu.org> + + * app.c (do_scrub_chars): More checks for valid labels. + +2003-04-22 H.J. Lu <hjl@gnu.org> + + * app.c (do_scrub_chars): Check for valid label. + +2003-04-22 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com> + + * doc/as.texinfo: Replace references to Mitsubishi M32R with + references to Renesas M32R. + * doc/c-m32r.texi: Likewise. + +2003-04-21 Richard Henderson <rth@redhat.com> + + * dwarf2dbg.c (get_filenum): Skip as-yet unassigned file numbers. + (out_file_list): Assign non-null filename after generating error. + +2003-04-18 Jakub Jelinek <jakub@redhat.com> + + * ehopt.c (check_eh_frame): For aug_size == 0 + in state_seeing_aug_size state skip the state_skipping_aug + state. + +2003-04-15 Rohit Kumar Srivastava <rohits@kpitcummins.com> + + * doc/c-h8300.texi: Replace occurrances of 'Hitachi' with + 'Renesas'. + * doc/c-h8500.texi: Likewise. + * doc/c-sh.texi: Likewise. + * doc/c-sh64.texi: Likewise. + * doc/h8.texi: Likewise. + * config/tc-h8300.c: Likewise. + * config/tc-h8300.h: Likewise. + * config/tc-h8500.c: Likewise. + * config/tc-h8500.h: Likewise. + * config/tc-sh.c: Likewise. + * config/tc-sh.h: Likewise. + * config/tc-sh64.c: Likewise. + * config/tc-sh64.h: Likewise. + +2003-04-10 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-mips.h (tc_frag_data_type, TC_FRAG_TYPE): New. + * config/tc-mips.c: Use signed add for n32 address arithmetic. + (append_insn): When filling delay slots with instructions + that have fixups that tc_gen_reloc might consider modifyable + in variant frags, start a new frag. + (load_address): Generate GOT_DISP with of without offset + depending on whether symbol is local. For -xgot, use + GOT_PAGE/GOT_OFST or GOT_HI16/GOT_LO16. + (macro) <M_DLA_AB, M_LA_AB>: Likewise. + <M_JAL_A>: In NewABI, use CALL16 or GOT_DISP for small got, + CALL_HI16/CALL_LO16 or GOT_PAGE/GOT_OFST for big got. + <ld_st>: In NewABI with small got, always use + GOT_PAGE/GOT_OFST, with the latter in the load/store + instruction. With big got, use GOT_HI16/GOT_LO16 or + GOT_PAGE/GOT_OFST. + (tc_gen_reloc): Adjust variant frags with GOT_DISP in NewABI. + Add tc_frag_data.tc_fr_offset to addends. Decay CALL16, + GOT_OFST and GOT_DISP to GOT_DISP in NewABI. + (md_convert_frag): Use memmove for safe copying of overlapping + regions. + +2003-04-09 Stephane Carrez <stcarrez@nerim.fr> + + * doc/c-m68hc11.texi (M68HC11-Opts): Document -m68hcs12, -mshort, + -mlong, -mshort-double and -mlong-double options; use table @code. + (M68HC11-Syntax): Update to document 68HC12 operands. + (M68HC11-Modifiers): New section for operand modifiers. + (M68HC11-Directives): New section for specific assembler directives. + (M68HC11-Branch): Fix Overfull hbox error. + +2003-04-09 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-mips.c (macro): Add comments explaining the rationale + for Chris' change. + +2003-04-09 Chris Demetriou <cgd@broadcom.com> + + * config/tc-mips.c (macro): Put back `+ 0x8000' in test for 64-bit + constant address that Alexandre took out by accident. Reject + 64-bit addresses that are not sign extensions of 32 bits only if + we don't support 64-bit address constants. + +2003-04-09 Alan Modra <amodra@bigpond.net.au> + + * config/tc-ppc.c (md_apply_fix3): Generate ADDR16 relocs. + +2003-04-08 Nick Clifton <nickc@redhat.com> + + * as.c (perform_an_assembly_pass): If using cgen, call + gas_cgen_begin. + * cgen.c (gas_cgen_begin): New function. If + flag_signed_overflow_ok is set call cgen_set_signed_overflow_ok + otherwise call cgen_clear_signed_overflow_ok. + * cgen.h: Prototype gas_cgen_begin. + +2003-04-07 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * write.c (write_relocs): Remove unused variable. + +2003-04-06 Chris Demetriou <cgd@broadcom.com> + + * config/tc-mips.c (HAVE_64BIT_ADDRESS_CONSTANTS): New. + (macro): Use new macro to decide whether to emit constant address + as 32 or 64 bits if addresses are 32-bit wide but registers are + 64-bit wide. + +2003-04-05 Stephane Carrez <stcarrez@nerim.fr> + + * config/tc-m68hc11.c (M6811_OP_CALL_ADDR): New internal define. + (M6811_OP_PAGE_ADDR): New internal define. + (get_operand): New modifier %page and %addr to obtain page and + address part of a far-function. + (fixup8): Use BFD_RELOC_M68HC11_PAGE for a %page modifier; don't + complain on overflow for the BFD_RELOC_M68HC11_PAGE and truncation + relocs. + (fixup16): Use BFD_RELOC_M68HC11_LO16 for a %addr modifier. + (find_opcode): Add comment. + (md_estimate_size_before_relax): Force relocation of + STATE_UNDEXED_OFFSET types when the symbol is not absolute. + (tc_m68hc11_fix_adjustable): Check for BFD_RELOC_M68HC11_LO16 + instead of BFD_RELOC_LO16; temporarily make the BFD_RELOC_32 + on the symbol itself so that DWARF2 strings are merged correctly. + +2003-04-04 Svein E. Seldal <Svein.Seldal@solidas.com> + + * config/obj-coff.h (TARGET_FORMAT): Namespace cleanup, changed + default tic4x target format to 'coff2-tic4x'. + * config/tc-tic4x.c: Namespace cleanup. Replace s/c4x/tic4x/ and + s/c3x/tic3x/ + * config/tc-tic4x.h: Ditto + +2003-04-03 Nick Clifton <nickc@redhat.com> + + * NEWS: Mention support for Xtensa architecture. + +2003-04-02 Philip Blundell <philb@gnu.org> + + * config/tc-arm.c (arm_force_relocation): Return 0 for OFFSET_IMM. + +2003-04-02 Chris Demetriou <cgd@broadcom.com> + + * config/tc-mips.c (macro2): Adjust implementation of + M_ULH, M_ULHU, M_ULW, and M_ULD so that they work properly + in the case where the source and destination registers + are the same. + +2003-04-01 Bob Wilson <bob.wilson@acm.org> + + * Makefile.am (CPU_TYPES): Add xtensa. + (TARGET_CPU_CFILES): Add config/tc-xtensa.c. + (TARGET_CPU_HFILES): Add config/tc-xtensa.h. + (xtensa-relax.o): New target. + Run "make dep-am". + * Makefile.in: Regenerate. + * configure.in: Handle xtensa-*-*. Add xtensa-relax.o to + extra_objects for xtensa targets. + * configure: Regenerate. + * write.c (write_object_file): Add new md_post_relax_hook. + * config/tc-xtensa.c: New file. + * config/tc-xtensa.h: Likewise. + * config/xtensa-istack.h: Likewise. + * config/xtensa-relax.c: Likewise. + * config/xtensa-relax.h: Likewise. + * doc/Makefile.am (CPU_DOCS): Add c-xtensa.texi. + * doc/Makefile.in: Regenerate. + * doc/all.texi: Set new XTENSA variable. + * doc/as.texinfo: Set new Xtensa variable. Describe + Xtensa-specific options. Define line comment character for + Xtensa. Add Xtensa processors to list of ELF targets where + alignment is specified in bytes. Add new Xtensa-Dependent node. + Add acknowledgements for those contributing to the Xtensa port. + * doc/internals.texi: Describe new md_post_relax_hook. + * doc/c-xtensa.texi: New file. + +2003-04-01 Nick Clifton <nickc@redhat.com> + Richard Earnshaw <rearnsha@arm.com> + + * config/tc-arm.c: Remove presence of (r) and (tm) symbols. + (ARM_ARCH_IWMMXT): Simplify. + (insns): Place iwmmx instructions in correct place in table. + (arm_add_note): New function: Add a note entry to a .note section. + (md_begin): Make the default architecture be unknown. + Suppress the creation of an arm note section. + +2003-03-26 Eric Christopher <echristo@redhat.com> + + * config/tc-mips.c (nopic_need_relax): Check for S_IS_EXTERN. + +2003-03-25 Stan Cox <scox@redhat.com> + Nick Clifton <nickc@redhat.com> + + Contribute support for Intel's iWMMXt chip - an ARM variant: + + * config/tc-arm.c: (ARM_CEXT_IWMMXT, ARM_ARCH_IWMMXT, WR_PREFIX, + WC_PREFIX, REG_TYPE_IWMMXT): New constants. + (enum wreg_type, enum iwmmxt_insn_type): New types. + (wr_register, wc_register, wcg_register): New macros. + (iwmmxt_table): New variable. + (wreg_required_here, do_iwmmxt_byte_addr, do_iwmmxt_tandc, + do_iwmmxt_tbcst, do_iwmmxt_textrc, do_iwmmxt_textrm, + do_iwmmxt_tinsr, do_iwmmxt_tmcr, do_iwmmxt_tmcrr, do_iwmmxt_tmia, + do_iwmmxt_tmovmsk, do_iwmmxt_tmrc, do_iwmmxt_tmrrc, + do_iwmmxt_torc, do_iwmmxt_waligni, do_iwmmxt_wmov, + do_iwmmxt_word_addr, do_iwmmxt_wrwr, do_iwmmxt_wrwrwcg, + do_iwmmxt_wrwrwr, do_iwmmxt_wshufh, do_iwmmxt_wzero, + cp_byte_address_offset, cp_byte_address_required_here, + check_iwmmxt_insn): New functions. + (asm_opcode_insns): Add iWMMXt instructions. + (md_begin): Set the mach value for iWMMXt targets. Create a note + section to identify iwmmxt binaries. + (md_apply_fix3): Handle BFD_RELOC_ARM_CP_OFF_IMM_S2. + * doc/c-arm.texi: Document the support for the iWMMXt. + * NEWS: Mention new support. + +2003-03-24 Daniel Néri <dne@mayonnaise.net> + + * doc/as.texinfo: Rename the all occurances of C54X to TIC54X. + * doc/all.texi: Likewise. + * doc/c-tic54x.texi: Likewise. + +2003-03-21 Andreas Schwab <schwab@suse.de> + + * config/tc-ia64.c (generate_unwind_image): Fix type of unw_rec to + avoid aliasing issue. + +2003-03-21 Martin Schwidefsky <schwidefsky@de.ibm.com> + + * config/tc-s390.c (s390_arch_size): Initialize to zero. + (current_arch_mask): Rename to current_mode_mask. + (current_arch_requested): Remove variable. + (current_cpu): New variable. + (init_default_arch): Set defaults values for s390_arch_size, + current_mode_mask and current_cpu. + (md_parse_option): New options -mesa, -mzarch and -march={g5,g6,z900}. + (md_begin): Replace current_arch_mask by current_cpu. + (md_assemble): Adapt check and error message to current_mode_mask and + current_cpu. + +2003-03-09 James E Wilson <wilson@tuliptree.org> + + * macro.c (buffer_and_nest): Store more to sb instead of '\n'. + * read.c (get_line_sb): Return end of line character or '\n' if + it is zero or non-existent. + +2003-03-12 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-mips.c (mips_validate_fix): New function. + * config/tc-mips.h (TC_VALIDATE_FIX): Define. + (mips_validate_fix): Declare. + +2003-03-12 Alexandre Oliva <aoliva@redhat.com> + + * Reverted 2003-03-02's patch. + +2003-03-11 Steve Ellcey <sje@cup.hp.com> + + * dwarf2dbg.c (generic_dwarf2_emit_offset): New. + (TC_DWARF2_EMIT_OFFSET): Provide default. + (out_debug_aranges, out_debug_info): Use it. + * config/tc-ia64.c (ia64_dwarf2_emit_offset): New. + (ia64_cons_fix_new): Move FUNC_DTP_RELATIVE handling ... + (ia64_gen_real_reloc_type): ... here. + * config/tc-ia64.h (TC_DWARF2_EMIT_OFFSET): New. + +2003-03-09 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (s_mips_end): Remove !BFD_ASSEMBLER case. + (s_mips_ent): Likewise. + +2003-03-04 Dmitry Diky <diwil@mail.ru> + + * config/tc-msp430.c (mcu_types): Add recently announced x1122 + and x1123 devices, add missed x437. + (md_show_usage): Sort device list. + +2003-03-03 J"orn Rennecke <joern.rennecke@superh.com> + + * config/tc-sh.c (sh_dsp): Replace with preset_target_arch. + (md_begin): Use preset_target_arch. + (md_longopts): Make isa option unconditional. + (md_parse_option): Make OPTION_DSP and OPTION_ISA sh4 / any + set preset_target_arch. + (md_apply_fix3): If BFD_ASSEMBLER, adjust SWITCH_TABLE fixups + by -S_GET_VALUE (fixP->fx_subsy). + (tc_gen_reloc): For SWITCH_TABLE fixups, the symbol is fixp->fx_subsy, + and the addend is 0. + Adjust addend of R_SH_IND12W relocations by fixp->fx_offset - 4. + * config/tc-sh.h (TC_FORCE_RELOCATION_SUB_LOCAL): Define. + +2003-03-02 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (append_insn): Add handling of + BFD_RELOC_MIPSEMB_16_PCREL_S2. Avoid emitting unneeded + BFD_RELOC_16_PCREL_S2 relocs and add earlier warnings about + misaligned address and reange overflow. + (macro_build): Add handling of BFD_RELOC_MIPSEMB_16_PCREL_S2. Add + earlier warnings about misaligned address and reange overflow. + (mips_ip): Add handling of BFD_RELOC_MIPSEMB_16_PCREL_S2. + (md_apply_fix): Likewise. Fix warning output. + (tc_gen_reloc): Add handling of BFD_RELOC_MIPSEMB_16_PCREL_S2. + Allow BFD_RELOC_16_PCREL_S2 for all ABIs. + (md_convert_frag): Add handling of BFD_RELOC_MIPSEMB_16_PCREL_S2. + +2003-02-21 Nick Clifton <nickc@redhat.com> + + * NEWS: Mention availability of test generator program. + +2003-02-21 Miles Bader <miles@gnu.org> + + * config/tc-v850.c (system_registers): Add v850e debug registers. + (system_register_name): Accept up to 27 (the last v850e sys register). + +2003-02-21 Bob Wilson <bob.wilson@acm.org> + + * doc/as.texinfo: Define new COFF-ELF variable to conditionalize text + relevant to both COFF and ELF. Fix obvious typos and texinfo bugs. + Capitalize section headings consistently. Format index entries more + consistently. Unconditionalize text about whether text and data + sections are alterable. Use @ifnottex for alternatives to @tex output + so that HTML works. Clean up COFF vs. ELF descriptions of .section, + .size and .type directives. Be more polite about bad bug reports. + Move FDL into a separate file. + * doc/fdl.texi: New file. + +2003-02-21 Richard Sandiford <rsandifo@redhat.com> + + * config/tc-mips.c (prev_reloc_op_frag): New variable. + (macro): Check it to decide whether a new frag is needed. + (my_getSmallExpression): Set it. + +2003-02-20 jmc <jmc@prioris.mini.pw.edu.pl> + + * cgen.c: Fix typo: intial -> initial. + +2003-02-19 Jie Zhang <zhangjie@magima.com.cn> + + * app.c (do_scrub_chars): Handle '||' in two states. + +2003-02-13 Alan Modra <amodra@bigpond.net.au> + + * write.c (TC_FORCE_RELOCATION_SUB_SAME): Revert last change. + * config/tc-s390.h (TC_FORCE_RELOCATION_SUB_SAME): Define. + +2003-02-11 Uwe Stieber <uwe@wwws.de> + + * configure.in: Add support for kaOS as cross build target system. + * configure: Regenerated. + +2003-02-10 Nick Clifton <nickc@redhat.com> + + * config/tc-arm.c (md_begin): If the Maverick co-processor is + selected, set the EF_ARM_MAVERICK_FLOAT flag and + bfd_mach_arm_ep9312 machine number. + +2003-02-08 Richard Sandiford <rsandifo@redhat.com> + + * config/tc-mips.c (reloc_needs_lo_p): New function. + (fixup_has_matching_lo_p): New function. + (append_insn): Use reloc_needs_lo_p to check whether a relocation + might need a matching %lo(). Reuse the head of mips_hi_fixup_list + if that fixup already has a matching %lo(). Don't call frag_wane here. + (macro): Call frag_wane here if the last unmatched hi was in the + current frag. + (pic_need_relax): New function, split out from... + (md_estimate_size_before_relax): ...here. + (mips_frob_file): Use reloc_needs_lo_p. Use pic_need_relax to test + whether BFD_RELOC_MIPS_GOT16 fixups refer to global symbols. + +2003-02-07 Richard Sandiford <rsandifo@redhat.com> + + * config/tc-mips.c (my_getSmallExpression): Rework bracket handling. + +2003-02-06 Alan Modra <amodra@bigpond.net.au> + + * config/tc-ppc.c (ppc_elf_suffix): Undo part of last change so that + x@toc+off works. + +2003-02-05 Alan Modra <amodra@bigpond.net.au> + + * config/tc-ppc.c (mapping): Handle new TLS reloc specs. + (ppc_elf_suffix): Don't warn for x+off@got when ppc64 and don't + accept x@got+off etc. + (md_assemble): Handle TLS relocs. + (ppc_force_relocation): Force for all TLS relocs. + (ppc_fix_adjustable): Likewise. + (md_apply_fix3): Handle TLS relocs. + +2003-02-04 Alan Modra <amodra@bigpond.net.au> + + * config/obj-elf.c (obj_elf_change_section): Set SEC_LINK_ONCE and + SEC_LINK_DUPLICATES_DISCARD directly rather than using elf_linkonce_p. + +2003-02-02 Richard Sandiford <rsandifo@redhat.com> + + * config/tc-mips.c (enum small_ex_type): Remove. + (imm_unmatched_hi): Remove. + (md_assemble): Remove use of imm_unmatched_hi. Remove the last + argument from calls to append_insn. + (append_insn): Remove unmatched_hi parameter; check reloc_type[0] + instead. + (macro_build): Update append_insn calls. + (mips16_macro_build, macro_build_lui): Likewise. + (mips_ip): Rework handling of small expressions. Move explicit + relocation handling into my_getSmallExpression. Assume that the + value of 'o' operands is zero if there is only one bracketed + expression left. + (percent_op): Make constant. Record the BFD relocation code + associated with each operator. + (my_getSmallParser, my_getPercentOp): Remove. + (parse_relocation): New function. + (my_getSamllExpression): Rework. Fill in relocations here + rather than in mips_ip. + +2003-01-29 Nick Clifton <nickc@redhat.com> + + * config/tc-i386.c (line_comment_chars): Add '#'. This makes the + assembler's handling of # <linenum> "<filename>" directives work. + +2003-01-28 Jakub Jelinek <jakub@redhat.com> + + * dwarf2dbg.c: Include filenames.h. + (struct file_entry): Make filename const char *. + (dirs, dirs_in_use, dirs_allocated): New variables. + (get_filenum): Add NUM argument. Build directory table. + (dwarf2_where): Adjust caller. + (dwarf2_directive_file): Use get_filenum to allocate + slot in file and directory tables. + (dwarf2_directive_loc): Recreate full filename from + directory and filename part if needed for listing. + (out_file_list): Output directory table. + Output main source file dirname before its filename. + +2003-01-28 Dmitry Diky <diwil@mail.ru> + + * config/tc-msp430.c: Replace occurences of 'tolower' with + 'TOLOWER'. + +2003-01-27 David Mosberger <davidm@hpl.hp.com> + + * config/tc-ia64.c (dot_vframesp): Correct error message. + (dot_vframepsp): Ditto. + +2003-01-27 Alexandre Oliva <aoliva@redhat.com> + + * configure.in (em): Set to irix on all Irix systems. + * configure: Rebuilt. + * config/te-irix.h: New file. + * config/tc-mips.c (mips_dwarf2_format): Use TE_IRIX to decide + whether to use Irix-specific 64-bit format. + +2003-01-27 Martin Schwidefsky <schwidefsky@de.ibm.com> + + * config/tc-s390.c (s390_elf_cons): Avoid designated initializers. + +2003-01-25 Jakub Jelinek <jakub@redhat.com> + + * config/tc-sparc.c (sparc_ip): Handle TLS % operators. + (tc_gen_reloc): Handle TLS relocs. + (sparc_cons, cons_fix_new_sparc): Handle %r_tls_dtpoff. + * config/tc-sparc.h (tc_fix_adjustable): Don't adjust TLS + relocs. + * config/obj-elf.c (obj_elf_section_word): Handle tls. + (obj_elf_type): Handle tls_object. + +2003-01-24 Martin Schwidefsky <schwidefsky@de.ibm.com> + + * config/tc-s390.c (s390_tls_suffix): New function. + (elf_suffix_type): Add suffix enums for TLS relocations. + (s390_elf_suffix): Add suffix strings for TLS relocations. + (s390_elf_cons): Map new lenght/elf suffix combinations for TLS to + bfd relocations. + (md_gather_operands): Map new instruction operand/elf suffix + combinations for TLS to bfd relocations. + (tc_s390_fix_adjustable): Add new TLS relocations. + (tc_s390_force_relocation): Likewise. + (md_apply_fix3): Likewise. + +2003-01-24 Alan Modra <amodra@bigpond.net.au> + + * as.h: Update copyright date. + * symbols.c: Likewise. + * config/tc-d10v.h: Likewise. + * config/tc-fr30.h: Likewise. + * config/tc-i960.h: Likewise. + * config/tc-mips.h: Likewise. + + * config/tc-hppa.h (DIFF_EXPR_OK): Define. + (MD_APPLY_SYM_VALUE): Move. + +2003-01-23 Nick Clifton <nickc@redhat.com> + + * NEWS: Announce sh2e support. + + Add sh2e support: + 2002-04-02 Alexandre Oliva <aoliva@redhat.com> + * config/tc-sh.c (md_show_usage): Added sh2e next to sh3e. + (sh_elf_final_processing): Handle arch_sh2e. + +2003-01-23 Alan Modra <amodra@bigpond.net.au> + + * symbols.c (S_FORCE_RELOC): Add "strict" param. + * symbols.h (S_FORCE_RELOC): Likewise. + * config/obj-aout.h (S_FORCE_RELOC): Likewise. + * config/obj-bout.h (S_FORCE_RELOC): Likewise. + * config/obj-coff.h (S_FORCE_RELOC): Likewise. + * config/obj-ieee.h (S_FORCE_RELOC): Likewise. + * config/obj-vms.h (S_FORCE_RELOC): Likewise. + * write.c (generic_force_reloc): New function. + (TC_FORCE_RELOCATION): Use it here instead of S_FORCE_RELOC. + (TC_FORCE_RELOCATION_SUB_SAME): Test TC_FORCE_RELOCATION too. + (adjust_reloc_syms): Adjust S_FORCE_RELOC call. + * as.h (generic_force_reloc): Declare. + * doc/internals.texi (S_FORCE_RELOC): Update. + (TC_FORCE_RELOCATION_SUB_SAME): Update. + + * config/tc-alpha.c (alpha_force_relocation): Adjust to use + generic_force_reloc. + (alpha_fix_adjustable): Likewise. + * config/tc-arm.c (arm_force_relocation): Likewise. + * config/tc-cris.c (md_cris_force_relocation): Likewise. + * config/tc-frv.c (frv_force_relocation): Likewise. + * config/tc-i386.c (md_apply_fix3): Likewise. + * config/tc-ia64.c (ia64_force_relocation): Likewise. + * config/tc-ip2k.c (ip2k_force_relocation): Likewise. + * config/tc-m32r.c (m32r_force_relocation): Likewise. + * config/tc-m68hc11.c (tc_m68hc11_force_relocation): Likewise. + * config/tc-mcore.c (mcore_force_relocation): Likewise. + * config/tc-mips.c (mips_force_relocation): Likewise. + * config/tc-mmix.c (mmix_force_relocation): Likewise. + * config/tc-ppc.c (ppc_force_relocation): Likewise. + * config/tc-s390.c (tc_s390_force_relocation): Likewise. + * config/tc-sh.c (sh_force_relocation): Likewise. + (md_pcrel_from_section): Likewise. + * config/tc-sparc.c (tc_gen_reloc): Likewise. + * config/tc-v850.c (v850_force_relocation): Likewise. + * config/tc-xstormy16.c (xstormy16_force_relocation): Likewise. + * config/tc-i386.h (TC_FORCE_RELOCATION): Likewise. + * config/tc-mcore.h (TC_FORCE_RELOCATION): Likewise. + * config/tc-sparc.h (tc_fix_adjustable): Likewise. + + * config/tc-d10v.c (d10v_force_relocation): Delete. + * config/tc-d10v.h (TC_FORCE_RELOCATION): Don't define. + * config/tc-dlx.c (md_dlx_force_relocation): Delete. + * config/tc-dlx.h (TC_FORCE_RELOCATION): Don't define. + * config/tc-fr30.c (fr30_force_relocation): Delete. + * config/tc-fr30.h (TC_FORCE_RELOCATION): Don't define. + * config/tc-mn10300.c (mn10300_force_relocation): Delete. + * config/tc-mn10300.h (TC_FORCE_RELOCATION): Don't define. + (TC_FORCE_RELOCATION_SUB_SAME): Test TC_FORCE_RELOCATION too. + * config/tc-i960.h (TC_FORCE_RELOCATION_SUB_SAME): Likewise. + * config/tc-hppa.c (hppa_force_relocation): Adjust S_FORCE_RELOC call. + * config/tc-mips.c (RELAX_BRANCH_TOOFAR): Warning fix. + * config/tc-mips.h (TC_FORCE_RELOCATION_SUB_SAME): Don't define. + * config/tc-openrisc.c (openrisc_force_relocation): Delete. + * config/tc-openrisc.h (TC_FORCE_RELOCATION): Don't define. + * config/tc-sparc.c (elf32_sparc_force_relocation): Delete. + * config/tc-sparc.h (TC_FORCE_RELOCATION): Don't define for ELF. + * config/tc-i386.c (i386_force_relocation): Delete. + * config/tc-i386.h (TC_FORCE_RELOCATION): Don't define for + BFD_ASSEMBLER. + (EXTERN_FORCE_RELOC): Fix TE_PE and STRICT_PE_FORMAT nesting. + * config/tc-m68k.h (TC_FORCE_RELOCATION): Don't define. + * config/tc-pj.h (TC_FORCE_RELOCATION): Don't define. + * config/tc-sh.h (TC_FORCE_RELOCATION_SUB_ABS): Don't call + S_FORCE_RELOC. + (TC_FORCE_RELOCATION_SUB_SAME): Test TC_FORCE_RELOCATION too. + * config/tc-sh64.h (TC_FORCE_RELOCATION_SUB_SAME): Likewise. + +2003-01-23 Alan Modra <amodra@bigpond.net.au> + + * config/tc-sh64.c (shmedia_frob_section_type): Adjust for changed + sh64_elf_section_data. + * config/tc-sh64.h: Include elf32-sh64.h. + * config/tc-m68hc11.c: Don't include stdio.h. + (md_show_usage): Fix missing continuation. + * Makefile.am: Run "make dep-am". + * Makefile.in: Regenerate. + +2003-01-22 Nick Clifton <nickc@redhat.com> + + * as.h: Include fopen-bin.h not fopen-same.h for mingw32 hosts. + +2003-01-21 Fabio Alemagna <falemagn@aros.org> + + * configure.in: Handle *-*-aros*. + * configure: Regenerated from configure.in. + +2003-01-20 Martin Schwidefsky <schwidefsky@de.ibm.com> + + * config/tc-s390.c (elf_suffix_type): Add suffix enums for gotoff, + gotplt and pltoff relocations. + (s390_elf_suffix): Add suffix strings for gotoff, gotplt and pltoff. + (s390_elf_cons): Map new lenght/elf suffix combinations for gotoff, + gotplt and pltoff to bfd relocations. + (md_gather_operands): Map new instruction operand/elf suffix + combinations to bfd relocations. + (tc_s390_fix_adjustable): Add new gotoff, gotplt and pltoff relocations + to the list of unadjustable relocations. + (tc_s390_force_relocation): Always emit relocations for gotoff, gotplt + and pltoff relocations. + (md_apply_fix3): Add the new relocations. + +2003-01-20 Martin Schwidefsky <schwidefsky@de.ibm.com> + + * config/tc-s390.c (md_apply_fix3): Emit error message for relocations + with a subsy symbol. + +2003-01-17 Stephane Carrez <stcarrez@nerim.fr> + + * config/tc-m68hc11.c (tc_m68hc11_fix_adjustable): Prevent adjustment + of relocs for memory bank addressing. + +2003-01-17 Stephane Carrez <stcarrez@nerim.fr> + + * config/tc-m68hc11.c (md_show_usage): Update usage. + (md_parse_option): Recognize -m68hcs12. + (m68hc11_elf_final_processing): Set EF_M68HCS12_MACH flag to identify + HCS12. + * doc/as.texinfo (Overview): Document new option -m68hcs12. + +2003-01-16 Jakub Jelinek <jakub@redhat.com> + + * config/tc-ia64.c (ia64_cons_fix_new): Handle @dtprel() in data. + +2003-01-16 Alan Modra <amodra@bigpond.net.au> + + * Makefile.am: Run "make dep-am". + * Makefile.in: Regenerate. + * po/POTFILES.in: Regenerate. + +2003-01-11 Alan Modra <amodra@bigpond.net.au> + + * read.c (get_absolute_expr): New, split out from.. + (get_absolute_expression): ..here. + * read.h (get_absolute_expr): Declare. + * config/obj-elf.c (elf_common): Use offsetT for "temp" and "size". + Trim size to arch bits_per_address, and test for negative input + via get_absolute_expr. + +2003-01-07 DJ Delorie <dj@redhat.com> + + * config/tc-xstormy16.c (md_cgen_lookup_reloc): Adjust value based + on operand type. + (xstormy16_md_apply_fix3): Use adjustment. + +2003-01-02 Ben Elliston <bje@redhat.com> + + * configure.in: Add iq2000-elf target. + * configure: Regenerate. + * config/tc-iq2000.c: New file. + * config/tc-iq2000.h: Likewise. + * po/gas.pot: Regenerate. + +2003-01-02 Chris Demetriou <cgd@broadcom.com> + + * config/tc-mips.c: Update copyright years to include 2003. + (mips_ip): Fix indentation of "+A", "+B", and "+C" handling. + Additionally, clean up their code slightly and clean up their + comments some more. + + * doc/c-mips.texi: Add MIPS32r2 to ".set mipsN" documentation. + +2003-01-01 Daniel Jacobowitz <drow@mvista.com> + + * doc/Makefile.am (as.1): Depend on "asconfig.texi gasver.texi + $(CPU_DOCS)". + * doc/Makefile.in: Regenerate. + +2003-01-01 John David Anglin <dave.anglin@nrc.ca> + + * config/obj-elf.c (special_sections): Work around HP's incorrect usage + of .init and .fini sections for array initializers and finalizers. + +2002-12-31 Chris Demetriou <cgd@broadcom.com> + + * config/tc-mips.c (validate_mips_insn, mips_ip): Recognize + the "+D" operand, which will be used only by the disassembler. + +2002-12-30 Chris Demetriou <cgd@broadcom.com> + + * configure.in: Recognize mipsisa32r2, mipsisa32r2el, and + CPU variants. + * configure: Regenerate. + * config/tc-mips.c (ISA_HAS_DROR, ISA_HAS_ROR): New defines. + (macro_build): Handle "K" operand. + (macro2): Use ISA_HAS_DROR and ISA_HAS_ROR in the places where + CPU_HAS_DROR and CPU_HAS_ROR are currently used. + (mips_ip): New variable "lastpos", and implement "+A", "+B", + and "+C" operands for MIPS32 Release 2 ins/ext instructions. + Implement "K" operand for MIPS32 Release 2 rdhwr instruction. + (validate_mips_insn): Implement "+" as a way to extend the + allowed operands, and implement "K", "+A", "+B", and "+C" + operands. + (OPTION_MIPS32R2): New define. + (md_longopts): Add entry for OPTION_MIPS32R2. + (OPTION_ELF_BASE): Adjust to accommodate OPTIONS_MIPS32R2. + (md_parse_option): Handle OPTION_MIPS32R2. + (s_mipsset): Reimplement handling of ".set mipsN" options + and add support for ".set mips32r2". + (mips_cpu_info_table): Add entry for "mips32r2" (MIPS32 Release 2). + (md_show_usage): Document "-mips32r2" option. + * doc/as.texinfo: Document "-mips32r2" option. + * doc/c-mips.texi: Likewise. + +2002-12-30 Dmitry Diky <diwil@mail.ru> + + * configure.in: Add msp430 target. + * configure: Regenerate. + * Makefile.am: Add msp430 target. + * Makefile.in: Regenerate. + * config/tc-msp430.c: New file: msp430 assembler. + * config/tc-msp430.h: New file: target macros for msp430. + * doc/Makefile.am: Add msp430 target. + * doc/Makefile.in: Regenerate. + * doc/as.texinfo: Include msp430 documenation. + * doc/all.texi: Enable msp430 documentation. + * doc/c-msp430.texi: New file: document msp430 specific features + of the assembler. + +2002-12-25 Alexandre Oliva <aoliva@redhat.com> + + * dwarf2dbg.c (DWARF2_ADDR_SIZE): New macro. + (dwarf2_finish): Use it. + * doc/internals.texi (DWARF2_ADDR_SIZE): Document it. + * config/tc-mips.h (DWARF2_ADDR_SIZE): Override. + +2002-12-20 DJ Delorie <dj@redhat.com> + + * config/tc-xstormy16.c (md_cgen_lookup_reloc): Support + BFD_RELOC_XSTORMY16_12. + +2002-12-19 Alan Modra <amodra@bigpond.net.au> + + * doc/as.texinfo (Invoking): Typo fix. + * config/tc-tic54x.c (encode_operand): Comment typo fix. + +2002-12-18 Kazu Hirata <kazu@cs.umass.edu> + + * doc/c-alpha.texi: Fix typos. + * doc/c-arm.texi: Likewise. + * doc/c-d10v.texi: Likewise. + * doc/c-i370.texi: Likewise. + * doc/c-i960.texi: Likewise. + * doc/c-ia64.texi: Likewise. + * doc/c-mmix.texi: Likewise. + * doc/c-ns32k.texi: Likewise. + * doc/c-pdp11.texi: Likewise. + * doc/c-pj.texi: Likewise. + * doc/c-sh64.texi: Likewise. + * doc/c-sparc.texi: Likewise. + * doc/c-tic54x.texi: Likewise. + * doc/c-v850.texi: Likewise. + * doc/c-vax.texi: Likewise. + * doc/internals.texi: Likewise. + +2002-12-18 Chris Demetriou <cgd@broadcom.com> + + * config/tc-mips.c (macro): In M_DROL, M_DROR, M_ROL, and M_ROR, + use hardware rotate ops as appropriate. In M_DROL_I, M_DROR_I, + M_ROL_I, and M_ROR_I, simplify code, clean up warnings, and + arrange not to issue warnings about use of AT when AT is not + actually used. + +2002-12-17 Nick Clifton <nickc@redhat.com> + + * as.c (std_longopts): Duplicate --keep-locals entry in order to + prevent it being confused with -k. + +2002-12-16 Andrew MacLeod <amacleod@redhat.com> + + * config/tc-xstormy16.c (md_cgen_lookup_reloc): If a relocation + has already been set up, use it. + +2002-12-16 Kazu Hirata <kazu@cs.umass.edu> + + * ChangeLog-9295: Fix a typo. + * README: Likewise. + * config/tc-d10v.c: Fix a comment typo. + * config/tc-dlx.c: Likewise. + * config/tc-h8300.h: Likewise. + * config/tc-h8500.h: Likewise. + * config/tc-mips.c: Likewise. + * config/tc-s390.c: Likewise. + * config/tc-sh.h: Likewise. + * config/tc-tic80.h: Likewise. + * config/tc-w65.h: Likewise. + * config/tc-z8k.c: Likewise. + * config/tc-z8k.h: Likewise. + * testsuite/gas/h8300/cmpsi2.s: Likewise. + +2002-12-16 Alan Modra <amodra@bigpond.net.au> + + * config/tc-d30v.c (check_range): Warning fixes, formatting. + Simplify sign extension. Remove redundant unsigned < 0 test. + * config/tc-i960.c (md_ri_to_chars): Prototype. + * config/tc-mcore.c (md_pseudo_table): Fix typo. + (dump_literals): Init brarsym, and test later instead of isforce. + + * config/tc-ns32k.c (encode_operand): Constify operandsP and suffixP. + (parse): Constify line and lineptr. + (md_begin): Calculate endop here. + +2002-12-13 Alan Modra <amodra@bigpond.net.au> + + * config/obj-vms.c: Formatting. Include fnctl.h. + (Create_VMS_Object_File): Fix creat call for sane unix systems. + (Object_Record_Offset): Make it a size_t. + (Flush_VMS_Object_Record_Buffer): Fix signed/unsigned warning. + (VMS_TBT_Routine_End <Size>): Make var unsigned long. + (VMS_Fix_Indirect_Reference <Offset>): Make arg addressT. + (synthesize_data_segment <data_size>): Remove ATTRIBUTE_UNUSED. + (vms_fixup_data_section <data_size>): Add here instead. + * config/e-criself.c: Fix typo in last change. + +2002-12-13 Alan Modra <amodra@bigpond.net.au> + + * write.c (write_object_file): Fix signed/unsigned warning. + * config/e-crisaout.c (crisaout_bfd_name): Prototype. + * config/e-criself.c (criself_bfd_name): Prototype. + * config/obj-aout.c (s_sect): Remove unused function. + * config/obj-bout.c (obj_bout_line <ignore>): Add ATTRIBUTE_UNUSED. + * config/obj-coff.c (coff_last_bf): Don't declare for OBJ_XCOFF. + (fixup_mdeps <h>): Add ATTRIBUTE_UNUSED. + * config/obj-ecoff.c (ecoff_frob_file <addr>): Likewise. + * config/obj-vms.c (setup_basic_type <spnt>): Likewise. + (VMS_RSYM_Parse <Current_Routine>): Likewise. + (vms_fixup_text_section <text_siz>): Likewise. + (synthesize_data_segment <data_size>): Likewise. + (vms_fixup_xtors_section <sect_no>): Likewise. + (structure_count): Don't use implicit int type. + * config/tc-a29k.c (insert_sreg): Prototype. + (define_some_regs): Prototype, make static. + (parse_operand): Likewise. + (md_parse_option <c,arg>): Add ATTRIBUTE_UNUSED. + (md_show_usage <stream>): Likewise. + (md_section_align <segment>): Likewise. + (md_convert_frag <all args>): Likewise. + (md_estimate_size_before_relax <all args>): Likewise. + (md_apply_fix3): Don't cast valP pointer type. Fix bogus >>='s. + * config/tc-arm.c (arm_validate_fix): Only for OBJ_COFF or OBJ_ELF. + * config/tc-d30v.c (md_parse_option <arg>): Add ATTRIBUTE_UNUSED. + (md_undefined_symbol <name>): Likewise. + (md_convert_frag <all args>): Likewise. + (write_long <opcode>): Likewise. + (tc_gen_reloc <seg>): Likewise. + (md_estimate_size_before_relax <all args>): Likewise. + (md_apply_fix3 <seg>): Likewise. + (s_d30v_align <ignore>): Likewise. + (build_insn): Correct format string. + (md_apply_fix3): Likewise. + * config/tc-fr30.c (md_parse_option <c,arg>): Add ATTRIBUTE_UNUSED. + (md_undefined_symbol <name>): Likewise. + (md_convert_frag <all args>): Likewise. + (md_cgen_lookup_reloc <insn>): Likewise. + (md_begin): Delete unused vars. + (md_assemble): Likewise. + (md_estimate_size_before_relax): Likewise. + (fr30_relax_frag): #if 0 out, seems unused. + (md_atof): Remove declaration of atof_ieee. + (restore_colon): Prototype. + * config/tc-frv.c (frv_insert_vliw_insn): Prototype. + (frv_find_in_vliw): Likewise. + (frv_debug_tomcat): Likewise. + (frv_adjust_vliw_count): Likewise. + (frv_tomcat_shuffle): Likewise. + (frv_tomcat_analyze_vliw_chains): Likewise. Correct args to + frv_find_in_vliw call. + (md_atof): Remove declaration of atof_ieee. + * config/tc-h8500.c (cons): Delete declaration. + (md_begin <opcode>): Constify. + (displacement_size, immediate_size, absolute_size): Remove. + (build_relaxable_instruction <operand>): Add ATTRIBUTE_UNUSED. + (tc_crawl_symbol_chain <headers>): Likewise. + (md_undefined_symbol <name>): Likewise. + (tc_headers_hook <headers>): Likewise. + (md_parse_option <c,arg>): Likewise. + (md_show_usage <stream>): Likewise. + (md_convert_frag <headers, seg>): Likewise. + (tc_coff_symbol_emit_hook <ignore>): Likewise. + (md_atof): Remove declaration of atof_ieee. + (tc_aout_fix_to_chars): Remove unused function. + (parse_reg): Prototype. + (parse_exp): Prototype. + (skip_colonthing): Prototype. Use &&, not & in logical expressions. + (parse_reglist): Prototype. + (get_operand): Prototype. + (get_operands): Prototype. + (get_specific): Prototype. Make "this_index" signed. + (check): Prototype, make static. + (insert): Prototype + (build_relaxable_instruction): Prototype, make static. + (build_bytes): Prototype. + (wordify_scb): Prototype. + * config/tc-h8500.h (start_label): Declare. + (tc_coff_sizemachdep): Declare. + * config/tc-i370.c (i370_ebcdic <unused>): Add ATTRIBUTE_UNUSED. + (i370_rmode <unused>): Likewise. + (i370_csect <unused>): Likewise. + (i370_dc <unused>): Likewise. + (i370_ds <unused>): Likewise. + (i370_elf_lcomm <unused>): Likewise. + (i370_ltorg <ignore>): Likewise. + (i370_using <ignore>): Likewise. + (i370_drop <ignore>): Likewise. + (i370_byte <ignore>): Likewise. + (i370_tc <ignore>): Likewise. + (md_estimate_size_before_relax <fragp, seg>): Likewise. + (md_convert_frag <all args>): Likewise. + (md_undefined_symbol <name>): Likewise. + (md_pcrel_from_section <sec>): Likewise. + (tc_gen_reloc <seg>): Likewise. + (i370_section_letter): #if 0 unused functions. + (i370_section_word, i370_section_type, i370_section_flags): Likewise. + (symbol_locate): Prototype. + * config/tc-i860.c (md_atof): Remove declaration of atof_ieee. + (md_number_to_disp, md_number_to_field): Remove. + (md_apply_fix3): Correct format string and cast "fup". + * config/tc-i960.c (md_convert_frag): Add ATTRIBUTE_UNUSED to args. + (s_endian <ignore>): Likewise. + (md_undefined_symbol <name>): Likewise. + (tc_crawl_symbol_chain <headers>): Likewise. + (tc_set_bal_of_call): Likewise. + (tc_coff_symbol_emit_hook <symbolP>): Likewise. + (i960_handle_align <fragp>): Likewise. + (i960_validate_fix <this_segment_type>): Likewise + (tc_gen_reloc <section>): Likewise. + (tc_coff_symbol_emit_hook): Only define for OBJ_COFF. + (struct memS, struct regop): Forward declare. + (brcnt_emit, brlab_next, cobr_fmt, ctrl_fmt, emit, get_args, + get_cdisp, get_ispec, get_regnum, i_scan, mem_fmt, mema_to_memb, + parse_expr, parse_ldconst, parse_memop, parse_po, parse_regop, + reg_fmt, relax_cobr, s_leafproc, s_sysproc, shift_ok, syntax, + targ_has_sfr, targ_has_iclass, tc_bfd_fix2rtype): Prototype. + (md_chars_to_number, md_number_to_imm): Make static, prototype. + (md_number_to_field): Likewise. + (md_number_to_disp): Remove unused function. + (md_atof): Remove declaration of atof_ieee. + (md_apply_fix3): Correct md_number_to_imm call. + * config/tc-ip2k.c (md_assemble): Warning fix. + * config/tc-m32r.c (md_parse_option <arg>): Add ATTRIBUTE_UNUSED. + (fill_insn <ignore>): Likewise. + (debug_sym <ignore>): Likewise. + (md_undefined_symbol <name>): Likewise. + (m32r_scomm <ignore>): Likewise. + (md_convert_frag <abfd>): Likewise. + (md_cgen_lookup_reloc <insn>): Likewise. + (m32r_record_hi16 <seg>): Likewise. + (md_estimate_size_before_relax): #if 0 old_fr_fix. + (allow_m32rx): Prototype. + (first_writes_to_seconds_operands): Prototype. + (writes_to_pc): Prototype. + (can_make_parallel): Prototype. + (make_parallel): Prototype. + (target_make_parallel): Prototype. + (assemble_two_insns): Prototype. + (m32r_record_hi16): Prototype. + (md_atof): Remove declaration of atof_ieee. + * config/tc-m32r.h (m32r_fix_adjustable): Declare. + (m32r_force_relocation): Prototype. + (m32r_elf_section_change_hook): Prototype. + * config/tc-m68k.c (tc_gen_reloc <section>): Add ATTRIBUTE_UNUSED. + (md_show_usage): Fix signed/unsigned warning. + * config/tc-m88k.c (get_reg): Make reg_prefix param unsigned. + (calcop): Ditto for reg_prefix var. + (hexval): Add cast to fix signed/unsigned warning. + (md_number_to_disp): Delete unused function. + (md_number_to_field): Likewise. + (float_cons, cons, s_globl, s_space, s_set, s_lcomm): Remove decl. + (match_name): Prototype. + (get_bf2): Prototype. + (get_bf_offset_expression): Prototype. + * config/tc-mcore.c (mcore_s_literals <ignore>): Add ATTRIBUTE_UNUSED. + (md_undefined_symbol <ignore>): Likewise. + (md_create_short_jump <all args>): Likewise. + (md_create_long_jump <all args>): Likewise. + (md_convert_frag <abfd, sec>): Likewise. + (md_apply_fix3 <segment>): Likewise. + (md_section_align <segment>): Likewise. + (md_pcrel_from_section <sec>): Likewise. + (tc_gen_reloc <section>): Likewise. + (reg_m, reg_n, immediate): Delete unused vars. + (dump_literals): Fix signed/unsigned warning. + (enter_literal): Likewise. + (parse_imm): Likewise. Also fix format string. + (parse_mem): Remove unused var. + (md_assemble <LS>): Abort on unexpected inst. + (md_atof): Remove declaration of atof_ieee. + (md_parse_option): Remove unused vars. + (md_apply_fix3): Fix format strings, cast args. + (tc_gen_reloc): Delete unused var. + * config/tc-mcore.h (tc_coff_sizemachdep): Declare. + * config/tc-mn10200.c (md_parse_option <c, arg>): Add ATTRIBUTE_UNUSED. + (md_undefined_symbol <name>): Likewise. + (md_convert_frag <abfd>): Likewise. + (tc_gen_reloc <seg>): Likewise. + (check_operand <insn>): Likewise. + (md_convert_frag): Fix format strings. + (tc_gen_reloc): Delete fx_addsy - fx_subsy code. + * config/tc-openrisc.c (ignore_pseudo): Prototype. + (md_atof): Remove declaration of atof_ieee. + * config/tc-or32.c (parse_operand): Prototype non-BFD too. + (md_apply_fix3): Fix bogus >>='s. + (md_undefined_symbol): Delete unused var. + * config/tc-pj.c (little, big, parse_exp_save_ilp): Prototype. + (c_to_r, ipush_code, fake_opcode, alias): Likewise. + (fake_opcode): Adjust for pj_opc_int_t change. + (md_begin): Likewise. + (md_assemble): Likewise. + (ipush_code): Correct parse_exp_save_ilp call. Test pending_reloc + instead of non-existent third arg of parse_exp_save_ilp. + (md_parse_option): Correct "little" and "big" calls. + * config/tc-sparc.c (s_register): Only declare #ifdef OBJ_ELF. + (md_apply_fix3 <segment>): Add ATTRIBUTE_UNUSED. + (tc_gen_reloc <section>): Likewise. + * config/tc-tic30.c: #include stdarg.h or varargs.h. + (debug): Rewrite using VA_* macros. + (md_estimate_size_before_relax): Add ATTRIBUTE_UNUSED to args. + (md_convert_frag): Likewise. + (md_parse_option): Likewise. + (md_show_usage): Likewise. + (md_undefined_symbol): Likewise. + (tc_gen_reloc): Likewise. + (md_operand): Likewise. + (tc_aout_pre_write_hook): Delete. + (struct tic30_insn): Make "operands" unsigned. + (struct tic30_par_insn): Likewise. + (md_assemble): Likewise for "count", "i" and "numops". + (tic30_parallel_insn): Likewise for vars here. + (tic30_operand): Likewise. Remove useless unsigned >= 0 comparison. + * config/tc-tic30.h (tc_aout_pre_write_hook): Define as empty. + * config/tc-tic80.c (obj_coff_section): Delete declaration. + (md_estimate_size_before_relax): Add ATTRIBUTE_UNUSED on args. + (md_undefined_symbol): Likewise. + (md_parse_option): Likewise. + (md_convert_frag): Likewise. + (tc_coff_symbol_emit_hook): Likewise. + (md_atof): Remove declaration of atof_ieee. + (const_overflow): Warning fixes, tidy. + (get_operands): Delete unused vars. + (internal_error_a): Adjust format string to expect a long for arg. + (find_opcode): Warning fixes, simplify. + (build_insn): Cast internal_error_a arg. + (md_begin): Likewise. + (md_apply_fix3): Likewise. + (md_assemble): Delete unused var. + * config/tc-tic80.h (tc_coff_fix2rtype): Prototype. + * config/tc-z8k.c (cons, obj_coff_section): Delete declarations. + (whatreg, parse_reg, parse_exp): Make static, prototype. + (checkfor, regword, regaddr, get_ctrl_operand): Prototype. + (get_flags_operand, get_interrupt_operand, get_cc_operand): Likewise. + (get_operand, get_operands, get_specific, newfix): Likewise. + (apply_fix, build_bytes): Likewise. + (md_atof): Remove declaration of atof_ieee. + (tc_aout_fix_to_chars): Delete. + (md_begin): Constify "opcode". Don't try to init opcode->idx. + Fix s_unseg call. + (md_parse_option): Fix s_segm and s_unseg calls. + +2002-12-12 Alexandre Oliva <aoliva@redhat.com> + + * tc-mips.c (RELAX_BRANCH_ENCODE): Remove reloc_s2 argument. + Adjust callers. + (RELAX_BRANCH_RELOC_S2): Delete. + (append_insn): Use only BFD_RELOC_16_PCREL_S2 for branches. + Do not handle BFD_RELOC_16_PCREL. + (macro_build, mips_ip): Likewise. + (md_pcrel_from): Return 4 for undefined symbols regardless of + mips_pic. + (md_apply_fix3): Use only BFD_RELOC_16_PCREL_S2 for branches. + Don't dereference howto if no such relocation is available. + Do not apply hack for in-place zero addend in NEWABI. + (md_convert_frag): Use only BFD_RELOC_16_PCREL_S2 for branches. + +2002-12-12 Alexandre Oliva <aoliva@redhat.com>, + Alan Modra <amodra@bigpond.net.au> + + * config/tc-mn10300.h (TC_VALIDATE_FIX_SUB): Define. + (TC_LINKRELAX_FIXUP): Add comments. + +2002-12-12 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-mn10300.c (set_arch_mach): Change argument type to + avoid warnings. + (r_register_name, xr_register_name): Add prototype declarations. + +2002-12-08 H.J. Lu <hjl@gnu.org> + + * config/tc-ia64.c (md_apply_fix3): Remove the PCREL hack + copied from tc-i386.c. + +2002-12-08 Stephane Carrez <stcarrez@nerim.fr> + + Fix Bug savannah/1825: + * config/tc-m68hc11.c (STATE_INDEXED_PCREL): New relax code. + (md_relax_table): Define specific relax for PC-rel offsets. + (build_indexed_byte): Use a STATE_INDEXED_PCREL relax code. + (m68hc11_relax_frag): Handle the new relax code. + (md_convert_frag): Likewise. + (md_estimate_size_before_relax): Likewise. + +2002-12-08 Alan Modra <amodra@bigpond.net.au> + + * subsegs.c (section_symbol): Use the symbol, not the section, name. + +2002-12-05 Richard Henderson <rth@redhat.com> + + * config/ia64.c (enum reloc_func): Add FUNC_LT_RELATIVE_X. + (ia64_gen_real_reloc_type): Handle it. + (pseudo_func): Add @ltoffx. + (md_begin): Build .<ltoffx>. + (ia64_force_relocation): True for LTOFF22X and LDXMOV. + +2002-12-05 Alan Modra <amodra@bigpond.net.au> + + * config/tc-arm.c (arm_force_relocation): Move out of #if OBJ_ELF. + Move OBJ_COFF TC_FORCE_RELOCATION code here so that COFF handles + ARM_IMMEDIATE and ARM_ADRL_IMMEDIATE relocs as for ELF. + * config/tc-arm.h (TC_FORCE_RELOCATION): Define for both ELF and + COFF to call arm_force_relocation. + +2002-12-04 David Mosberger <davidm@hpl.hp.com> + + * config/tc-ia64.c (pseudo_func): Add "@pause" constant for "hint" + instruction. + (emit_one_bundle): Handle "hint" instruction. + (operand_match): Match IA64_OPND_AR_CSD. + +2002-12-04 Alan Modra <amodra@bigpond.net.au> + + * dwarf2dbg.c (scale_addr_delta): Correct parameter. Move prototype + inside #if. + +2002-12-03 Nick Clifton <nickc@redhat.com> + + * config/tc-ppc.c (ppc_cleanup): Do not set SEC_MERGE flag on + .PPC.EMB.apuinfo sections. + +2002-12-03 Richard Henderson <rth@redhat.com> + + * config/tc-ia64.c (operand_match): Add IA64_OPND_LDXMOV case. + +2002-12-03 Alan Modra <amodra@bigpond.net.au> + + * config/tc-w65.c (s_longa): Prototype. Make static, specify int arg. + (cons, s_align_bytes): Delete declaration. + (relax): Delete. + (md_begin): Constify "struct opinfo *" var. Don't try to make "name" + strings common. + (dot): Delete unused function. + (w65_expression): Remove unused arg. + (parse_exp): Prototype. Remove unused arg. Adjust w65_expression + call. + (get_operands): Prototype. Constify "struct opinfo *" arg. Fix + parse_exp call. + (get_specific): Prototype. Constify "struct opinfo *" arg and return + value. + (check): Remove unused function. + (build_Mytes): Prototype. Constify "struct opinfo *" arg. Abort + on unhandled switch case. + (md_assemble): Remove unused op_start, op_end, nlen, p vars. Constify + "opcode". + (tc_crawl_symbol_chain): Delete unused function. + (tc_headers_hook): Likewise. + (tc_Nout_fix_to_chars): Likewise. + (md_undefined_symbol): Add ATTRIBUTE_UNUSED. + (md_parse_option): Likewise. + (md_convert_frag): Likewise. + (tc_coff_symbol_emit_hook): Likewise. + (md_show_usage): Likewise. + * config/tc-w65.h (tc_coff_sizemachdep): Declare. + (TC_PARSE_CONS_EXPRESSION): w65_expression takes one arg. + (w65_expression): Declare. + + * po/POTFILES.in: Regenerate. + + * config/tc-arm.c (arm_force_relocation): Return 0 for ARM_IMMEDIATE + and ARM_ADRL_IMMEDIATE. + +2002-12-02 Nick Clifton <nickc@redhat.com> + + * gasp.c: Delete. It has been deprecated. + * NEWS: Mention that gasp has been removed. + * Makefile.am: Remove references to gasp. + * makefile.vms: Likewise. + * mpw-make.sed: Likewise. + * Makeile.in: Regenerate. + * doc/gasp.texi: Delete. + * doc/Makefile.am: Remove references to gasp.texi. + * doc/Makefile.in: Regenerate. + * macro.c: Delete references to gasp. + Remove use of comment_char function parameter as it is no longer + needed. + * macro.h: Update prototypes to remove comment_char parameter. + Fix formatting. + * read.c (read_a_source_file, s_irp): Remove comment_char + parameter from invocation of functions in macro.c + +2002-12-02 Hans-Peter Nilsson <hp@axis.com> + + * read.c (emit_expr) [!WORKING_DOT_WORD]: Initialize x->use_jump. + +2002-12-01 Stephane Carrez <stcarrez@nerim.fr> + + * config/tc-m68hc11.c (md_begin): Fix qsort warning. + (tc_gen_reloc): Mark section param as not used. + +2002-12-01 Stephane Carrez <stcarrez@nerim.fr> + + Fix Bug savannah/1825: + * config/tc-m68hc11.h (md_relax_frag): Define to support relaxations + that are not pc-relative. + (m68hc11_relax_frag): Declare. + + * config/tc-m68hc11.c (build_indexed_byte): Use a frag_var to handle + the offsetable indexed addressing modes (n,r). + (build_insn): Cleanup some locals. + (m68hc11_relax_frag): New function imported from tc-cris.c to handle + relaxation of difference between two symbols of same section. + (md_convert_frag): For INDEXED_OFFSET relaxs, use the displacement + only when this is a PC-relative operand and the offset is not absolute. + (md_estimate_size_before_relax): Convert the INDEXED_OFFSET,UNDEF frag + to INDEXED_OFFSET,STATE_BITS5 when the symbol is absolute; this will + be handled by m68hc11_relax_frag. + +2002-12-01 Stephane Carrez <stcarrez@nerim.fr> + + * config/tc-m68hc11.c (elf_flags): Set default ABI to gcc default + (32-bit int, 64-bit double). + (md_longopts): New options -mshort, -mlong, -mshort-double and + -mlong-double to control the ABI. + (md_show_usage): Update. + (md_parse_option): Handle new options. + * doc/as.texinfo (Overview): Document new options for HC11/HC12. + +2002-12-01 Nathan Sidwell <nathan@codesourcery.com> + + * symbols.c (report_op_error): New function, broken out of ... + (resolve_symbol_value): ... here. Use for both monadic and dyadic + operators. + +2002-11-30 Kaz Kojima <kkojima@rr.iij4u.or.jp> + + * config/tc-sh.c (md_apply_fix3): Take account of fx_offset + for BFD_RELOC_32_PLT_PCREL. + +2002-11-30 Alan Modra <amodra@bigpond.net.au> + + * dwarf2dbg.c, write.c, config/obj-aout.c, config/obj-coff.c, + config/obj-ecoff.c, config/obj-elf.c, config/obj-som.c, + config/tc-arm.c, config/tc-arm.h, config/tc-avr.c, config/tc-cris.c, + config/tc-d10v.c, config/tc-d10v.h, config/tc-d30v.c, config/tc-d30v.h, + config/tc-dlx.c, config/tc-dlx.h, config/tc-fr30.c, config/tc-fr30.h, + config/tc-frv.c, config/tc-frv.h, config/tc-hppa.c, config/tc-i370.c, + config/tc-i386.c, config/tc-i386.h, config/tc-m32r.c, + config/tc-m68hc11.c, config/tc-mcore.c, config/tc-mcore.h, + config/tc-mips.c, config/tc-mips.h, config/tc-mn10200.c, + config/tc-mn10300.c, config/tc-mn10300.h, config/tc-openrisc.c, + config/tc-openrisc.h, config/tc-ppc.c, config/tc-s390.c, + config/tc-sh.c, config/tc-sh.h, config/tc-sh64.c, config/tc-tic54x.c, + config/tc-v850.c, config/tc-v850.h, config/tc-xstormy16.c, + config/tc-xstormy16.h: Replace boolean with bfd_boolean, true with + TRUE, false with FALSE. Simplify comparisons of bfd_boolean vars with + TRUE/FALSE. Formatting. + +2002-11-29 Nick Clifton <nickc@redhat.com> + + * config/tc-arm.c (do_t_bkpt): If no operand is specified, + assume a value of zero. + (do_bkpt): Likewise. + +2002-11-29 Kaz Kojima <kkojima@rr.iij4u.or.jp> + + * config/tc-sh.c (md_apply_fix3): Call S_SET_THREAD_LOCAL + for TLS relocations. + +2002-11-29 Jakub Jelinek <jakub@redhat.com> + + * config/tc-ia64.c (md_apply_fix3): Add default case. + +2002-11-28 Jakub Jelinek <jakub@redhat.com> + + * symbols.c (S_SET_THREAD_LOCAL): New function. + * symbols.h (S_SET_THREAD_LOCAL): New prototype. + * config/tc-i386.c (md_apply_fix3): Call S_SET_THREAD_LOCAL + for TLS relocations. + * config/tc-ia64.c (md_apply_fix3): Likewise. + * config/tc-alpha.c (md_apply_fix3): Likewise. + +2002-11-28 Jakub Jelinek <jakub@redhat.com> + + * write.c (subsegs_finish): For SEC_MERGE sections pad last fragment + to entsize. + +2002-11-26 DJ Delorie <dj@redhat.com. + + * dwarf2dbg.c (scale_addr_delta): New. + (size_inc_line_addr): Use it. + (emit_inc_line_addr): Use it. + +2002-11-26 Hans-Peter Nilsson <hp@axis.com> + + * config/tc-cris.c (cris_relax_frag): Fix typo in comment. + (md_assemble): Don't pass on branches to constants as relaxable. + Tweak comment. + +2002-11-25 Svein E. Seldal <Svein.Seldal@solidas.com> + + * config/tc-tic4x.c (c4x_operands_match): Bugfix in direct mode + +2002-11-21 Randolph Chung <randolph@tausq.org> + + * config/tc-hppa.h (tc_frob_symbol): Frob undefined unused symbols + only if they have default visibility. + +2002-11-21 Richard Henderson <rth@redhat.com> + + * config/tc-alpha.c (alpha_fix_adjustable): Remove redundant + S_IS_DEFINED test. + +2002-11-21 Alan Modra <amodra@bigpond.net.au> + + * config/tc-mcore.c (mcore_pool_count): New function. + (mcore_cons, mcore_float_cons, mcore_stringer, mcore_fill): Use it. + +2002-11-20 Klee Dienes <kdienes@apple.com> + + * config/tc-mcore.c (md_begin): Use a const iterator. Don't + coalesce the name fields to use the same pointer. + + * config/tc-sh.c (md_begin): Use a const iterator. Don't coalesce + the name fields to use the same pointer. + (get_specific): Check for opcodes with the same name using strcmp + as well as comparing the pointer. + +2002-11-20 Alan Modra <amodra@bigpond.net.au> + + * write.c (adjust_reloc_syms): Don't reduce SEC_MERGE fixups with + fx_subsy non-NULL. + +2002-11-19 Richard Henderson <rth@redhat.com> + + * config/obj-elf.c (obj_elf_visibility): Overwrite only the + visibility portion of st_other. + +2002-11-19 Klee Dienes <kdienes@apple.com> + + * config/tc-h8300.c (struct h8_instruction): New type, used to + wrap h8_opcodes with length, noperands, idx, and size fields + (computed at run-time). + (h8_instructions): New variable. + (md_begin): Allocate the storage for h8_instructions. Fill + h8_instructions with pointers to the appropriate opcode and the + correct value for the additional fields. + (clever_message): Update to use h8_instructions instead of + h8_opcodes. + (build_bytes): Ditto. + (get_specific): Ditto. + (md_assemble): Ditto. + +2002-11-19 Martin Schwidefsky <schwidefsky@de.ibm.com> + + * config/tc-s390.c (tc_s390_fix_adjustable): Re-add patch to prevent + adjustments to symbols in merge sections. + +2002-11-19 Luke Deller <luked@cse.unsw.edu.au> + + * config/tc-alpha.c (s_alpha_prologue): as_bad when sym is NULL. + +2002-11-18 Kevin Buettner <kevinb@redhat.com> + + * dwarf2dbg.h (dwarf2_format): New enum. + * dwarf2dbg.c (DWARF2_FORMAT): Provide default definition. + (out_debug_line, out_debug_info): Add code for handling 64-bit + DWARF 2 formats. + * config/tc-mips.h (mips_dwarf2_format): Declare. + * config/tc-mips.c (mips_dwarf2_format): New function. + * doc/internals.texi (DWARF2_FORMAT): Document. + +2002-11-18 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-mips.c (s_change_section): Make sure input buffer + is not accessed past the end. Don't hand + obj_elf_change_section a pointer into the input buffer. + +2002-11-18 Alexandre Oliva <aoliva@redhat.com>, Chris Demetriou <cgd@broadcom.com> + + * config/tc-mips.c (tc_gen_reloc): Fix typo in handling of + GOT_LO16 on NEWABI. + +2002-11-18 Svein E. Seldal <Svein.Seldal@solidas.com> + + * config/tc-tic4x.c: Fixed proper commandline + parameters. Added support for new opcode-list format. General + error message fixups. + (c4x_inst_add): Reject insn not for our CPU + (md_begin): Added matrix for setting the proper opcode-level & + device-flags according to cpu type and revision. Rewrite the + opcode hasher. + (c4x_operand_parse): Fix opcode bug + (c4x_operands_match): New function argument. Added dry-run + mechanism, that is optional error generation. Added constraint 'i' + and 'j'. + (c4x_insn_check): Added new function for post-verification of the + generated insn. + (md_assemble): Check all opcodes before croaking because of an + argument mismatch. Need this to be able to fully support + ortogonally arguments. + (md_parse_options): Revised commandprompt swicthes and added new + ones. + (md_show_usage): Complete rewrite of printout. + +2002-11-16 Svein E. Seldal <Svein.Seldal@solidas.com> + + * config/tc-tic4x.c: Remove c4x_pseudo_ignore function. + (c4x_operands_match): Added check for 8-bits LDF insn. Give + warning when using constant direct bigger than 2^16. Add the new + arguments. + +2002-11-11 Christopher Faylor <cgf@redhat.com> + + * configure.in: Use .gdbinit under Cygwin. + * configure: Regenerate. + +2002-11-11 Christopher Faylor <cgf@redhat.com> + + * config/tc-i386.h (EXTERN_FORCE_RELOC): Define only if + STRICT_PE_FORMAT. + +2002-11-11 Svein E. Seldal <Svein.Seldal@solidas.com> + + * config/tc-tic4x.c: Declare as many functions as possible as + static. Maintenance on the general indenting. Removed unnecessary + pseudo-ops and added new ones. Removed obsoleted c4x_pseudo_ignore + function. Add support for new DSP, TMS320VC33. Fix bug for + converting flonum constants. + (c4x_do_align): Add proper align handling. Setup align to insert + NOP's. + (c4x_gen_to_words): Support for extended TI type floats. + (md_atof): Proper dumping of multiple-word littlenums. + (c4x_atof): Added support for extended TI type floats. + (c4x_stringer): Added new function to handle compact strings. + (c4x_emit_char): Added new function argument to handle custom + length inserts, like single-byte strings. + * config/tc-tic4x.h: Add proper align handling with NOP's. + * Makefile.am: Added tic4x dependecy + * Makefile.in: Regenerate + +2002-11-11 Hans-Peter Nilsson <hp@bitrange.com> + + * macro.c (get_any_string): Correct logic for not going beyond end + of in->ptr[]. + +2002-11-10 Hans-Peter Nilsson <hp@bitrange.com> + + * config/tc-mmix.c (get_putget_operands): Mark both possible + operands as invalid at beginning. + + * config/tc-mmix.c (md_convert_frag) <case STATE_GREG_DEF>: + Initialize target of fixup to zero. + +2002-11-07 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-mips.c (macro_build_lui): _gp_disp is not special on + NEWABI, but we should still emit HI16_S for non-PIC n32. + +2002-11-06 Richard Henderson <rth@redhat.com> + + * config/tc-alpha.c (alpha_validate_fix): Move code ... + (alpha_fix_adjustable): ... here. + * config/tc-alpha.h (TC_VALIDATE_FIX): Remove. + +2002-11-07 Eric Kohl <ekohl@rz-online.de> + + * config/te-pe.h (LEX_AT): Accept at-sign (@) as first character + of a label. + +2002-11-05 H.J. Lu <hjl@gnu.org> + + * config/tc-mips.c (support_64bit_objects): Check *l before it + is freed. + +2002-11-04 Danny Smith <dannysmith@users.sourceforge.net> + + * config/obj-coff.c (obj-coff-section): Set SEC_DATA and + SEC_LOAD flags for sections marked as 's'. + +2002-11-01 Alan Modra <amodra@bigpond.net.au> + + * write.c (TC_FORCE_RELOCATION_SUB_ABS): Default to zero. + (TC_FORCE_RELOCATION_SUB_LOCAL): Likewise when DIFF_EXPR_OK. + * doc/internals.texi (TC_FORCE_RELOCATION_SUB_ABS): Document changed + default. + + * dep-in.sed: Fix typo. + +2002-10-30 Daniel Jacobowitz <drow@mvista.com> + + * configure.in: Update ARM CPU patterns. + * configure: Regenerated. + +2002-10-29 Daniel Jacobowitz <drow@mvista.com> + + * itbl-lex.l: Use #include <> for generated headers. + * itbl-ops.c: Likewise. + +2002-10-28 Daniel Jacobowitz <drow@mvista.com> + + * doc/gasp.texi: Fix typo in deprecation note. + +2002-10-23 Nick Clifton <nickc@redhat.com> + + * config/tc-arm.c (tc_gen_reloc): Allow an absolute reference to + _GLOBAL_TABLE_OFFSET_ to be converted into a GOT reloc. + +2002-10-23 Hans-Peter Nilsson <hp@bitrange.com> + + * config/tc-mmix.h (mmix_frob_file_before_adjust): Don't declare. + (tc_frob_file_before_adjust): Don't define. + * config/tc-mmix.c (mmix_frob_local_reloc): Remove unused + function. + (mmix_frob_file_before_adjust): Remove ineffective function. + +2002-10-23 Hans-Peter Nilsson <hp@axis.com> + + * config/tc-cris.c (SIMPLE_EXPR): New macro. + (cris_relax_frag): New function. + (md_estimate_size_before_relax) <case ENCODE_RELAX + (STATE_BASE_PLUS_DISP_PREFIX, STATE_UNDF)>: Pass on unresolved + expressions that will become absolute expressions to relaxation. + (md_convert_frag) <case ENCODE_RELAX (STATE_BASE_PLUS_DISP_PREFIX, + STATE_WORD)>: Expect only absolute expressions. Use the symbol + value, not distance to symbol. + <case ENCODE_RELAX (STATE_BASE_PLUS_DISP_PREFIX, STATE_BYTE)>: + Ditto. Correct placement of fixup. + (md_assemble): Use SIMPLE_EXPR when dissecting expressions. + (gen_bdap): Ditto. + * config/tc-cris.h (cris_relax_frag): Declare. + (md_relax_frag): Define. + +2002-10-22 Alan Modra <amodra@bigpond.net.au> + + * config/obj-elf.c (special_sections): Use correct types for init + array sections. + (obj_elf_change_section): Don't mess with init array section type. + +2002-10-21 Richard Sandiford <rsandifo@redhat.com> + + * config/tc-mips.c (mips_need_elf_addend_fixup): Return true + for relocs against symbols in a merged section. + +2002-10-18 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-mips.c (md_begin): Add $fcc registers to the symbol + table as register names. + +2002-10-18 Ulrich Weigand <uweigand@de.ibm.com> + + * config/tc-s390.c (md_parse_option): Set s390_arch_size to 32 + for option -m31. + +2002-10-18 Svein E. Seldal <Svein.Seldal@solidas.com> + + * expr.c (operand): Add support for n.nn flonums. + +2002-10-17 Johannes Stezenbach <js@convergence.de> + + * itbl-parse.y (entry): Provide empty action. + +2002-10-16 Alan Modra <amodra@bigpond.net.au> + + * configure.in (BFDVER_H): Set and subst. + * dep-in.sed: Replace bfdver.h with $(BFDVER_H). + * Makefile.am: Run "make dep-am". + (BFDVER_H): Define. + * configure: Regenerate. + * Makefile.in: Regenerate. + * doc/Makefile.in: Regenerate. + +2002-10-15 Alan Modra <amodra@bigpond.net.au> + + * config/tc-i386.h (EXTERN_FORCE_RELOC): Define. + (MD_APPLY_SYM_VALUE): Define for PE too. + +2002-10-14 Alan Modra <amodra@bigpond.net.au> + + * Makefile.am: Run "make dep-am". + (CPU_OBJ_VALID): sh64 coff is invalid. + * as.c: #include "bfdver.h". + * Makefile.in: Regenerate. + * config.in: Regenerate. + +2002-10-14 Momchil Velikov <velco@fadata.bg> + + * config/tc-v850.c (CHECK_): Remove token pasting operator. + +2002-10-14 Richard Sandiford <rsandifo@redhat.com> + + * configure.in (mips64vr-elf, mips64vrel-elf): New config. + * configure: Regenerate. + +2002-10-13 Eric Christopher <echristo@redhat.com> + Alexandre Oliva <aoliva@redhat.com> + + * config/tc-mips.c (s_gpdword): New function. + (mips_pseudo_table): Add .gpdword. + (mips_need_elf_addend_fixup): never for NEWABI. + (md_apply_fix3): Don't mark BFD_RELOC64 after GPREL16 or + GPREL32 as done. + (s_cpadd): Generate .cpadd on NEWABI. + +2002-10-12 Elias Athanasopoulos <eathan@otenet.gr> + + * config/tc-ppc.c (ppc_cleanup): Make 'i' unsigned int. + +2002-10-12 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-mips.h (mips_relax_frag): Take segment as argument. + (md_relax_frag): Adjust macro. + * config/tc-mips.c (mips_relax_branch): New variable. + (RELAX_BRANCH_ENCODE, RELAX_BRANCH_P, RELAX_BRANCH_LIKELY, + RELAX_BRANCH_LINK, RELAX_BRANCH_TOOBAR): New. + (RELAX_MIPS16_P): Adjust. + (append_insn): Emit branch to non-constant in a frag_var if + branch-relaxation is desirable and possible. + (OPTION_RELAX_BRANCH, OPTION_NO_RELAX_BRANCH): New options. + (OPTION_ELF_BASE): Adjust. + (md_parse_option): Handle new options. + (md_apply_fix3): Update comment on EMBEDDED_PIC conditional + branch relaxation. + (relaxed_branch_length): New function. + (md_estimate_size_before_relax): Handle branch frags. + (mips_relax_frag): Likewise. + (md_convert_frag): Handle branch frags. Warn if branch is + relaxed. + +2002-10-11 Kaz Kojima <kkojima@rr.iij4u.or.jp> + + * config/tc-sh.c (sh_force_relocation): Make sure TLS relocs get + emitted. + (md_apply_fix3): Add TLS relocs. + (sh_parse_name): Support @TLSGD, @TLSLDM, @GOTTPOFF, @TPOFF and + @DTPOFF. + +2002-10-11 Michel Six <msix@ccr.jussieu.fr> + Alan Modra <amodra@bigpond.net.au> + + * config/tc-i386.c (output_jump): Set fx_signed for loop/jcxz. + (md_estimate_size_before_relax): Likewise for 8 bit branches. + +Thu Oct 10 14:31:30 2002 J"orn Rennecke <joern.rennecke@superh.com> + + * config/tc-sh.c (assemble_ppi): Initialize reg_x / reg_y / reg_n + inside loop. + +2002-10-09 Richard Shann <richard.shann@superh.com> + Stephen Clarke <stephen.clarke@superh.com> + + * config/tc-sh64.c (sh64_target_format): Add support for sh64 + Linux environment. + +2002-10-03 Kaz Kojima <kkojima@rr.iij4u.or.jp> + + * contig/tc-sh.c (sh_local_pcrel): New. + (sh_force_relocation): Use sh_local_pcrel. + (md_pcrel_from_section): Check the relocation type whether it + should be resolved locally. Use S_FORCE_RELOC. + +2002-10-01 Alan Modra <amodra@bigpond.net.au> + + * config/tc-mips.h (TC_FORCE_RELOCATION_SUB_SAME): Define. + (TC_FORCE_RELOCATION): Tidy arg. + +2002-09-30 Gavin Romig-Koch <gavin@redhat.com> + Ken Raeburn <raeburn@cygnus.com> + Aldy Hernandez <aldyh@redhat.com> + DJ Delorie <dj@redhat.com> + Michael Meissner <meissner@redhat.com> + Eric Christopher <echristo@redhat.com> + Richard Sandiford <rsandifo@redhat.com> + + * doc/c-mips.texi: Add entries for -march=vr4120,vr4130,vr4181, + vr5400 and vr5500. Add entry for -mfix-vr4122-bugs. + * config/tc-mips.c (CPU_HAS_DROR, CPU_HAS_ROR): New macros. + (hilo_interlocks): True for CPU_VR5500. + (gpr_interlocks, cop_interlocks): True for CPU_VR5400 and CPU_VR5500. + (mips_fix_vr4122_bugs): New. + (append_insn): Work around 4122 errors if mips_fix_vr4122_bugs. + (mips_emit_delays): Likewise. + (macro2) [M_DROLI]: Use dror or dror32 if CPU_HAS_DROR. + [M_ROLI]: Likewise ror if CPU_HAS_ROR. + (validate_mips_insn, mips_ip): Handle '[', ']', 'e' and '%'. + (OPTION_FIX_VR4122, OPTION_NO_FIX_VR4122): New options. + (md_longopts): Add -mfix-vr4122-bugs and -no-mfix-vr4122-bugs. + (OPTION_ELF_BASE): Bump. + (md_parse_option): Handle the new options. + (mips_cpu_info_table): Add entries for vr4120, vr4130, vr4181, + vr5400 and vr5500. + +2002-09-29 H.J. Lu <hjl@gnu.org> + + * config/tc-mips.c (md_apply_fix3): Subtract the symbol value + twice if howto->pcrel_offset is true. + +2002-09-28 Matt Thomas <matt@3am-software.com> + Jason Thorpe <thorpej@wasabisystems.com> + + * config/tc-vax.c (md_estimate_size_before_relax): Only try to + convert undefined references to GOT32/PLT32 if PIC code is + requested. Fix comment. + +2002-09-27 Kaz Kojima <kkojima@rr.iij4u.or.jp> + + * config/tc-sh.c (sh_force_relocation): Return 0 for + some PC relative relocations when not relaxing. + +2002-09-26 Jakub Jelinek <jakub@redhat.com> + + * config/tc-i386.c (tc_i386_fix_adjustable): Add x86-64 TLS relocs. + Define them if not BFD_ASSEMBLER. + (lex_got): Handle @tlsgd, @dtpoff and @tpoff in 64-bit mode, add + @tlsld. + (md_apply_fix3): No addend for BFD_RELOC_X86_64_TLSGD, + BFD_RELOC_X86_64_TLSLD and BFD_RELOC_X86_64_GOTTPOFF. + (tc_gen_reloc): Handle x86-64 TLS relocs. + +2002-09-27 Alan Modra <amodra@bigpond.net.au> + + * config/tc-avr.c (md_apply_fix3): Reinstate code handling pcrel + fixups to current or absolute section. + +2002-09-26 Jim Wilson <wilson@redhat.com> + + * config/tc-v850.c (v850_offset): Use frag_var instead of frag_now_fix + and frag_more. + +2002-09-26 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (CPU_HAS_MIPS16): Add mips-lsi-elf as MIPS16 + capable configuration. + (macro_build): Check for MIPS16 capability, not for actual MIPS16 code + generation. + (mips_ip): Likewise. + +2002-09-26 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (append_insn): Fix jump overflow check. + +2002-09-24 Alan Modra <amodra@bigpond.net.au> + + * config/tc-i386.c (process_operands): Warn about "lea" segment + overrides. + +2002-09-22 Mark Elbrecht <snowball3@softhome.net> + + * write.c: Delete set_segment_vma and prototype. Update all callers. + +2002-09-21 Alan Modra <amodra@bigpond.net.au> + + * config/tc-i386.c (md_apply_fix3): Replace S_IS_EXTERNAL, + S_IS_WEAK etc. with S_FORCE_RELOC call. Correct comment. + Rename "fseg" to "sym_seg". + * Makefile.am: Run "make dep-am". + * Makefile.in: Regenerate. + * doc/Makefile.in: Regenerate. + +2002-09-20 Nick Clifton <nickc@redhat.com> + + * symbols.c (colon): Do not allow symbols to be created in the + absolute section if WORKING_DOT_WORD is not defined and + new_broken_words would require a new frag to be created. + +2002-09-20 Alan Modra <amodra@bigpond.net.au> + + * expr.c (expr): Simplify foo-foo here. + (clean_up_expression): Remove O_subtract code. + + * write.h (struct fix): Add fx_dot_value. + (dot_value): Declare. + * write.c (dot_value): New var. + (fix_new_internal): Save dot_value as fx_dot_value. + (fixup_segment): Adjust fx_offset using fx_dot_value. + * expr.c (expr): Update dot_value. + +2002-09-19 Jakub Jelinek <jakub@redhat.com> + + * config/tc-i386.c (tc_i386_fix_adjustable): Handle + BFD_RELOC_386_TLS_IE and BFD_RELOC_386_TLS_GOTIE. + (BFD_RELOC_386_TLS_IE, BFD_RELOC_386_TLS_GOTIE): Define to 0 + if not defined. + (lex_got): Handle @GOTNTPOFF and @INDNTPOFF. + (md_apply_fix3, tc_gen_reloc): Handle BFD_RELOC_386_TLS_IE and + BFD_RELOC_386_TLS_GOTIE. + +2002-09-19 Richard Henderson <rth@redhat.com> + + * config/tc-alpha.c (md_pcrel_from): Only adjust special for + branch type relocs. + (alpha_force_relocation): Don't special-case branch type relocs. + +2002-09-19 Nick Clifton <nickc@redhat.com> + + * config/tc-m68k.c (select_control_regs): Handle situation where + architecture has not yet been selected. + +2002-09-18 Chris Demetriou <cgd@broadcom.com> + + * config/tc-mips.c (IS_SEXT_32BIT_NUM): Move closer to top of file. + (IS_SEXT_16BIT_NUM): New macro. + (macro_build_ldst_constoffset): New function, to build a set of + instructions to do a load or store from a constant offset relative + to a given register. + (macro, s_cprestore): Use macro_build_ldst_constoffset to implement + .cprestore pseudo-op. + +2002-09-18 Chris Demetriou <cgd@broadcom.com> + + * config/tc-mips.c (md_apply_fix3): Just return for BFD_RELOC_8. + +2002-09-18 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (s_change_section): Fix parsing. Code cleanup. + +2002-09-17 Stan Cox <scox@redhat.com> + + * tc-mips.c (load_address): Use BFD_RELOC_MIPS_GOT_DISP for newabi. + (macro): Likewise for la. Likewise for ld. + (mips_after_parse_args): Make -xgot optional, not the default. + (md_apply_fix3): Allow composite relocation to set up gp. + (tc_gen_reloc): Allow relaxing for newabi. + Relax R_MIPS_CALL16 to R_MIPS_GOT_PAGE/R_MIPS_GOT_OFST if local. + Relax R_MIPS_GOT16/R_MIPS_LO16 to R_MIPS_GOT_DISP if local. + +2002-09-17 Nick Clifton <nickc@redhat.com> + + * config/tc-arm.c (md_apply_fix3): Note that an implemented + BFD_RELOC_ARM_IMMEDIATE has been done. + (tc_gen_reloc): Do not issue reloc number of unimplemented + BFD_RELOC_ARM_IMMEDIATE and BFD_RELOC_ARM_OFFSET_IMM relocs - + their name is already in the error message - plus remove them + from the default case. + + * config/tc-arm.c (do_ldmstm): Warn about unpredictable + behavior of instructions. + +2002-09-17 Svein E. Seldal <Svein.Seldal@solidas.com> + + * config/tc-tic4x.c: Add function declarations and ATTRIBUTE_UNUSED. + Convert functions to K&R format. + +2002-09-17 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (pdr_seg): Define only for ELF. + (s_change_section): Remove unused variable. Don't use for nonELF. + +2002-09-17 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/obj-elf.c (obj_elf_change_section): Move prototype to + obj-elf.h + * config/obj-elf.h (obj_elf_change_section): Likewise. + +2002-09-16 Elias Athanasopoulos <eathan@otenet.gr> + + * dwarf2dbg.c (out_debug_abbrev): Add support for the DW_AT_name field. + (out_debug_info): Likewise. + +2002-09-16 Bruno Haible <bruno@clisp.org> + + * config/tc-i386.h (ELF_TARGET_FORMAT): New macro. + (TARGET_FORMAT): Use ELF_TARGET_FORMAT instead of "elf32-i386". + * config/tc-i386.c (i386_target_format): Likewise. + * config/tc-alpha.h (ELF_TARGET_FORMAT): New macro. + (TARGET_FORMAT): Use ELF_TARGET_FORMAT instead of "elf64-alpha". + +2002-09-13 Nick Clifton <nickc@redhat.com> + + * config/tc-ppc.c (md_assemble): Do not count FAKE operands + when deciding if any operands have been skipped. + +2002-09-11 Nick Clifton <nickc@redhat.com> + + * NEWS: New TI port supports both C4x and C3x series of DSPs. + + * po/tr.po: Updated Turkish translation. + +2002-09-11 Jakub Jelinek <jakub@redhat.com> + + * config/tc-i386.c (md_apply_fix3): Allow addend for + BFD_RELOC_386_TLS_LDO_32, BFD_RELOC_386_TLS_LE and + BFD_RELOC_386_TLS_LE_32. + +2002-09-05 Jeff Law <law@redhat.com> + + * config/tc-hppa.c (md_apply_fix3): Don't set fx_done for + marker relocations such as ENTRY/EXIT. + * config/tc-hppa.h (MD_APPLY_SYM_VALUE): Definition applies + to both OBJ_ELF and OBJ_SOM. + +2002-09-05 Alan Modra <amodra@bigpond.net.au> + + * doc/internals.texi (md_apply_fix3): Expand. + (TC_VALIDATE_FIX, TC_FORCE_RELOCATION, TC_FORCE_RELOCATION_ABS, + TC_FORCE_RELOCATION_LOCAL, TC_FORCE_RELOCATION_SUB_SAME, + TC_FORCE_RELOCATION_SUB_ABS, TC_FORCE_RELOCATION_SUB_LOCAL, + TC_VALIDATE_FIX_SUB, MD_APPLY_SYM_VALUE, S_FORCE_RELOC, + EXTERN_FORCE_RELOC): Document. + (TC_HANDLES_FX_DONE, obj_fix_adjustable): Remove. + * as.h: Don't include struc-symbol.h for arc. + (IS_ELF): Define. + * cgen.c (gas_cgen_md_apply_fix3): Remove *valP fudges and code to + subtract absolute symbol. + * obj.h (struct format_ops): Add frob_file_before_fix. + * subsegs.c (section_symbol): Set BSF_SECTION_SYM flag. + * symbols.c (S_FORCE_RELOC): New function. + * symbols.h (S_FORCE_RELOC): Declare. + * write.c (TC_FORCE_RELOCATION): Change default. + (TC_FORCE_RELOCATION_ABS): Define. + (TC_RELOC_RTSYM_LOC_FIXUP): Don't define. + (TC_FORCE_RELOCATION_LOCAL): Define this instead. + (TC_FORCE_RELOCATION_SECTION): Don't define. + (TC_FORCE_RELOCATION_SUB_SAME): Define this instead. + (TC_FORCE_RELOCATION_SUB_ABS): Define. + (TC_FORCE_RELOCATION_SUB_LOCAL): Define. + (TC_VALIDATE_FIX_SUB): Define. + (TC_FIX_ADJUSTABLE): Don't define. + (MD_APPLY_SYM_VALUE): Define this instead. + (abs_section_sym): New variable. + (adjust_reloc_syms): Use S_FORCE_RELOC. Remove obj_fix_adjustable + call. Don't symbol_mark_used_in_reloc here. Simplify link_once tests. + Don't put the absolute section sym on fixups here. + (fix_segment): New function. + (write_relocs): Don't call fixup_segment from here. + (write_object_file): Instead call tc_frob_file_before_fix, + obj_frob_file_before_fix, and fix_segment prior to symbol table code. + Don't output the absolute section symbol. + (fixup_segment): Rewrite. + * write.h (abs_section_sym): Declare. + * config/obj-aout.c (obj_aout_frob_file_before_fix): Rename from + obj_aout_frob_file. + (aout_format_ops): Adjust to suit. + * config/obj-aout.h (obj_frob_file): Don't define. + (obj_frob_file_before_fix): Define. + (obj_aout_frob_file_before_fix): Rename from obj_aout_frob_file. + (S_FORCE_RELOC): Define. + * config/obj-bout.h (S_FORCE_RELOC): Define. + * config/obj-coff.c (coff_format_ops): Init new field. + * config/obj-coff.h: Formatting fixes. + (obj_sec_sym_ok_for_reloc): Define. + (S_FORCE_RELOC): Define. + * config/obj-ecoff.c (ecoff_frob_file_before_fix): Split out .. + (ecoff_frob_file): .. from here. + (ecoff_format_ops): Add new function. + * config/obj-ecoff.h (ecoff_frob_file_before_fix): Declare. + (obj_frob_file_before_fix): Define. + * config/obj-elf.c (elf_format_ops): Init new field. + * config/obj-elf.h (obj_sec_sym_ok_for_reloc): Expand comment. + * config/obj-ieee.h: Formatting fixes. + (S_FORCE_RELOC): Define. + * config/obj-multi.h (obj_frob_file_before_fix): Define. + * config/obj-vms.h (S_FORCE_RELOC): Define. + * config/tc-alpha.c (md_apply_fix3): Correct GPDISP comment. + (alpha_force_relocation): Use S_FORCE_RELOC, and don't return 0 + for BFD_RELOC_32 and BFD_RELOC_64. + (alpha_fix_adjustable): Remove extern and weak tests. + (alpha_before_fix): Rename from alpha_adjust_symtab. + (alpha_adjust_relocs): Rename from alpha_adjust_symtab_relocs. + * config/tc-alpha.h (struct fix, struct alpha_reloc_tag): Declare. + (TC_VALIDATE_FIX): Tweak param name. + (TC_FORCE_RELOCATION, tc_fix_adjustable): Likewise. + (TC_RELOC_RTSYM_LOC_FIXUP): Don't define. + (TC_FORCE_RELOCATION_LOCAL): Define this instead. + (MD_APPLY_SYM_VALUE): Define. + (tc_adjust_symtab): Don't define. + (alpha_adjust_symtab): Don't declare. + (tc_frob_file_before_fix): Define. + (alpha_before_fix): Declare. + (TC_INIT_FIX_DATA): Tweak param names. + * config/tc-arc.c: Include "struc-symbol.h". + (md_pcrel_from): Remove undefined sym fudge. + (md_apply_fix3): Remove *valP fudges and code to subtract abs sym. + Don't set fx_addnumber. + (tc_gen_reloc): Remove spurious fx_addnumber comment. + * config/tc-arc.h (MD_APPLY_SYM_VALUE): Define. + (EXTERN_FORCE_RELOC): Define. + * config/tc-arm.c (md_apply_fix3 <case BFD_RELOC_ARM_GOTPC>): Remove. + (tc_gen_reloc): Fudge ARM_GOTPC addend. + (arm_validate_fix): Return void. + (arm_fix_adjustable <elf version>): Remove extern and weak tests. + Add plt and got reloc tests. + (arm_force_relocation): Call S_FORCE_RELOC. + * config/tc-arm.h (struct fix): Forward declare. + (TC_VALIDATE_FIX): No longer set add_symbolP. + (arm_validate_fix): Adjust declaration. + (TC_FORCE_RELOCATION <pe version): Call S_FORCE_RELOC. + (TC_FORCE_RELOCATION): Tweak param name. + (TC_INIT_FIX_DATA): Likewise. + (obj_fix_adjustable): Don't define. + (tc_fix_adjustable): Call arm_fix_adjustable. + (TC_FIX_ADJUSTABLE): Don't define. + (MD_APPLY_SYM_VALUE): Define. + (EXTERN_FORCE_RELOC): Define. + (TC_RELOC_RTSYM_LOC_FIXUP): Don't define. + (TC_FORCE_RELOCATION_LOCAL): Define this instead. + * config/tc-avr.c (md_apply_fix3): Don't cast valP pointer type. + Remove *valP fudges and code to subtract abs sym. Don't set + fx_addnumber. + * config/tc-avr.h: Formatting. + (EXTERN_FORCE_RELOC): Define. + (MD_APPLY_SYM_VALUE): Define. + * config/tc-cris.c (tc_gen_reloc): Don't use fx_addnumber. + (md_apply_fix3): Remove code to subtract abs sym. + (md_cris_force_relocation): Update comment. Call S_FORCE_RELOC. + * config/tc-cris.h (TC_FORCE_RELOCATION): Tweak param name. + (IS_CRIS_PIC_RELOC, tc_fix_adjustable): Likewise. + (TC_RELOC_RTSYM_LOC_FIXUP): Don't define. + (TC_FORCE_RELOCATION_LOCAL): Define this instead. + (tc_fix_adjustable): Remove extern, weak tests. + * config/tc-d10v.c (tc_gen_reloc): Don't fiddle address of + BFD_RELOC_VTABLE_INHERIT relocs. Don't use fx_addnumber. + (md_apply_fix3): Don't cast valP pointer type. Remove *valP fudges + and code to subtract abs sym. + (d10v_fix_adjustable): Remove extern, weak, SEC_MERGE tests. + (d10v_force_relocation): Call S_FORCE_RELOC. + * config/tc-d10v.h: Don't include write.h. + (struct fix): Instead, forward declare. + (MD_PCREL_FROM_SECTION): Tweak param names. + (md_pcrel_from_section): Use "struct fix" instead of "fixS". + (d10v_fix_adjustable): Likewise. + (obj_fix_adjustable): Don't define. + (tc_fix_adjustable): Define. + (TC_FORCE_RELOCATION): Tweak param name. + (MD_APPLY_SYM_VALUE): Define. + (EXTERN_FORCE_RELOC): Define. + * config/tc-d30v.c (tc_gen_reloc): Don't use fx_addnumber. + (md_apply_fix3): Don't cast valP pointer type. Remove *valP fudges + and code to subtract abs sym. + * config/tc-d30v.h: Don't include write.h. + (struct fix): Instead, forward declare. + (MD_PCREL_FROM_SECTION): Tweak param names. + (md_pcrel_from_section): Use "struct fix" instead of "fixS". + (MD_APPLY_SYM_VALUE): Define. + (EXTERN_FORCE_RELOC): Define. + * config/tc-dlx.c (md_dlx_force_relocation): Call S_FORCE_RELOC. + (md_dlx_fix_adjustable): Don't test for NULL fx_addsy. + (md_apply_fix3): No need to test fx_pcrel before setting fx_done. + (tc_gen_reloc): Don't fiddle with BFD_RELOC_VTABLE_INHERIT relocs. + Adjust the address for BFD_RELOC_VTABLE_ENTRY, not the addend. + Don't use fx_addnumber. + * config/tc-dlx.h: Don't include write.h. + (md_convert_frag): We're not alpha twice over. + (EXTERN_FORCE_RELOC): Define. + (obj_fix_adjustable): Don't define. + (tc_fix_adjustable): Define. + (TC_FIX_ADJUSTABLE): Don't define. + (MD_APPLY_SYM_VALUE): Define. + (LOCAL_LABELS_DOLLAR): Undef always. + * config/tc-fr30.c (fr30_force_relocation): Call S_FORCE_RELOC. + (fr30_fix_adjustable): Remove extern, weak tests. + * config/tc-fr30.h (MD_APPLY_SYM_VALUE): Define. + (obj_fix_adjustable): Don't define. + (tc_fix_adjustable): Define. + (struct fix): Forward declare. + (MD_PCREL_FROM_SECTION): Tweak param name. Remove duplicate. + * config/tc-frv.c (frv_force_relocation): Call S_FORCE_RELOC. + (frv_fix_adjustable): Don't do extern, weak tests. + * config/tc-frv.h (MD_APPLY_SYM_VALUE): Define. + (TC_FIX_ADJUSTABLE): Don't define. + (obj_fix_adjustable): Don't define. + (tc_fix_adjustable): Define. + (struct fix): Forward declare. + (MD_PCREL_FROM_SECTION): Tweak param name. Remove duplicate.\ + * config/tc-h8300.c (md_apply_fix3): Don't cast valP pointer type. + * config/tc-h8300.h (struct fix): Forward declare. + (EXTERN_FORCE_RELOC): Define. + * config/tc-hppa.c (md_apply_fix3): Remove subtraction of sym value. + (hppa_fix_adjustable): Don't test extern or weak. Don't + symbol_mark_used_in_reloc. + (hppa_force_relocation): Use S_FORCE_RELOC instead of S_IS_EXTERNAL + and S_IS_WEAK. + * config/tc-hppa.h (EXTERN_FORCE_RELOC): Define + (TC_FORCE_RELOCATION, TC_INIT_FIX_DATA): Tweak param name. + (TC_FORCE_RELOCATION_SECTION): Don't define. + (MD_APPLY_SYM_VALUE): Define. + * config/tc-i370.c (md_apply_fix3): Remove *valP fudges and code + to subtract abs sym. + * config/tc-i370.h: Remove ifdef OBJ_ELF tests. + (MD_APPLY_SYM_VALUE): Define. + (MD_PCREL_FROM_SECTION): Tweak param name. + * config/tc-i386.c (tc_i386_fix_adjustable): Remove weak, extern tests. + (md_apply_fix3): Test fx_addsy, not fx_pcrel. + (i386_force_relocation): New function. + * config/tc-i386.h (TC_COFF_FIX2RTYPE): Tweak param name. + (TC_VALIDATE_FIX): Likewise. + (TC_FIX_ADJUSTABLE): Don't define. + (MD_APPLY_SYM_VALUE): Define. + (TC_FORCE_RELOCATION <elf version>): Call i386_force_relocation. + (i386_force_relocation): Declare. + (TC_RELOC_RTSYM_LOC_FIXUP): Don't define. + (TC_FORCE_RELOCATION_LOCAL): Define this instead. + (TC_FORCE_RELOCATION <coff version>): Call S_FORCE_RELOC. + * config/tc-i860.c (md_apply_fix3): Don't cast valP pointer type. + * config/tc-i860.h (MD_APPLY_SYM_VALUE): Define. + (EXTERN_FORCE_RELOC): Define. + * config/tc-i960.c (reloc_callj): Remove declaration. Return false. + (md_apply_fix3): Don't cast valP pointer type. Move code here from + old fixup_segment. No need to test fx_pcrel before setting fx_done. + (i960_validate_fix): Remove add_symbolPP arg and add_symbolP macro. + Use fx_addsy instead of add_symbolP, as_bad_where instead of as_bad. + Remove #if 0 code. Invert return boolean. + * config/tc-i960.h (TC_COUNT_RELOC): Tweak param name. + (TC_COFF_FIX2RTYPE, TC_ADJUST_RELOC_COUNT, TC_VALIDATE_FIX): Likewise. + (tc_headers_hook, tc_coff_fix2rtype): Remove declaration. + (tc_coff_sizemachdep): Prototype. + (i960_handle_align): Likewise. + (i960_validate_fix): Adjust declaration. + (reloc_callj): Likewise. + (EXTERN_FORCE_RELOC): Define. + (TC_FORCE_RELOCATION_SUB_SAME): Define. + (TC_FORCE_RELOCATION_ABS): Define. + (TC_RELOC_RTSYM_LOC_FIXUP): Don't define. + (TC_FORCE_RELOCATION_LOCAL): Define this instead. + (TC_FIX_ADJUSTABLE): Don't define. + (MD_APPLY_SYM_VALUE): Define. + * config/tc-ia64.c (ia64_force_relocation): Call S_FORCE_RELOC. + * config/tc-ia64.h (MD_APPLY_SYM_VALUE): Define. + (TC_RELOC_RTSYM_LOC_FIXUP): Don't define. + (TC_FORCE_RELOCATION_LOCAL): Define this instead. + * config/tc-ip2k.c (ip2k_force_relocation): Call S_FORCE_RELOC. + * config/tc-ip2k.h (MD_APPLY_FIX3): Don't define. + (MD_APPLY_SYM_VALUE): Define. + (EXTERN_FORCE_RELOC): Define. + (TC_FORCE_RELOCATION): Tweak param name. + * config/tc-m32r.c (m32r_force_relocation): Call S_FORCE_RELOC. + (m32r_fix_adjustable): Don't test extern, weak. + * config/tc-m32r.h (MD_PCREL_FROM_SECTION): Tweak param name. + (MD_APPLY_SYM_VALUE): Define. + (obj_fix_adjustable): Don't define. + (tc_fix_adjustable): Define. + (tc_frob_file): Don't define. + (tc_frob_file_before_fix): Define. + (EXTERN_FORCE_RELOC): Define. + * config/tc-m68hc11.c (tc_gen_reloc): Set addend to zero. Adjust + BFD_RELOC_VTABLE_ENTRY address. + (tc_m68hc11_force_relocation): Call S_FORCE_RELOC. + (tc_m68hc11_fix_adjustable): Don't test relaxable_symbol. + (md_apply_fix3): Remove *valP fudges and code to subtract abs sym. + Remove duplicated fx_done code. + * config/tc-m68hc11.h (MD_APPLY_SYM_VALUE): Define. + (EXTERN_FORCE_RELOC): Define. + * config/tc-m68k.c (tc_m68k_fix_adjustable): Don't test + relaxable_symbol. + * config/tc-m68k.h (TC_COFF_FIX2RTYPE): Tweak param name. + (TC_RELOC_RTSYM_LOC_FIXUP): Don't define. + (TC_FIX_ADJUSTABLE): Don't define. + (EXTERN_FORCE_RELOC): Define. + (MD_APPLY_SYM_VALUE): Define. + (TC_FORCE_RELOCATION): Call S_FORCE_RELOC. + * config/tc-mcore.c (md_apply_fix3): Don't cast valP pointer type. + Remove fx_addsy tests. + (mcore_force_relocation): Call S_FORCE_RELOC. + (mcore_fix_adjustable): Don't test fx_addsy. + * config/tc-mcore.h (MD_PCREL_FROM_SECTION): Tweak param name. + (EXTERN_FORCE_RELOC): Define. + (obj_fix_adjustable): Don't define. + (tc_fix_adjustable): Define. + (MD_APPLY_SYM_VALUE): Define. + * config/tc-mips.c (enum mips_pic_level): Move to tc-mips.h. + (mips_pic): No longer static. + (mips_force_relocation): Call S_FORCE_RELOC. + (mips_fix_adjustable): Remove extern, weak tests. + * config/tc-mips.h (enum mips_pic_level): Declare. + (mips_pic): Declare. + (tc_frob_file): Don't define. + (tc_frob_file_before_fix): Define this instead. + (EXTERN_FORCE_RELOC): Define. + * config/tc-mmix.c (md_apply_fix3): Replace real_reg_section tests + with reg_section tests. Set fx_done instead of calling + symbol_clear_used_in_reloc on bad relocs. + (tc_gen_reloc): Zero fx_addsy on bad relocs. + (mmix_force_relocation): Remove weak sym test. Call S_FORCE_RELOC. + (mmix_adjust_symtab): Simplify list handling. Abort on any + nonsense. + * config/tc-mmix.h (tc_fix_adjustable): Remove weak tests. Check + BFD_RELOC_MMIX_LOCAL. + (tc_frob_symbol): Keep user defined syms in reg_section. Don't punt. + (EXTERN_FORCE_RELOC): Define. + (MD_PCREL_FROM_SECTION): Tweak param name. + (tc_frob_file): Don't define. + (tc_frob_file_before_fix): Define this instead. + * config/tc-mn10300.c (mn10300_force_relocation): Call S_FORCE_RELOC. + Remove SEC_CODE checks. + (mn10300_fix_adjustable): Remove extern and weak tests. + * config/tc-mn10300.h (EXTERN_FORCE_RELOC): Define. + (TC_FORCE_RELOCATION): Tweak param name. + (obj_fix_adjustable): Don't define. + (TC_FORCE_RELOCATION_SUB_SAME): Define to handle SEC_CODE. + * config/tc-ns32k.h (TC_FIX_DATA_PRINT): Tweak param name. + * config/tc-openrisc.c (openrisc_force_relocation): Call S_FORCE_RELOC. + (openrisc_fix_adjustable): Don't test fx_addsy. + * config/tc-openrisc.h (MD_APPLY_SYM_VALUE): Define. + (obj_fix_adjustable): Don't define. + (tc_fix_adjustable): Define this instead. + (MD_PCREL_FROM_SECTION): Remove duplicate. Tweak param name. + * config/tc-or32.c (md_apply_fix3): Don't cast valP pointer type. + (tc_gen_reloc): Don't fiddle with BFD_RELOC_VTABLE_INHERIT relocs. + Adjust the address for BFD_RELOC_VTABLE_ENTRY, not the addend. + * config/tc-or32.h (EXTERN_FORCE_RELOC): Define. + (MD_APPLY_SYM_VALUE): Define. + * config/tc-pj.c (md_apply_fix3): Don't cast valP pointer type. + Don't subtract symbol value. + * config/tc-pj.h (md_pcrel_from): Tweak param name. + (EXTERN_FORCE_RELOC): Define. + (TC_FORCE_RELOCATION): Call S_FORCE_RELOC. + (MD_APPLY_SYM_VALUE): Define. + (obj_fix_adjustable): Don't define. + (tc_fix_adjustable): Define this instead. + * config/tc-ppc.c (ppc_frob_symbol <coff version>): Ignore absolute + section sym. + (ppc_force_relocation <coff version>): Call S_FORCE_RELOC. + (ppc_force_relocation <elf version>): New. + (ppc_fix_adjustable <elf version>): Remove extern and weak tests. + (md_apply_fix3): Don't subtract symbol values for ELF. Update + comments. Don't subtract fx_subsy as that is already done. + * config/tc-ppc.h (tc_fix_adjustable): Tweak param name. + (MD_PCREL_FROM_SECTION): Likewise. + (TC_FORCE_RELOCATION): Define for both ELF and XCOFF as calling + ppc_force_relocation. + (TC_FORCE_RELOCATION_SECTION): Delete. + (TC_RELOC_RTSYM_LOC_FIXUP): Don't define. + (TC_FORCE_RELOCATION_LOCAL): Define this instead. + (MD_APPLY_SYM_VALUE): Define. + * config/tc-s390.c: #include "dwarf2dbg.h". + (s390_insn): Remove excess parens. + (tc_s390_fix_adjustable): Remove extern, weak, SEC_MERGE tests. + (tc_s390_force_relocation): Call S_FORCE_RELOC. + (md_apply_fix3): Add ATTRIBUTE_UNUSED on "seg". Abort when fx_subsy + non-NULL. Don't subtract off fx_addsy value. + * config/tc-s390.h (TC_RELOC_RTSYM_LOC_FIXUP): Don't define. + (TC_FORCE_RELOCATION, MD_PCREL_FROM_SECTION): Tweak param name. + (TC_FIX_ADJUSTABLE): Don't define. + (MD_APPLY_SYM_VALUE): Define. + * config/tc-sh.c (SWITCH_TABLE_CONS): Move to tc-sh.h. + (SWITCH_TABLE): Likewise. + (sh_force_relocation): Call S_FORCE_RELOC. + (sh_fix_adjustable): Remove "return 1" cases handled by the default. + Replace TC_RELOC_RTSYM_LOC_FIXUP with reloc type tests. + (md_apply_fix3 <case BFD_RELOC_32_PLT_PCREL>): Simplify, + fx_addnumber is zero on entry. Save val in fx_addnumber. + (tc_gen_reloc): Don't subtract fx_subsy. + * config/tc-sh.h (struct fix): Move. + (obj_fix_adjustable): Don't define. + (tc_fix_adjustable): Define this instead. + (TC_FIX_ADJUSTABLE): Don't define. + (MD_APPLY_SYM_VALUE): Define. + (SWITCH_TABLE_CONS): Define. + (SWITCH_TABLE): Define. + (TC_FORCE_RELOCATION_SUB_SAME): Define. + (TC_VALIDATE_FIX_SUB): Define. + (MD_PCREL_FROM_SECTION): Tweak param name. + (TC_RELOC_RTSYM_LOC_FIXUP): Don't define. + (TC_FORCE_RELOCATION_LOCAL): Define this instead. + (TC_FORCE_RELOCATION_SUB_ABS): Define. + * config/tc-sh64.h (TC_RELOC_RTSYM_LOC_FIXUP): Don't define. + (TC_FORCE_RELOCATION_LOCAL): Define this instead. + (TC_FORCE_RELOCATION_SUB_SAME): Define. + (TC_VALIDATE_FIX_SUB): Define. + (MD_PCREL_FROM_SECTION): Tweak param name. + * config/tc-sparc.c (md_apply_fix3): Don't subtract off symbol value. + (tc_gen_reloc): Use S_FORCE_RELOC. + (elf32_sparc_force_relocation): Call S_FORCE_RELOC. + * config/tc-sparc.h (TC_FORCE_RELOCATION <coff version>): Remove. + (TC_FORCE_RELOCATION_ABS): Define this instead. + (TC_RELOC_RTSYM_LOC_FIXUP): Don't define. + (TC_FORCE_RELOCATION_LOCAL): Define this instead. + (tc_fix_adjustable): Remove extern and weak tests. Use S_FORCE_RELOC. + (MD_APPLY_SYM_VALUE): Define. + (TC_FIX_DATA_PRINT): Tweak param name. + * config/tc-tic30.c (USE_STDOUT): Don't define. + (md_parse_option): Remove stupid debug code. + (tc_gen_reloc): Don't use fx_addnumber. + * config/tc-v850.c (v850_fix_adjustable): Remove extern and weak tests. + (v850_force_relocation): Remove weak test. Call S_FORCE_RELOC. + * config/tc-v850.h (obj_fix_adjustable): Don't define. + (tc_fix_adjustable): Define this instead. + (TC_FIX_ADJUSTABLE): Don't define. + (MD_APPLY_SYM_VALUE): Define this instead. + (TC_FORCE_RELOCATION, MD_PCREL_FROM_SECTION): Tweak param name. + * config/tc-vax.h (TC_RELOC_RTSYM_LOC_FIXUP): Don't define. + (TC_FIX_ADJUSTABLE): Don't define. + (MD_APPLY_SYM_VALUE): Define this instead. + (tc_fix_adjustable): Remove extern and weak tests. + * config/tc-w65.h (struct fix): Forward declare. + * config/tc-xstormy16.c (xstormy16_force_relocation): Call + S_FORCE_RELOC. + (xstormy16_fix_adjustable): Remove extern and weak tests. Don't + call xstormy16_force_relocation; Instead test for FPTR16 reloc. + (xstormy16_md_apply_fix3): Remove *valP fudges and code to subtract + absolute symbol. + * config/tc-xstormy16.h (MD_APPLY_FIX3): Don't define. + (MD_APPLY_SYM_VALUE): Define. + (obj_fix_adjustable): Don't define. + (tc_fix_adjustable): Define this instead. + (MD_PCREL_FROM_SECTION): Remove duplicate. Tweak param name. + +2002-09-04 Alan Modra <amodra@bigpond.net.au> + + * config/tc-ppc.c (ppc_frob_symbol): Formatting, warning fix. + (ppc_fix_adjustable <coff version>): Cleanup. + + * config/tc-ppc.c (PPC_HIGHER, PPC_HIGHEST): Fix warning. + (md_parse_option): No -a64 without BFD64. + (ppc_set_cpu): Select appropriate cpu when ppc_obj64. + (ppc_arch): Use bfd_mach_rs6k for bfd_arch_rs6000. + +2002-09-04 Nick Clifton <nickc@redhat.com> + + * config/tc-ppc.c (md_begin): Do not insert non-BookE32 + instructions into the hash table if the target cpu is the BookE32. + +2002-08-31 Hans-Peter Nilsson <hp@bitrange.com> + + * read.c (do_align): Use ATTRIBUTE_UNUSED_LABEL for label, not + ATTRIBUTE_UNUSED. + +2000-08-28 Catherine Moore <clm@redhat.com> + + * tc-v850.c (v850_relax): Declare. + (v850_longcode): New routine. + (v850_handle_align): New routine. + (md_pseudo_table): Add longcall and longjump. + (md_parse_option): Check for relax option. + (tc_gen_reloc): Handle BFD_RELOC_V850_LONGCALL, + BFD_RELOC_V850_LONGJUMP, and BFD_RELOC_V850_ALIGN. + (md_apply_fix3): Likewise. + (v850_force_relocation): Likewise. + (v850_comm): Change the current section. + (md_assemble): Ensure that the correct value is put in the + fixup. + (v850_sdata, v850_tdata, v850_zdata, v850_sbss, v850_tbss, + v850_zbss, v850_rosdata, v850_rozdata): Fix section book keeping. + Remove redundant v850ea support. + * tc-v850.h (HANDLE_ALIGN): Define. + (v850_handle_align): Declare. + * doc/c-v850.c: Document -mrelax, .longcall and .longjump. + +2002-08-28 Svein E. Seldal <Svein.Seldal@solidas.com> + + * configure.in: Add tic4x-coff* and c4x-coff*-coff-coff targets. + * configure: Regenerate. + * NEWS: Mention new port. + +2002-08-28 Michael Hayes <m.hayes@elec.canterbury.ac.nz> + + * config/obj-coff.c: Add sdef definition. + * config/obj-coff.h: Add tic4x include file and set + target format. + * config/tc-tic4x.c: New file. + * config/tc-tic4x.h: New file. + +2002-08-28 Alan Modra <amodra@bigpond.net.au> + + * write.c (BFD_FAST_SECTION_FILL): Remove unused macro. + (TC_ADJUST_RELOC_COUNT): Tweak param name. + (TC_FORCE_RELOCATION, TC_FORCE_RELOCATION_SECTION): Likewise. + (TC_FIX_ADJUSTABLE, MD_PCREL_FROM_SECTION): Likewise. + (RELOC_ENUM): Define. + (fix_new_internal): Use RELOC_ENUM. + (fix_new, fix_new_exp): Likewise. + (adjust_reloc_syms): Comment. Remove unnecessary tests on sym != NULL. + Replace gotos with continue. + (write_relocs): Formatting. Avoid symbol loops in + RELOC_EXPANSION_POSSIBLE case too. Report bfd_reloc_outofrange + errors, and error number in other cases. + (fixup_segment): Remove param names from prototype. Rename + "this_segment_type" to "this_segment". Update linkrelax comment. + Remove "size, "place" and "where" local vars. Formatting. Update + "no symbol" comment. Remove #if 0 and #if 1. + + * app.c (do_scrub_chars): Don't test IGNORE_NONSTANDARD_ESCAPES. Tidy. + +2002-08-27 Alan Modra <amodra@bigpond.net.au> + + * dwarf2dbg.c: Always include dwarf2dbg.h. + (dwarf2_directive_file): Adjust dummy version args. + * ecoff.c (ecoff_directive_weakext): Add ATTRIBUTE_UNUSED. + * expr.c (clean_up_expression <O_subtract>): Allow subtraction + when symbol values differ. + * read.c (do_align): Add ATTRIBUTE_UNUSED to label. + (pseudo_set <O_subtract>): Remove unnecessary segment test. + * config/obj-bout.c (obj_pseudo_table): Warning fix. + +2002-08-26 Alan Modra <amodra@bigpond.net.au> + + * config/tc-w65.c (md_section_align): Fix typo. + (md_parse_option): Return 0, not 1. + +2002-08-22 Nick Clifton <nickc@redhat.com> + + * doc/as.texinfo (Section): Note that if '@' is a comment + character then another symbol is used to prefix the section's + type. + +2002-08-22 Christian Groessler <chris@groessler.org> + + * config/tc-z8k.c (get_operands): Adjust ptr variable also in + "case 0" case. + +2002-08-12 Graeme Peterson <gp@qnx.com> + + * configure.in: Add support for sh-**-nto* target. + * configure: Regenerate. + +2002-08-21 Nitin Gupta <niting@noida.hcltech.com> + + * config/tc-h8300.h (TC_LINKRELAX_FIXUP): Define. + +2002-08-21 Elena Zannoni <ezannoni@redhat.com> + + * config/tc-ppc.c (ppc_cleanup): Do something only if format + is ELF. + (ppc_apuinfo_section_add): Define only if format is ELF. + (md_assemble): Emit APUinfo section only if format is ELF. + Fix formatting. + +2002-08-21 Alan Modra <amodra@bigpond.net.au> + + * config/tc-arc.c (md_pseudo_table <dwarf2_directive_file>): Cast. + * config/tc-frv.c: Likewise. + * config/tc-hppa.c: Likewise. + * config/tc-ia64.c: Likewise. + * config/tc-ip2k.c: Likewise. + * config/tc-m68hc11.c: Likewise. + * config/tc-m68k.c: Likewise. + * config/tc-mmix.c: Likewise. + * config/tc-mn10300.c: Likewise. + * config/tc-sh.c: Likewise. + * config/tc-sparc.c: Likewise. + * config/tc-v850.c: Likewise. + +2002-08-20 Richard Sandiford <rsandifo@redhat.com> + + * config/tc-mips.c (macro2): Implement rotates by zero using shifts + by zero. + +2002-08-19 Elena Zannoni <ezannoni@redhat.com> + + From matthew green <mrg@redhat.com> + + * config/tc-ppc.c (PPC_OPCODE_CLASSIC): Enable this everywhere + PPC_OPCODE_PPC is, except for BookE architectures. + (md_parse_option): Add support for -mspe. + (md_show_usage): Add -mspe. + (md_parse_option): Add support for -me500 and + -me500x2 to generate code for Motorola e500 core complex. + (md_show_usage): Add -me500 and -me500x2. + + (PPC_APUINFO_ISEL, PPC_APUINFO_PMR, PPC_APUINFO_RFMCI, + PPC_APUINFO_CACHELCK, PPC_APUINFO_SPE, PPC_APUINFO_EFS, + PPC_APUINFO_BRLOCK): New macros. + + (ppc_cleanup): New function. + (ppc_apuinfo_section_add): New function. + (APUID): New macro. + (md_assemble): Collect info and write the APUinfo section. + + * config/tc-ppc.h (md_cleanup): Define. + (ppc_cleanup): Export. + (ELF_TC_SPECIAL_SECTIONS): Add .PPC.EMB.apuinfo section. + +2002-08-17 Stan Cox <scox@redhat.com> + + * config/obj-elf.c (obj_elf_change_section): Make non-static. + config/tc-mips.c (s_change_section): New function to support + IRIX .section pseudo-op. + +2002-08-16 Nick Clifton <nickc@redhat.com> + + * config/tc-v850.c (md_assemble): Fix assembling of "callt 0x3f". + +2002-08-15 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-mips.c (macro_build_jalr): Make sure we generate + the fix-up against on the right frag. + (s_cpsetup): Likewise. Parse third argument as expression, to + handle global symbols and forward/backward labels correctly. + +2002-08-14 Nick Clifton <nickc@redhat.com> + + * read.c (stringer): Catch attempts to create strings in the abs + section. + + * config/tc-alpha.c: Fix compiling for COFF targets. + Some minor formatting tidyups. + +2002-08-13 Stephane Carrez <stcarrez@nerim.fr> + + * config/tc-m68hc11.h (MD_PCREL_FROM_SECTION): Remove. + (TC_HANDLES_FX_DONE): Define to let md_apply_fix3 set fx_done flag + according to the reloc. + (tc_fix_adjustable, tc_m68hc11_fix_adjustable): Define. + (TC_FORCE_RELOCATION): Define. + (tc_m68hc11_force_relocation): Declare. + + * config/tc-m68hc11.c (md_pseudo_table): Add relax command. + (s_m68hc11_relax): New function for relax group. + (build_insn, build_jump_insn): Emit a M68HC11_RL_JUMP reloc at + beginning of jump instruction. + (md_pcrel_from): Rename from md_pcrel_from_section and fix + address computation. + (tc-gen_reloc): Update. + (md_estimate_size_before_relax): Create the BFD_RELOC_16_PCREL as + PC-relative fixup. + (tc_m68hc11_force_relocation): New function, handle new relocs. + (tc_m68hc11_fix_adjustable): New to make sure there are enough + reloc for the linker relax pass. + (md_apply_fix3): Handle M68HC11_RL_JUMP, M68HC11_RL_GROUP + and VTABLE relocs. + +2002-08-13 Stephane Carrez <stcarrez@nerim.fr> + + * config/tc-m68hc11.c (m68hc11_elf_final_processing): New function. + (md_pseudo_table): Add .mode, .far and .interrupt pseudo op. + (s_m68hc11_mode): New function for .mode pseudo op. + (s_m68hc11_mark_symbol): New function for .far and .interrupt + pseudo op. + * config/tc-m68hc11.h (elf_tc_final_processing): Define. + (m68hc11_elf_final_processing): Declare. + +2002-08-13 Stephane Carrez <stcarrez@nerim.fr> + + * config/tc-m68hc11.c (md_begin): Take into account additional + page operand for call instruction. + (print_opcode_format): Likewise. + (check_range): Likewise for page range checking. + (get_operand): Don't skip a possible comma in operands. + (fixup8): Generate BFD_RELOC_M68HC11_PAGE reloc. + (fixup16): Likwise with BFD_RELOC_M68HC11_LO16. + (fixup24): New to handle call reloc. + (build_insn): Handle missing page operand for call instruction. + (find): Likewise. + (md_apply_fix3): Take into account new relocs. + (get_operand): Fix the mode for indexed indirect addressing. + (build_indexed_byte): Fix post index byte for indexed indirect mode. + +2002-08-12 Richard Sandiford <rsandifo@redhat.com> + + * config/tc-mips.c (mips_ip): Don't work out the value of + constant %hi()s here. + +2002-08-10 Alan Modra <amodra@bigpond.net.au> + + * config/tc-i386.c (tc_i386_fix_adjustable): Test OUTPUT_FLAVOR + for ELF, and don't bother checking ELF relocs when non-ELF. + (i386_immediate): Allow absolute_section expressions for aout. + (i386_displacement): Likewise. Also test bfd_is_com_section. + (md_estimate_size_before_relax): Test OUTPUT_FLAVOR for ELF. + (md_apply_fix3): Hack for bfd_install_relocation when fx_pcrel, + not when fx_addsy. Remove dead code. + +2002-08-09 Graeme Peterson <gp@qnx.com> + + * configure.in: Add support for ppc-*-nto* target. + * configure: Regenerate. + +2002-08-09 Alan Modra <amodra@bigpond.net.au> + + * config/tc-i386.h: Reorganize. + +2002-08-09 Maciej W. Rozycki <macro@ds2.pg.gda.pl> + + * config/tc-mips.c (macro): Handle a register plus a 16-bit + immediate offset in "dla" and "la" expansions. + +2002-08-09 Alan Modra <amodra@bigpond.net.au> + + * configure.in: bfd_gas=yes for all i386 targets. Formatting. + Remove "bfd_gas=yes" from target table when covered later. + Consolidate some entries. + * configure: Regenerate + +2002-08-09 Jakub Jelinek <jakub@redhat.com> + + * config/tc-i386.c (output_insn): Save frag_now and frag_now_fix () + at start of insn, pass it to output_disp and output_imm. + (output_disp): Added arguments. If _GLOBAL_OFFSET_TABLE_ is seen + in displacement for R_386_32 reloc, use R_386_GOTPC and compute + properly addend. + (output_imm): Added arguments. Compute properly addend for + R_386_GOTPC. + (md_apply_fix3): Remove R_386_GOTPC handling. + +2002-08-06 George France <france@handhelds.org> + + * config/tc-alpha.c (cpu_types): Enabled ev67, ev68, -m21264a + and m21264b processor names and cpu types. + * doc/c-alpha.texi: Documented new types. + +2002-08-06 Alan Modra <amodra@bigpond.net.au> + + * config/tc-ppc.c (md_apply_fix3): Adjust 16 bit XCOFF reloc offset. + +2002-08-01 Richard Sandiford <rsandifo@redhat.com> + + * config/tc-mips.c (tc_gen_reloc): Extend GP-relative addend + handling to BFD_RELOC_MIPS16_GPREL. + +2002-08-01 Nick Clifton <nickc@redhat.com> + + * config/tc-arm.c (add_to_lit_pool): Ensure that offset to literal + pool is computed using signed arithmetic so that proper sign + extension is performed if X_add_number is a 64-bit integer. + +2002-08-01 H.J. Lu <hjl@gnu.org> + Daniel Jacobowitz <drow@mvista.com> + + * dwarf2dbg.c (dwarf2_finish): Don't emit unreferenced + .debug_line section unless it has line information. + +2002-07-31 Ian Dall <ian@sibyl.beware.dropbear.id.au> + + * config/tc-ns32k.h (md_pcrel_adjust): Supply prototype. + * config/tc-ns32k.c (convert_iif, md_parse_option, md_show_usage): + Allow default displacement size to be an option "--disp-size-default". + (md_number_to_disp): Make error messages include value. Use %d to + print integers, not %s. + (fix_new_ns32k): Conditionally set fx_no_overflow so we don't + get duplicate messages sometimes. + (convert_iif): Grow frag to max possible instruction size. Avoid + creating unnecessary fixes. + (md_number_to_field) Add prototype. + (encode_operand, parse, convert_iif, md_fix_pcrel_adjust): Add + prototypes and make static. + (struct addr_mode): Make mode and scaled_mode explicitly signed. + (evaluate_expr): Use resultP argument instead of exprP global. + (get_addr_mode): Quiten compiler warnings. + (encode_operand): eliminate unused variables. Quiten compiler + warnings. Eliminate nul character in format strings. + (parse): argc is unsigned. + (reloc): Type cast index to quieten compiler. + (md_pcrel_adjust, md_apply_fix3): Remove unused variable. + (md_convert_frag): Note unused parameters. Remove unused + variables. + (md_create_long_jump, md_create_short_jump, + md_undefined_symbol_name, md_section_align, tc_gen_reloc): Note + unused parameters. + +2002-07-31 Nick Clifton <nickc@redhat.com> + + * NEWS: Retroactively add entry for Lars Brinkhoff's contribution + of the PDP-11 and 2.11BSD a.out support. + +2002-07-31 Momchil Velikov <velco@fadata.bg> + + * config/tc-v850.c (md_assemble): Fix range check for immediate + operand. + +2002-07-30 Chris Demetriou <cgd@broadcom.com> + + * config/tc-mips.c (mips_cpu_info_table): Clean up entries related + to Broadcom SB-1 core support. + +2002-07-31 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (mips_target_format): Fix formatting. + Add recognition of n32 ABI formats. + +2002-07-30 Maciej W. Rozycki <macro@ds2.pg.gda.pl> + + * tc-mips.c (load_address): Don't clobber $at when loading a + 64-bit address in non-PIC code if noat is in effect. + (macro): Likewise. + +2002-07-30 Maciej W. Rozycki <macro@ds2.pg.gda.pl> + + * config/tc-mips.c (macro): Use codes 6 and 7 in trap instructions + used in division/multiply macro expansions similarly to how they + are used in the variants with break instructions. + (macro2): Likewise. + +2002-07-30 Graeme Peterson <gp@qnx.com> + + * configure.in: Add support for arm-*-nto target. + * configure: Regenerate. + +2002-07-30 Nick Clifton <nickc@redhat.com> + + * config/tc-arm.c (struct literal_pool): Add fields to allow + multiple literal pools to be maintained. + (find_literal_pool): New function. + (find_or_make_literal_pool): New function. + (add_to_literal_pool): Use find_or_make_literal_pool. + (arm_s_text, arm_s_data, arm_s_section): Remove - no longer + needed. + (s_ltorg): Use find_literal_pool. + (arm_cleanup): Dump all literal pools. + * doc/c-arm.texi: Document new behaviour of only dumping literal + pools upon request. + +2002-07-26 Alan Modra <amodra@bigpond.net.au> + + * config/tc-ppc.c (ppc_set_cpu): Use PPC_OPCODE_64 as the default + rather than PPC_OPCODE_32 for powerpc64*. + +2002-07-25 Nick Clifton <nickc@redhat.com> + + * po/es.po: Updated Spanish translation. + * po/fr.po: Updated French translation. + +2002-07-25 Richard Sandiford <rsandifo@redhat.com> + + * doc/c-mips.texi: Remove -mcpu. Document -mabi. + * configure.in (MIPS_CPU_STRING_DEFAULT): New configuration macro. + (USE_E_MIPS_ABI_O32, MIPS_DEFAULT_64BIT): New configuration macros. + * configure, config.in: Regenerate. + * config/tc-mips.c (file_mips_abi): Rename to mips_abi. + (mips_set_options): Remove "abi" field. + (mips_opts): Update accordingly. Replace all uses of mips_opts.abi + with mips_abi. + (mips_cpu): Remove. + (mips_arch_string, mips_arch_info): New vars. + (mips_tune_string, mips_tune_info): New vars. + (ABI_NEEDS_32BIT_REGS, ABI_NEEDS_64BIT_REGS): New macros. + (HAVE_32BIT_GPRS, HAVE_32BIT_FPRS): Don't check the ABI. + (mips_isa_to_str, mips_cpu_to_str): Remove. + (mips_ip): If the selected architecture is a generic ISA rather + than a processor, only mention the ISA level in error messages. + (OPTION_MCPU): Remove. + (OPTION_FP64): New. + (md_longopts): Add -mfp64, remove -mcpu. + (mips_set_option_string): New fn. + (md_parse_option): Make -mipsN update file_mips_isa rather than + mips_opts.isa. Use mips_set_option_string to set -march or -mtune. + Don't let -mgp32 and -mfp32 change the ABI. + (show): Move to end of file. Constify string argument. + (md_show_usage): Move to the end of the file. Read available + architectures from mips_cpu_info_table. + (mips_set_architecture): New fn. + (mips_after_parse_args): Rework. Remove -mcpu handling. -mipsN + is an alias for -march=mipsN. Don't change the ABI based on other + flags. Infer the register size from the ABI as well as the + architecture. Complain about more conflicting arguments. + Unify logic with GCC. + (s_mipsset): Don't change the ABI. + (mips_elf_final_processing): Check USE_E_MIPS_ABI_O32. + (mips_cpu_info_table): Remove Generic-MIPS* entries, keeping just + "mipsN"-type entries. Remove entries that vary only in the + manufacturer's prefix, or that have "000" replaced by "k". + Remove TARGET_CPU entries. Make r2000 entry use CPU_R3000. + (mips_strict_matching_cpu_name_p, mips_matching_cpu_name_p): New fns. + (mips_parse_cpu): New fn. + (mips_cpu_info_from_name, mips_cpu_info_from_cpu): Remove. + (mips_cpu_info_from_isa): Minor formatting tweak. + +2002-07-24 Nick Clifton <nickc@redhat.com> + + * po/sv.po: Updated Swedish translation. + * po/es.po: Updated Spanish translation. + +2002-07-23 Alan Modra <amodra@bigpond.net.au> + + * Makefile.am: Run "make dep-am". + * Makefile.in: Regenerate. + * doc/Makefile.in: Regenerate. + * config.in: Regenerate. + * po/POTFILES.in: Regenerate. + +2002-07-23 Nick Clifton <nickc@redhat.com> + + * po/fr.po: Updated French translation. + +2002-07-23 Nick Clifton <nickc@redhat.com> + + * CONTRIBUTORS: Ken Raeburn is no longer the maintainer for + GAS. + +2002-07-19 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (mips_need_elf_addend_fixup): Use S_IS_EXTERNAL + instead of S_IS_EXTERN. + (md_estimate_size_before_relax): Likewise. + (mips_fix_adjustable): Likewise. + +2002-07-19 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (mips_pic_level): Remove IRIX4_PIC. + +2002-07-19 Miroslav Tichy <tichm9am@ss1000.ms.mff.cuni.cz> + Nick Clifton <nickc@redhat.com> + + * cond.c (s_ifdef): Treat a referenced but not yet defined + symbol as if it were undefined, in exactly the same way as + .equiv. + + * doc/as.texinfo: Document that .ifdef, .ifndef and .equiv + consider referenced bug not yet defined symbols to be + undefined. + +2002-07-18 Denis Chertykov <denisc@overta.ru> + Frank Ch. Eigler <fche@redhat.com> + Alan Lehotsky <alehotsky@cygnus.com> + John Healy <jhealy@redhat.com> + Jeff Johnston <jjohnstn@redhat.com> + + * configure.in: Add ip2k configuraton. + * configure: Regenerate. + * Makefile.am: Add ip2k configuraton. + * Makefile.in: Regenerate. + * configure: Regenerate. + * Makefile.in: Regenerate. + * config/tc-ip2k.c: New file. + * config/tc-ip2k.h: New files. + * NEWS: Mention new support. + * doc/Makefile.am (CPU_DOCS): Add c-ip2k.texi. + * doc/Makefile.in: Regenerate. + * doc/all.texi: Set IP2K + * doc/as.texinfo: Add IP2K description. + * doc/c-ip2k.texi: New file. + +2002-07-19 Nick Clifton <nickc@cambridge.redhat.com> + + * NEWS: Reformat to match style of other NEWS files. + +2002-07-17 Jan Hubicka <jh@suse.cz> + + * tc-i386.c (i386_align_code): Implement x86_64 neutral code fillers. + +2002-07-16 Moritz Jodeit <moritz@jodeit.org> + + * config/tc-z8k.c (build_bytes): Correct order of memset args. + +2002-07-16 Nick Clifton <nickc@cambridge.redhat.com> + + * NEWS: Add 'Changes in 2.13'. + +2002-07-15 Matt Fredette <fredette@netbsd.org> + + * config/tc-hppa.h (LABELS_WITHOUT_COLONS): Define if TE_NetBSD. + +2002-07-12 Alan Modra <amodra@bigpond.net.au> + + * config/tc-i386.c (process_suffix): Merge CODE_64BIT JumpByte + case with non CODE_64BIT case. Don't warn on "qword ptr" if + not CODE_64BIT. + +2002-07-11 Alan Modra <amodra@bigpond.net.au> + + * config/tc-ppc.c (ppc_elf_frob_symbol): Delete. + (ppc_frob_file_before_adjust): New function. + * config/tc-ppc.h (tc_frob_symbol): Don't define. + (ppc_elf_frob_symbol): Don't declare. + (tc_frob_file_before_adjust): Define. + (ppc_frob_file_before_adjust): Declare. + + * config/tc-ppc.c (md_pseudo_table): Warning fix. + (ppc_cpu): Make it unsigned long to agree with struct powerpc_opcode + flags. + (ppc_size): Delete. + (ppc_xcoff64): Rename to ppc_obj64. + (md_parse_option <m>): Encode old ppc_size value in ppc_cpu. + (ppc_set_cpu): Set PPC_OPCODE_32 too. + (ppc_arch): Use ppc_obj64 instead of ppc_size to select bfd_mach_ppc64 + or bfd_mach_ppc. + (ppc_target_format): Use ppc_obj64 to select format. + (md_begin): Adjust for PPC_OPCODE_32/64 in ppc_cpu. + (ppc_insert_operand): Use ppc_obj64 instead of ppc_size. + (ppc_elf_suffix): Likewise. Don't depend on BFD_DEFAULT_TARGET_SIZE. + (tc_frob_symbol): Likewise. + (md_assemble): Use ppc_obj64 instead of ppc_size. Don't depend on + BFD_DEFAULT_TARGET_SIZE. + (ppc_tc): Likewise. + (ppc_is_toc_sym): Likewise. + (md_apply_fix3): Likewise. + * config/tc-ppc.h (TC_FORCE_RELOCATION): Don't depend on + BFD_DEFAULT_TARGET_SIZE. + (ELF_TC_SPECIAL_SECTIONS): Likewise. + (tc_frob_symbol): Likewise. + +2002-07-09 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (macro_build): Handle MIPS16 insns. + (mips_ip): Likewise. + +2002-07-09 Alan Modra <amodra@bigpond.net.au> + + * config/tc-i386.c (md_pseudo_table <file>): Warning fix. + (BFD_RELOC_8, BFD_RELOC_8_PCREL): Define for non-BFD. + (md_apply_fix3): Formatting. Remove redundant test. + (tc_gen_reloc): Remove redundant code. + (tc_i386_force_relocation): Delete. Movy body of function to.. + * config/tc-i386.h (TC_FORCE_RELOCATION): .. here. + +2002-07-09 Federico G. Schwindt <fgsch@olimpo.com.br> + + * configure.in: Add hppa-*-openbsd* target, change + alpha*-*-openbsd* format to elf, and use elf for sparc-*-openbsd* + with sparc64 cpu. + * configure: Regenerate. + +2002-07-08 Maciej W. Rozycki <macro@ds2.pg.gda.pl> + + * config/tc-mips.c (macro): Shift the 32-bit address range + accessible with a lone "lui" down by 32768. + +2002-07-08 Maciej W. Rozycki <macro@ds2.pg.gda.pl> + + * config/tc-mips.c (load_address): Use non-trapping "daddu" + instead of "dadd" in address calculations. + (macro): Likewise. + +2002-07-08 Alan Modra <amodra@bigpond.net.au> + + * config/tc-i386.c (process_suffix): Remove intel mode movsx and + movzx fudges. + (md_assemble): Instead, zap the suffix here. + +2002-07-03 Nick Clifton <nickc@cambridge.redhat.com> + + * NEWS: Remove next release number until the release is actually + upon us. + +2002-07-03 Alan Modra <amodra@bigpond.net.au> + + * Makefile.am (check-DEJAGNU): Revert 2002-06-25 change. + Run "make dep-am". + * Makefile.in: Regenerate. + +2002-07-02 Martin Schwidefsky <schwidefsky@de.ibm.com> + + * config/tc-s390.c (tc_s390_fix_adjustable): Prevent any adjustment + to symbols in merge sections, even non pc-relative ones. + +2002-06-29 Stephane Carrez <stcarrez@nerim.fr> + + * config/tc-m68hc11.h (m68hc11_listing_header): Fix warning. + +2002-06-29 Stephane Carrez <stcarrez@nerim.fr> + + * config/tc-m68hc11.h (ELF_TC_SPECIAL_SECTIONS): New sections + .softregs and .eeprom. + +2002-06-28 David O'Brien <obrien@FreeBSD.org> + + * NEWS: Note the next release is 2.13. + +2002-06-26 Nick Clifton <nickc@cambridge.redhat.com> + + * po/tr.po: New translation imported. + +2002-06-26 Elias Athanasopoulos <eathan@otenet.gr> + + * ecoff.c: (get_tag): Replace strcpy with xstrdup. + (ecoff_directive_def): Likewise. + (ecoff_directive_tag): Likewise. + * listing.c (file_info): Likewise. + * hash.c (what): Likewise. + +2002-06-25 H.J. Lu <hjl@gnu.org> + + * Makefile.am (check-DEJAGNU): Set LC_ALL=C and export it. + * Makefile.in: Regenerated. + +2002-06-19 Dhananjay R. Deshpande <dhananjayd@kpit.com> + + * config/tc-sh.c (get_specific): Revert 2002-05-01 change. + (assemble_ppi): Generate warning if the same register is used + twice as destination in the same padd / pmuls instruction. + +2002-06-18 Dave Brolley <brolley@redhat.com> + + From Catherine Moore, Michael Meissner, Richard Sandiford, Dave Brolley + * po/POTFILES.in: Add tc-frv.c, tc-frv.h. + * configure.in: Support frv-*-*. + * Makefile.am (CPU_TYPES): Add frv. + (TARGET_CPU_CFILES): Add tc-frv.c. + (TARGET_CPU_HFILES): Add tc-frv.h. + (DEPTC_frv_coff): New variable. + (DEPTC_frv_elf): New variable. + (DEPOBJ_frv_coff): New variable. + (DEPOBJ_frv_elf): New variable. + (DEP_frv_coff): New variable. + (DEP_frv_elf): New variable. + * tc-frv.c: New file. + * tc-frv.h: New file. + +2002-06-17 Catherine Moore <clm@redhat.com> + + * config/obj-elf.h (TARGET_SYMBOL_FIELDS): Conditionally define. + +2002-06-17 J"orn Rennecke <joern.rennecke@superh.com> + + * config/tc-sh.c (assemble_ppi): Initialize reg_n. + +2002-06-17 Tom Rix <trix@redhat.com> + + * config/tc-i370.h (tc_comment_chars): Define for i370-elf. + +2002-06-14 H.J. Lu <hjl@gnu.org> + Daniel Jacobowitz <drow@mvista.com> + + * dwarf2dbg.h (dwarf2_directive_file): Return char *. + * dwarf2dbg.c (dwarf2_directive_file): Return filename. + * config/tc-mips.c (s_mips_file): Call s_app_file_string + and new_logical_line for the first .file directive. + * read.c (s_app_file_string): New function. + (s_app_file): Call it. + * read.h (s_app_file_string): Add declaration. + +2002-06-14 Daniel Jacobowitz <drow@mvista.com> + + * configure.in: Remove MIPS_STABS_ELF. + * configure: Regenerated. + * config.in: Regenerated. + * config/obj-elf.h (ECOFF_DEBUGGING): Define to mips_flag_mdebug + for MIPS targets. + * config/tc-mips.c (mips_pseudo_table): Remove #ifdef around + ".extern". + (pdr_seg): Declare unconditionally. + (md_begin): Always generate .pdr unless ECOFF_DEBUGGING or not ELF. + (s_mips_end): Likewise. Generate stabs function markers. + (s_mips_ent): Generate stabs function markers. + (s_mips_frame): Always generate .pdr unless ECOFF_DEBUGGING or not + ELF. + (s_mips_mask): Likewise. + (mips_flag_mdebug): New. + (md_longopts): Add "mdebug" and "no-mdebug". + (md_parse_options): Add OPTION_MDEBUG and OPTION_NO_MDEBUG. + (mips_after_parse_args): Set mips_flag_mdebug. + * doc/as.texinfo: Add "-mdebug" and "-no-mdebug" for MIPS. + +2002-06-13 Maciej W. Rozycki <macro@ds2.pg.gda.pl> + + * config/tc-mips.c (md_apply_fix3): Don't subtract the symbol's + value twice for RELA relocations. + +2002-06-12 Ben Elliston <bje@redhat.com> + + * symbols.c (resolve_symbol_value): Initialise final_val. + + * subsegs.c (subsegs_print_statistics): Cast frchp to void *. + +2002-06-11 Tom Rix <trix@redhat.com> + + * config/tc-ppc.c (ppc_subseg_align): Delete. + (ppc_change_csect): Default csect align is 2. + * config/tc-ppc.h (SUB_SEGMENT_ALIGN): Delete + +2002-06-09 Marek Michalkiewicz <marekm@amelek.gda.pl> + + * config/tc-avr.c (mcu_types): Update. + +2002-06-08 Matt Thomas <matt@3am-software.com> + + * configure.in (vax-*-netbsdelf*, vax-*-netbsdaout*) + (vax-*-netbsd*): New targets. + * configure: Regenerate. + * config/aout_gnu.h (enum machine_type): Add M_VAX4K_NETBSD. + * config/tc-vax.c: Add support for ELF and PIC. + (flag_want_pic): New flag. + (float_cons): Fix prototype. + (md_apply_fix3): Adjust for BFD_ASSEMBLER. + (md_assemble): Introduce a new is_absolute local, and use it + rather than repeating the test. Make fatal errors actually + fatal by using as_fatal as appropriate. Adjust for BFD_ASSEMBLER. + Add support for ELF. Add support for PIC. + (md_convert_frag): Adjust for BFD_ASSEMBLER. + (tc_aout_fix_to_chars): Only include if OBJ_AOUT and not + BFD_ASSEMBLER. + (vax_reg_parse): Make the % register prefix mandatory for ELF, + optional for a.out, and not allowed for VMS. Adjust all callers. + (md_create_short_jump): Add ATTRIBUTE_UNUSED to unused arguments. + (md_create_long_jump): Likewise. + (md_undefined_symbol): Likewise. + (md_section_align): Likewise. + (md_shortopts): Allow -k and -K for ELF. + (md_parse_option): Set flag_want_pic if -k or -K. + (tc_headers_hook): New function if OBJ_AOUT and not BFD_ASSEMBLER. + (tc_gen_reloc): New function if BFD_ASSEMBLER. + * config/tc-vax.h (tc_headers_hook): Remove. + (TARGET_FORMAT): Set according to object format and target + environment. + (BFD_ARCH, TARGET_ARCH): Define. + (NO_RELOC): Adjust for BFD_ASSEMBLER. + (TC_RELOC_RTSYM_LOC_FIXUP, TC_FIX_ADJUSTABLE) + (tc_fix_adjustable): Define if BFD_ASSEMBLER. + * config/vax-inst.h (VAX_JSB, VAX_CALLS, VAX_CALLG): Define. + +2002-06-08 Alan Modra <amodra@bigpond.net.au> + + * Makefile.am: Run "make dep-am". + * Makefile.in: Regenerate. + + * as.c: Replace CONST with const. + * write.c: Likewise. + * config/obj-coff.c: Likewise. + * config/tc-a29k.c: Likewise. + * config/tc-arm.c: Likewise. + * config/tc-dlx.c: Likewise. + * config/tc-h8300.c: Likewise. + * config/tc-h8500.c: Likewise. + * config/tc-i370.c: Likewise. + * config/tc-i860.c: Likewise. + * config/tc-i960.c: Likewise. + * config/tc-m68hc11.c: Likewise. + * config/tc-m68k.c: Likewise. + * config/tc-m88k.c: Likewise. + * config/tc-mcore.c: Likewise. + * config/tc-mips.c: Likewise. + * config/tc-ns32k.c: Likewise. + * config/tc-pdp11.c: Likewise. + * config/tc-pj.c: Likewise. + * config/tc-s390.c: Likewise. + * config/tc-sh.c: Likewise. + * config/tc-sparc.c: Likewise. + * config/tc-tahoe.c: Likewise. + * 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. + +2002-06-08 Daniel Jacobowitz <drow@mvista.com> + + Based on patch from Matt Green: + * config/obj-elf.h (ECOFF_DEBUGGING): Make configurable. + * config/tc-mips.c (s_mips_file): Renamed from s_file. + (s_mips_loc): New function. + (mips_nonecoff_pseudo_table): Call them. + (append_insn): Call dwarf2_emit_insn. + +2002-06-08 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (mips_opts): Fix comment, all ASE fields are set + to -1. + (file_ase_mips16): New veriable. + (mips_eabi64): Remove. + (CPU_HAS_MIPS16): New define. + (CPU_HAS_MDMX): Fix data type. + (md_begin): Code cleanup. Use file_ase_mips16. + (mips_elf_final_processing): Handle mips16 header flag. + Handle EABI flag without intermediate variable. + +2002-06-08 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * doc/as.texinfo: Update MIPS documentation. + +2002-06-08 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c: Add define for $zero register. + (md_begin): Add $zero as alias name for $0. + (insn_uses_reg): Use ZERO define. + (mips_ip): Add $zero as alias name for $0. + (mips16_ip): Likewise. + (s_cplocal): Demand empty rest of input line. + (tc_get_register): Likewise. Add support for $kt0, kt1 register + names. Use ZERO define. Fix input_line_pointer progress. + +2002-06-07 Alan Modra <amodra@bigpond.net.au> + + * symbols.c: Replace CONST by const throughout. + (symbol_find_exact): Split out from.. + (symbol_find_base): ..here. + * symbols.h: Replace CONST by const throughout. + (symbol_find_exact): Declare. + * config/obj-elf.c: #include "struc-symbol.h". + (elf_frob_file): If group name matches an exported symbol, use that + symbol for the signature and ".group" as the section name. + +2002-06-06 J"orn Rennecke <joern.rennecke@superh.com> + + * config/tc-sh.c (parse_at): @(symbol,pc) is A_DISP_PC again, + but warn about it. + +2002-06-06 Daniel Jacobowitz <drow@mvista.com> + + * tc-mips.c (mips_after_parse_args): Always set mips_opts.ase_mips3d + and mips_opts.ase_mdmx if they are uninitialized. + +2002-06-06 John David Anglin <dave@hiauly1.hia.nrc.ca> + + * gas/config/tc-hppa.c (pa_ip): Replace "L$0\001" with FAKE_LABEL_NAME. + (hppa_force_relocation): Check if a stub just before the start symbol + of the last call_info is reachable before forcing relocation. Fix + typo. + +2002-06-04 Maciej W. Rozycki <macro@ds2.pg.gda.pl> + + * config/tc-mips.c (mips_after_parse_args): New function. + (md_begin): Move processing of defaults to mips_after_parse_args. + config/tc-mips.h (md_after_parse_args): Define. + +2002-06-04 Jason Thorpe <thorpej@wasabisystems.com> + + * configure.in (sh5*): Set cpu_type to sh64 and endian to big. + (sh5le*, sh64le*): Set cpu_type to sh64 and endian to little. + (sh5*-*-netbsd*, sh64*-*-netbsd*): New targets. + * configure: Regenerate. + * config/tc-sh64.c (sh64_target_format): Add support for NetBSD + environment. + +2002-06-04 Jason Thorpe <thorpej@wasabisystems.com> + + * config/tc-sh64.h (MD_PCREL_FROM_SECTION): Undef before redefining. + +2002-06-04 Alan Modra <amodra@bigpond.net.au> + + * config/obj-elf.c (obj_elf_change_section): Set and check elf + linkonce flag. Print all warnings. + (obj_elf_section): Parse ",comdat" for groups. + (elf_frob_file): Set SEC_LINK_ONCE on COMDAT groups. Check + consistency of comdat flag. + +2002-06-02 Richard Henderson <rth@redhat.com> + + * config/tc-alpha.c (alpha_adjust_symtab_relocs): Fix thinko + with LITERALs without sequence numbers. + +2002-06-01 Richard Henderson <rth@redhat.com> + + * config/tc-alpha.c: Move LITUSE constants to "elf/alpha.h". + Rename them LITUSE_ALPHA_*. + +2002-05-31 Shrinivas Atre <ShrinivasA@kpit.com> + + * config/tc-h8300.c (get_operand): Allow stm.l and ldm.l insns to + accept parentheses enclosed register lists. + +2002-05-31 Alan Modra <amodra@bigpond.net.au> + + * Makefile.am: Run "make dep-am". + * Makefile.in: Regenerate. + * po/POTFILES.in: Regenerate. + +2002-05-31 Graeme Peterson <gp@qnx.com> + + * configure.in: Add i386-*-nto-qnx*. + * configure: Regenerate. + +2002-05-31 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (mips_ip): Use unsigned long values for + warning output. + +2002-05-31 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (s_cpsetup): Fix initialization of + mips_cpreturn_register and mips_cpreturn_offset. + +2002-05-31 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (s_cpsetup): Fix comment. + +2002-05-31 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (md_begin): Add $ra as alias name for $31. + (mips_ip): Likewise. + (mips16_ip): Likewise. + (tc_get_register): Likewise. + +2002-05-30 Chris G. Demetriou <cgd@broadcom.com> + Ed Satterthwaite <ehs@broadcom.com> + + * config/tc-mips.c (mips_set_options): New "ase_mdmx" member. + (mips_opts): Initialize "ase_mdmx" member. + (file_ase_mdmx): New variable. + (CPU_HAS_MDMX): New macro. + (md_begin): Initialize mips_opts.ase_mdmx and file_ase_mdmx + based on command line options and configuration defaults. + (macro_build): Note in comment that use of MDMX in macros is + not currently allowed. + (validate_mips_insn): Add support for the "O", "Q", "X", "Y", and + "Z" MDMX operand types. + (mips_ip): Accept MDMX instructions if mips_opts.ase_mdmx is set, + and add support for the "O", "Q", "X", "Y", and "Z" MDMX operand + types. + (OPTION_MDMX, OPTION_NO_MDMX, md_longopts, md_parse_option): + Add support for "-mdmx" and "-no-mdmx" options. + (OPTION_ELF_BASE): Move to accommodate new options. + (s_mipsset): Support ".set mdmx" and ".set nomdmx". + (mips_elf_final_processing): Set MDMX ASE ELF header flag if + file_ase_mdmx was set. + * doc/as.texinfo: Document -mdmx and -no-mdmx options. + * doc/c-mips.texi: Likewise, and document ".set mdmx" and ".set + nomdmx" directives. + +2002-05-31 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (OPTION_NO_M7000_HILO_FIX): Rename to + OPTION_MNO_7000_HILO_FIX. Add alternate "mno-fix7000" + command line switch conforming to gcc conventions. + * doc/c-mips.texi: Document -mno-fix7000 instead of no-mfix-7000. + +2002-05-31 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (macro_build_jalr): New Function. + (md_begin): NewABI uses big GOTs. + (macro_build): Recognize BFD_RELOC_MIPS_GOT_DISP, + BFD_RELOC_MIPS_GOT_PAGE, BFD_RELOC_MIPS_GOT_OFST as valid. + (load_address): Add some NewABI PIC support. + (macro): Likewise. + (md_apply_fix): Special handling for BFD_RELOC_MIPS_JALR. + (tc_gen_reloc): Don't encode NewABI vtables in REL relocations. + +2002-05-31 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (load_address): Use mips_gp_register instead + of hardcoded value. Remove dbl parameter, use HAVE_32BIT_ADDRESSES + instead. + (macro): Use mips_gp_register instead of hardcoded value. + +2002-05-30 Richard Henderson <rth@redhat.com> + + * expr.h (operatorT): Add O_md17..O_md32. + * config/tc-alpha.c (O_lituse_tlsgd, O_lituse_tlsldm, O_tlsgd, + O_tlsldm, O_gotdtprel, O_dtprelhi, O_dtprello, O_dtprel, O_gottprel, + O_tprelhi, O_tprello, O_tprel): New. + (USER_RELOC_P, alpha_reloc_op_tag, debug_exp): Include them. + (DUMMY_RELOC_LITUSE_TLSGD, DUMMY_RELOC_LITUSE_TLSLDM): New. + (LITUSE_TLSGD, LITUSE_TLSLDM): New. + (struct alpha_reloc_tag): Add master, saw_tlsgd, saw_tlsld, + saw_lu_tlsgd, saw_lu_tlsldm. Make multi_section_p a bit field. + (md_apply_fix3): Handle TLS relocations. + (alpha_force_relocation, alpha_fix_adjustable): Likewise. + (alpha_adjust_symtab_relocs): Sort LITERAL relocs after the + associated TLS reloc. Check lituse_tls relocs match up. + (emit_insn): Handle TLS relocations. + (ldX_op): Remove. + + * doc/c-alpha.texi: Add docs for tls relocations. + +2002-05-30 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (mips_gprel_offset): New variable. + (s_gpvalue): Use it. + +2002-05-30 Diego Novillo <dnovillo@redhat.com> + + * gas/config/tc-d10v.c (check_resource_conflict): Only check + write-write conflicts. + (md_assemble): Reformat introductory comment. + (parallel_ok): Prevent packing only if the first + instruction cannot be packed. + +2002-05-30 Jason Eckhardt <jle@redhat.com> + Tom Rix <trix@redhat.com> + + * config/tc-d10v.c (build_insn): Check for immediates. + +2002-05-28 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c: Replace GP in comments by $gp. + (mips_big_got): Initialize. + (mips_trap): Initialize. + (load_address): Use mips_gp_register instead of hardcoded value. + Remove dbl parameter, use HAVE_32BIT_ADDRESSES instead. + (macro): Use mips_gp_register instead of hardcoded value. + (macro2): Change load_address calls. + (md_pcrel_from): Comment formatting. + (s_cpload): Use mips_gp_register instead of hardcoded value. + (s_cprestore): Likewise. Comment formatting. + (s_gpword): Fix data type. + (s_cpadd): Use mips_gp_register instead of hardcoded value. + (nopic_need_relax): Replace GP in comments by $gp. + (mips_elf_final_processing): Better comment. + +2002-05-28 Kuang Hwa Lin <kuang@sbcglobal.net> + + * configure.in: Add DLX configuraton + * Makefile.am: Add DLX configuraton + * configure: Regenerate. + * Makefile.in: Regenerate. + * config/tc-dlx.c: New file. + * config/tc-dlx.h: New files. + * NEWS: Mention new support. + +2002-05-27 Nick Clifton <nickc@cambridge.redhat.com> + + * config/obj-coff.c (write_object_file): Add missing semicolon. + +2002-05-26 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (mips_emit_delays): Replace magic constant for RA + by the define. Remove superfluous check of mips_opts.mips16. + (append_insn): Likewise. Canonicalize variable increments. + (macro_build): Canonicalize variable increments. + (macro_build_lui): Likewise. + (load_register): Likewise. + (load_address): Move pointer initialization. + (macro): Move pointer to a more local scope. Canonicalize variable + increments. Better comments. Replace magic constant for RA by the + define. + (macro2): Replace magic constant for RA by the define. Canonicalize + variable increments. + (mips_ip): Canonicalize variable increments. + (mips16_ip): Replace magic constant for RA by the define. + (my_getSmallParser): Canonicalize variable increments/decrements. + (my_getPercentOp): Likewise. + (my_getSmallExpression): Likewise. + (s_align): Likewise. + (s_mipsset): Likewise. + (s_cpsetup): Likewise. + (s_insn): Remove superfluous check of mips_opts.mips16. + (s_mips_stab): Likewise. + (mips_handle_align): Canonicalize variable increments. + (s_mips_ent): Likewise. + (s_mips_end): Add comment. + +2002-05-26 Jason Thorpe <thorpej@wasabisystems.com> + + * configure.in: Use ns32k-*-netbsd* instead of ns32k-pc532-netbsd*. + * configure: Regenerate. + +2002-05-25 Alan Modra <amodra@bigpond.net.au> + + * Makefile.am (OBJS): Depend on ansidecl.h and fopen-same.h. + * Makefile.in: Regenerate. + * dep-in.sed: Reorder to match OBJS in Makefile.am. + * configure.in (ALL_OBJ_DEPS): Add symcat.h when need_bfd. + * configure: Regenerate. + * as.h: Use #include "" instead of <> for local header files. + * flonum-konst.c: Likewise. + * flonum-mult.c: Likewise. + * gasp.c: Likewise. + * listing.c: Likewise. + * config/tc-ia64.h: Likewise. + * config/tc-v850.h: Likewise. + +2002-05-24 TAMURA Kent <kent@netbsd.org> + + * configure.in: Add a target for i386-netbsdpe. + * configure: Regenerate. + +2002-05-23 Jakub Jelinek <jakub@redhat.com> + + * config/obj-elf.c (elf_common): Renamed from obj_elf_common. + (obj_elf_common): Call elf_common. + (obj_elf_tls_common): New function. + (elf_pseudo_tab): Support .tls_common. + (special_sections): Add .tdata and .tbss. + (obj_elf_change_section): Set SEC_THREAD_LOCAL for SHF_TLS + sections. + (obj_elf_parse_section_letters): Support T in section flags (SHF_TLS). + (obj_elf_parse_section_letters): Include T in error message. + * config/tc-ppc.c (ppc_section_letter): Likewise. + * config/tc-alpha.c (alpha_elf_section_letter): Likewise. + (tc_gen_reloc): Handle SEC_THREAD_LOCAL the same way as + SEC_MERGE. + * config/tc-sparc.c (md_apply_fix3): Likewise. + * config/tc-i386.c (tc_i386_fix_adjustable): Add TLS relocs. + Define them if not BFD_ASSEMBLER. + (lex_got): Support @TLSGD, @TLSLDM, @GOTTPOFF, @TPOFF, @DTPOFF + and @NTPOFF. + (md_apply_fix3): Add TLS relocs. + * config/tc-ia64.c (enum reloc_func): Add FUNC_DTP_MODULE, + FUNC_DTP_RELATIVE, FUNC_TP_RELATIVE, FUNC_LT_DTP_MODULE, + FUNC_LT_DTP_RELATIVE, FUNC_LT_TP_RELATIVE. + (pseudo_func): Support @dtpmod(), @dtprel() and @tprel(). + (ia64_elf_section_letter): Include T in error message. + (md_begin): Support TLS operators. + (md_operand): Likewise. + (ia64_gen_real_reloc_type): Support TLS relocs. + * write.c (adjust_reloc_syms): Don't change symbols in + SEC_THREAD_LOCAL sections to STT_SECTION + addend. + +2002-05-23 Nick Clifton <nickc@cambridge.redhat.com> + + * config/tc-arm.c (md_apply_fix3): For the Thumb BLX reloc + round the relocation up rather than down. + +2002-05-23 Nick Clifton <nickc@cambridge.redhat.com> + + * config/obj-coff.c (obj_coff_section): Silently ignore an 'a' + flag. + * doc/as.texinfo: Document that the COFF version of .section + ignores the 'a' flag. + +2002-05-23 Alan Modra <amodra@bigpond.net.au> + + * config/tc-alpha.c (assemble_tokens): Protect use of + ALPHA_RELOC_TABLE with #ifdef RELOC_OP_P. + + * write.c (size_seg): Check adjustment to last frag. + (SUB_SEGMENT_ALIGN): If HANDLE_ALIGN defined, pad out last frag to + section alignment. + * config/obj-coff.c (SUB_SEGMENT_ALIGN): Likewise. + * config/obj-ieee.c (SUB_SEGMENT_ALIGN): Likewise. + (write_object_file): Invoke md_do_align if available, and use + frag_align_code on text sections. + * config/obj-vms.h (SUB_SEGMENT_ALIGN): Now two args. + * config/tc-m88k.h (SUB_SEGMENT_ALIGN): Likewise. + * config/tc-ppc.h (SUB_SEGMENT_ALIGN): Likewise. + * config/tc-sh.h (SUB_SEGMENT_ALIGN): Likewise. + * config/tc-i386.h (SUB_SEGMENT_ALIGN): Likewise. Define for + BFD_ASSEMBLER too. + +2002-05-22 H.J. Lu <hjl@gnu.org> + + * dwarf2dbg.c (dwarf2_directive_loc): Call listing_source_file + for source file. + +2002-05-22 Nick Clifton <nickc@cambridge.redhat.com> + + * config/tc-arm.c (arm_s_section): Enable for COFF builds as well + as ELF builds. + +2002-05-22 H.J. Lu <hjl@gnu.org> + + * dwarf2dbg.c (dwarf2_emit_insn): Emit only one line symbol + for one .loc for compiler. + +2002-05-22 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (macro): Relax warning, it's toot strict for + embedded-PIC. + +2002-05-22 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (macro2): Add 64 bit drol, dror macros. + Optimize the rotate by zero case. + +2002-05-21 Nick Clifton <nickc@cambridge.redhat.com> + + * configure.in: Remove accidental enabling of bfd_gas=yes for + sh-coff targets. + * configure: Regenerate. + +2002-05-18 Kazu Hirata <kazu@cs.umass.edu> + + * app.c: Fix formatting. + * as.c: Likewise. + * ehopt.c: Likewise. + * expr.c: Likewise. + * input-file.c: Likewise. + * listing.c: Likewise. + * macro.h: Likewise. + * stabs.c: Likewise. + * symbols.c: Likewise. + +2002-05-17 Alan Modra <amodra@bigpond.net.au> + + * config/obj-generic.c: Delete file. + * config/obj-generic.h: Likewise. + +2002-05-16 Marek Michalkiewicz <marekm@amelek.gda.pl> + + * config/tc-avr.c (mcu_types): Update for new devices. + +2002-05-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (macro): Warn about wrong la/dla use. + +2002-05-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc_mips.c (s_cpsetup): Fix completely bogus code which had + worked sometimes by accident. Fix copy&paste comment. + +2002-05-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (md_begin): Fix .reginfo and .MIPS.option section + alignment for NewABI. Let n32 use .reginfo. Remove useless casts. + (mips_elf_final_processing): Let n32 use .reginfo. + +2002-05-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (append_insn): Fix too small range of variable. + +2002-05-14 Nick Clifton <nickc@cambridge.redhat.com> + + * config/tc-arm.c (arm_cleanup): Remove redundant call to + listing_prev_line(). + +2002-05-13 Nick Clifton <nickc@cambridge.redhat.com> + + * config/tc-arm.c (md_assemble): Remove redundant call to + listing_prev(). + + * dwarf2dbg.c (dwarf2_emit_insn): Do not reset + loc_directive_seen. + + * stabs.c (s_stab_generic): Fix grammatical error in warning + message. + +2002-05-13 Alan Modra <amodra@bigpond.net.au> + + * write.c (subsegs_finish): Don't specially align last subseg. + +2002-05-11 Nick Clifton <nickc@cambridge.redhat.com> + + * stabs.c (s_stab_generic): Warn about a description field that is + too big. + + * config/obj-coff.c: Fix compile time warnings when compiling + without BFD_ASSEMBLER defined. + Fix formatting. + + * config/tc-sh.c (md_pcrel_from): Define for use with sh-hms + target. + (md_pcrel_from_section): Use md_pcrel_from(). + +2002-05-11 Bruno Haible <bruno@clisp.org> + + * dwarf2dbg.c (dwarf2_emit_insn): Use the 'current' struct filled + by dwarf2_directive_loc, instead of calling dwarf2_where. + +2002-05-11 Kazu Hirata <kazu@cs.umass.edu> + + * config/obj-coff.h: Fix formatting. + * config/tc-mcore.c: Likewise. + * config/tc-mn10300.c: Likewise. + * config/tc-openrisc.c: Likewise. + * config/tc-or32.c: Likewise. + * config/tc-pdp11.c: Likewise. + * config/tc-ppc.c: Likewise. + * config/tc-ppc.h: Likewise. + * config/tc-sh64.c: Likewise. + * config/tc-sh.c: Likewise. + * config/tc-tic54x.c: Likewise. + * config/tc-xstormy16.c: Likewise. + * config/tc-xstormy16.h: Likewise. + +2002-05-09 Kazu Hirata <kazu@cs.umass.edu> + + * config/obj-coff.c: Fix formatting. + * config/obj-elf.c: Likewise. + * config/tc-alpha.c: Likewise. + * config/tc-arm.c: Likewise. + * config/tc-d10v.c: Likewise. + * config/tc-d30v.c: Likewise. + * config/tc-h8300.c: Likewise. + * config/tc-hppa.c: Likewise. + +2002-05-09 Alan Modra <amodra@bigpond.net.au> + + * config/tc-i386.c (md_estimate_size_before_relax) Don't lose + reloc when no_cond_jump_promotion. + +2002-05-08 Jim Wilson <wilson@redhat.com> + + * config/tc-i960.c (md_estimate_size_before_relax): Return size of + current variable part of frag. + +2002-05-08 Kazu Hirata <kazu@cs.umass.edu> + + * config/tc-mmix.c: Fix formatting. + * config/tc-mmix.h: Likewise. + +2002-05-08 Alan Modra <amodra@bigpond.net.au> + + * configure: Regenerate. + +2002-05-07 Kazu Hirata <kazu@cs.umass.edu> + + * config/tc-m68k.c: Fix formatting. + +2002-05-07 Federico G. Schwindt <fgsch@olimpo.com.br> + + * Makefile.am: Honour DESTDIR. + * Makefile.in: Regenerate. + +2002-05-06 Kazu Hirata <kazu@cs.umass.edu> + + * config/tc-ia64.c: Fix formatting. + * config/tc-ia64.h: Likewise. + +2002-05-04 Kazu Hirata <kazu@cs.umass.edu> + + * config/tc-mips.c: Fix formatting. + * config/tc-s390.c: Likewise. + * config/tc-s390.h: Likewise. + +2002-05-03 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-s390.c (md_gather_operands): Emit dwarf2 line-number + information for instructions. + +2002-05-02 Kazu Hirata <kazu@cs.umass.edu> + + * as.h: Fix formatting. + * cgen.c: Likewise. + * cgen.h: Likewise. + * dwarf2dbg.c: Likewise. + * frags.h: Likewise. + * gasp.c: Likewise. + * macro.c: Likewise. + * read.c: Likewise. + * stabs.c: Likewise. + * symbols.c: Likewise. + +2002-05-02 Alan Modra <amodra@bigpond.net.au> + + * app.c (mri_pseudo): Only declare for TC_M68K. + + * config/tc-ppc.c (mapping): Map sectoff to BFD_RELOC_16_BASEREL. + (ppc_elf_validate_fix): Replace BFD_RELOC_32_BASEREL with + BFD_RELOC_16_BASEREL. + (md_assemble): Likewise. + (md_apply_fix3): Likewise. + +2002-05-02 Nick Clifton <nickc@cambridge.redhat.com> + + * config/tc-arm.c (thumb_add_sub): Do not convert a subtract of + zero into an add of zero - it is not the same. + +2002-05-01 Arati Dikey <aratid@kpit.com> + + * tc-sh.c (get_specific): Generate warning if the same + destination register is used in parallel instructions. + +2002-05-01 Andrew Macleod <amacleod@cygnus.com> + + * config/tc-i386.c (extra_symbol_chars): Add '[' to the list. + +2002-05-01 Alan Modra <amodra@bigpond.net.au> + + * write.c (cvt_frag_to_fill): Set fr_offset to zero on .org + backwards to prevent cascading errors. + +2002-04-30 Mark Mitchell <mark@codesourcery.com> + + * configure.in: Add support for powerpc-*-windiss. + * configure: Regenerated. + +2002-04-28 Alan Modra <amodra@bigpond.net.au> + + * config/tc-s390.c (md_parse_option): Formatting. + + * config/tc-i386.c: Formatting fixes, add missing space in error + message. + +2002-04-24 Christian Groessler <chris@groessler.org> + + * config/tc-z8k.c (build_bytes): Add support for new cases: + CLASS_IGNORE and ARG_NIM4. + (md_assemble): Prevent destruction of input_line_pointer if + get_operands returns failure. + +2002-04-24 Chris G. Demetriou <cgd@broadcom.com> + + * config/tc-mips.c (macro_build): Do _not_ allow MIPS-3D + instructions to be generated by macros. + +2002-04-24 Andreas Schwab <schwab@suse.de> + + * config/tc-i386.c (output_jump, output_disp) + (md_estimate_size_before_relax): Don't set fx_pcrel_adjust any + more. + (md_apply_fix3): Remember addend value for rela relocations. + (tc_gen_reloc): Correctly compute pc-relative relocation addend. + +2002-04-22 Chris Demetriou <cgd@broadcom.com> + + * config/tc-mips.c (macro_build): Add close-parenthesis missing + from previous change. + +2002-04-22 Eric Christopher <echristo@redhat.com> + + * config/tc-mips.c (macro_build): Add warning if macro instructions + are expanded into a branch delay slot. + +2002-04-17 Geoffrey Keating <geoffk@redhat.com> + + * dwarf2dbg.c (dwarf2_gen_line_info): Do emit duplicate line + numbers, gdb relies on them to detect the start of the prologue. + +2002-04-17 Martin Schwidefsky <schwidefsky@de.ibm.com> + + * config/tc-s390.c (tc_s390_fix_adjustable): Prevent adjustments to + symbols in merge sections. + +2002-04-16 Alan Modra <amodra@bigpond.net.au> + + * as.c (main): Don't reference _bfd_chunksize. + +2002-04-15 Tom Rix <trix@redhat.com> + + * config/tc-d10v.c (d10v_fix_adjustable): Prevent adjustments to + symbols in merge sections. + +2002-04-11 Richard Sandiford <rsandifo@redhat.com> + + * doc/invoke.texi (TC_LARGEST_EXPONENT_IS_NORMAL): Document. + * config/atof-ieee.c (TC_LARGEST_EXPONENT_IS_NORMAL): Add an + argument for the precision. + (gen_to_words): Update accordingly. + +2002-04-10 Alan Modra <amodra@bigpond.net.au> + + * as.c (parse_args <OPTION_VERSION>): Use VERSION is + BFD_VERSION_STRING unavailable. + * config/tc-i386.c (INLINE): Define (for non-BFD assembler). + +2002-04-09 J"orn Rennecke <joern.rennecke@superh.com> + + * config/tc-sh.h (TC_FIX_ADJUSTABLE): Disable adjusting if + symbol_used_in_reloc_p is true. + + * config/tc-sh.c (md_apply_fix3): Don't zero relocations on big + endian hosts. + +2002-04-04 Alan Modra <amodra@bigpond.net.au> + + * dep-in.sed: Cope with absolute paths. + * Makefile.am (dep.sed): Subst TOPDIR. + Run "make dep-am". + * Makefile.in: Regenerate. + +2002-04-04 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (mips16_macro_build): Cast type mismatch. + (mips_ip): Remove unused variable. + (md_apply_fix3): Cast signed/unsignes mismatches. Replace + unsigned char with bfd_byte. + (s_file): Remove unused variable. + (s_mips_ent): Likewise. + +2002-04-03 Tom Rix <trix@redhat.com> + + * config/tc-d10v.c (d10v_insert_operand): Fix warning in as_bad_where. + (build_insn): Same. + (find_opcode): Fix warning in as_warn. + * config/tc-d10v.h: Update Copyright. + +2002-04-03 Alan Matsuoka <alanm@redhat.com> + Tom Rix <trix@redhat.com> + + From Jeff Knaggs <jknaggs@redhat.com> + * config/tc-d10v.c (check_resource_conflict): New function to + check for resource conflicts. + + From Jason Eckhardt <jle@redhat.com> + * config/tc-d10v.c (build_insn): Check for unresolved imm4 or + imm3 fields. + * config/tc-d10v.c (find_opcode): Emit a warning if one of the + reserved control registers is used. + * config/tc-d10v.c (build_insn): Check for unresolved imm4 or + imm3 fields. + + From 2001-03-28 Diego Novillo <dnovillo@redhat.com> + * tc-d10v.c (parallel_ok): Prevent packing only if the first + instruction cannot be packed. + + From 2001-03-30 Diego Novillo <dnovillo@redhat.com> + * gas/config/tc-d10v.c (check_resource_conflict): Only check + write-write conflicts. + (md_assemble): Reformat introductory comment. + * opcodes/d10v-opc.c (d10v_opcodes): `btsti' does not modify its + arguments. + +2002-04-03 Alan Modra <amodra@bigpond.net.au> + + * symbols.c (resolve_symbol_value <O_uminus, O_bit_not, + O_logical_not>): Derive final_seg from add_symbol. + <O_multiply..O_logical_or>: More final_seg twiddles. + +2002-04-01 Jessica Han <jessica@cup.hp.com> + + * config/tc-ia64.c (ia64_cons_fix_new): Handle 8 byte iplt reloc + in 32-bit mode. + +2002-03-27 Andreas Schwab <schwab@suse.de> + + * config/tc-i386.c (output_jump): Set fx_pcrel_adjust to size of + field for pc-relative fixups. + (output_disp): Likewise. + (md_estimate_size_before_relax): Likewise. + (tc_gen_reloc): Subtract fx_pcrel_adjust instead of fx_size for + pc-relative fixups in 64bit mode. + +2002-03-22 Alan Modra <amodra@bigpond.net.au> + + * config/te-aix5.h: Typo fix. + +2002-03-21 Alan Modra <amodra@bigpond.net.au> + + * Makefile.am: Run "make dep-am". + * Makefile.in: Regenerate. + * doc/Makefile.in: Regenerate. + +2002-03-20 Albert Chin-A-Young <china@thewrittenword.com> + + * config/tc-arm.c (vfp_dp_reg_required_here): Fix typo + (vfp_sp_reg_pos -> vfp_dp_reg_pos). + +2002-03-18 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-mips.c (md_estimate_size_before_relax): Do not modify + the EXTENDED bit here; report the estimate according to the + current size. + +2002-03-18 Tom Rix <trix@redhat.com> + + * configure.in: Add AIX 5 support. + * config/tc-ppc.c (ppc_target_format): Add AIX 5 64 bit target. + * config/te-aix5.h: New file. AIX 5 support. + * configure: Regenerate. + +2002-03-18 Nick Clifton <nickc@cambridge.redhat.com> + + * po/fr.po: Updated version. + +2002-03-16 Andreas Jaeger <aj@suse.de> + + * doc/c-mips.texi (Machine Dependencies): Add new node. + +2002-03-15 Chris G. Demetriou <cgd@broadcom.com> + + * config/tc-mips.c (mips_set_options): New "ase_mips3d" member. + (mips_opts): Initialize "ase_mips3d" member. + (file_ase_mips3d): New variable. + (CPU_HAS_MIPS3D): New macro. + (md_begin): Initialize mips_opts.ase_mips3d and file_ase_mips3d + based on command line options and configuration defaults. + (macro_build, mips_ip): Accept MIPS-3D instructions if + mips_opts.ase_mips3d is set. + (OPTION_MIPS3D, OPTION_NO_MIPS3D, md_longopts, md_parse_option): + Add support for "-mips3d" and "-no-mips3d" options. + (OPTION_ELF_BASE): Move to accommodate new options. + (s_mipsset): Support ".set mips3d" and ".set nomips3d". + (mips_elf_final_processing): Add a comment indicating that a + MIPS-3D ASE ELF header flag should be set, when one exists. + * doc/as.texinfo: Document -mips3d and -no-mips3d options. + * doc/c-mips.texi: Likewise, and document ".set mips3d" and ".set + nomips3d" directives. + +2002-03-14 Hans-Peter Nilsson <hp@bitrange.com> + + * config/tc-mmix.c (md_estimate_size_before_relax): Don't consider + a weak symbol in same section to be within reach. + +2002-03-13 Nick Clifton <nickc@cambridge.redhat.com> + + * po/fr.po: Updated version. + +2002-03-12 Andreas Schwab <schwab@suse.de> + + * config/tc-ia64.c (fixup_unw_records): Clear region when seeing a + body record so that an error is given for misplaced .save + pseudo-ops. + +2002-03-09 Alan Modra <amodra@bigpond.net.au> + + * config/tc-i386.h (REX_OPCODE): Define. + (REX_MODE64, REX_EXTX, REX_EXTY, REX_EXTZ): Define. + (rex_byte): typedef to int. + * config/tc-i386.c: Group prototypes and vars together. + Formatting fixes. Remove occurrences of "register" keyword. + (true): Delete. + (false): Delete. + (mode_from_disp_size): Add INLINE keyword to prototype. + (fits_in_signed_byte): Likewise. + (fits_in_unsigned_byte): Likewise. + (fits_in_unsigned_word): Likewise. + (fits_in_signed_word): Likewise. + (fits_in_unsigned_long): Likewise. + (fits_in_signed_long): Likewise. + (type_names): Constify. + (intel_float_operand): Constify param. + (add_prefix): Use REX_OPCODE. + (md_assemble): Likewise. Modify for changed rex_byte. + (parse_insn): Split out of md_assemble. + (parse_operands): Likewise. + (swap_operands): Likewise. + (optimize_imm): Likewise. + (optimize_disp): Likewise. + (match_template): Likewise. + (check_string): Likewise. + (process_suffix): Likewise. + (check_byte_reg): Likewise. + (check_long_reg): Likewise. + (check_qword_reg): Likewise. + (check_word_reg): Likewise. + (finalize_imm): Likewise. + (process_operands): Likewise. + (build_modrm_byte): Likewise. + (output_insn): Likewise. + (output_branch): Likewise. + (output_jump): Likewise. + (output_interseg_jump): Likewise. + (output_disp): Likewise. + (output_imm): Likewise. + +2002-03-07 Daniel Jacobowitz <drow@mvista.com> + + * doc/as.texinfo: Wrap @menu in @ifnottex, not @ifinfo. + +2002-03-06 Alan Modra <amodra@bigpond.net.au> + + * config/tc-i386.c (tc_gen_reloc): Don't attempt to handle 8 byte + relocs except when BFD64. + + * write.c (number_to_chars_bigendian): Don't abort when N is + larger than sizeof (VAL). + (number_to_chars_littleendian): Likewise. + +2002-03-05 John David Anglin <dave@hiauly1.hia.nrc.ca> + + * config/tc-hppa.c (md_apply_fix3): Add cast. + (hppa_fix_adjustable): Adjust list of selectors using e_lrsel and + e_rrsel. + +2002-03-05 Paul Koning <pkoning@equallogic.com> + + * tc-pdp11.c: Use VAX float format support for PDP-11 target. + (parse_ac5): New function for parsing float regs in float operand. + (parse_expression): Remove attempt to make literals be octal. + (parse_op_no_deferred): Support float literals. + (parse_op): Reject attempts to refer to float regs. + (parse_fop): New function, like parse_op but for float operand. + (md_assemble): Add cases to parse float operands. Also fix + IMM3, IMM6, IMM8 cases to pick up the operand from the right spot. + +2002-03-04 H.J. Lu <hjl@gnu.org> + + * config/obj-elf.c (special_section): Add .init_array, + .fini_array and .preinit_array. + + * config/tc-ia64.h (ELF_TC_SPECIAL_SECTIONS): Remove + .init_array and .fini_array. + +2002-03-01 Jakub Jelinek <jakub@redhat.com> + + * config/obj-elf.c (elf_copy_symbol_attributes): Don't copy + visibility. + (obj_frob_symbol): Copy visibility. + +2002-02-28 Jakub Jelinek <jakub@redhat.com> + + * config/tc-alpha.c (s_alpha_text): Use obj_elf_text for OBJ_ELF, not + s_text. + (s_alpha_data): Use obj_elf_data for OBJ_ELF, not s_data. + +2002-02-27 Nick Clifton <nickc@cambridge.redhat.com> + + * po/es.po: Updated. + +2002-02-26 Chris Demetriou <cgd@broadcom.com> + + * config/tc-mips.c (mips_need_elf_addend_fixup): For embedded-PIC + only, undo the changes made on 2001-06-08, with the + effect being that common or extern symbols are + adjusted for embedded-PIC, but weak symbols are not. + (md_estimate_size_before_relax: Likewise, with the effect + that extern symbols are treated the same as weak symbols + only if not embedded-PIC. + (mips_fix_adjustable) Likewise, with the effect that + weak or extern symbols are not adjusted for embedded-PIC. + (md_apply_fix3): Tweak so that the case where value is zero + is handled more correctly for embedded-PIC code. + +2002-02-26 Nick Clifton <nickc@cambridge.redhat.com> + + * doc/as.texinfo (Overview): Add missing @ifset IA64 + + * configure.in (LINGUAS): Add es.po. + * configure: Regenerate. + * po/es.po: New file. + +2002-02-25 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (set_at): Fix handling of 64bit register loads. + (macro): Likewise. Fix la/dla address expansions for EMBEDDED_PIC + and NO_PIC cases. Code cleanup. + (macro2): Fix handling of 64bit register loads. + +2002-02-25 David Mosberger <davidm@hpl.hp.com> + + * doc/as.texinfo: Add entry for IA64. + * doc/c-ia64.texi: New file. + +2002-02-25 Alan Modra <amodra@bigpond.net.au> + + * config/tc-hppa.c: Update copyright date. + + * doc/c-ppc.texi (PowerPC-Opts): Add -mpower4, -maltivec and -m7400 + Remove references to chip manufacturers. + * config/tc-ppc.c (md_parse_option): Handle -mpower4 option. + Correct comments. + (md_show_usage): Remove references to chip manufacturers. Mention + -mpower4. + (md_begin): Test power4 opcode flag bits. + +2002-02-22 David Mosberger <davidm@hpl.hp.com> + + * config/tc-ia64.c (dot_restore): Issue error message of epilogue + count exceeds prologue count. + (md_show_usage): Describe -mconstant-gp and -mauto-pic. + (unwind.label_prologue_count): New member. + + Based on a patch by Hans Boehm <hboehm@hpl.hp.com>: + + (get_saved_prologue_count): New function. + (save_prologue_count): New function. + (free_saved_prologue_count): New function. + (dot_label_state): Record state label by calling save_prologue_count(). + (dot_copy_state): Restore prologue count by calling + get_saved_prologue_count(). + (generate_unwind_image): Free up list of saved prologue + counts by calling free_saved_prologue_counts(). + +2002-02-22 Nick Clifton <nickc@cambridge.redhat.com> + + * config/tc-tic54x.c: Add missing prototypes and remove ANSI style + function declarations. + +2002-02-21 Nick Clifton <nickc@cambridge.redhat.com> + + * NEWS: Note that GASP is now deprecated. + * Makefile.am: Do not build gasp-new by default. + * Makefile.in: Regenerate. + * doc/Makefile.am: Do not install gasp.info. + * doc/Makefile.in: Regenerate. + * gas/gasp.texi: Note that gasp is now deprecated. + +2002-02-20 Nick Clifton <nickc@cambridge.redhat.com> + + * NEWS: Mark 2.12 branch. + +2002-02-19 Tom Tromey <tromey@redhat.com> + + * config/tc-xstormy16.h (DWARF2_LINE_MIN_INSN_LENGTH): Define. + +2002-02-19 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (md_parse_option): Complain about invalid -mabi + option input. + +2002-02-19 Martin Schwidefsky <schwidefsky@de.ibm.com> + + * config/tc-s390.c (md_parse_option): Add switches -m31 and -m64. + Make bit size independent of architecture switch. + (md_begin): Add warning for -m64 with -Aesa. + (s390_md_end): Use renamed architecture defines. + +2002-02-18 Daniel Jacobowitz <drow@mvista.com> + + * config/obj-coff.h: Check !target_big_endian, not shl, for coff-sh. + +2002-02-16 Nick Clifton <nickc@cambridge.redhat.com> + + * doc/as.texinfo (Machine Dependencies): Fix typo: MMIX used + instead of CRIS. + +2002-02-15 Chris Demetriou <cgd@broadcom.com> + + * config/tc-mips.c (md_estimate_size_before_relax): Really + make sure we treat weak like extern only for ELF. (Fixes + patch from 2001-07-25.) + +2002-02-15 Ben Elliston <bje@redhat.com> + + * doc/as.texinfo: Add duplicate directory entry so that "info gas" + works as expected. + +2002-02-15 Hans-Peter Nilsson <hp@bitrange.com> + + * NEWS: Mention support for MMIX. + +2002-02-13 Chris Demetriou <cgd@broadcom.com> + + * config/tc-mips.c (mips_need_elf_addend_fixup): Restructure into + a sequence of indpendent 'if' statements for easier debugging + and future modification. + +2002-02-13 Matt Fredette <fredette@netbsd.org> + + * config/tc-m68k.c (md_show_usage): No longer display a + hard-coded "68020" for the default CPU, instead display the + canonical name of the true, configured default CPU. + (m68k_elf_final_processing): Mark objects for sub-68020 + CPUs with the new EF_M68000 flag. + +2002-02-13 Andreas Schwab <schwab@suse.de> + + * config/tc-i386.c (tc_i386_fix_adjustable): Don't adjust + pc-relative relocations to merge sections in 64-bit mode. + +2002-02-13 Ben Elliston <bje@redhat.com> + + * NEWS: Document floating point number handling in gasp. + * gasp.c: Include <assert.h> and "xregex.h". + (is_flonum): New function. + (chew_flownum): Likewise. + (change_base): Consume flonums from the input, where possible. + * doc/gasp.texi (Constants): Document floating point numbers. + +2002-02-12 John David Anglin <dave@hiauly1.hia.nrc.ca> + + * config/tc-hppa.c (hppa_fix_adjustable): Don't adjust final types + that implicitly use LR and RR selectors. + +2002-02-12 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-mn10300.c (other_registers): Added `epsw'. Mark `pc' + and `epsw' as available on AM33 and above only. + (other_register_name): Add logic to handle machine type encoded in + reg_number. + +2002-02-11 Tom Rix <trix@redhat.com> + + * config/tc-ppc.c (md_apply_fix3): Check for insert fop invalid for + xcoff64. + +2002-06-11 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-sparc.c (U0x80000000, U0xffffffff): New constants. + Use all over. + +2002-02-11 Jan Hubicka <jh@suse.cz> + + * i386.c (md_assemble): Support 32bit address prefix. + (i386_displacement): Likewise. + (i386_index_check): Accept 32bit addressing in 64bit mode. + +2002-02-11 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-sh.c (dot): Removed unused function. + +2002-02-11 Alan Modra <amodra@bigpond.net.au> + + * Makefile.am: "make dep-am". + * Makefile.in: Regenerate. + * aclocal.m4: Regenerate. + * config.in: Regenerate. + * configure: Regenerate. + * doc/Makefile.in: Regenerate. + +2002-02-10 Richard Henderson <rth@redhat.com> + + * doc/c-alpha.texi: New file. + * doc/Makefile.am (CPU_DOCS): Add it. + * doc/all.texi, doc/as.texinfo: Add hooks for Alpha. + +2002-02-09 Richard Henderson <rth@redhat.com> + + * config/tc-alpha.c (O_samegp): New. + (USER_RELOC_P): Include it. + (alpha_reloc_op_tag, debug_exp, find_macro_match): Add it. + (md_apply_fix3): Handle BFD_RELOC_ALPHA_BRSGP. + (alpha_force_relocation, alpha_fix_adjustable): Likewise. + (alpha_validate_fix): New. + * config/tc-alpha.h (TC_VALIDATE_FIX): New. + +2002-02-09 Hans-Peter Nilsson <hp@axis.com> + + * doc/c-cris.texi: New. + * doc/all.texi: @set CRIS. + * doc/as.texinfo: Ditto. Add CRIS gas manpage option overview. + Include c-cris.texi. + * doc/Makefile.am (CPU_DOCS): Add c-cris.texi + * doc/Makefile.in: Regenerate. + +2002-02-08 Chris Demetriou <cgd@broadcom.com> + + * config/tc-mips.c (IS_SEXT_32BIT_NUM): New macro to + determine if a number is a sign-extended 32-bit number. + (load_register): Use IS_SEXT_32BIT_NUM. + (macro): Check if load/store macro handling is using a + constant 32-bit address on 64-bit address systems, and if + so optimize the generation of that address. + +2002-02-08 Richard Henderson <rth@redhat.com> + + * config/tc-alpha.c (alpha_force_relocation): Don't assert that + we've eliminated all foreign relocation types yet. + (alpha_fix_adjustable): Likewise. + +2002-02-08 Alexandre Oliva <aoliva@redhat.com> + + Contribute sh64-elf. + 2002-02-08 Alexandre Oliva <aoliva@redhat.com> + Stephen Clarke <Stephen.Clarke@st.com> + * doc/c-sh64.texi: Fix citation of SH64 architecture manual. + 2002-01-31 Alexandre Oliva <aoliva@redhat.com> + * config/tc-sh.c (md_relax_table): Added default sizes for + non-PC-relative UNDEF_MOVI, and relaxation sequences for + MOVI_16, MOVI_32 and MOVI_48. + * config/tc-sh64.c (shmedia_md_apply_fix3): Fix warning. + (shmedia_md_convert_frag): Handle non-PC-relative UNDEF_MOVI + and MOVI_16. + (shmedia_md_estimate_size_before_relax): Remove redundant + blocks. Set fragP->fr_var even if relaxation type unchanged. + Retain UNDEF_MOVI until expression decays to number. + 2002-01-24 Alexandre Oliva <aoliva@redhat.com> + * config/tc-sh64.c (shmedia_init_reloc): Handle new SHmedia PIC + relocation types. Take fixP->fx_addnumber into account too. + (shmedia_md_apply_fix): Likewise. + (shmedia_md_convert_frag): Likewise. + (shmedia_build_Mytes): Likewise. + (sh64_consume_datalabel): Complain about nested datalabel. + Support PIC relocs. Call sh_parse_name. + * config/tc-sh64.h (TC_RELOC_RTSYM_LOC_FIXUP): Extend definition + in tc-sh.h to SHmedia reloc types. + * config/tc-sh.c (SH64PCRELPLT, MOVI_PLT, MOVI_GOTOFF, + MOVI_GOTPC): New relaxation constants. + (md_relax_table): Introduce relaxation directives for PIC-related + constants. + (sh_PIC_related_p): Handle datalabel. + (sh_check_fixup): Choose SH5 PIC relocations. + (sh_cons_fix_new): Added BDF_RELOC_64. + (md_apply_fix3, sh_parse_name): Handle GOTPLT. + 2002-01-18 Alexandre Oliva <aoliva@redhat.com> + * config/tc-sh64.c (sh64_max_mem_for_rs_align_code): If the + current ISA is SHmedia, get 7 bytes. + 2001-11-28 Nick Clifton <nickc@cambridge.redhat.com> + * config/tc-sh.c (md_apply_fix3): Treat shmedia_md_apply_fix3 as a + void function. + * config/tc-sh64.c (shmedia_apply_fix): Rename to + shmedia_apply_fix3 and make void. + 2001-05-17 Alexandre Oliva <aoliva@redhat.com> + * config/tc-sh64.c (s_sh64_abi): Remove unused arguments passed to + as_bad. + 2001-04-12 Alexandre Oliva <aoliva@redhat.com> + * config/tc-sh64.h (md_parse_name): Take &c as argument. + 2001-03-14 DJ Delorie <dj@redhat.com> + * doc/Makefile.am (CPU_DOCS): Added c-sh64.texi + * doc/Makefile.in(CPU_DOCS): Ditto. + * doc/c-sh64.texi: New file. + * doc/as.texinfo: Add SH64 support. + 2001-03-13 DJ Delorie <dj@redhat.com> + * config/tc-sh64.c (shmedia_get_operands): Rename A_RESV_Fx to + A_REUSE_PREV so that its purpose is more obvious. + (shmedia_build_Mytes): Ditto. + 2001-03-07 DJ Delorie <dj@redhat.com> + * config/tc-sh64.c (sh64_vtable_entry): New, strip datalabels + before processing. + (sh64_vtable_inherit): Ditto. + (strip_datalabels): New, strip "datalabel" from given line. + * config/tc-sh.c (md_pseudo_table): Add sh64-specific vtable + pseudos. + 2001-03-06 Hans-Peter Nilsson <hpn@cygnus.com> + * config/tc-sh64.c (shmedia_md_assemble): Move dwarf2_emit_insn + call ... + (shmedia_build_Mytes): ... to here. + 2001-03-06 DJ Delorie <dj@redhat.com> + * config/tc-sh.c: Remove sh64-specific uaquad now that there + is a generic one. + 2001-01-21 Hans-Peter Nilsson <hpn@cygnus.com> + * config/tc-sh64.h (DWARF2_LINE_MIN_INSN_LENGTH): Override. + * config/tc-sh64.c (shmedia_md_assemble): Offset recorded insn + address by one in call to dwarf2_emit_insn. + 2001-01-13 Hans-Peter Nilsson <hpn@cygnus.com> + Implement ".abi" pseudo and correct .cranges descriptors. Correct + alignment handling broken by imported changes. + * config/tc-sh64.h (HANDLE_ALIGN): Override definition in tc-sh.h. + (sh64_handle_align): Declare. + (MAX_MEM_FOR_RS_ALIGN_CODE): Override definition in tc-sh.h. + (sh64_max_mem_for_rs_align_code): Declare. + (enum sh64_isa_values): Moved here from tc-sh64.c. + (md_do_align): Define. + (sh64_do_align): Declare. + (struct sh64_tc_frag_data): New. + (TC_FRAG_TYPE): Change to struct sh64_tc_frag_data. Users + changed. + (TC_FRAG_INIT): Change to set new datatype. + (struct sh64_segment_info_type): Rename member + last_flushed_location to last_contents_mark. All users changed. + (md_elf_section_change_hook, TC_CONS_FIX_NEW): Do not define. + (shmedia_elf_new_section, sh64_tc_cons_fix_new): Do not prototype. + * config/tc-sh.c (md_pseudo_table): Add ".abi". + (sh_elf_cons) [HAVE_SH64]: Call sh64_update_contents_mark instead + of unsetting seen_insn. + (md_assemble) [HAVE_SH64] <before new SHcompact sequence>: Also + call sh64_update_contents_mark. + (sh_handle_align): Remove HAVE_SH64-conditioned code. + * config/tc-sh64.c (sh64_isa_mode): Correct type from boolean to + enum sh64_isa_values. + (sh64_set_contents_type): Drop segT parameter. All callers changed. + (emitting_crange): Boolean guard moved to file scope from function + scope in sh64_set_contents_type. + (s_sh64_abi): New. + (sh64_update_contents_mark): New; most split out from + sh64_flush_pending_output. + (shmedia_md_end): Call sh64_update_contents_mark. Set + sh64_isa_mode to sh64_isa_sh5_guard unless sh64_isa_unspecified. + (sh64_do_align): New function. + (sh64_max_mem_for_rs_align_code): New function. + (sh64_handle_align): Rename from shmedia_do_align. Make + non-static. Add head comment. Emit zero bytes for n bytes modulo + four. Change return-type to void. + (shmedia_elf_new_section): Remove. + (shmedia_md_assemble): Call sh64_update_contents_mark. + (s_sh64_mode): Ditto. Do not call md_flush_pending_output. Make + new frag. Call sh64_update_contents_mark after making the new + frag. + (sh64_flush_pending_output): Just call sh64_update_contents_mark + and sh_flush_pending_output. + (sh64_flag_output): Also call md_flush_pending_output, but add + condition on not emitting_crange. + (sh64_tc_cons_fix_new): Remove. + 2001-01-12 Nick Clifton <nickc@redhat.com> + * config/tc-sh64.c (shmedia_do_align): Fix to work with new + alignment handling scheme imported from sourceware. + 2001-01-12 Hans-Peter Nilsson <hpn@cygnus.com> + * config/tc-sh64.h (TARGET_FORMAT): Define. + (sh64_target_format): Prototype. + * config/tc-sh64.c (sh64_target_mach): New function. + 2001-01-07 Hans-Peter Nilsson <hpn@cygnus.com> + * config/tc-sh64.c (shmedia_md_end): When equating a symbol, use + zero_address_frag instead of copying the frag of the symbol. + (shmedia_frob_file_before_adjust): Ditto. + (shmedia_md_apply_fix) <case BFD_RELOC_SH_IMM_MEDLOW16>: Cast mask + to valueT to remove signedness. + (shmedia_md_convert_frag): Add parameter final. Rename parameter + headers to output_bfd. Do not evaluate symbols if final is false; + do emit fixups. + (shmedia_md_estimate_size_before_relax) <case C (MOVI_IMM_32, + UNDEF_MOVI) et al>: If symbol cannot be modified to be PC-relative + to the current frag, call shmedia_md_convert_frag to emit fixups + and make frag_wane neutralize the frag. Update comments. + * config/tc-sh.c (md_convert_frag): Change caller of + shmedia_md_convert_frag. + 2001-01-06 Hans-Peter Nilsson <hpn@cygnus.com> + * config/tc-sh64.h: Tweak comments and correct formatting. + * config/tc-sh64.c: Ditto. + (shmedia_md_convert_frag) <PT/PTA/PTB 32, 48 and 64 bit + expansion, MOVI pcrel expansion>: Fix thinko calculating offset + for the no-relocation case. + (shmedia_check_limits): Fix range check being off-by-one for PTA. + * config/tc-sh.c: Ditto. Add proper comments to #ifdef/#ifndef + wrappers. + (SH64PCREL16_F): Increment for proper max-PTA handling. Update + comment. + (SH64PCREL16_M, MOVI_16_M): Correct range thinko. + (SH64PCREL48_M, MOVI_48_M): Similar; don't count in length of + expansion. + (SH64PCREL32_M, MOVI_32_M): Ditto; handle overflowing expression. + Correct comment. + 2001-01-05 Hans-Peter Nilsson <hpn@cygnus.com> + * config/tc-sh64.c (shmedia_md_apply_fix) <second switch, case + BFD_RELOC_SH_PT_16>: Set lowest bit in field to be relocated to 1. + (shmedia_md_convert_frag) <case C (SH64PCREL16_32, SH64PCREL16) et + al>: Set lowest bit of field to relocate to 1 and rest to empty, + if reloc is emitted. + 2000-12-31 Hans-Peter Nilsson <hpn@cygnus.com> + New options plus bugfixes. + * config/tc-sh.c (md_longopts): New options "-no-expand" and + "-expand-pt32". + (md_parse_option): Handle new options. + (md_show_usage): Add blurb for new options. + * config/tc-sh64.c (SHMEDIA_BFD_RELOC_PT): New macro. + (sh64_expand, sh64_pt32): New variables. + (shmedia_init_reloc): Handle BFD_RELOC_SH_PT_16. + (shmedia_md_apply_fix): Hold original fixP->fx_r_type in + orig_fx_r_type. Change SHMEDIA_BFD_RELOC_PT into + BFD_RELOC_SH_PT_16. Handle BFD_RELOC_SH_PT_16 as pc-relative. + <resolved previously-pc-relative relocs>: Handle + SHMEDIA_BFD_RELOC_PT and BFD_RELOC_SH_PT_16. + (shmedia_md_convert_frag) <case C (SH64PCREL16PT_64, SH64PCREL16), + case C (SH64PCREL16PT_32, SH64PCREL16)>: Modify to PTB if operand + points to SHcompact code. + <case C (SH64PCREL16_32, SH64PCREL16), case C (SH64PCREL16_64, + SH64PCREL16)>: Check that ISA of what operand points at and + PTA/PTB matches, or emit error. + (shmedia_check_limits): Handle BFD_RELOC_SH_PT_16 and + SHMEDIA_BFD_RELOC_PT. + (shmedia_immediate_op): If pcrel, emit fixup also for constant + operand. + (shmedia_build_Mytes) <case A_IMMS16>: Also check sh64_expand in + condition for MOVI expansion. + <case A_PCIMMS16BY4>: Handle expansion to 32 bits only, if + sh64_pt32. Emit only a BFD_RELOC_SH_PT_16 fixup if not + sh64_expand. + <case A_PCIMMS16BY4_PT>: Likewise, but emit a SHMEDIA_BFD_RELOC_PT + fixup. + (sh64_target_format): Error-check setting of sh64_pt32 and + sh64_expand. Fix typo in check for sh64_shcompact_const_crange. + (shmedia_md_pcrel_from_section): Handle BFD_RELOC_SH_PT_16 and + SHMEDIA_BFD_RELOC_PT as coming from SHmedia code. + 2000-12-31 Hans-Peter Nilsson <hpn@cygnus.com> + * config/tc-sh64.c: Improve comments. + (shmedia_md_convert_frag): Remove inactive is_pt_variant code. Do + not say the linker will check correctness of PTA/PTB expansion. + (shmedia_md_end): Make non-static. + * config/tc-sh64.h (md_end): Define to shmedia_md_end. Add + prototype. + * config/tc-sh.c (sh_finalize): Remove. + * config/tc-sh.h (md_end): Do not define. + Remove prototype for sh_finalize. + 2000-12-30 Hans-Peter Nilsson <hpn@cygnus.com> + * config/tc-sh64.c (shmedia_frob_section_type): Use a struct + sh64_section_data container when storing section type in tdata + field in elf_section_data. + * config/tc-sh.c (sh_elf_final_processing): Change from EF_SH64 to + EF_SH5. + * Makefile.am: Update dependencies. + * Makefile.in: Regenerate. + 2000-12-22 Hans-Peter Nilsson <hpn@cygnus.com> + * config/tc-sh64.c (shmedia_md_assemble): Don't protect + dwarf2_emit_insn call with test on debug_type. + 2000-12-19 Hans-Peter Nilsson <hpn@cygnus.com> + * config/tc-sh64.c (sh64_set_contents_type): Make contents-type + CRT_SH5_ISA32 sticky for 64-bit. + 2000-12-18 Hans-Peter Nilsson <hpn@cygnus.com> + Generate .crange sections when switching ISA mode or emitting + constants in same section as code. + * config/tc-sh64.c: Reformat structure definitions. + (sh64_end_of_assembly, sh64_mix, sh64_shcompact_const_crange): New + variables. + (sh64_set_contents_type): Rename from sh64_init_section. Rewrite + to emit a .cranges descriptor when contents type changes. Only + emit error if changing contents type and -no-mix is in effect. + (sh64_emit_crange, sh64_flush_last_crange, sh64_flag_output, + sh64_flush_pending_output, sh64_tc_cons_fix_new): New functions. + (shmedia_md_end): Set sh64_end_of_assembly. Pass + sh64_flush_last_crange over sections. + When checking main symbol of datalabel symbol, check for + STO_SH5_ISA32, not ISA type of section in definition. + (shmedia_frob_file_before_adjust): Check main symbol for + STO_SH5_ISA32; don't check ISA type of section in definition. + (shmedia_frob_section_type): Adjust for .cranges; set section flag + to SHF_SH5_ISA32_MIXED or SHF_SH5_ISA32 according to whether + .cranges entries have been output. + (shmedia_elf_new_section): Just call md_flush_pending_output. + (shmedia_md_assemble): Do not emit a BFD_RELOC_SH_SHMEDIA_CODE + fix. Do not set tc_segment_info_data.in_code for section. Call + sh64_set_contents_type for SHmedia code. + (s_sh64_mode): Do not call sh64_init_section or set seen_insn to + false. Call md_flush_pending_output. + (sh64_target_format): Check that -no-mix and + -shcompact-const-crange are used in sane combination with other + options. + (shmedia_md_pcrel_from_section): Check type of fix for how to + adjust pc-relative. + (sh64_consume_datalabel): Check symbol for having STO_SH5_ISA32, + not ISA type of section in definition. + * config/tc-sh64.h (struct sh64_segment_info_type): Rewrite to + hold contents-type state. + (md_flush_pending_output): Redefine to sh64_flush_pending_output. + (sh64_flush_pending_output): Declare. + (TC_CONS_FIX_NEW): Define to sh64_tc_cons_fix_new. + (sh64_tc_cons_fix_new): Declare. + * config/tc-sh.c (sh_elf_cons) [HAVE_SH64]: Unset seen_insn and + call sh64_flag_output. + (md_assemble) [HAVE_SH64]: Do not emit BFD_RELOC_SH_CODE. Just + call sh64_set_contents_type to mark SHcompact code and set + seen_insn. + (md_longopts): New options "-no-mix" and + "-shcompact-const-crange". + (md_parse_option): Handle new options. + (md_show_usage): Add blurb for new options. + (md_number_to_chars) [HAVE_SH64]: Call sh64_flag_output. + 2000-12-15 Hans-Peter Nilsson <hpn@cygnus.com> + * config/tc-sh64.c: Delete investigated and obsolete fixme:s. + (sh64_last_insn_frag): New. + (shmedia_md_convert_frag): Use tc_frag_data field of incoming frag + to get frag for insn opcode for generating fixups; do not assume it + is the same frag. + (shmedia_build_Mytes): Set sh64_last_insn_frag after growing frag + for new insn. + * config/tc-sh64.h (ELF_TC_SPECIAL_SECTIONS): Define for .cranges + section. + (TC_FRAG_TYPE): Define as fragS *. + (TC_FRAG_INIT): Define to set tc_frag_data to sh64_last_insn_frag. + (sh64_last_insn_frag): Declare. + (sh64_consume_datalabel): Fix typo; check for seginfo != NULL, + not == NULL before dereferencing. + 2000-12-12 Hans-Peter Nilsson <hpn@cygnus.com> + Get rid of BFD section flag and EF_SH64_ABI64. + * config/tc-sh64.c (shmedia_frob_section_type): Use + elf_section_data (sec)->tdata, not a specific BFD section flag, to + communicate the section as containing SHmedia code. Describe why. + * config/tc-sh.c (sh_elf_final_processing): Tweak comment. Set + EF_SH64 regardless of ABI. + * config/tc-sh64.c (shmedia_md_apply_fix): Decapitalize "invalid" + in error message. Handle resolved expressions for + BFD_RELOC_SH_IMMS10, BFD_RELOC_SH_IMMS10BY2, + BFD_RELOC_SH_IMMS10BY4 and BFD_RELOC_64. + (shmedia_check_limits): Handle BFD_RELOC_64. + (sh64_adjust_symtab): Do not decrement the GAS symbol value for + a STO_SH5_ISA32 symbol, only the BFD value. + 2000-12-11 Ben Elliston <bje@redhat.com> + * config/tc-sh64.c: Call dwarf2_emit_insn, not the defunct + dwarf2_generate_asm_lineno. + 2000-12-11 Hans-Peter Nilsson <hpn@cygnus.com> + Handle PC-relative MOVI expansions with assembler relaxation. + Generate PC-relative relocs from 16-bit PC-relative expressions. + * config/tc-sh64.c (SHMEDIA_MD_PCREL_FROM_FIX): Break out from... + (shmedia_md_pcrel_from_section): ...here. + (shmedia_md_apply_fix): Handle fixups for 16-bit operands that has + turned completely resolved. Adjust relocation type for 16-bit + immediate operands that has turned PC-relative. Adjust back for + MD_PCREL_FROM_SECTION being applied twice. + (shmedia_md_convert_frag): Always emit reloc for expression with + global or weak symbol. Handle relaxation result for PC-relative + expressions. + (shmedia_md_estimate_size_before_relax): An expression with a weak + or global symbol can not be relaxed. Break out tests for + relaxable symbol into variable sym_relaxable. + <cases C (MOVI_IMM_64, UNDEF_MOVI) and C (MOVI_IMM_32, + UNDEF_MOVI)>: Break out any PC-relative expression and change + relaxation type. + (shmedia_build_Mytes): CSE &operands->operands[j] into variable + opjp. + <case A_IMMS16>: Fix typo for initial minor relaxation type of + MOVI expansion. If X_op_symbol of the immediate expression is + set, make an expression symbol for the argument to frag_var. + * config/tc-sh.c (MOVI_IMM_32_PCREL, MOVI_IMM_64_PCREL): New + relaxations. + (END): Adjust for new relaxations. + (md_relax_table): Add entries for new relaxations. + 2000-12-07 Ben Elliston <bje@redhat.com> + * config/tc-sh64.c (shmedia_parse_reg): Initialize variable len. + 2000-12-07 Hans-Peter Nilsson <hpn@cygnus.com> + * config/tc-sh64.c (shmedia_md_convert_frag): Correct all MOVI and + SHORI operand offsets in PT/PTA/PTB expansions. + 2000-12-05 Hans-Peter Nilsson <hpn@cygnus.com> + Implement DataLabel semantics. + * config/tc-sh.c (sh_frob_file) [HAVE_SH64]: Call + shmedia_frob_file_before_adjust. + * config/tc-sh64.c [! OBJ_ELF]: Emit #error. + (DATALABEL_SUFFIX): Define. + (shmedia_md_end) <before adjusting STO_SH5_ISA32 symbols>: Walk + symbol list to update "datalabel" symbols to their main symbol + counterparts. + (shmedia_frob_file_before_adjust): New. + (sh64_adjust_symtab): For remaining datalabel symbols, set to + undefined and set STT_DATALABEL. + (sh64_frob_label): Initialize TC symbol field. + (sh64_consume_datalabel): Actually implement semantics. New + parameter operandf, call it instead of expression. + (sh64_exclude_symbol): New. + * config/tc-sh64.h (md_parse_name): Pass on the function operand + to sh64_consume_datalabel. + (tc_symbol_new_hook): Define to tc_frob_symbol. + (TC_SYMFIELD_TYPE): Define to symbolS *. + (tc_frob_symbol): Define to call sh64_exclude_symbol. + 2000-12-01 Hans-Peter Nilsson <hpn@cygnus.com> + * config/tc-sh64.c (shmedia_init_reloc): Tweak comment for default + case. + (shmedia_md_assemble): Call dwarf2_generate_asm_lineno if + generating dwarf2 debug information. + 2000-11-30 Hans-Peter Nilsson <hpn@cygnus.com> + * config/tc-sh64.c (sh64_target_format): Use elf64-sh64l and + elf64-sh64 for the 64-bit ABI. + * config/tc-sh.c (md_show_usage): Tweak usage output for -abi=* + option. + 2000-11-29 Hans-Peter Nilsson <hpn@cygnus.com> + * config/tc-sh.c: Remove conditionalizing on HAVE_SH64 for + case-insensitivity. + 2000-11-27 Hans-Peter Nilsson <hpn@cygnus.com> + * config/tc-sh64.c: Tweak comments, formatting and error messages. + (enum sh64_abi_values): New type. + (enum sh64_isa_values): New type. + (sh64_isa_mode): Replace shmedia_mode. All referers changed. + (seen_shcompact_mode, seen_shmedia_mode): Delete. + (sh64_abi): Replace shmedia_64. + (shmedia_md_convert_frag) <C (MOVI_IMM_64, MOVI_64), + C (MOVI_IMM_32, MOVI_32)>: Correct register number handling. + (s_sh64_mode): Check validity for this target. + (sh64_target_format): Initialize defaults for ISA and ABI. + Fallback to old object format if no SH64 ISA or ABI has been + specified. + * config/tc-sh.c (md_parse_option): Check combinations for errors. + (sh_elf_final_processing): Change to have EF_SH64_ABI64 for 64-bit + ABI and EF_SH64 for 32-bit ABI, if SH64 options are specified. + * config/tc-sh64.h: Fix typo in comment. + 2000-11-25 Hans-Peter Nilsson <hpn@cygnus.com> + * config/tc-sh64.c (shmedia_md_estimate_size_before_relax) + <PT fixups for absolute values>: Size will be longest, not + shortest. + (shmedia_md_convert_frag): Disable PTB-warning machinery. Correct + all MOVI and SHORI operand offsets in PT/PTA/PTB expansions. + * config/tc-sh.c (parse_reg) [HAVE_SH64]: Add local variables l0 + and l1 to hold lowercase of two first characters. Change all + remaining TO_LOWER to tolower. + * config/tc-sh64.c (TO_LOWER): Delete. + (shmedia_find_cooked_opcode): Use tolower, not TO_LOWER. + (md_parse_name): Define. + (sh64_consume_datalabel): Declare. + (DOLLAR_DOT): Define. + * config/tc-sh64.c (shmedia_parse_exp): New. + (sh64_consume_datalabel): New; just ignoring datalabel semantics. + (shmedia_parse_reg): Remove const from src + parameter. + (shmedia_get_operands): Ditto for args parameter and ptr variable. + (shmedia_md_assemble): Ditto for op_end variable. + (shmedia_get_operand): Ditto for ptr parameter and src variable. + Use shmedia_parse_exp, not parse_exp. + * config/tc-sh64.c (shmedia_parse_reg): Add shmedia_arg_type + parameter. All callers changed. + (shmedia_get_operand): Add shmedia_arg_type parameter. All + callers changed. + (shmedia_parse_reg): Put first two character in local variables. + Use tolower, not TO_LOWER. If no register is found and argtype + indicates a control register, scan shmedia_creg_table + case-insensitive. + 2000-11-24 Hans-Peter Nilsson <hpn@cygnus.com> + * Makefile.am (CPU_TYPES): Add sh64. + (TARGET_CPU_CFILES): Add config/tc-sh64.c. + (TARGET_CPU_HFILES): Add config/tc-sh64.h. + Regenerate dependencies. + * Makefile.in: Regenerate. + * configure.in: Add support for sh64-*-elf*. + * configure: Regenerate. + * config/tc-sh64.h: New. + * config/tc-sh64.c: New. + * config/tc-sh.c (md_pseudo_table) [HAVE_SH64]: New pseudos + .mode, .isa and .uaquad. + [HAVE_SH64] (SH64PCREL16_32, SH64PCREL16_64, SH64PCREL16PT_32, + SH64PCREL16PT_64, MOVI_IMM_32, MOVI_IMM_64): Define. + [HAVE_SH64] (END): Define as 10. + [HAVE_SH64] (UNDEF_SH64PCREL, SH64PCREL16, SH64PCREL32, + SH64PCREL48, SH64PCREL64, UNDEF_MOVI, MOVI_16, MOVI_32, MOVI_48, + MOVI_64): Define. + [HAVE_SH64] (SH64PCREL16_F, SH64PCREL16_M, SH64PCREL16_LENGTH, + SH64PCREL32_F, SH64PCREL32_M, SH64PCREL32_LENGTH, SH64PCREL48_F, + SH64PCREL48_M, SH64PCREL48_LENGTH, SH64PCREL64_LENGTH, + MOVI_16_LENGTH, MOVI_32_LENGTH, MOVI_48_LENGTH, MOVI_64_LENGTH): + Define. + (md_relax_table) [HAVE_SH64]: Provide relaxations for SHmedia. + (md_begin) [HAVE_SH64]: Call shmedia_md_begin. + (parse_reg) [HAVE_SH64]: Parse register names case-insensitive. + (md_assemble) [HAVE_SH64]: Call shmedia_md_assemble if assembling + SHmedia instructions. Handle state-change after switching to + SHcompact. + (md_longopts) [HAVE_SH64]: New options --isa=* and --abi=*. + (md_parse_option) [HAVE_SH64]: Parse new options. + (md_show_usage) [HAVE_SH64]: Show usage of new options. + (md_convert_frag) [HAVE_SH64] <default>: Call + shmedia_md_convert_frag instead of abort. + (sh_force_relocation) [HAVE_SH64]: Also force relocation for + BFD_RELOC_SH_SHMEDIA_CODE. + (sh_elf_final_processing) [HAVE_SH64]: Set flags identifying + SHcompact or SHmedia code. + (md_apply_fix) [HAVE_SH64] <default>: Return result from calling + shmedia_md_apply_fix instead of abort. + (md_estimate_size_before_relax) [HAVE_SH64] <default>: Return + result from calling shmedia_md_estimate_size_before_relax instead + of calling abort. + (sh_do_align) [HAVE_SH64]: If shmedia_mode, let shmedia_do_align + do the work. + (tc_gen_reloc) [HAVE_SH64]: For unrecognized relocs, call + shmedia_init_reloc and do nothing more if it returns non-zero. + (sh_finalize) [HAVE_SH64]: Call shmedia_md_end. + * po/POTFILES.in: Regenerate. + * po/gas.pot: Regenerate. + +2002-02-06 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-sh.c (parse_at): Install the correct version of + 2002-02-04's patch. + + * config/tc-sh.c (md_apply_fix3) <BFD_RELOC_32_PLT_PCREL>: Don't + assume fixP->fx_subsy is non-NULL. + +2002-02-04 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-sh.c (parse_at): Set arg type of @(expr,pc) to + A_DISP_PC_ABS, and adjust it by -4. + (get_specific): Accept A_DISP_PC_ABS where A_DISP_PC is + expected. + (build_Mytes): Mark PCRELIMM fix-ups as pc-relative only if + the operand type is not A_DISP_PC_ABS. + +2002-02-04 Hans-Peter Nilsson <hp@bitrange.com> + + * config/tc-mmix.c (tc_gen_reloc): Don't try and take the value of + common and weak symbols. Handle common and weak symbols as + undefined symbols with regards to GREG handling and merging. + (mmix_frob_file): Ditto. + +2002-02-02 Jason Thorpe <thorpej@wasabisystems.com> + + * configure.in (hppa-*-netbsd*): New target. + * configure: Regenerate. + * config/tc-hppa.h: Also define WARN_COMMENTS if TE_NetBSD. + +2002-02-02 Alan Modra <amodra@bigpond.net.au> + + * config/tc-v850.c: Add missing prototypes amd use old-style + function definitions. + (AREA_ZDA, AREA_SDA, AREA_TDA): Delete. + (sdata_section tdata_section, zdata_section, sbss_section, + tbss_section, zbss_section, rosdata_section, rozdata_section, + scommon_section, tcommon_section, zcommon_section, + call_table_data_section, call_table_text_section): Delete. + (v850_sdata, v850_tdata, v850_zdata, v850_sbss, v850_tbss, + v850_zbss, v850_bss, v850_rosdata, v850_rozdata, + v850_call_table_data, v850_call_table_text): Delete. + (struct v850_seg_entry): New. + (v850_seg_table): New. + (SDATA_SECTION TDATA_SECTION, ZDATA_SECTION, SBSS_SECTION, + TBSS_SECTION, ZBSS_SECTION, BSS_SECTION, ROSDATA_SECTION, + ROZDATA_SECTION, SCOMMON_SECTION, TCOMMON_SECTION, ZCOMMON_SECTION, + CALL_TABLE_DATA_SECTION, CALL_TABLE_TEXT_SECTION): Define. + (do_v850_seg): New. + (v850_seg): New. + (v850_comm): Use do_v850_seg and v850_seg_table. Simplify + recording of alignment. + (md_pseudo_table): Use v850_seg. + (md_begin): Don't init .call_table_data and .call_table_text here. + Set v850_seg_table bss entry. + +2002-02-01 Hans-Peter Nilsson <hp@bitrange.com> + + Support on-demand global register allocation by passing on + base-plus-offset relocs to the linker. + * config/tc-mmix.c: Tweak and fix typos in comments. + (allocate_undefined_gregs_in_linker): New variable. + (OPTION_LINKER_ALLOCATED_GREGS): New option macro. + (md_longopts): Add --linker-allocated-gregs. + (md_parse_option) <case 'x'>: Imply --linker-allocated-gregs. + <case OPTION_LINKER_ALLOCATED_GREGS>: New. + (md_show_usage): Update text for -x. Add text for + --linker-allocated-gregs. + (tc_gen_reloc): Derive default value for addend from val and + baddsy. Use addsec and bfd_is_abs_section in more places. Don't + emit error for BFD_RELOC_MMIX_BASE_PLUS_OFFSET without suitable + GREG if allocate_undefined_gregs_in_linker. + * doc/as.texinfo (Overview) <Target MMIX options>: Add + --linker-allocated-gregs. + * doc/c-mmix.texi (MMIX-Opts): Add blurb about + --linker-allocated-gregs. Mention that it's implied by -x. + (MMIX-Pseudos) <GREG>: Mention when and how a GREG can be omitted. + (MMIX-mmixal): Clarify dated comparison and location of MMIXware. + + * config/tc-mmix.h (md_parse_name): Use ISUPPER, not isupper. + +2002-02-01 Alan Modra <amodra@bigpond.net.au> + + * Makefile.am: Run "make dep-am" + * Makefile.in: Regenerate. + +2002-01-31 Ivan Guzvinec <ivang@opencores.org> + + * config/tc-or32.c: New file. + * config/tc-or32.h: New file. + * configure.in: Add support for or32 targets. + * configure: Regenerate. + * config/obj-coff.c: Add support for or32 targets. + * config/obj-coff.h: Add support for or32 targets. + * Makefile.am: Add support for or32 targets. + * Makefile.in: Regenerate. + * NEWS: Mention support for OpenRISC. + * doc/Makefile.in: Regenerate. + * po/POTFILES.in: Regenerate. + * po/gas.pot: Regenerate. + +2002-01-30 Richard Sandiford <rsandifo@redhat.com> + + * config/tc-sh.c (parse_reg): Fix end-of-word check for is, ix, iy + and mod. + +2002-01-29 Chris Demetriou <cgd@broadcom.com> + + * config/tc-mips.c (tc_gen_reloc): Arrange for + BFD_RELOC_PCREL_HI16_S relocations to be output relative to + their LO16 parts, even for ELF. + +2002-01-29 Daniel Jacobowitz <drow@mvista.com> + + * config/tc-i386.c: Protect definitions of true and false + from redefinition. + +2002-01-28 Jakub Jelinek <jakub@redhat.com> + + * config/obj-elf.c (elf_frob_file_before_adjust): Remove symbols + made because of .weak, if they are neither defined nor used in any + way. + +2002-01-27 Daniel Jacobowitz <drow@mvista.com> + + * configure: Regenerated. + +2002-01-26 Hans-Peter Nilsson <hp@bitrange.com> + + * doc/Makefile.am (install): Depend on install-info. + * doc/Makefile.in: Regenerate. + +2002-01-26 Nick Clifton <nick@redhat.com> + + * po/fr.po: Updated version + +2002-01-24 Kazu Hirata <kazu@hxi.com> + + * config/tc-h8300.c (check_operand): Don't print a warning + when a valid 24-bit address is given to a 16-bit address + operand. + +2002-01-24 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-sh.c (sh_elf_suffix): Removed. + (sh_PIC_related_p, sh_check_fixup, sh_cons_fix_new, + sh_end_of_match, sh_parse_name): New functions. + (sh_elf_cons): Simplify. + (parse_exp): Reject misplaced PIC operands. + (md_undefined_symbol): Simplify. + (sh_fix_adjustable): Let @GOTOFF be adjusted. + (md_apply_fix3): Write @PLT and @GOTOFF addends in place. + (tc_gen_reloc): Move fixp subsy absolute value into addnumber. + Complain if subsy remains at the end. + * config/tc-sh.h (sh_parse_name, sh_cons_fix_new): Declare. + (md_parse_name, TC_CONS_FIX_NEW, O_PIC_reloc): Define. + +2002-01-22 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-mn10300.c (xr_registers): Move `pc'... + (other_registers): ... here. + +2002-01-22 Alan Modra <amodra@bigpond.net.au> + + * Makefile.am: Run "make dep-am". + * Makefile.in: Regenerate. + * gas/po/POTFILES.in: Regenerate. + +2002-01-21 DJ Delorie <dj@redhat.com> + + * config/obj-coff.c (obj_coff_init_stab_section): Make the + stabstr_name allocation permanent, as it will be referenced from + the section hash. + +2002-01-21 Jason Thorpe <thorpej@wasabisystems.com> + + * configure.in (ia64-*-netbsd*): New target. + * configure: Regenerate. + +2002-01-21 Hans-Peter Nilsson <hp@bitrange.com> + + * doc/as.texinfo (Overview) <Target ARM options>: Add missing {} + to @dots call. + <Detailed description, ARM options>: Ditto. + * doc/c-arm.texi (ARM Options): Ditto. + +2002-01-18 Richard Earnshaw <rearnsha@arm.com> + + * tc-arm.c (do_xsc_mia, do_xsc_mar, do_xsc_mra): Renamed from + do_mia, do_mar and do_mra respectively. + (do_mav_*): Renamed from do_c_*. + (mav_reg_required_here, mav_parse_offset): Renamed from + cirrus_reg_required_here and cirrus_parse_offset respectively. + (MAV_MODE?): Renamed from CIRRUS_MODE?. + +2002-01-18 Richard Earnshaw <rearnsha@arm.com> + Keith Walker <keith.walker@arm.com> + + * tc-arm.c (ARM_EXT_V5J, ARM_ARCH_V5TEJ): Define. + (insns): Add pattern for bxj instruction. + (do_bxj): New function. + (arm_cpus): Add arm926ej. + (arm_archs): Add armv5tej. + +2002-01-18 Richard Earnshaw <rearnsha@arm.com> + + * doc/c-arm.texi: Add new fpe options to list of supported flags. + +2002-01-19 Keith Walker <keith.walker@arm.com> + + * tc-arm.c (arm_fpus): Add fpe2 and fpe3. + +2002-01-18 Richard Earnshaw <rearnsha@arm.com> + + * NEWS: Mention new ARM command-line options and VFP support. + + * config/tc-arm.c (ARM_CEXT_XSCALE): Replaces ARM_EXT_XSCALE. All + uses changed. + (ARM_CEXT_MAVERICK): Similarly. + (ARM_ANY): Now means any core instruction. + (CPU_DEFAULT): Default to ARM_ANY. + (uses_apcs_26, atcps, support_interwork, uses_apcs_float) + (pic_code): Declare for all object types. Make type int. + (legacy_cpu, legacy_fpu, mcpu_cpu_opt, mcpu_fpu_opt, march_cpu_opt) + (march_fpu_opt, mfpu_opt): Declare. + (md_longopts): Tidy up conditional definitions. + (arm_opts, arm_cpus, arm_archs, arm_fpus, arm_extensions) + (arm_long_opts): New tables. + (arm_parse_cpu, arm_parse_arch, arm_parse_fpu): New functions. + (arm_parse_extension): New function. + (md_parse_option): Rewrite using new table-driven system. + (md_show_usage): Use new table-driven system. + (md_begin): Calculate cpu_variant from command line option data. + * doc/as.texinfo (ARM ISA options): Docuement new ARM-specific + command-line options. + * doc/c-arm.texi: Likewise. + +2002-01-18 Andreas Jaeger <aj@suse.de> + + * as.c (parse_args): Update year. + +2002-01-17 Timothy Wall <twall@alum.mit.edu> + + * config/tc-tic54x.c (encode_address): Add a more informative + warning about incorrect syntax. + +2002-01-17 Nick Clifton <nickc@cambridge.redhat.com> + + * po/gas.pot: Regenerate. + +2002-01-17 Nick Clifton <nickc@cambridge.redhat.com> + + * macro.c (get_any_string): Add no-c-format comment to prevent + confusion when translating string. + * gasp.c (get_any_string): Add no-c-format comment to prevent + confusion when translating string. + +2002-01-16 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + Johannes Stezenbach <js@convergence.de> + * config/tc-mips.c (percent_op): Ensure longer percent_op's are + matched before the shorter ones. + (my_getSmallParser): Fix handling of nested parentheses in + percent_op's. Code cleanup. + (my_getPercentOp): New function, code from my_getSmallParser. + (my_getSmallExpression): Fix handling of closing parentheses. + Code cleanup. Better comments. + +2002-01-16 Nick Clifton <nickc@redhat.com> + + po/tr.po: New file: Turkish translation. + configure.in (LINGUAS): Add "tr". + configure: Regenerate. + +2002-01-15 Richard Earnshaw <rearnsha@arm.com> + + Support for VFP instructions + * tc-arm.c (CP_WB_OK, CP_NO_WB): New defines. + (cp_address_required_here): New argument wb_ok. When false, do not + accept write-back forms of addressing. Change all callers. + (FPU_VFP_EXT_NONE, FPU_VFP_EXT_V1xD, FPU_VFP_VFP_V1) + (FPU_VFP_EXT_V2): Define. + (FPU_ARCH_VFP, FPU_ARCH_VFP_V1xD, FPU_ARCH_VFP_V1, FPU_ARCH_VFP_V2): + Define in terms of above. + (vfp_dp_reg_pos, vfp_sp_reg_pos, vfp_ldstm_type): New enums. + (vfp_reg): New struct. + (vfp_regs): New array of registers. + (insns): Add VFP instructions. + (sn_table): New array of VFP single-precision register names. + (dn_table): New array of VFP double-precision register names. + (all_reg_maps): Add the new register tables. + (arm_reg_type): Add new values for above. Increase RET_TYPE_MAX. + (vfp_sp_reg_required_here, vfp_dp_reg_required_here, do_vfp_sp_monadic) + (do_vfp_dp_monadic, do_vfp_sp_dyadic, do_vfp_dp_dyadic) + (do_vfp_reg_from_sp, do_vfp_sp_reg2, do_vfp_sp_from_reg) + (do_vfp_reg_from_dp, do_vfp_reg2_from_dp, do_vfp_dp_from_reg) + (do_vfp_dp_from_reg2, vfp_psr_parse, vfp_psr_required_here) + (do_vfp_reg_from_ctrl, do_vfp_ctrl_from_reg, do_vfp_sp_ldst) + (do_vfp_dp_ldst, vfp_sp_reg_list, vfp_dp_reg_list, vfp_sp_ldstm) + (vfp_dp_ldstm, do_vfp_sp_ldstmia, do_vfp_sp_ldstmdb, do_vfp_ldstmia) + (do_vfp_dp_ldstmdb, do_vfp_xp_ldstmia, do_vfp_xp_ldstmdb) + (do_vfp_sp_compare_z, do_vfp_dp_compare_z, do_vfp_dp_sp_cvt) + (do_vfp_sp_dp_cvt): New functions. + (md_begin): Set soft-float flag for appropriate VFP work. + (md_atof): Handle VFP-format doubles. + (md_parse_option): Handle VFP command-line options. + (md_show_usage): Display VFP command-line options. + +2002-01-15 Richard Earnshaw <rearnsha@arm.com> + + * tc-arm.c (md_parse_option): Tidy up setting of cpu_variant for + various command line options. + +2002-01-15 Nick Clifton <nickc@cambridge.redhat.com> + + * config/tc-xstormy16.c: (xstormy16_fix_adjustable): Do not fix + vtinherit relocs. + (xstormy16_md_apply_fix3): Do not return a value. + +2002-01-14 Richard Earnshaw <rearnsha@arm.com> + + * tc-arm.c (md_longopts): On targets that aren't bi-endian, support + the -EL/-EB option that matches the target's endianness. + (md_parse_option): Likewise. + +2002-01-14 Richard Earnshaw <rearnsha@arm.com> + + * tc-arm.c (md_longopts): Fix misplaced #endif -- the -oabi option + is not dependent on ARM_BI_ENDIAN. + +2002-01-14 Richard Earnshaw <rearnsha@arm.com> + + * tc-arm.c (all error messages): Normalize capitalization of messages. + + * tc-arm.h (md_operand): Delete define. + * tc-arm.c (in_my_get_expression): New static variable. + (my_get_expression): Set and clear it. + (md_operand): New function. If called from my_get_expression + put the error in inst.error. + (output_inst): Now takes argument of instruction being assembled. + Print it out with any error message. + (do_ldst, do_ldstv4, thumb_load_store): Fault attempt to use a store + with '=' syntax. + (end_of_line): Don't update inst.error if it is already set. + +2002-01-11 Richard Earnshaw <rearnsha@arm.com> + + * tc-arm.c (do_ldst): Fix handling an immediate expression pseudo + op that can be translated into a mvn instruction. + +2002-01-11 Steve Ellcey <sje@cup.hp.com> + + * gas/config/tc-ia64.h (MD_FLAGS_DEFAULT): New Macro for + setting default md.flags. + (SHT_INIT_ARRAY): New elf special section used by HP-UX. + (SHT_FINI_ARRAY): New elf special section used by HP-UX. + * gas/config/tc-ia64.c (setup_unwind_header): Add support + for 32 bit unwind info blocks. + (generate_unwind_image): Add support for different types + of unwind images (32 bits and/or big-endian). + (ia64_init): Use MD_FLAGS_DEFAULT to set md.flags. + (ia64_target_format): Add support for hpux target formats. + (ia64_gen_real_reloc_type): Add support for FUNC_IPLT_RELOC. + (ia64_elf_section_type): Add support for SHT_INIT_ARRAY and + SHT_FINI_ARRAY elf section types. + +2002-01-10 Richard Earnshaw <rearnsha@arm.com> + + * tc-arm.c (struct reg_entry): Move before prototypes. + (int_register, cp_register, fp_register): Delete. + (reg_table): Delete. Replaced with ... + (rn_table, cp_table, cn_table, fn_table, mav_mvf_table) + (mav_mvd_table, mav_mvfx_table, mav_mvdx_table, mav_mvax_table) + (mav_dspsc_table): ... one table per register set. + (arm_reg_hsh): Delete. + (struct reg_map): New structure. + (all_reg_maps): New array. + (enum arm_reg_type): New enums. + (build_reg_hsh): New function. + (insert_reg_alias): Use hash table passed by caller. Adjust all + callers. + (create_register_alias): New function, split out from ... + (md_assemble): ... here. + (md_begin): Build new register hash tables. + (arm_reg_parse): New argument for the hash table to search. Adjust all + callers. + (arm_reg_parse_any): New function. + (co_proc_number): Look up the processor number in the processor hash + table. + (cirrus_regtype): Delete. + (cirrus_register, cirrus_mvf_register, cirrus_mvd_register) + (cirrus_mvfx_register, cirrus_mvdx_register, cirrus_mvax_register) + (ARM_EXT_MAVERICKsc_register): Delete. + (do_c_binops_1, do_c_binops_2, do_c_binops_3): Delete. + (do_c_binops_1[a-o], do_c_binops_2[a-c], do_c_binops_3[a-d]): New + functions. + (do_c_triple_4, do_c_triple_5): Delete. + (do_c_triple_4[ab], do_c_triple_5[a-h]): New functions. + (do_c_quad_6): Delete. + (do_c_quad_6[ab]): New functions. + (do_c_binops, do_c_triple, do_c_quad, do_c_shift, do_c_ldst): Rework + arguments to use new register parsing methods. + (cirrus_reg_required_here): Likewise. + (insns): Reclassify cirrus maverick worker functions. + (cirrus_valid_reg): Delete. + +2002-01-07 Jason Thorpe <thorpej@wasabisystems.com> + + * configure.in (sh*le): Set cpu_type=sh and endian=little. + (sh*-*-netbsdelf*): New target. + * configure: Regenerate. + * tc-sh.h: Update copyright years. + (TARGET_FORMAT): Add version for TE_NetBSD. + +2002-01-07 Nick Clifton <nickc@cambridge.redhat.com> + + * read.c (emit_expr): Do not allow 'size' or 'nbytes' to go + negative. + +2002-01-06 Alan Modra <amodra@bigpond.net.au> + + * config/tc-m68k.h (md_prepare_relax_scan): Rewrite. + * config/tc-m68k.c (md_relax_table): Add md_prepare_relax_scan comment. + +2002-01-05 Daniel Jacobowitz <drow@mvista.com> + + * tc-mips.c (mips_cprestore_valid): New flag. + (mips_frame_reg_valid): New flag. + (macro) [M_JAL_2]: Check both flags. + [M_JAL_A]: Likewise. + (s_cprestore): Set mips_cprestore_valid. + (tc_get_register): If setting mips_frame_reg, set + mips_frame_reg_valid and clear mips_cprestore_valid. + (s_mips_ent): Clear both flags. + (s_mips_end): Clear both flags. + +2002-01-05 Alan Modra <amodra@bigpond.net.au> + + * write.c (write_object_file): Make use of bfd_section_list_remove. + * config/obj-ecoff.c (ecoff_frob_file): Likewise. + * config/tc-mmix.c (mmix_frob_file): Likewise. + +2002-01-04 Jason Thorpe <thorpej@wasabisystems.com> + + * configure.in (i386-*-netbsdelf*): Collapse target into... + (i386-*-netbsd*): ...this. Add support for x86-64. + * configure: Regenerated. + +2002-01-03 matthew green <mrg@redhat.com> + + * config/tc-ppc.c (md_parse_option): BookE is not Motorola specific. + +2002-01-02 Nick Clifton <nickc@cambridge.redhat.com> + + * config/tc-m68k.c (md_estimate_size_before_relax): Test for a + NULL frag link. + +For older changes see ChangeLog-0001 + +Local Variables: +mode: change-log +left-margin: 8 +fill-column: 74 +version-control: never +End: |