Commit Graph

243 Commits

Author SHA1 Message Date
Jeff Law 3f073f06cd * hppa-dis.c: Include libhppa.h. 1995-03-06 17:05:20 +00:00
Peter Schauer f1cb5ff2b4 * Makefile.in (ALL_MACHINES): Add w65-dis.o. 1995-02-21 07:56:45 +00:00
David Edelsohn 07f27bb80c * arc-dis.c (arc_get_disassembler): Change argument to int,
one of bfd_mach_arc_xxx.  All callers updated.
1995-02-17 20:44:32 +00:00
Ian Lance Taylor f27ab33041 * mips-opc.c: Add r4650 mul instruction. 1995-02-16 22:35:36 +00:00
Ian Lance Taylor 470feacfab * mips-opc.c: Add uld and usd macros for unaligned double load and
store.
1995-02-15 20:47:31 +00:00
David Edelsohn c81a2ce3bf (arc_get_disassembler): Renamed from arc_disassembler. 1995-02-10 03:55:34 +00:00
David Edelsohn 9f05921fb7 * disassemble.c (disassembler, case bfd_arch_arc): Call
arc_disassembler to get disassembler routine.
1995-02-10 03:42:43 +00:00
David Edelsohn 6acc9345e1 Lotsa arc stuff. 1995-02-10 03:38:14 +00:00
David Edelsohn ecec4df3e8 * arc-opc.c (MULTSHIFT operand): Delete.
(UNSIGNED, SATURATION): New operands.
	(mac, mul, mul64, mulu64): New insns.
	(ext. asl, asr, lsr, ror): Only available on host and graphics cpus.
	(padc, padd, pmov, pand, psbc, psub, swap): New insns.
	(host,graphics,audio extended and auxiliary regs): Define.
	(ss, sc, mh, ml): New suffixes.
	(arc_opcode_supported, arc_opval_supported): New functions.
	(insert_multshift, extract_multshift): Deleted.
