Commit Graph

15 Commits

Author SHA1 Message Date
Ian Lance Taylor 5f90dab190 Sat Jun 13 11:33:55 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
* i386-dis.c: Don't print opcode suffix when we can figure out the
	size (and gas can!) by register operands, or from the default
	size.
	(putop): Handle 'A', 'B', 'L', 'P', 'Q', 'R' macros.  Rename 'C'
	macro to 'E'.
	(dis386, dis386_twobyte, grps): Use new suffix macros.
	(dis386): Correct imul Ib to imul sIb.  Change jnl to jge to be
	consistent.  Add suffix for call, jmp, lcall, ljmp, iret.  Reverse
	order of cmps operands to agree with Intel docs.  Correct operand
	of aad and aam (Ib -> sIb).  Change ud2b from 0fb8 to 0fb9 to
	agree with Intel docs.
	(print_insn_x86): Print orphan fwait before other prefixes.
	Return correct byte count for orphan fwait with prefixes.  Don't
	print `bound' operands in reverse order.
	(ckprefix): Stop accumulating prefixes if we get fwait.
	(OP_DIR): Print `$' before Ap operands of ljmp, lcall.
1998-06-13 15:38:32 +00:00
Ian Lance Taylor 80ade9931a Fri Jun 12 11:04:06 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
Fix problems when bfd_vma is wider than long.
	* i386-dis.c: Make op_address and start_pc unsigned.
	(set_op): Make parameter unsigned.
	(print_insn_x86): Cast to bfd_vma when passing a value to
	print_address_func.
	* ns32k-dis.c (CORE_ADDR): Don't define.
 	(print_insn_ns32k): Change type of addr to bfd_vma.  Use
	bfd_scan_vma to read back address.
	(print_insn_arg): Change type of addr to bfd_vma.  Use sprintf_vma
	to format it.
	* m68k-dis.c (COERCE32): Cast to bfd_signed_vma to avoid overflow.
	(NEXTULONG): New definition.
	(print_insn_m68k): Avoid overflow when computing third argument of
	print_insn_arg.
	(print_insn_arg): Use NEXTULONG to fetch 32 bit address values.
	Use disp instead of val to store offset values.
	(print_indexed): Use base_disp instead of word to store base
	displacement, to avoid overflow.
	* m10300-dis.c (disassemble): Cast value to long when computing
	pc-relative address, to get correct sign extension.
1998-06-12 15:13:28 +00:00
Ian Lance Taylor 80119c9ee4 Fri Jun 5 23:47:55 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
* i386-dis.c:  Combine aflag and dflag into sizeflag.  Change OP_*
	functions to void.
	(OP_DSreg): Rename from OP_DSSI.
	(OP_ESreg): Rename from OP_ESDI.
	(Xb, Xv, Yb, Yv): Use index reg code, not b_mode or v_mode.
	(DSBX): Define.
	(append_seg): Rename from append_prefix.
	(ptr_reg): New function.
	(dis386): Add S suffix to pushf, popf, ret, lret, enter, leave.
	Add DSBX for xlat.
	(PREFIX_ADDR): Rename from PREFIX_ADR.
	(float_reg): Add non-broken opcodes for people who don't want
	UNIXWARE_COMPAT.
1998-06-06 03:54:24 +00:00
Ian Lance Taylor 409595b889 Fri Apr 24 16:07:57 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
* i386-dis.c (OP_DSSI): Print segment override.
1998-04-24 20:09:22 +00:00
Ian Lance Taylor eedca9daa9 Mon Jun 16 14:08:38 1997 Michael Taylor <mbt@mit.edu>
* i386-dis.c (dis386_twobyte): Fix pand and pandn.
1997-06-16 18:09:28 +00:00
Ian Lance Taylor 41b96d55e8 * i386-dis.c: Revert patch of April 4. The output now matches
what gcc generates.
1997-05-05 18:30:06 +00:00
Stu Grossman d9ad578c49 * i386-dis.c (print_insn_i8086): New routine to disassemble using
the 8086 instruction set.
	* i386-dis.c:  General cleanups.  Make most things static.  Add
	prototypes.  Get rid of static variables aflags and dflags.  Pass
	them as args (to almost everything).
1996-07-16 00:01:50 +00:00
Stu Grossman be0c8b0508 * i386-dis.c (print_insn_i8086): New routine to disassemble using
the 8086 instruction set.
	* i386-dis.c:  General cleanups.  Make most things static.  Add
	prototypes.  Get rid of static variables aflags and dflags.  Pass
	them as args (to almost everything).
1996-07-12 17:15:38 +00:00
Ian Lance Taylor 03db5a9303 Wed Feb 14 19:01:27 1996 Alan Modra <alan@spri.levels.unisa.edu.au>
* i386-dis.c (onebyte_has_modrm): New static array.
	(twobyte_has_modrm): New static array.
	(print_insn_i386): Only fetch the mod/reg/rm byte if it is needed.
1996-02-15 00:08:45 +00:00
Michael Meissner 1d935cf62c Add Pentium Pro support 1996-01-03 16:51:46 +00:00
Ken Raeburn 726257a8b8 * i386-dis.c: Describe cmpxchg8b operand, and spell the opcode name correctly. 1995-10-06 02:17:12 +00:00
Peter Schauer 5c9b5f58f3 * dis-buf.c, i386-dis.c: Include <string.h>. 1994-02-08 09:12:06 +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
K. Richard Pixley 05545edc03 * h8500-dis.c, i386-dis.c, m68k-dis.c, z8k-dis.c (fetch_data):
deliberately return non-zero to setjmp from longjmp.  Otherwise
  this code fails to compile.
1993-04-01 04:52:59 +00:00
Jim Kingdon 5d0734a7d7 provide a new interface (using read_memory_func) to call the disassemblers
which copes with errors in a plausible way
1993-03-31 21:43:25 +00:00