Automatic date update in version.in
[platform/upstream/binutils.git] / gdb / disasm.h
index 40dc8de..9c6777c 100644 (file)
@@ -1,5 +1,5 @@
 /* Disassemble support for GDB.
-   Copyright (C) 2002, 2007, 2008 Free Software Foundation, Inc.
+   Copyright (C) 2002-2014 Free Software Foundation, Inc.
 
    This file is part of GDB.
 
 #ifndef DISASM_H
 #define DISASM_H
 
+#include "dis-asm.h"
+
+#define DISASSEMBLY_SOURCE     (0x1 << 0)
+#define DISASSEMBLY_RAW_INSN   (0x1 << 1)
+#define DISASSEMBLY_OMIT_FNAME (0x1 << 2)
+#define DISASSEMBLY_FILENAME   (0x1 << 3)
+#define DISASSEMBLY_OMIT_PC    (0x1 << 4)
+
+struct gdbarch;
 struct ui_out;
 struct ui_file;
 
-extern void gdb_disassembly (struct ui_out *uiout,
-                            char *file_string,
-                            int line_num,
-                            int mixed_source_and_assembly,
-                            int how_many, CORE_ADDR low, CORE_ADDR high);
+/* Return a filled in disassemble_info object for use by gdb.  */
+
+extern struct disassemble_info gdb_disassemble_info (struct gdbarch *gdbarch,
+                                                    struct ui_file *file);
+
+extern void gdb_disassembly (struct gdbarch *gdbarch, struct ui_out *uiout,
+                            char *file_string, int flags, int how_many,
+                            CORE_ADDR low, CORE_ADDR high);
 
 /* Print the instruction at address MEMADDR in debugged memory,
    on STREAM.  Returns the length of the instruction, in bytes,
    and, if requested, the number of branch delay slot instructions.  */
 
-extern int gdb_print_insn (CORE_ADDR memaddr,
-                          struct ui_file *stream,
-                          int *branch_delay_insns);
+extern int gdb_print_insn (struct gdbarch *gdbarch, CORE_ADDR memaddr,
+                          struct ui_file *stream, int *branch_delay_insns);
+
+/* Return the length in bytes of the instruction at address MEMADDR in
+   debugged memory.  */
+
+extern int gdb_insn_length (struct gdbarch *gdbarch, CORE_ADDR memaddr);
+
+/* Return the length in bytes of INSN, originally at MEMADDR.  MAX_LEN
+   is the size of the buffer containing INSN.  */
+
+extern int gdb_buffered_insn_length (struct gdbarch *gdbarch,
+                                    const gdb_byte *insn, int max_len,
+                                    CORE_ADDR memaddr);
 
 #endif