forked from Imagelibrary/binutils-gdb
sim: trace: add common macros for logging info
The Blackfin port had some TRACE_xxx macros for easily logging trace data. Use these as a base for common ones that have a simple form and match the existing sets of helper macros.
This commit is contained in:
@@ -1,3 +1,10 @@
|
||||
2015-06-12 Mike Frysinger <vapier@gentoo.org>
|
||||
|
||||
* sim-trace.h (TRACE, TRACE_INSN, TRACE_DECODE, TRACE_EXTRACT,
|
||||
TRACE_LINENUM, TRACE_MEMORY, TRACE_MODEL, TRACE_ALU, TRACE_CORE,
|
||||
TRACE_EVENTS, TRACE_FPU, TRACE_VPU, TRACE_BRANCH, TRACE_SYSCALL,
|
||||
TRACE_DEBUG): Define.
|
||||
|
||||
2015-06-12 Mike Frysinger <vapier@gentoo.org>
|
||||
|
||||
* sim-module.c (modules): Change WITH_TRACE to WITH_TRACE_ANY_P.
|
||||
|
||||
@@ -236,6 +236,27 @@ typedef struct _trace_data {
|
||||
#define TRACE_BRANCH_P(cpu) TRACE_P (cpu, TRACE_BRANCH_IDX)
|
||||
#define TRACE_SYSCALL_P(cpu) TRACE_P (cpu, TRACE_SYSCALL_IDX)
|
||||
#define TRACE_DEBUG_P(cpu) TRACE_P (cpu, TRACE_DEBUG_IDX)
|
||||
|
||||
/* Helper functions for printing messages. */
|
||||
#define TRACE(cpu, idx, fmt, args...) \
|
||||
do { \
|
||||
if (TRACE_P (cpu, idx)) \
|
||||
trace_generic (CPU_STATE (cpu), cpu, idx, fmt, ## args); \
|
||||
} while (0)
|
||||
#define TRACE_INSN(cpu, fmt, args...) TRACE (cpu, TRACE_INSN_IDX, fmt, ## args)
|
||||
#define TRACE_DECODE(cpu, fmt, args...) TRACE (cpu, TRACE_DECODE_IDX, fmt, ## args)
|
||||
#define TRACE_EXTRACT(cpu, fmt, args...) TRACE (cpu, TRACE_EXTRACT_IDX, fmt, ## args)
|
||||
#define TRACE_LINENUM(cpu, fmt, args...) TRACE (cpu, TRACE_LINENUM_IDX, fmt, ## args)
|
||||
#define TRACE_MEMORY(cpu, fmt, args...) TRACE (cpu, TRACE_MEMORY_IDX, fmt, ## args)
|
||||
#define TRACE_MODEL(cpu, fmt, args...) TRACE (cpu, TRACE_MODEL_IDX, fmt, ## args)
|
||||
#define TRACE_ALU(cpu, fmt, args...) TRACE (cpu, TRACE_ALU_IDX, fmt, ## args)
|
||||
#define TRACE_CORE(cpu, fmt, args...) TRACE (cpu, TRACE_CORE_IDX, fmt, ## args)
|
||||
#define TRACE_EVENTS(cpu, fmt, args...) TRACE (cpu, TRACE_EVENTS_IDX, fmt, ## args)
|
||||
#define TRACE_FPU(cpu, fmt, args...) TRACE (cpu, TRACE_FPU_IDX, fmt, ## args)
|
||||
#define TRACE_VPU(cpu, fmt, args...) TRACE (cpu, TRACE_VPU_IDX, fmt, ## args)
|
||||
#define TRACE_BRANCH(cpu, fmt, args...) TRACE (cpu, TRACE_BRANCH_IDX, fmt, ## args)
|
||||
#define TRACE_SYSCALL(cpu, fmt, args...) TRACE (cpu, TRACE_SYSCALL_IDX, fmt, ## args)
|
||||
#define TRACE_DEBUG(cpu, fmt, args...) TRACE (cpu, TRACE_DEBUG_IDX, fmt, ## args)
|
||||
|
||||
/* Tracing functions. */
|
||||
|
||||
|
||||
Reference in New Issue
Block a user