1995-02-10 03:37:57 +00:00
David Edelsohn 98d42df90d * arc-dis.c (print_insn_arc): Rename to print_insn and make static.
New argument `cpu', pass it to arc_opcode_init_tables.
	Document byte order dependencies.  Ignore unsupported insns.
	(arc_disassembler): New function.
	(print_insn_arc_base, print_insn_arc_host, print_insn_arc_graphics,
	print_insn_arc_audio): New functions.
1995-02-10 03:23:16 +00:00
Stan Shebs 7010c43a6e * i960-dis.c (struct tabent, struct sparse_tabent): Change the
signed char fields to shorts, more portable.
1995-02-09 22:46:54 +00:00
Stan Shebs ce2349c52d * i960-dis.c (struct tabent, struct sparse_tabent): Declare the
char fields as signed chars, since they may have negative values.

Fixes PR 6290.
1995-02-09 01:32:35 +00:00
J.T. Conklin 9ce4de1912 * i386-dis.c (dis386_twobyte): Add cpuid, From Charles Hannum
(mycroft@netbsd.org).
1995-02-06 18:56:53 +00:00
Ian Lance Taylor 1af6f4bb6f tipo 1995-01-30 04:23:50 +00:00
Ian Lance Taylor 669124ef4f * ppc-opc.c: Changes based on patch from David Edelsohn
<edelsohn@npac.syr.edu>.
	(powerpc_operands): Add operands SPRBAT and SPRG. Split TBR out of
	SPR.
	(FXM_MASK): Define.
	(insert_tbr): New static function.
	(extract_tbr): New static function.
	(XFXFXM_MASK, XFXM): Define.
	(XSPRBAT_MASK, XSPRG_MASK): Define.
	(powerpc_opcodes): Add instructions to access special registers by
	name.  Add mtcr and mftbu.
1995-01-26 23:35:32 +00:00
Steve Chamberlain 9f744f9110 * configure.in: Add W65 support.
* disassemble.c: Likewise.
	* w65-opc.h, w65-dis.c: New files.
1995-01-16 00:35:55 +00:00
Stan Shebs d3d74a94e9 * mpw-config.in (archname): Compute from the config.
(BFD_MACHINES, ARCHDEFS): Put into mk.tmp.
1995-01-04 23:05:52 +00:00
Steve Chamberlain d383e289df * h8300-dis.c (bfd_h8_disassemble): Add support for 2 bit
immediates.
1994-12-29 06:16:23 +00:00
Ian Lance Taylor 27faaa41e6 * mips-opc.c: Add dli as a synonym for li. 1994-12-20 16:27:45 +00:00
David Edelsohn edb35c135b * arc-opc.c (insertion fns): Pass pointer to value's table entry.
All uses changed.
	(extraction fns): Insn argument now array of two words.  Return pointer
	to value's table entry.  All uses changed.
	(arc_opcode_lookup_suffix): Exported for arc-dis.c.
	(insert_multshift, extract_multshift): New fns.
	(arc_operands): Add support for cache bypass suffix.  Add support for
	predefined aux regs.  Modifier bits moved to flags field.
	(arc_opcodes): Likewise.
	Add mul/mulu/shift insns.  Syntax of zero/sign extension insns changed.
	New insn rlc.  Update to syntax in programmer's manual.
	(arc_reg_names): Fix typo in lp_count.  Add predefined aux regs.
	(arc_suffixes): New synonyms lo,hs for cs,cc.  New suffix for cache
	bypass.
	(arc_opcode_init_tables): New argument to indicate cpu type.
	(insert_reg): Handle predefined aux regs.
	(extract_reg): Likewise.
	(lookup_register): New fn.
	* arc-dis.c (arc_condition_codes): Deleted.
	(print_insn_arc): Handle insns with 32 bit immediate constants better.
	Clean up modifier handling.  Handle predefined aux regs.
1994-12-19 20:55:13 +00:00
Ken Raeburn 28a2119fba don't sanitize arc files that have already been deleted 1994-12-19 16:08:48 +00:00
Ken Raeburn a8732972ae alpha, mips, m68k fixes 1994-12-08 23:28:05 +00:00
Steve Chamberlain 7014c55e40 Clean the sh3 stuff out the right way. 1994-12-06 23:29:54 +00:00
Michael Tiemann 0041db5a97 Switch r3 to scratch register, r0 to stack register.
Other misc changes before beta shipment to customer.
1994-12-06 02:04:58 +00:00
David Edelsohn 8515dbe235 Initial ARC support. 1994-11-30 02:06:04 +00:00
Michael Tiemann fb870b50a7 Add changes from customer since last work. 1994-11-26 00:17:52 +00:00
Steve Chamberlain a4d44f7ac9 remove sh3 stuff. 1994-11-25 06:15:19 +00:00
Michael Tiemann de582ad676 *** empty log message *** 1994-11-25 02:28:15 +00:00
Michael Tiemann 03c4ce2fcc Rename r16 files to rce, and fix some more .Sanitize typos. 1994-11-25 00:01:26 +00:00
Michael Tiemann 9f554efd62 *** empty log message *** 1994-11-24 21:48:21 +00:00
Michael Tiemann 5c680afdc4 Fix .Sanitize scrips so that r16 is truly scrubbed out.
Also, report errors if any traces of sanitize remain after sanitizing.
1994-11-24 21:36:00 +00:00
Michael Tiemann d94aca1aff Safely check in r16 targets for binutils. 1994-11-24 20:30:11 +00:00
Steve Chamberlain 17775ffbca * disasseble.c (disassebler): Cope with little endian SH. 1994-11-24 06:37:05 +00:00
Steve Chamberlain a90a64c168 * sh-opc.h (mov.l gbr): Get direction right.
* sh-dis.c (print_insn_shx): New function.
	(print_insn_shl, print_insn_sh): Call print_insn_shx to
	print opcodes with right byte order.
1994-11-24 06:36:28 +00:00
Ian Lance Taylor dded3d1406 * hppa-dis.c (print_insn_hppa): Read the instruction using
bfd_getb32, so that it works on a little endian or 64 bit host.
	Remove unused local variable op.
1994-11-01 00:02:52 +00:00
Ian Lance Taylor cd4b8926ce * mips-opc.c: Use or instead of addu for pseudo-op move, since
addu does not work correctly if -mips3.
PR 5832.
1994-10-25 21:09:08 +00:00
Ian Lance Taylor 009946c974 * a29k-dis.c (print_special): Add special register names defined
on 29030, 29040 and 29050.
	(print_insn): Handle new operand type 'I'.
1994-10-19 17:41:18 +00:00
Ian Lance Taylor 995b0d3ff3 * configure.in: Use ${config_shell} when running config.bfd. 1994-10-04 16:18:19 +00:00
Ian Lance Taylor e96a2b1d46 * a29k-dis.c (print_insn): Print the opcode.
PR 4779.
1994-09-15 20:46:46 +00:00
Ian Lance Taylor 8490907307 * mips-opc.c (mips_opcodes): Set WR_t for sc and scd.
PR 5632
1994-09-14 21:53:14 +00:00
Jeff Law da233e6ed3 * hppa-dis.c (reg_names): Use r26-r23 for arg0-arg3. 1994-09-12 04:33:24 +00:00
Ken Raeburn ba08215a8c keep arm files 1994-09-09 18:51:10 +00:00
Ian Lance Taylor 942a4965b7 * mips-opc.c: Set INSN_STORE_MEMORY flag for all instructions
which store a value into memory.
PR 5433.
1994-09-06 15:42:11 +00:00
Ken Raeburn 318b02b6b9 ARM Acorn/RISCiX target and host patches from Richard Earnshaw 1994-09-05 10:53:00 +00:00
Ken Raeburn c4396c87e9 * sparc-dis.c (print_insn_sparc): Handle new operand type 'x'.
* sparc-opc.c: Added sparclite extended FP operations, and versions of v9
impdep* instructions permitting specification of the OPF field.
1994-07-28 23:46:19 +00:00
Ken Raeburn 2a097d73b7 i960xl changes (sanitized); keep ns32k-dis.c 1994-07-26 23:13:34 +00:00
Ken Raeburn f61ca5fae4 fix from dj delorie for disassembler config in djgpp 1994-07-20 16:34:25 +00:00
Ken Raeburn 60a70a7b0e ns32k-dis.c (invalid_float): Changed to take char* argument, and test for
explicitly specified sizes, instead of using sizeof() on host CPU types.
(INVALID_FLOAT): Cast first argument.
1994-07-13 22:38:03 +00:00
Ken Raeburn 69bb683c6d Wed Jul 13 18:01:58 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
* ns32k-dis.c: Deleted all code in "#ifdef GDB".
	(invalid_float): Enabled general version, doesn't require running
	on ns32k host.

Sun Jul 10 00:27:47 1994  Ian Dall  (dall@hfrd.dsto.gov.au)

	* opcodes/ns32k-dis.c: Semi-new file.  Had apparently been dropped
	from distribution. A ns32k-dis.c from a previous distribution has
	been brought up to date and supports the new interface.

	* disaaemble.c: define ARCH_ns32k and add case bfd_arch_ns32k.

	* configure.in: add bfd_ns32k_arch target support.

	* Makefile.in: add ns32k-dis.o to ALL_MACHINES.
	Add ns32k-dis.c to CFILES. Add dependencies for ns32k-dis.o.
1994-07-13 22:05:52 +00:00
Stan Shebs 10f1b5978b Elim dup of file names 1994-06-30 23:19:26 +00:00
Stan Shebs fea3fe6407 * h8300-dis.c, mips-dis.c: Don't use true and false. 1994-06-28 20:27:02 +00:00
Ian Lance Taylor 72fcd790ad * mips-dis.c (_print_insn_mips): Build a static hash table mapping
opcodes to the first instruction with that opcode, to speed
	disassembly of large files.  From ralphc@pyramid.com (Ralph
	Campbell).
1994-06-22 17:41:05 +00:00
Ken Raeburn 2e4ebfe2b0 sparc v9 unsanitization 1994-06-16 00:36:48 +00:00
Stan Shebs 67c2d8c8d7 Tue Jun 7 18:45:39 1994 Stan Shebs (shebs@andros.cygnus.com)
* mpw-config.in (target_arch): Compute from canonical target.
	(m68k, mips, powerpc, sparc): Add architectures.
	* mpw-make.in (disassemble.c.o): Add.
	(ALL_CFLAGS): Remove special flags (-mc68020 -mc68881 -model far).
1994-06-08 01:53:20 +00:00
Ken Raeburn fc984fdb33 keep configure.bat 1994-06-05 16:49:49 +00:00
Ken Raeburn c06e55d99a changes from gas-2.3/binutils-2.4 dist (details in branch log msgs, changelogs) 1994-05-27 16:58:05 +00:00
Steve Chamberlain ab678720c7 * a29k-dis.c (print_insn): Print 'x' type operand in hex.
* h8300-dis.c (bfd_h8_disassemble): Print 16bit rels correctly.
	* sh-dis.c (print_insn_sh): Don't recur endlessly if delay
	slot insn is in a delay slot.
	* z8k-opc.h: (resflg): Fix patterns.
	* h8500-opc.h Fix CR insn patterns.
1994-05-08 00:19:06 +00:00
Ken Raeburn 204c914803 keep disassemble.c 1994-04-29 15:46:36 +00:00
Ken Raeburn 7495f83bd4 * m68k-dis.c (print_insn_m68k): If F_ALIAS flag is set, skip the opcode being
examined.
1994-04-28 22:59:09 +00:00
Ian Lance Taylor 8c546dedc3 * ppc-opc.c (powerpc_opcodes): Correct fcir. From David Edelsohn
(edelsohn@npac.syr.edu).
1994-04-17 03:43:18 +00:00
Ian Lance Taylor 76336d506d * mips-opc.c (mips_opcodes): Correct operands of "nor" with an
immediate argument.
1994-04-06 21:12:40 +00:00
David Edelsohn 8055d512fb * sparc-opc.c (sparc_opcodes): Fix "rd %fprs,%l0". 1994-04-04 23:37:46 +00:00
Ian Lance Taylor 749a663dba * ppc-opc.c (powerpc_operands): The signedp field has been
removed, so don't initialize it.  Set the PPC_OPERAND_SIGNED flag
	instead.  Add new operand SISIGNOPT.
	(powerpc_opcodes): For lis, liu, addis, and cau use SISIGNOPT.
	Based on patch from David Edelsohn (edelsohn@npac.syr.edu).
	* ppc-dis.c (print_insn_powerpc): Check PPC_OPERAND_SIGNED rather
	than signedp field.
1994-04-04 17:32:02 +00:00
Stan Shebs 8f24553567 Wed Mar 30 15:31:55 1994 Stan Shebs (shebs@andros.cygnus.com)
* mpw-xconfig.in (opcode/mips.h): Don't forward-include here.
	(BFD_MACHINES): Set appropriately.
1994-03-30 23:43:52 +00:00
Stan Shebs 72e11c95da Wed Mar 30 15:30:44 1994 Stan Shebs (shebs@andros.cygnus.com)
* mpw-config.in (BFD_MACHINES): Set to a default value.
	* mpw-make.in (BFD_MACHINES): Remove wired-in value.
1994-03-30 23:33:44 +00:00
Peter Schauer 878db64d3f * i386-dis.c (struct private): Renamed to dis_private. `private'
is a reserved word for dynix cc.
1994-03-30 09:17:49 +00:00
Ian Lance Taylor 934ec70a4e * configure.in: Change error message to refer to bfd/config.bfd
rather than bfd/configure.in.
1994-03-28 18:05:12 +00:00
Ian Lance Taylor 541924955f Mon Mar 28 12:28:30 1994 David Edelsohn (edelsohn@npac.syr.edu)
* ppc-opc.c: Define POWER2 as short alias flag.
	(powerpc_opcodes): Add POWER/2 opcodes lfq*, stfq*, fcir[z], and
	fsqrt.
