* config/tc-ppc.c (md_parse_option): Accept mpwr2 as a synonym for
mpwrx; mppc32, m603, and m604 as synonyms for mppc; and mppc64 and
m620 for PowerPC64 mode.
(ppc_symbol_new_hook): Add T0 as synonym for TC0 suffix.
* config/tc-sh.c (md_begin): Remove unused variable table.
(md_assemble): Remove unused variable p.
(md_convert_frag): Cast fr_address to unsigned long for printf.
(md_apply_fix): Use as_warn_where rather than as_warn.
(sh_init_after_args): Remove empty function.
* config/obj-vms.c: Changed exported function names to lower case. (Changed
call sites in write.c.) Declare VMS system function names used, conditional on
actually being on VMS. Changed many functions that returned no useful value to
now be declared to return void. Removed many unused variables. Supply missing
return statements or values. Supply `default' case in switch statements.
Ensure local variables get initialized.
* config/tc-vax.c: Minor changes to silence "gcc -Wall".
* config/obj-vms.h, config/tc-vax.h: Added some missing declarations.
* expr.c (operand): Parenthesize && within ||.
* listing.c (listing_newline): Likewise.
(list_symbol_table): Use %lu to print sizeof.
* symbols.c: Comment out unused function indent.
(print_symbol_value_1): Cast pointer to unsigned long for printf.
* config/obj-coff.c (do_relocs_for): Only declare symbol_ptr if it
will be used.
* config/tc-h8300.c (md_begin): Remove unused variable reg.
(get_operand): Declare type of parameter direction. Remove unused
variable size.
(get_specific): Fix comment to avoid nested comments.
(check_operand): Cast X_add_number to unsigned long for printf.
(build_bytes): Remove unused local variables output_ptr, part, and
high.
(build_bytes): Cast X_add_number to unsigned long for printf.
(clever_message): Remove unused variable scan.
(md_assemble): Remove unused variable i.
(tc_coff_sizemachdep): Remove unused function.
* tc-h8300.h (tc_reloc_mangle): Declare.
(md_begin): Handle a cpu string of "4650". If mips_4650 was not
initialized, set it to 0.
(append_insn): Don't insert nops around HI and LO on a 4650.
(mips_emit_delays): Likewise.
(mips_ip): Use INSN_ISA mask to check ISA of instruction. Check
for INSN_4650.
(md_longopts): Add m4650 and no-m4650.
(md_parse_option): Handle mips-cpu=4650. Handle -m4650 and
-no-m4650.
* doc/as.texinfo: Document new MIPS options.
* read.c (s_space): Rewrite to handle general expressions. Generate rs_space
frags for non-constant values.
* write.c (cvt_frag_to_fill): Treat rs_align_code and rs_space like rs_align
and rs_org. Verify that fr_offset is non-negative, and force frag type to
rs_fill only after assertion checks.
(relax_segment): Treat rs_align_code like rs_align. Treat rs_space like rs_org
in the first switch; in the second, force the operand to a constant, and use it
for the growth size.
(relax_stateT): Separate typedef from enum definition.
(enum _relax_state): Reordered for better punctuation. Added new values
rs_align_code and rs_space.
(lineno, struct lineno_struct): Unused, deleted.
For friendlier assertion-failure messages:
* as.h: No longer include assert.h.
(as_assert): Declare.
(assert): New definition, calls as_assert longer needed.
(__PRETTY_FUNCTION__): Provide default for older versions of gcc.
* messages.c (as_assert): New function.
* gdbinit.in: Put a breakpoint there.
* subsegs.c (subsegs_begin): Don't do it here.
* as.c (main): Call frag_init before subsegs_begin.
* frags.c (frag_append_1_char): New function.
* frags.h (frag_append_1_char): Declare it.
(FRAG_APPEND_1_CHAR): Call it. Old definition is commented out for now.
* as.h (struct frag): Added (but commented out) new fields for tracking current
alignment.
(frag_now_fix): Changed macro to function declaration.
* frags.c (frag_now_fix): Define function here.
(frag_new): Use it instead of accessing `frags' directly.
* frags.h (frags): Change comment to indicate it shouldn't be accessed directly.
* subsegs.h (struct frchain): New field frch_obstack, intended to eventually
replace global `frags' obstack.
* subsegs.c (subseg_set_rest): Use frag_now_fix instead of accessing `frags'
directly. Initialize fields of new frchainS explicitly instead of with memset.
* config/obj-coff.c (obj_coff_ln) [!BFD_ASSEMBLER]: Use frag_now_fix.
* config/tc-mips.c (s_loc), config/obj-vms.c (vms_resolve_symbol_redef),
symbols.c (colon): Likewise.
config/tc-h8500.c, config/tc-hppa.c, config/tc-hppa.h, config/tc-sh.c,
config/tc-z8k.c: Don't rely on use of ".." when including header files.
* config/tc-rce.c: Ditto.
* config/obj-coff.c (fixup_segment): Reformat condition in an `if' statement.