blob: 4af21b452cf9798421da3f6fda3fd22e92c4e705 [file] [log] [blame]
2003-12-29 Paul Brook <>
* gas/config/tc-arm.c (arm_cpus): Add 926ejs and 1026ejs.
* gas/doc/c-arm.texi: Document them.
2003-23-12 Paul Brook <>
* config/tc-arm.c (arm_archs): Add armv6.
* doc/c-arm.texi: Document -march=armv6.
2003-12-20 Nick Clifton <>
* config/tc-ppc.c (md_apply_fix3): Handle the case where a
.byte directive generates a pc-relative relocation.
2003-12-19 Nick Clifton <>
Andreas Schwab <>
* 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
* 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 <>
Add m32r-linux and PIC support. Add new ABI that uses RELA.
* 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.
* doc/c-m32r.texi: Document -KPIC option.
* NEWS: Mention the support m32r Linux and PIC.
2003-12-18 Nick Clifton <>
* 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 <>
* 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 <>
* 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 <>
* config/tc-arm.c (arm_archs): Change "armv6" to "armv6j".
* doc/c-arm.texi (ARM Options): Likewise.
2003-12-17 Nick Clifton <>
* 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
* doc/c-m32r.texi: Update descriptions of the options.
2003-12-16 Dmitry Semyonov <>
* tc-arm.c (do_adr): Do not adjust pc by -8 if TE_WINCE is
(do_adrl): Likewise.
2003-12-15 Christian Groessler <>
* 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 <>
* config/obj-aout.c (obj_crawl_symbol_chain): Skip defined
symbols which resolve to symbolic values.
2003-12-13 Alan Modra <>
* 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 <>
* read.c: Remove unneeded prototypes.
(s_comm): Split out code to..
(s_comm_internal): 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
(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): 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 <>
* 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 <>
* config/tc-arm.c (FPU_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 <>
* config/tc-arm.c (do_umaal): Fix typo.
2003-12-06 Kazu Hirata <>
* dwarf2dbg.c: Convert to ISO-C.
* write.c: Likewise.
* write.h: Likewise.
2003-12-06 Richard Sandiford <>
* config/tc-mips.c (macro): Switch misordered call to frag_grow()
and setting of tc_fr_offset.
2003-12-05 Ricardo Anguiano <>
Mark Mitchell <>
Richard Earnshaw <>
Add V6 support.
* config/tc-arm.c (ARM_EXT_V6): New macro.
(ARM_ARCH_V6): 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 <>
* 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 <>
* config/tc-sh.c (md_show_usage): Fix compilation errors
introduced by the previous delta.
2003-12-03 Alexandre Oliva <>
* config/tc-sh.c: Add support for sh4a and no-fpu variants.
2003-12-05 Michael Snyder <>
* 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 <>
* config/tc-alpha.c (s_alpha_end): Don't crash if there is no
matching .ent.
2003-12-04 Alan Modra <>
* tc.h (md_pcrel_from): Don't declare if defined as a macro.
2003-12-03 Kazuhiro Inaoka <>
* 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 <>
* Likewise.
* configure: Regenerate.
* config/tc-vax.c (md_shortopts): Add 'Q'.
(md_parse_option): Ignore 'Q' for now.
2003-12-02 Kazu Hirata <>
* 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 <>
* config/obj-elf.c: Remove ARGSUSED.
2003-12-02 Alan Modra <>
* Run "make dep-am".
* Regenerate.
2003-11-30 Kazu Hirata <>
* symbols.c: Convert to ISO-C.
* symbols.h: Likewise.
2003-11-28 Christian Groessler <>
* config/tc-z8k.c: Convert to ISO-C.
* config/tc-z8k.h: Likewise.
2003-11-27 Kazu Hirata <>
* read.c: Convert to ISO-C.
* read.h: Likewise.
2003-11-27 Nick Clifton <>
* 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 <>
* config/tc-frv.c (md_pcrel_from_section): Don't adjust when
referencing symbol in a different section.
2003-11-26 Christian Groessler <>
* config/tc-z8k.c (s_segm): Fix indentation.
(md_apply_fix3): Likewise.
(cc_names): Add alias names for the names generated by the
(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
2003-11-26 Nick Clifton <>
* config/tc-h8300.c (get_operand): Allow er4-er7 for ldm/stm
instructions on the H8SX.
2003-11-25 Kazu Hirata <>
* config/tc-h8300.c (h8_exp): Remove.
2003-11-25 Asgari Jinia <>
* config/tc-h8300.c (md_assemble): Check operands validity for
(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 <>
* listing.c: Convert to ISO-C.
* listing.h: Likewise.
* macro.c: Likewise.
* macro.h: Likewise.
2003-11-24 Jakub Jelinek <>
* 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 <>
* 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 <>
* config/tc-h8300.c (Hmode): Make it global.
(Smode): Likewise.
(Nmode): Likewise.
(SXmode): Likewise.
2003-11-22 Kazu Hirata <>
* 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 <>
* 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 <>
* ecoff.c: Convert to ISO-C.
* ecoff.h: Likewise.
2003-11-22 Alan Modra <>
* config/tc-ppc.c (parse_cpu): New function, broken out from..
(ppc_setup_opcodes): New function, broken out from..
(ppc_machine): Implement .machine pseudo op.
2003-11-20 Kazu Hirata <>
* depend.c: Convert to ISO-C.
* dwarf2dbg.c: Likewise.
* dwarf2dbg.h: Likewise.
2003-11-20 Kazu Hirata <>
* 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 <>
* config/tc-sh64.c (shmedia_frob_section): Only frob elf32
2003-11-19 Kazu Hirata <>
* config/tc-h8300.c: Make some functions and global
variables static appropriately.
2003-11-19 Kazu Hirata <>
* config/obj-ieee.c: Remove duplicate prototypes.
* config/tc-h8300.c: Likewise.
2003-11-19 Kazu Hirata <>
* config/tc-h8300.c: Convert to ISO-C.
* config/tc-h8300.h: Likewise.
2003-11-19 Kazu Hirata <>
* config/tc-mcore.h: Remove prototypes already in tc.h.
* config/tc-tic4x.c: Likewise.
2003-11-19 Kazu Hirata <>
* 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 <>
* config/tc-xtensa.c (xg_emit_insn): Include "dwarf2dbg.h" and add
call to dwarf2_emit_insn.
2003-11-18 Maciej W. Rozycki <>
* 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 <>
* config/tc-mips.c: Formatting fixes.
2003-11-14 Ben Elliston <>
* config/tc-arm.c (arm_elf_change_section): Not static.
2003-11-13 Nick Clifton <>
* 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 <>
* (install, install-info, RECURSIVE_TARGETS): Define.
* doc/ (install-info): Define.
* aclocal.m4: Regenerate.
* Regenerate.
* doc/ Regenerate.
2003-11-11 Dmitry Semyonov <>
* Add support for arm-wince-pe target.
* configure: Regenerate.
2003-11-11 Jan Hubicka <>
* config/tc-i386.c (tc_i386_fix_adjustable):
2003-11-10 Alan Modra <>
* config/tc-ia64.c (ia64_handle_align): Remove bogus be_nop.
2003-11-10 Alan Modra <>
* README: Update bug report address. Move bug reporting info to
2003-11-07 Christian Groessler <>
* 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 <>
* input-file.c (input_file_open): Use "No such file" error
2003-11-06 Pete Gonzalez <>
* 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 <>
* config/obj-vms.c: Fix "the the" typo.
* doc/c-arm.texi: Likewise.
2003-11-06 Nick Clifton <>
* config/obj-vms.c: Convert to ISO-C.
2003-11-05 Alan Modra <>
* config/tc-ppc.h (TC_FORCE_RELOCATION): Only define for ELF and XCOFF.
2003-10-31 Christian Groessler <>
* config/tc-i860.c (md_pcrel_from): Fix typo in comment.
2003-10-29 Phil Edwards <>
* (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 <>
* 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 <>
* config/tc-m68hc11.c: Convert to ISO C90.
* config/tc-m68hc11.h: Likewise.
2003-10-26 Kazu Hirata <>
* doc/c-sh64.texi: Fix a typo.
2003-10-26 Kazu Hirata <>
* 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 <>
* config/obj-elf.c (obj_elf_change_section): Allow SHF_ALLOC
for .interp, .strtab and .symtab. Use specified section
2003-10-22 Andreas Schwab <>
H.J. Lu <>
Jim Wilson <>
* 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 <>
* 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 <>
Bernardo Innocenti <>
* 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 <>
* 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 <>
Generate BFD_RELOC_MMIX_PUSHJ_STUBBABLE for PUSHJ when possible.
* doc/c-mmix.texi (MMIX-Opts): Document --no-pushj-stubs and
* config/tc-mmix.c: Include limits.h. Expand on mmix_relax_table
(expand_op, mmix_next_semicolon_is_eoln): Fix head comment.
(pushj_stubs): New variable.
(PUSHJSTUB_MAX): New macros.
(md_longopts): New options "--no-pushj-stubs" and synonym
(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 <>
Bernardo Innocenti <>
* 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 <>
* 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 <>
* config/tc-arm.c (do_iwmmxt_byte_addr): Reject control
(do_iwmmxt_word_addr): With a control register, reject conditional
execution and reject a non-word size.
2003-10-16 Peter Bergner <>
* Set em=linux for ppc-*-linux-gnu* target.
* configure: Regenerate.
2003-10-15 Alan Modra <>
* doc/as.texinfo (Align): Correct list of byte targets.
2003-10-15 Thiemo Seufer <>
* config/tc-mips.c (macro_build_ldst_constoffset,load_register,macro):
Fix indentation. Better error message.
2003-10-14 Bob Wilson <>
* 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 <>
* config/tc-sh.h (sh_coff_reloc_mangle): Delete an extra
2003-10-11 Kaz Kojima <>
* 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 <>
* 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 <>
* 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 <>
* as.c (use_gnu_debug_info_extensions) : New variable.
(parse_args) : Accept new --gstabs+ option, and set
(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 <>
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.
2003-10-06 Robert Millan <>
* Match GNU/KNetBSD with new knetbsd*-gnu triplet.
* configure: Regenerate.
2003-10-05 Nick Clifton <>
* 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 <>
* 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
2003-10-04 Nick Clifton <>
* as.c: Convert to ISO C90.
2003-10-04 Nick Clifton <>
* 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 <>
* config/obj-coff.c (obj_coff_section [BEF_ASSEMBLER]):
Make 'r' mean readonly data.
2003-10-01 Thiemo Seufer <>
* config/tc-mips.c (macro_build_ldst_constoffset,load_register,macro):
Unbreak overflow checks.
2003-10-01 Chris Demetriou <>
* config/tc-mips.c (s_cpreturn): Correct errors in comment.
2003-10-01 Thiemo Seufer <>
* config/tc-mips.c (macro_build_ldst_constoffset): Fix sign extension
(load_register): Likewise.
(macro): Likewise.
2003-09-30 Chris Demetriou <>
* 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 <>
* NEWS: Mention support for MIPS64 Release 2.
2003-09-30 Chris Demetriou <>
* NEWS: Add an indication of the cutoff for 2.14.
2003-09-30 Chris Demetriou <>
* (mipsisa64r2, mipsisa64r2el, mipsisa64r2*): New CPUs.
* configure: Regenerate.
* config/tc-mips.c (imm2_expr): New variable.
(md_assemble, mips16_ip): Initialize imm2_expr.
(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 <>
* config/tc-hppa.c (pa_ip): Check for invalid 64-bit conditions.
2003-09-26 Matt Thomas <>
* 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 <>
* 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
2003-09-18 Thiemo Seufer <>
* 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 <>
* config/tc-msp430.c (MAX_OP_LEN): Set to 256.
(msp430_operands): Remove redundant l2[16] within switch-case.
2003-09-16 Ralf Corsepius <>
* Handle arm-*-rtems* and thumb-*rtems*.
* configure: Regenerate.
2003-09-14 Thiemo Seufer <>
* 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
(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 <>
* 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 <>
* 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_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 <>
* 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 <>
* doc/as.texinfo (Comments): Comment character for PPC is #.
2003-09-06 Stephane Carrez <>
PR savannah/4358:
* config/tc-m68hc11.c (s_m68hc11_relax): Use 2 for size to avoid
overflow complain.
2003-09-05 Richard Sandiford <>
* config/tc-frv.c (md_pcrel_from_section): Heed TC_FORCE_RELOCATION.
2003-09-04 Nick Clifton <>
* 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 <>
* 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 <>
* Match GNU/KFreeBSD with new kfreebsd*-gnu
* configure: Regenerate.
2003-09-02 Daniel Jacobowitz <>
* Update AC_PREREQ to 2.57. Use AC_CONFIG_FILES
and AC_CONFIG_COMMANDS instead of the three-argument AC_OUTPUT.
* aclocal.m4: Regenerated with aclocal-1.7.
* configure: Regenerated with autoconf 2.57.
*, doc/ Regenerated with automake-1.7.
2003-08-29 Jakub Jelinek <>
* 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.
* 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 <>
* doc/c-i860.texi: Update text about relocatable address expansions.
2003-08-24 Jason Eckhardt <>
* config/tc-i860.c (md_assemble): Use isrc2 from the original
instruction when expanding E_ADDR.
2003-08-21 Nick Clifton <>
* po/tr.po: Updated Turkish translation.
2003-08-20 Alan Modra <>
* 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 <>
* config/tc-arm.c (cp_address_required_here): Add code to handle
unindexed addressing mode.
2003-08-19 Alan Modra <>
* 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 <>
* read.c (s_print): Check for NULL.
2003-08-16 Alan Modra <>
* 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 <>
* config/tc-i386.h: Remove BFD_ASSEMBLER tests and all !BFD_ASSEMBLER
* config/tc-i386.c: Likewise.
(RELOC_ENUM): Don't define. Replace throughout with enum.
* dep-in.sed: Remove libintl.h. Ignore include/fopen-*.h
* ( Unset LC_COLLATE.
Run "make dep-am".
* Regenerate.
2003-08-08 Andreas Schwab <>
* config/tc-m68k.h (TARGET_USE_CFIPOP)
(tc_regname_to_dw2regnum, tc_cfi_frame_initial_instructions):
* config/tc-m68k.c: Include "dw2gencfi.h".
(tc_m68k_frame_initial_instructions): New functions.
2003-08-08 Dmitry Diky <>
* config/tc-msp430.c: Add xW42 and xE42 parts. Sort MPU list
according to gcc order.
2003-08-07 Jason Eckhardt <>
* 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 <>
* 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 <>
* 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 <>
* config/tc-i860.c (i860_process_insn): Check that instructions
with their dual-bit set are 8-byte aligned.
2003-08-06 Nick Clifton <>
* po/fr.po: Updated French translation.
2003-08-05 Jason Eckhardt <>
* 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 <>
* doc/c-i860.texi: Mention that .dual, .enddual, and .atmp
directives are only available in Intel syntax mode.
2003-08-05 Jason Eckhardt <>
* 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 <>
* 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 <>
* 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 <>
* config/tc-msp430.c (msp430_srcoperand): Extend 'push' bug workaround
to all arches.
2003-07-30 J"orn Rennecke <>
* config/tc-sh.c (md_assemble): For branches, check & update
valid_arch here.
2003-07-30 Jason Eckhardt <>
* 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 <>
* config/obj-elf.c (obj_elf_change_section): Allow "x" for .note*.
2003-07-29 Alan Modra <>
* config/tc-sh.c (tc_gen_reloc): Test for R_SH_IND12W only when ELF.
2003-07-29 Jakub Jelinek <>
* config/tc-ppc.c (md_apply_fix3): Fix check for lq insns.
2003-07-28 H.J. Lu <>
* 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 <>
* config/obj-elf.c (obj_elf_change_section): Update
elf_section_type and elf_section_flags only when they are
2003-07-25 H.J. Lu <>
* config/obj-elf.c (obj_elf_change_section): Always set section
type and flags.
2003-07-25 H.J. Lu <>
* 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 <>
* 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 <>
* po/fr.po: Updated French translation.
2003-07-23 Daniel Jacobowitz <>
* config/tc-arm.c (arm_archs): Add iwmmxt.
2003-07-22 H.J. Lu <>
* read.c (do_parse_cons_expression): Mark nbytes unused to
silence gcc.
2003-07-22 Alexandre Oliva <>
* 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 <>
* po/es.po: New Spanish translation.
* po/tr.po: New Turkish translation.
* po/opcodes.pot: Regenerate.
2003-07-16 Alan Modra <>
* 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 <>
* 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 <>
* config/tc-v850.c (md_assemble): When no reloc, create pcrel fixups
only for V850_OPERAND_DISP operands.
2003-07-15 Alan Modra <>
* frags.c (frag_more): Move segment checks to..
(frag_alloc_check): New function.
(frag_append_1_char): Call frag_alloc_check.
2003-07-14 Nick Clifton <>
* po/tr.po: Update with latest version.
* po/ Regenerate.
* po/gas.pot: Regenerate.
* configure: Regenerate.
2003-07-14 Nick Clifton <>
* 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.
* Update dependencies.
* Regenerate.
2003-07-11 Alan Modra <>
* po/gas.pot: Regenerate.
2003-07-10 Jakub Jelinek <>
* 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,
(ppc_cfi_frame_initial_instructions, tc_ppc_regname_to_dw2regnum): New
(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
* 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,
(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 <>
2002-12-12 Alexandre Oliva <>
* config/tc-mn10300.h (EXTERN_FORCE_RELOC): Don't define to zero.
2001-05-09 Alexandre Oliva <>
* (am33_2.0, mn10300-*-linux*): Added.
* configure: Rebuilt.
* config/tc-mn10300.h (TARGET_FORMAT) [TE_LINUX]: Define to
* config/tc-mn10300.c (md_begin) [TE_LINUX]: Choose AM33/2.0
by default.
2003-07-09 Alexandre Oliva <>
2003-02-25 Alexandre Oliva <>
* config/tc-mn10300.c (mn10300_check_fixup): Set GOT_PCREL type
for subtracts from GLOBAL_OFFSET_TABLE that could not be
2002-07-18 Alexandre Oliva <>
* 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 <>
* config/tc-mn10300.h (TC_RELOC_RTSYM_LOC_FIXUP): Don't adjust
* 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 <>
* config/tc-mn10300.c (mn10300_parse_name): Don't return a
symbol if we know its value.
2001-05-09 Alexandre Oliva <>
* config/tc-mn10300.h (GLOBAL_OFFSET_TABLE_NAME): Remove
duplicate underscore prefix.
2001-05-09 Alexandre Oliva <>
* 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 <>
* 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,
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 <>
2000-05-25 Alexandre Oliva <>
* config/tc-mn10300.c (mn10300_insert_operand): Negate negative
accumulator's shift.
2000-05-08 Alexandre Oliva <>
* config/tc-mn10300.c (md_relax_table, md_convert_frag,
md_assemble, md_estimate_size_before_relax): Handle fbCC.
2000-04-20 Alexandre Oliva <>
* config/tc-mn10300.c (HAVE_AM33): Redefine in terms of
2000-04-03 Alexandre Oliva <>
* 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 <>
* 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 <>
* 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 <>
* doc/c-m32r.texi (M32R-Directives): New node. Document the
.high, .shigh and .low directives.
2003-07-07 Richard Sandiford <>
* 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 <>
* 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 <>
* 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 <>
* config/tc-mips.c (s_mipsset): Implement -march= handling
2003-06-30 Thiemo Seufer <>
* 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 <>
* config/tc-ia64.c (note_register_values): Warning fix.
* config/tc-mips.c (append_insn): Likewise.
2003-06-29 Thiemo Seufer <>
* 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 <>
* config/tc-i386.c (md_assemble): Declare "exp" before "if".
2003-06-25 Richard Sandiford <>
* config/tc-h8300.c (get_specific): Allow ':8' to be used for
unsigned 8-bit operands.
2003-06-24 Nick Clifton <>
* 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 <>
* config/tc-ppc.c (ppc_cleanup): Use bytes to count APUinfo slots.
2003-06-23 H.J. Lu <>
* gas/config/tc-i386.c (md_assemble): Support Intel Precott New
* gas/config/tc-i386.h (CpuPNI): New.
(CpuUnknownFlags): Add CpuPNI.
2003-06-23 <>
* config/tc-ia64.c (pseudo_func): Add ABI constants for linux,
freebsd, openvms, and nsk (non-stop kernel).
2003-06-22 Jason Thorpe <>
* config/tc-ns32k.c (md_begin): Initialize inst_hash_table after
all locals have been declared.
2003-06-21 Thiemo Seufer <>
* config/tc-mips.c (ADDRESS_ADD_INSN,ADDRESS_ADDI_INSN): Remove
special handling for n32 ABI.
(macro): Likewise.
2003-06-19 Thiemo Seufer <>
* config/tc-mips.c (s_cpsetup,s_cprestore,s_cpreturn): Revert
2003-06-11 change.
2003-06-19 Christian Groessler <>
* config/tc-z8k.c (parse_reg): Invalid registers generate an error
now, not only a warning. Add some more checks to detect invalid
(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 <>
* 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 <>
* 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 <>
* config/tc-s390.c (init_default_arch): Make current_mode_mask
dependent on s390_arch_size and current_cpu dependent on
2003-06-18 Svein E. Seldal <>
* Add c4x as an architecture variant to tic4x.
* configure: Regenerate.
* Regenerate.
* doc/ Regenerate.
2003-06-18 Alan Modra <>
* config/tc-ppc.c (ppc_elf_suffix): Don't remove symbols other than
".TOC." from PPC64_TOC relocs.
2003-06-17 Alan Modra <>
* config/tc-ppc.c (md_apply_fix3): Allow BRTAKEN, BRNTAKEN relocs.
2003-06-16 Thiemo Seufer <>
s_cprestore,s_cpadd): Use them.
2003-06-16 Hans-Peter Nilsson <>
* Add specific case for cris-*-linux-gnu* with
* 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
(symbols_have_leading_underscore): Similar.
* config/tc-cris.h (LOCAL_LABELS_DOLLAR): Define to 1.
2003-06-13 Richard Earnshaw <>
* 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,
(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 <>
* Add i386-netbsd-gnu target.
* configure: Regenerate.
2003-06-12 Tom Tromey <>
* doc/as.texinfo (Comm): Added @node. Moved before CFI
directives node.
2003-06-12 Richard Sandiford <>
* config/tc-mips.c (append_insn): In a compound relocation, take the
field width from the final (outermost) operator.
2003-06-11 Richard Henderson <>
* 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 <>
* config/tc-mips.c (s_cpsetup): Use mips_frame_reg instead of SP.
(s_cprestore): Likewise.
(s_cpreturn): Likewise.
2003-06-11 Thiemo Seufer <>
* config/tc-mips.c (tc_gen_reloc): Initialize retval amd reloc
with zeros.
2003-06-11 Thiemo Seufer <>
* 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 <>
* write.c (write_relocs): Use xcalloc. Fix relocs initialization
2003-06-11 Alan Modra <>
* 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 <>
* po/Make-in (DESTDIR): New.
(install-data-yes): Support $(DESTDIR).
(uninstall): Likewise.
2003-06-11 Alan Modra <>
* Run "make dep-am".
* Regenerate.
* po/ Regenerate.
2003-06-10 Doug Evans <>
* cgen.c (gas_cgen_finish_insn): CGEN_INSN_RELAX renamed to
* 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 <>
Gary Hade <>
* config/tc-ppc.c (md_assemble): Handle PPC_OPERAND_DQ.
(md_apply_fix3): Special case lq insn.
2003-06-10 Richard Sandiford <>
* config/tc-h8300.c (get_rtsl_operands): Accept unbracketed register
lists. Allow single-register ranges.
2003-06-10 Richard Sandiford <>
* config/tc-h8300.c (h8300sxnmode): New.
(md_pseudo_table): Add .h8300sxn entry.
2003-06-09 H.J. Lu <>
* 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 <>
* 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 <>
* app.c (do_scrub_chars): Add states 14 and 15 to handle
predicate for ia64.
2003-06-05 Michael Snyder <>
* config/tc-h8sx.c (get_specific): Distinguish h8h from h8s ops.
(build_bytes): Ditto.
2003-06-05 Richard Sandiford <>
* 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 <>
* 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 <>
* dw2gencfi.c (output_cfi_insn): Fix typo for negative offsets.
* dw2gencfi.c (cfi_finish): Set .eh_frame read-only.
2003-06-04 Richard Henderson <>
* 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 <>
* 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 <>
* config/tc-mips.c: (OPTION_ARCH_BASE, OPTION_ASE_BASE)
(OPTION_MISC_BASE): New defines.
(OPTION_TRAP): Redefine in terms of new defines.
(md_longopts): Reorder entries.
2003-05-14 Michael Snyder <>
From Bernd Schmidt <>
and Michael Snyder <>
and Alexandre Oliva <>
* config/tc-h8300.c: Add insns and addressing modes for h8300sx.
* config/tc-h8300.h: Ditto.
2003-06-03 Nick Clifton <>
* 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 <>
* read.c (emit_expr): Set dot_value.
* dw2gencfi.c (output_fde): Remove pcrel reloc hack.
2003-06-02 Alan Modra <>
* macro.c (sub_actual): Don't lose string if it turns out that
&string wasn't an arg.
2003-05-31 Richard Henderson <>
* 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 <>
* 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.
2003-05-29 Nick Clifton <>
* Add i386-*-freebsd* entry.
* configure: Regenerate.
2003-05-29 Kazuhiro Inaoka <>
* config/tc-m32r.c: Amend comment to refer to Renesas
2003-05-27 Richard Henderson <>
* 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 <>
* 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.
2003-05-27 Richard Henderson <>
* 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 <>
* 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 <>
* config/tc-mips.c (macro_build_jalr): Warning patrol.
2003-05-22 Thiemo Seufer <>
* 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 <>
* config/tc-mips.c (macro): Don't use uninitialized tempreg.
2003-05-22 Nick Clifton <>
* 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
2003-05-07 Eric Christopher <>
* 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 <>
* tc-hppa.c (hppa_symbol_chars): Remove `,' and `!'.
2003-05-21 Nick Clifton <>
* 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
* config/tc-ip2k.c: Likewise.
* config/tc-iq2000.c: Likewise.
* config/tc-xstormy16.c: Likewise.
* config/tc-xtensa.c: Likewise.
* Regenerate dependencies.
* Regenerate.
* aclocal.m4: Regenerate.
* Regenerate.
* configure: Regenerate.
* po/ Regenerate.
* po/gas.pot: Regenerate.
2003-05-21 Nick Clifton <>
* dw2gencfi.c (cfi_get_label): Use symbol_make for non
(cfi_startproc): Change type of saved_seg and cfi_seg to segT.
(dot_cfi_endproc): Only call bfd_set_section_flags for targets
2003-05-20 Michal Ludvig <>
* 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.
2003-05-20 Nick Clifton <>
* config/tc-xstormy16.c: Include dwarf2dbg.h.
(md_pseudo_table): Add entries for .loc and .line.
2003-05-20 Alan Modra <>
* dw2gencfi.c (cfi_parse_arg): Only use tc_regname_to_dw2regnum if
(dot_cfi_endproc): Avoid C99 construct.
2003-05-20 Michal Ludvig <>
* 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.
* Add dw2gencfi.[ch] files. Run "make dep-am".
* Regenerate.
* doc/as.texinfo: Added node "CFI directives" with description of
all implemented .cfi_* directives.
* doc/ Regenerate.
* po/ Regenerate.
2003-05-19 Svein E. Seldal <>
* config/tc-tic4x.c (md_assemble): Added support for one-line parallel
* config/tc-tic4x.h: Added DOUBLEBAR_PARALLEL definition
2003-05-18 Jason Eckhardt <>
* config/tc-i860.c (i860_process_insn): Initialize fc after
each opcode mismatch.
2003-05-16 Kelley Cook <>
* Accept i[3-7]86 variants.
* configure: Regenerate.
2003-05-15 Thiemo Seufer <>
* config/tc-mips.h: Fix comment formatting.
2003-05-13 Hans-Peter Nilsson <>
* 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 <>
* 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 <>
* 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 <>
* config/tc-s390.c (s390_target_format): Always call init_default_arch.
2003-05-07 H.J. Lu <>
* 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 <>
* tc-msp430.c: Add missing lines to known cpus list.
2003-05-06 Alexandre Oliva <>
* config/tc-mips.c (mips_after_parse_args): Set mips_abi to it.
*, configure: Rebuilt.
2003-05-05 H.J. Lu <>
* config/tc-mips.c (tc_gen_reloc): Add addend just once if
howto->partial_inplace is false.
2003-05-05 Daniel Jacobowitz <>
* 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 <>
* 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 <>
* read.h (demand_copy_string): New.
* config/tc-alpha.c (demand_copy_string): Removed.
2003-05-02 Michael Snyder <>
* write.h (FAKE_LABEL_NAME): Allow override
(for targets that like eg. a leading dot in a local label).
2003-05-02 Nick Clifton <>
* 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 <>
* config/obj-elf.c (obj_elf_type): Accept "notype" and
2003-05-01 H.J. Lu <>
* 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 <>
* 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 <>
* 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 <>
* 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
(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 <>
* 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.
2003-04-30 H.J. Lu <>
* 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 <>
* config/tc-ia64.c (stmt_float_cons): Fix alignment for real10
and add real16.
(md_pseudo_table): Add "xreal16", "", "real16" and
(md_atof): Add 6 byte padding of zero for real16.
2003-04-29 Nick Clifton <>
* config/obj-elf.c (obj_elf_symver): Skip whitespace before the
start of a version name.
2003-04-28 Chris Demetriou <>
* (mips-*-*n*bsd*): Replace with...
(mips-*-netbsd*, mips-*-openbsd*): These.
* configure: Regenerate.
2003-04-28 H.J. Lu <>
* config/tc-hppa.c (hppa_symbol_chars): New.
* config/tc-hppa.h (tc_symbol_chars): Likewise.
2003-04-26 Thiemo Seufer <>
* config/tc-mips.h (TC_FORCE_RELOCATION_SUB_SAME): Define again.
2003-04-25 Chris Demetriou <>
* NEWS: Belatedly mention support for MIPS32 Release 2.
2003-04-24 Eric Christopher <>
* config/tc-mips.c (nopic_need_relax): Revert previous
2003-04-24 Dhananjay Deshpande <>
* 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.
* Add dependency on dwarf2dbg.h for h8300 targets.
* Regenerate.
2003-04-24 Dhananjay Deshpande <>
* 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 <>
* config/tc-ppc.c (ppc_symbol_chars): Define.
* config/tc-ppc.h (tc_symbol_chars): Define.
2003-04-23 J"orn Rennecke <>
* 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 <>
* app.c (do_scrub_chars): More checks for valid labels.
2003-04-22 H.J. Lu <>
* app.c (do_scrub_chars): Check for valid label.
2003-04-22 Kazuhiro Inaoka <>
* doc/as.texinfo: Replace references to Mitsubishi M32R with
references to Renesas M32R.
* doc/c-m32r.texi: Likewise.
2003-04-21 Richard Henderson <>
* 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 <>
* ehopt.c (check_eh_frame): For aug_size == 0
in state_seeing_aug_size state skip the state_skipping_aug
2003-04-15 Rohit Kumar Srivastava <>
* doc/c-h8300.texi: Replace occurrances of 'Hitachi' with
* 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 <>
* 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
(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
(tc_gen_reloc): Adjust variant frags with GOT_DISP in NewABI.
Add tc_frag_data.tc_fr_offset to addends. Decay CALL16,
(md_convert_frag): Use memmove for safe copying of overlapping
2003-04-09 Stephane Carrez <>
* 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 <>
* config/tc-mips.c (macro): Add comments explaining the rationale
for Chris' change.
2003-04-09 Chris Demetriou <>
* 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 <>
* config/tc-ppc.c (md_apply_fix3): Generate ADDR16 relocs.
2003-04-08 Nick Clifton <>
* as.c (perform_an_assembly_pass): If using cgen, call
* 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 <>
* write.c (write_relocs): Remove unused variable.
2003-04-06 Chris Demetriou <>
* 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 <>
* 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
(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 <>
* 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
* config/tc-tic4x.h: Ditto
2003-04-03 Nick Clifton <>
* NEWS: Mention support for Xtensa architecture.
2003-04-02 Philip Blundell <>
* config/tc-arm.c (arm_force_relocation): Return 0 for OFFSET_IMM.
2003-04-02 Chris Demetriou <>
* 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 <>
* (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".
* Regenerate.
* 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/ (CPU_DOCS): Add c-xtensa.texi.
* doc/ 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 <>
Richard Earnshaw <>
* 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 <>
* config/tc-mips.c (nopic_need_relax): Check for S_IS_EXTERN.
2003-03-25 Stan Cox <>
Nick Clifton <>
Contribute support for Intel's iWMMXt chip - an ARM variant:
(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 <>
* 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 <>
* config/tc-ia64.c (generate_unwind_image): Fix type of unw_rec to
avoid aliasing issue.
2003-03-21 Martin Schwidefsky <>
* 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
2003-03-09 James E Wilson <>
* 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 <>
* 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 <>
* Reverted 2003-03-02's patch.
2003-03-11 Steve Ellcey <>
* 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 <>
* config/tc-mips.c (s_mips_end): Remove !BFD_ASSEMBLER case.
(s_mips_ent): Likewise.
2003-03-04 Dmitry Diky <>
* 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 <>
* 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 <>
* 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 <>
* NEWS: Mention availability of test generator program.
2003-02-21 Miles Bader <>
* 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 <>
* 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 <>
* 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 <>
* cgen.c: Fix typo: intial -> initial.
2003-02-19 Jie Zhang <>
* app.c (do_scrub_chars): Handle '||' in two states.
2003-02-13 Alan Modra <>
* 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 <>
* Add support for kaOS as cross build target system.
* configure: Regenerated.
2003-02-10 Nick Clifton <>
* 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 <>
* 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...
(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 <>
* config/tc-mips.c (my_getSmallExpression): Rework bracket handling.
2003-02-06 Alan Modra <>
* config/tc-ppc.c (ppc_elf_suffix): Undo part of last change so that
x@toc+off works.
2003-02-05 Alan Modra <>
* 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 <>
* 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 <>
* 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]
(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 <>
* config/tc-i386.c (line_comment_chars): Add '#'. This makes the
assembler's handling of # <linenum> "<filename>" directives work.
2003-01-28 Jakub Jelinek <>
* 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 <>
* config/tc-msp430.c: Replace occurences of 'tolower' with
2003-01-27 David Mosberger <>
* config/tc-ia64.c (dot_vframesp): Correct error message.
(dot_vframepsp): Ditto.
2003-01-27 Alexandre Oliva <>
* (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 <>
* config/tc-s390.c (s390_elf_cons): Avoid designated initializers.
2003-01-25 Jakub Jelinek <>
* 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
* config/obj-elf.c (obj_elf_section_word): Handle tls.
(obj_elf_type): Handle tls_object.
2003-01-24 Martin Schwidefsky <>
* 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 <>
* 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.
2003-01-23 Nick Clifton <>
* NEWS: Announce sh2e support.
Add sh2e support:
2002-04-02 Alexandre Oliva <>
* config/tc-sh.c (md_show_usage): Added sh2e next to sh3e.
(sh_elf_final_processing): Handle arch_sh2e.
2003-01-23 Alan Modra <>
* 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.
(adjust_reloc_syms): Adjust S_FORCE_RELOC call.
* as.h (generic_force_reloc): Declare.
* doc/internals.texi (S_FORCE_RELOC): Update.
* config/tc-alpha.c (alpha_force_relocation): Adjust to use
(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.
* 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
* 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
* config/tc-sh64.h (TC_FORCE_RELOCATION_SUB_SAME): Likewise.
2003-01-23 Alan Modra <>
* config/tc-sh64.c (shmedia_frob_section_type): Adjust for changed
* config/tc-sh64.h: Include elf32-sh64.h.
* config/tc-m68hc11.c: Don't include stdio.h.
(md_show_usage): Fix missing continuation.
* Run "make dep-am".
* Regenerate.
2003-01-22 Nick Clifton <>
* as.h: Include fopen-bin.h not fopen-same.h for mingw32 hosts.
2003-01-21 Fabio Alemagna <>
* Handle *-*-aros*.
* configure: Regenerated from
2003-01-20 Martin Schwidefsky <>
* 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 <>
* config/tc-s390.c (md_apply_fix3): Emit error message for relocations
with a subsy symbol.
2003-01-17 Stephane Carrez <>
* config/tc-m68hc11.c (tc_m68hc11_fix_adjustable): Prevent adjustment
of relocs for memory bank addressing.
2003-01-17 Stephane Carrez <>
* 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
* doc/as.texinfo (Overview): Document new option -m68hcs12.
2003-01-16 Jakub Jelinek <>
* config/tc-ia64.c (ia64_cons_fix_new): Handle @dtprel() in data.
2003-01-16 Alan Modra <>
* Run "make dep-am".
* Regenerate.
* po/ Regenerate.
2003-01-11 Alan Modra <>
* read.c (get_absolute_expr): New, split out from..
* 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 <>
* 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 <>
* 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 <>
* 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 <>
* doc/ (as.1): Depend on "asconfig.texi gasver.texi
* doc/ Regenerate.
2003-01-01 John David Anglin <>
* 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 <>
* 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 <>
* 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"
(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 <>
* Add msp430 target.
* configure: Regenerate.
* Add msp430 target.
* Regenerate.
* config/tc-msp430.c: New file: msp430 assembler.
* config/tc-msp430.h: New file: target macros for msp430.
* doc/ Add msp430 target.
* doc/ 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 <>
* 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 <>
* config/tc-xstormy16.c (md_cgen_lookup_reloc): Support
2002-12-19 Alan Modra <>
* doc/as.texinfo (Invoking): Typo fix.
* config/tc-tic54x.c (encode_operand): Comment typo fix.
2002-12-18 Kazu Hirata <>
* 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 <>
* 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 <>
* as.c (std_longopts): Duplicate --keep-locals entry in order to
prevent it being confused with -k.
2002-12-16 Andrew MacLeod <>
* config/tc-xstormy16.c (md_cgen_lookup_reloc): If a relocation
has already been set up, use it.
2002-12-16 Kazu Hirata <>
* 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.
2002-12-16 Alan Modra <>
* 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 <>
* 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 <>
* 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 <>
* tc-mips.c (RELAX_BRANCH_ENCODE): Remove reloc_s2 argument.
Adjust callers.
(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
(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 <>,
Alan Modra <>
* config/tc-mn10300.h (TC_VALIDATE_FIX_SUB): Define.
(TC_LINKRELAX_FIXUP): Add comments.
2002-12-12 Alexandre Oliva <>
* 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 <>
* config/tc-ia64.c (md_apply_fix3): Remove the PCREL hack
copied from tc-i386.c.
2002-12-08 Stephane Carrez <>
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 <>
* subsegs.c (section_symbol): Use the symbol, not the section, name.
2002-12-05 Richard Henderson <>
* 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 <>
* 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
* config/tc-arm.h (TC_FORCE_RELOCATION): Define for both ELF and
COFF to call arm_force_relocation.
2002-12-04 David Mosberger <>
* config/tc-ia64.c (pseudo_func): Add "@pause" constant for "hint"
(emit_one_bundle): Handle "hint" instruction.
(operand_match): Match IA64_OPND_AR_CSD.
2002-12-04 Alan Modra <>
* dwarf2dbg.c (scale_addr_delta): Correct parameter. Move prototype
inside #if.
2002-12-03 Nick Clifton <>
* config/tc-ppc.c (ppc_cleanup): Do not set SEC_MERGE flag on
.PPC.EMB.apuinfo sections.
2002-12-03 Richard Henderson <>
* config/tc-ia64.c (operand_match): Add IA64_OPND_LDXMOV case.
2002-12-03 Alan Modra <>
* 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
(get_operands): Prototype. Constify "struct opinfo *" arg. Fix
parse_exp call.
(get_specific): Prototype. Constify "struct opinfo *" arg and return
(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
(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/ Regenerate.
* config/tc-arm.c (arm_force_relocation): Return 0 for ARM_IMMEDIATE
2002-12-02 Nick Clifton <>
* gasp.c: Delete. It has been deprecated.
* NEWS: Mention that gasp has been removed.
* Remove references to gasp.
* makefile.vms: Likewise.
* mpw-make.sed: Likewise.
* Regenerate.
* doc/gasp.texi: Delete.
* doc/ Remove references to gasp.texi.
* doc/ Regenerate.
* macro.c: Delete references to gasp.
Remove use of comment_char function parameter as it is no longer
* 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 <>
* read.c (emit_expr) [!WORKING_DOT_WORD]: Initialize x->use_jump.
2002-12-01 Stephane Carrez <>
* config/tc-m68hc11.c (md_begin): Fix qsort warning.
(tc_gen_reloc): Mark section param as not used.
2002-12-01 Stephane Carrez <>
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 <>
* 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 <>
* symbols.c (report_op_error): New function, broken out of ...
(resolve_symbol_value): ... here. Use for both monadic and dyadic
2002-11-30 Kaz Kojima <>
* config/tc-sh.c (md_apply_fix3): Take account of fx_offset
2002-11-30 Alan Modra <>
* 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 <>
* 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 <>
* config/tc-sh.c (md_apply_fix3): Call S_SET_THREAD_LOCAL
for TLS relocations.
2002-11-29 Jakub Jelinek <>
* config/tc-ia64.c (md_apply_fix3): Add default case.
2002-11-28 Jakub Jelinek <>
* 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 <>
* write.c (subsegs_finish): For SEC_MERGE sections pad last fragment
to entsize.
2002-11-26 DJ Delorie <
* dwarf2dbg.c (scale_addr_delta): New.
(size_inc_line_addr): Use it.
(emit_inc_line_addr): Use it.
2002-11-26 Hans-Peter Nilsson <>
* 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 <>
* config/tc-tic4x.c (c4x_operands_match): Bugfix in direct mode
2002-11-21 Randolph Chung <>
* config/tc-hppa.h (tc_frob_symbol): Frob undefined unused symbols
only if they have default visibility.
2002-11-21 Richard Henderson <>
* config/tc-alpha.c (alpha_fix_adjustable): Remove redundant
2002-11-21 Alan Modra <>
* 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 <>
* 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 <>
* write.c (adjust_reloc_syms): Don't reduce SEC_MERGE fixups with
fx_subsy non-NULL.
2002-11-19 Richard Henderson <>
* config/obj-elf.c (obj_elf_visibility): Overwrite only the
visibility portion of st_other.
2002-11-19 Klee Dienes <>
* 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
(build_bytes): Ditto.
(get_specific): Ditto.
(md_assemble): Ditto.
2002-11-19 Martin Schwidefsky <>
* config/tc-s390.c (tc_s390_fix_adjustable): Re-add patch to prevent
adjustments to symbols in merge sections.
2002-11-19 Luke Deller <>
* config/tc-alpha.c (s_alpha_prologue): as_bad when sym is NULL.
2002-11-18 Kevin Buettner <>
* 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 <>
* 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 <>, Chris Demetriou <>
* config/tc-mips.c (tc_gen_reloc): Fix typo in handling of
2002-11-18 Svein E. Seldal <>
* 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
(md_show_usage): Complete rewrite of printout.
2002-11-16 Svein E. Seldal <>
* 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
2002-11-11 Christopher Faylor <>
* Use .gdbinit under Cygwin.
* configure: Regenerate.
2002-11-11 Christopher Faylor <>
* config/tc-i386.h (EXTERN_FORCE_RELOC): Define only if
2002-11-11 Svein E. Seldal <>
* 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
(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.
* Added tic4x dependecy
* Regenerate
2002-11-11 Hans-Peter Nilsson <>
* macro.c (get_any_string): Correct logic for not going beyond end
of in->ptr[].
2002-11-10 Hans-Peter Nilsson <>
* 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 <>
* 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 <>
* 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 <>
* config/te-pe.h (LEX_AT): Accept at-sign (@) as first character
of a label.
2002-11-05 H.J. Lu <>
* config/tc-mips.c (support_64bit_objects): Check *l before it
is freed.
2002-11-04 Danny Smith <>
* config/obj-coff.c (obj-coff-section): Set SEC_DATA and
SEC_LOAD flags for sections marked as 's'.
2002-11-01 Alan Modra <>
* write.c (TC_FORCE_RELOCATION_SUB_ABS): Default to zero.
* doc/internals.texi (TC_FORCE_RELOCATION_SUB_ABS): Document changed
* dep-in.sed: Fix typo.
2002-10-30 Daniel Jacobowitz <>
* Update ARM CPU patterns.
* configure: Regenerated.
2002-10-29 Daniel Jacobowitz <>
* itbl-lex.l: Use #include <> for generated headers.
* itbl-ops.c: Likewise.
2002-10-28 Daniel Jacobowitz <>
* doc/gasp.texi: Fix typo in deprecation note.
2002-10-23 Nick Clifton <>
* 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 <>
* 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
(mmix_frob_file_before_adjust): Remove ineffective function.
2002-10-23 Hans-Peter Nilsson <>
* config/tc-cris.c (SIMPLE_EXPR): New macro.
(cris_relax_frag): New function.
(md_estimate_size_before_relax) <case ENCODE_RELAX
expressions that will become absolute expressions to relaxation.
STATE_WORD)>: Expect only absolute expressions. Use the symbol
value, not distance to symbol.
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 <>
* 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 <>
* config/tc-mips.c (mips_need_elf_addend_fixup): Return true
for relocs against symbols in a merged section.
2002-10-18 Alexandre Oliva <>
* config/tc-mips.c (md_begin): Add $fcc registers to the symbol
table as register names.
2002-10-18 Ulrich Weigand <>
* config/tc-s390.c (md_parse_option): Set s390_arch_size to 32
for option -m31.
2002-10-18 Svein E. Seldal <>
* expr.c (operand): Add support for n.nn flonums.
2002-10-17 Johannes Stezenbach <>
* itbl-parse.y (entry): Provide empty action.
2002-10-16 Alan Modra <>
* (BFDVER_H): Set and subst.
* dep-in.sed: Replace bfdver.h with $(BFDVER_H).
* Run "make dep-am".
(BFDVER_H): Define.
* configure: Regenerate.
* Regenerate.
* doc/ Regenerate.
2002-10-15 Alan Modra <>
* config/tc-i386.h (EXTERN_FORCE_RELOC): Define.
(MD_APPLY_SYM_VALUE): Define for PE too.
2002-10-14 Alan Modra <>
* Run "make dep-am".
(CPU_OBJ_VALID): sh64 coff is invalid.
* as.c: #include "bfdver.h".
* Regenerate.
* Regenerate.
2002-10-14 Momchil Velikov <>
* config/tc-v850.c (CHECK_): Remove token pasting operator.
2002-10-14 Richard Sandiford <>
* (mips64vr-elf, mips64vrel-elf): New config.
* configure: Regenerate.
2002-10-13 Eric Christopher <>
Alexandre Oliva <>
* 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 <>
* config/tc-ppc.c (ppc_cleanup): Make 'i' unsigned int.
2002-10-12 Alexandre Oliva <>
* 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_MIPS16_P): Adjust.
(append_insn): Emit branch to non-constant in a frag_var if
branch-relaxation is desirable and possible.
(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
2002-10-11 Kaz Kojima <>
* config/tc-sh.c (sh_force_relocation): Make sure TLS relocs get
(md_apply_fix3): Add TLS relocs.
(sh_parse_name): Support @TLSGD, @TLSLDM, @GOTTPOFF, @TPOFF and
2002-10-11 Michel Six <>
Alan Modra <>
* 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 <>
* config/tc-sh.c (assemble_ppi): Initialize reg_x / reg_y / reg_n
inside loop.
2002-10-09 Richard Shann <>
Stephen Clarke <>
* config/tc-sh64.c (sh64_target_format): Add support for sh64
Linux environment.
2002-10-03 Kaz Kojima <>
* 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 <>
* config/tc-mips.h (TC_FORCE_RELOCATION_SUB_SAME): Define.
2002-09-30 Gavin Romig-Koch <>
Ken Raeburn <>
Aldy Hernandez <>
DJ Delorie <>
Michael Meissner <>
Eric Christopher <>
Richard Sandiford <>
* 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.
(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 <>
* config/tc-mips.c (md_apply_fix3): Subtract the symbol value
twice if howto->pcrel_offset is true.
2002-09-28 Matt Thomas <>
Jason Thorpe <>
* 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 <>
* config/tc-sh.c (sh_force_relocation): Return 0 for
some PC relative relocations when not relaxing.
2002-09-26 Jakub Jelinek <>
* 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
(md_apply_fix3): No addend for BFD_RELOC_X86_64_TLSGD,
(tc_gen_reloc): Handle x86-64 TLS relocs.
2002-09-27 Alan Modra <>
* config/tc-avr.c (md_apply_fix3): Reinstate code handling pcrel
fixups to current or absolute section.
2002-09-26 Jim Wilson <>
* config/tc-v850.c (v850_offset): Use frag_var instead of frag_now_fix
and frag_more.
2002-09-26 Thiemo Seufer <>
* 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
(mips_ip): Likewise.
2002-09-26 Thiemo Seufer <>
* config/tc-mips.c (append_insn): Fix jump overflow check.
2002-09-24 Alan Modra <>
* config/tc-i386.c (process_operands): Warn about "lea" segment
2002-09-22 Mark Elbrecht <>
* write.c: Delete set_segment_vma and prototype. Update all callers.
2002-09-21 Alan Modra <>
* 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".
* Run "make dep-am".
* Regenerate.
* doc/ Regenerate.
2002-09-20 Nick Clifton <>
* 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 <>
* 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 <>
* config/tc-i386.c (tc_i386_fix_adjustable): Handle
(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
2002-09-19 Richard Henderson <>
* 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 <>
* config/tc-m68k.c (select_control_regs): Handle situation where
architecture has not yet been selected.
2002-09-18 Chris Demetriou <>
* 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 <>
* config/tc-mips.c (md_apply_fix3): Just return for BFD_RELOC_8.
2002-09-18 Thiemo Seufer <>
* config/tc-mips.c (s_change_section): Fix parsing. Code cleanup.
2002-09-17 Stan Cox <>
* 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_GOT16/R_MIPS_LO16 to R_MIPS_GOT_DISP if local.
2002-09-17 Nick Clifton <>
* config/tc-arm.c (md_apply_fix3): Note that an implemented
(tc_gen_reloc): Do not issue reloc number of unimplemented
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 <>
* config/tc-tic4x.c: Add function declarations and ATTRIBUTE_UNUSED.
Convert functions to K&R format.
2002-09-17 Thiemo Seufer <>
* 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 <>
* config/obj-elf.c (obj_elf_change_section): Move prototype to
* config/obj-elf.h (obj_elf_change_section): Likewise.
2002-09-16 Elias Athanasopoulos <>
* dwarf2dbg.c (out_debug_abbrev): Add support for the DW_AT_name field.
(out_debug_info): Likewise.
2002-09-16 Bruno Haible <>
* 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 <>
* config/tc-ppc.c (md_assemble): Do not count FAKE operands
when deciding if any operands have been skipped.
2002-09-11 Nick Clifton <>
* NEWS: New TI port supports both C4x and C3x series of DSPs.
* po/tr.po: Updated Turkish translation.
2002-09-11 Jakub Jelinek <>
* config/tc-i386.c (md_apply_fix3): Allow addend for
2002-09-05 Jeff Law <>
* 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 <>
* doc/internals.texi (md_apply_fix3): Expand.
(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_LOCAL): Define this instead.
(TC_FORCE_RELOCATION_SUB_SAME): Define this instead.
(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
(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_FORCE_RELOCATION_LOCAL): Define this instead.
(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.
* 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.