1994-03-28 17:30:29 +00:00
Ian Lance Taylor c0386c7a9f * m68881-ext.c: Removed; no longer used.
* Makefile.in: Changed accordingly.
1994-03-14 20:23:05 +00:00
Ian Lance Taylor 448ff99268 * m68k-dis.c (ext_format_68881): Don't declare.
(print_insn_m68k): If an instruction uses place 'i', it uses at
	least four fixed bytes.
	(print_insn_arg): Don't bump p by 2 for case 'I', place 'i'.  For
	extended float, convert to double using floatformat_to_double, not
	ieee_extended_to_double, and fetch the data before converting it.
1994-03-14 20:00:34 +00:00
Ian Lance Taylor d75eb68cf2 * mips-opc.c: It's sqrt.s, not sqrt.w. From
davidj@ICSI.Berkeley.EDU (David Johnson).
1994-03-08 23:13:30 +00:00
Ian Lance Taylor 9a458b67a4 Set Emacs local variables to never use version control. 1994-03-08 18:41:54 +00:00
Peter Schauer 4dd4933e7c Change inclusion of <string.h> to sysdep.h. 1994-02-08 19:01:45 +00:00
Peter Schauer 5c9b5f58f3 * dis-buf.c, i386-dis.c: Include <string.h>. 1994-02-08 09:12:06 +00:00
Stan Shebs e320f644a3 Mon Feb 7 15:53:02 1994 Stan Shebs (shebs@andros.cygnus.com)
* mpw-make.in (CSEARCH): Add extra-include to search path.
1994-02-07 23:55:53 +00:00
Jim Kingdon 9f80c72bb1 * i960-dis.c (reg, mem): Just use a static array instead of
calling xmalloc.
1994-02-06 15:49:03 +00:00
Jeff Law 0bb364c6b3 * hppa-dis.c (print_insn_hppa): For '?' and '@' only adjust the
condition name index if this is for a negated condition.
1994-02-05 19:15:20 +00:00
Jeff Law e59f322778 * hppa-dis.c (print_insn_hppa): No space before 'H' operand.
Floating point format for 'H' operand is backwards from normal
        case (0 == double, 1 == single).  For '4', '6', '7', '9', and '8'
        operands (fmpyadd and fmpysub), handle bizarre register translation
        correctly for single precision format.
