* mips-tdep.c (init_extra_frame_info): Use frame relative stack
[deliverable/binutils-gdb.git] / gdb / mips-pinsn.c
index c12278fb39cde368347f275898e6db907793bd12..fff36d83c3faa7d70b0fdda2bc655af5c6ad7c1d 100644 (file)
@@ -18,9 +18,7 @@ along with this program; if not, write to the Free Software
 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
 
 #include "defs.h"
-
-/* Mips instructions are never longer than this many bytes.  */
-#define MAXLEN 4
+#include "dis-asm.h"
 
 /* Print the mips instruction at address MEMADDR in debugged memory,
    on STREAM.  Returns length of the instruction, in bytes, which
@@ -29,13 +27,15 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
 int
 print_insn (memaddr, stream)
      CORE_ADDR memaddr;
-     FILE *stream;
+     GDB_FILE *stream;
 {
-  unsigned char buffer[MAXLEN];
+  disassemble_info info;
 
-  read_memory (memaddr, buffer, MAXLEN);
+  GDB_INIT_DISASSEMBLE_INFO(info, stream);
 
   /* print_insn_mips is in opcodes/mips-dis.c.  */
-  return print_insn_mips (memaddr, buffer, stream,
-                         TARGET_BYTE_ORDER == BIG_ENDIAN);
+  if (TARGET_BYTE_ORDER == BIG_ENDIAN)
+    return print_insn_big_mips ((bfd_vma) memaddr, &info);
+  else
+    return print_insn_little_mips ((bfd_vma) memaddr, &info);
 }
This page took 0.024135 seconds and 4 git commands to generate.