PowerPC64 .branch_lt address
[binutils-gdb.git] / sim / common / cgen-trace.h
index 8416e2064374a6860eda96905e71d28da38ef80c..3e2b4a9e9d7e1e0a129323e31cc3524365dfa5bb 100644 (file)
@@ -1,5 +1,5 @@
 /* Simulator tracing support for Cpu tools GENerated simulators.
-   Copyright (C) 1996, 1997, 1998, 1999, 2007 Free Software Foundation, Inc.
+   Copyright (C) 1996-2022 Free Software Foundation, Inc.
    Contributed by Cygnus Support.
 
 This file is part of GDB, the GNU debugger.
@@ -20,46 +20,49 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 #ifndef CGEN_TRACE_H
 #define CGEN_TRACE_H
 
-void trace_insn_init (SIM_CPU *, int);
-void trace_insn_fini (SIM_CPU *, const struct argbuf *, int);
-void trace_insn (SIM_CPU *, const struct cgen_insn *,
-                const struct argbuf *, IADDR);
-void trace_extract (SIM_CPU *, IADDR, char *, ...);
-void trace_result (SIM_CPU *, char *, int, ...);
-void cgen_trace_printf (SIM_CPU *, char *fmt, ...);
+#include "ansidecl.h"
+
+void cgen_trace_insn_init (SIM_CPU *, int);
+void cgen_trace_insn_fini (SIM_CPU *, const struct argbuf *, int);
+void cgen_trace_insn (SIM_CPU *, const struct cgen_insn *,
+                     const struct argbuf *, IADDR);
+void cgen_trace_extract (SIM_CPU *, IADDR, const char *, ...);
+void cgen_trace_result (SIM_CPU *, const char *, int, ...);
+void cgen_trace_printf (SIM_CPU *, const char *fmt, ...) ATTRIBUTE_PRINTF_2;
 
 /* Trace instruction results.  */
-#define TRACE_RESULT_P(cpu, abuf) (TRACE_INSN_P (cpu) && ARGBUF_TRACE_P (abuf))
+#define CGEN_TRACE_RESULT_P(cpu, abuf) \
+  (TRACE_INSN_P (cpu) && ARGBUF_TRACE_P (abuf))
 
-#define TRACE_INSN_INIT(cpu, abuf, first_p) \
+#define CGEN_TRACE_INSN_INIT(cpu, abuf, first_p) \
 do { \
   if (TRACE_INSN_P (cpu)) \
-    trace_insn_init ((cpu), (first_p)); \
+    cgen_trace_insn_init ((cpu), (first_p)); \
 } while (0)
-#define TRACE_INSN_FINI(cpu, abuf, last_p) \
+#define CGEN_TRACE_INSN_FINI(cpu, abuf, last_p) \
 do { \
   if (TRACE_INSN_P (cpu)) \
-    trace_insn_fini ((cpu), (abuf), (last_p)); \
+    cgen_trace_insn_fini ((cpu), (abuf), (last_p)); \
 } while (0)
-#define TRACE_PRINTF(cpu, what, args) \
+#define CGEN_TRACE_PRINTF(cpu, what, args) \
 do { \
   if (TRACE_P ((cpu), (what))) \
     cgen_trace_printf args ; \
 } while (0)
-#define TRACE_INSN(cpu, insn, abuf, pc) \
+#define CGEN_TRACE_INSN(cpu, insn, abuf, pc) \
 do { \
   if (TRACE_INSN_P (cpu) && ARGBUF_TRACE_P (abuf)) \
-    trace_insn ((cpu), (insn), (abuf), (pc)) ; \
+    cgen_trace_insn ((cpu), (insn), (abuf), (pc)) ; \
 } while (0)
-#define TRACE_EXTRACT(cpu, abuf, args) \
+#define CGEN_TRACE_EXTRACT(cpu, abuf, args) \
 do { \
   if (TRACE_EXTRACT_P (cpu)) \
-    trace_extract args ; \
+    cgen_trace_extract args ; \
 } while (0)
-#define TRACE_RESULT(cpu, abuf, name, type, val) \
+#define CGEN_TRACE_RESULT(cpu, abuf, name, type, val) \
 do { \
-  if (TRACE_RESULT_P ((cpu), (abuf))) \
-    trace_result ((cpu), (name), (type), (val)) ; \
+  if (CGEN_TRACE_RESULT_P ((cpu), (abuf))) \
+    cgen_trace_result ((cpu), (name), (type), (val)) ; \
 } while (0)
 \f
 /* Disassembly support.  */
@@ -74,7 +77,8 @@ typedef struct {
 } SFILE;
 
 /* String printer for the disassembler.  */
-extern int sim_disasm_sprintf (SFILE *, const char *, ...);
+extern int sim_disasm_sprintf (SFILE *, const char *, ...) ATTRIBUTE_PRINTF_2;
+extern int sim_disasm_styled_sprintf (SFILE *, enum disassembler_style, const char *, ...) ATTRIBUTE_PRINTF_3;
 
 /* For opcodes based disassemblers.  */
 #ifdef __BFD_H_SEEN__