1994-02-05 18:18:49 +00:00
Jeff Law e3960b9610 * hppa-dis.c (print_insn_hppa): Do not emit a space after 'F'
or 'I' operands if the next format specifier is 'M' (fcmp
        condition completer).
1994-02-05 08:04:45 +00:00
Ian Lance Taylor 1c214e4ceb * ppc-opc.c (powerpc_operands): New operand type MBE to handle a
single number giving a bitmask for the MB and ME fields of an M
	form instruction.  Change NB to accept 32, and turn it into 0;
	also turn 0 into 32 when disassembling.  Seperated SH from NB.
	(insert_mbe, extract_mbe): New functions.
	(insert_nb, extract_nb): New functions.
	(SC_MASK): Mask out SA and LK bits.
	(powerpc_opcodes): Change "cal" to use RT, D, RA rather than RT,
	RA, SI.  Change "liu" and "cau" to use UI rather than SI.  Mark
	"bctr" and "bctrl" as accepted by POWER.  Change "rlwimi",
	"rlimi", "rlwimi.", "rlimi.", "rlwinm", "rlinm", "rlwinm.",
	"rlinm.", "rlmi", "rlmi.", "rlwnm", "rlnm", "rlwnm.", "rlnm." to
	use MBE rather than MB.  Add "mfmq" and "mtmq" POWER instructions.
	(powerpc_macros): Define table of macro definitions.
	(powerpc_num_macros): Define.
