* ns32k-dis.c (bit_extract_simple): New function to extract bits
from an arbitrary valid buffer instead of fetching them on demand
using fetch_data().
(invalid_float): use bit_extract_simple() instead of bit_extract().
contributed to me for gdb 4.17.
* dvp-opc.c (parse_vif_mpgloc): Renamed from parse_vif_mpgloc_star.
Don't skip over '*', just record it.
(insert_vif_mpgloc): Don't update state_vif_mpgloc if '*' value.
(parse_vif_unpackloc): Renamed from parse_vif_unpackloc_star.
Don't skip over '*', just record it.
(insert_vif_unpackloc): Don't update state_vif_unpackloc if '*' value.
(vif_operands): Delete VIF_MPGLOC_STAR,VIF_UNPACKLOC_STAR entries.
(vif_opcodes): Likewise.
(state_vif_{mpg,unpack}loc_star_p): New static locals.
(vif_macros,vif_macro_count): New globals.
(vif_unpack_len_value): New arguments wl,cl. All callers updated.
(vif_set_{mpg,unpack}loc): Delete. All callers updated.
(vif_get_wl_cl): New function.
(dvp_opcode_init_parse): Init mpgloc,unpackloc state.
* i960-dis.c (pinsn): Change type of first argument to bfd_vma.
(ctrl, cobr, mem, ea): Likewise.
(print_addr): Likewise. Remove cast.
(ea): Cast argument of print_addr to bfd_vma.
* cgen-asm.c (cgen_parse_signed_integer): Fix type of local
variable value.
(cgen_parse_unsigned_integer): Likewise.
(cgen_parse_address): Likewise.
Wed Mar 25 14:31:31 1998 Ian Lance Taylor <ian@cygnus.com>
* i960-dis.c (ctrl): Add full braces to structure initialization.
(cobr, mem, reg): Likewise.
(ea): Correct parenthesization in expression.
* cgen-asm.c: Include <ctype.h>.
(build_asm_hash_table): Remove unused local variable i.
(cgen_parse_keyword): Add casts to avoid warnings.
* arm-dis.c (print_insn_big_arm): Only call coffsymbol for a COFF
symbol. Fix indentation.
(print_insn_little_arm): Likewise.
* mips-opc.c: Include vu0.h.
* mips-dis.c (print_insn_arg): Handle new args 0-9, +, -, %, K, &,
J, Q, X, and U.
(print_insn_mips): Do not emit a tab after an instruction if the
first arg is an instruction completer (&). If the next arg is an
escape character (%), then print the next arg verbatim.
* Makefile.am (mips-opc.lo): Depend on vu0.h
* dvp-opc.c (insert_vif_wlcl,extract_vif_wlcl): New functions.
(vif_operands): Use them for wl,cl fields.
(state_vif_wl,state_vif_cl): New static locals.
(parse_vif_mode): Handle numeric args.
(vif_unpack_len_value,vif_unpack_len): New functions.
(vif_insn_len): Call vif_unpack_len.
(print_insn): Do mask comparison on proper opcode word.
* dvp-opc.c (u_parse_sdest): Return -1 if dest missing.
(parse_bc): Catch missing dest.
(parse_vfreg): Replace atoi call with strtol.
(parse_{bcftreg,ffstreg,freg,ireg,vi01,gif_prim,gif_nloop}): Likewise.
(parse_bcftreg,parse_ffstreg): Handle missing dest.
(extract_gif_eop): New function.
(gif_operands): Update eop entry.
(VGIFOP,VGIFNREGS): Fix calcs.
(extract_gif_prim): Set *pinvalid to 1 if prim not used.
(gif_regs): Add entry for unused 11 case.
(print_gif_regs): Print empty list instead of nothing.
(extract_gif_nloop): Fix value calc.
(print_gif_nloop): Always print value, even if 0.
Handle mips address vs vu address.
* dvp-opc.c (vif_operands): Use DVP_OPERAND_VU_ADDRESS.
(dma_operands): Use DVP_OPERAND_MIPS_ADDRESS.
({insert,extract}_dma_addr): Fix word ofset.
({insert,print}_gif_regs): Fix encode/decode.
to *info->symbols.
* mips-dis.c (print_insn_{big,little}_mips): Likewise.
* tic30-dis.c (print_branch): Likewise.
start-sanitize-sky
* mips-dis.c (print_insn_little_mips): Call dvp_info_mach_type.
* dvp-dis.c (dvp_info_mach_type): New function.
(print_insn_dvp): Call it.
(print_vif): Return length of 4 if mpg or direct insn so following
insns get properly disabled.
* dvp-opc.c (vif_insn_len): New argument `pcpu'. All callers updated.
end-sanitize-sky