Commit graph

114 commits

Author SHA1 Message Date
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
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
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
a8732972ae alpha, mips, m68k fixes 1994-12-08 23:28: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
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
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
c06e55d99a changes from gas-2.3/binutils-2.4 dist (details in branch log msgs, changelogs) 1994-05-27 16:58:05 +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
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
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
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