1994-02-05 04:46:34 +00:00
Ian Lance Taylor e7285169f8 * ppc-dis.c (print_insn_powerpc): Don't skip optional operands
if PPC_OPERAND_NEXT is set.
1994-02-05 04:45:24 +00:00
Stan Shebs 5e7eed8d82 Mon Jan 24 12:09:35 1994 Stan Shebs (shebs@andros.cygnus.com)
* mpw-xconfig.in (opcode/mips.h): Create using forward-include.
1994-01-24 20:40:04 +00:00
Stan Shebs 8ab5883476 Mon Jan 24 12:07:22 1994 Stan Shebs (shebs@andros.cygnus.com)
* mpw-config.in (varargs.h): Don't create.
	(sysdep.h): Create using forward-include.
	* mpw-make.in (CSEARCH): Add include/mpw to search path.
1994-01-24 20:39:06 +00:00
Ian Lance Taylor 89221bd5f4 Added ppc-opc.c and ppc-dis.c. 1994-01-22 00:11:37 +00:00
Ian Lance Taylor 1211751d0b * ppc-opc.c: New file. Opcode table for PowerPC, including
opcodes for POWER (RS/6000).
	* ppc-dis.c: New file.  PowerPC and Power (RS/6000) disassembler.
	* Makefile.in (ALL_MACHINES): Add ppc-dis.o and ppc-opc.o.
	(CFILES): Add ppc-dis.c.
	(ppc-dis.o, ppc-opc.o): New targets.
	* configure.in: Build ppc-dis.o and ppc-opc.o for bfd_rs6000_arch.
1994-01-22 00:04:49 +00:00
Ian Lance Taylor 85dcf36d72 PowerPC opcode table and disassembler. 1994-01-22 00:01:27 +00:00
Jeff Law f037e5b0a4 * hppa-dis.c (print_insn_hppa): Handle 'N' in assembler template.
No space before 'u', 'f', or 'N'.
1994-01-18 04:06:52 +00:00
Jim Kingdon 4baf1a8c9e * i386-dis.c (print_insn_i386): Add FIXME comment regarding reading
farther than we should.
1994-01-17 00:47:38 +00:00
Jim Kingdon a279b1f5ff * i386-dis.c (dis386): Use Yb and Yv for scasb and scasS. 1994-01-17 00:38:56 +00:00
Stan Shebs e4c7516baa Set lose_these_too correctly 1994-01-11 01:15:02 +00:00
Stan Shebs d1463af1d1 Fri Jan 7 11:26:29 1994 Stan Shebs (shebs@andros.cygnus.com)
* mpw-make.in: Replace 8-bit chars with their names.
1994-01-07 19:27:21 +00:00
David MacKenzie 4b2febd355 fix comments 1994-01-06 20:37:47 +00:00
Stan Shebs e7c4e61cc9 Mon Jan 3 11:44:29 1994 Stan Shebs (shebs@andros.cygnus.com)
* mpw-config.in:  New file, MPW version of configure.in.
	* mpw-make.in:	  New file, MPW version of Makefile.in.

Mon Jan  3 12:54:35 1994  Stan Shebs  (shebs@andros.cygnus.com)

 	* mpw-xconfig.in: New file, mpw x mips configuration bits.
1994-01-03 20:58:02 +00:00
Peter Schauer ba936a2ef5 * alpha-opc.h, alpha-dis.c (print_insn_alpha): Add
FLOAT_MEMORY_FORMAT_CODE, FLOAT_BRANCH_FORMAT_CODE, correct
	FLOAT_FORMAT_CODE to put out floating point register names.
1993-11-08 07:53:45 +00:00
Jim Kingdon de807a9b6a Remove v9-specific entry 1993-11-01 20:08:35 +00:00
Jim Kingdon bf04fba0f3 Add missing entry for change by Ian 1993-10-31 19:51:54 +00:00
Ian Lance Taylor d75a406d3c * a29k-dis.c (print_insn): Use 0x%08x, not 0x%8x. 1993-10-28 21:43:14 +00:00
Ian Lance Taylor 70643dbc13 * mips-opc.c (dsll, dsra, dsrl): Added '>' cases for shift counts
larger than 32.  Moved dsxx32 variants first for disassembler.
1993-10-27 15:52:00 +00:00
Steve Chamberlain 07bf1ce5b2 Add full lda information 1993-10-25 18:34:00 +00:00
Peter Schauer bb959d0ab9 * alpha-opc.h: Add ldl_l, fix typo for ldq_u.
* alpha-dis.c (print_insn_alpha):  Add code for PAL_FORMAT_CODE.
1993-10-08 09:43:36 +00:00