sim: trace: add WITH_TRACE_ANY_P helper
authorMike Frysinger <vapier@gentoo.org>
Fri, 12 Jun 2015 10:07:07 +0000 (15:52 +0545)
committerMike Frysinger <vapier@gentoo.org>
Fri, 12 Jun 2015 10:21:38 +0000 (06:21 -0400)
We have STRACE_ANY_P and TRACE_ANY_P, so add WITH_TRACE_ANY_P to fill
out the API.  This lets us wrap the internal configure symbol.

sim/common/ChangeLog
sim/common/sim-module.c
sim/common/sim-trace.c
sim/common/sim-trace.h

index 15574498a1b9d6cdefa38f3b2b0fbac52d2152a5..403ba0fa4f46ad58370d1742fa8d3f4cfdef1e8b 100644 (file)
@@ -1,3 +1,11 @@
+2015-06-12  Mike Frysinger  <vapier@gentoo.org>
+
+       * sim-module.c (modules): Change WITH_TRACE to WITH_TRACE_ANY_P.
+       * sim-trace.c (trace_option_handler): Likewise.
+       * sim-trace.h (WITH_TRACE_ANY_P): Define.
+       (STRACE_ANY_P): Use WITH_TRACE_ANY_P.
+       (TRACE_ANY_P): Likewise.
+
 2015-06-12  Mike Frysinger  <vapier@gentoo.org>
 
        * cgen-run.c (sim_resume): Rename TRACE_INSN_FINI to
index fd9b587967a0a33e929438ed74b058ae3d20d103..2d8e7dc3729396c742e2b9a04f8c98ee47259e00 100644 (file)
@@ -46,7 +46,7 @@ static MODULE_INSTALL_FN * const modules[] = {
 #if WITH_ENGINE
   sim_engine_install,
 #endif
-#if WITH_TRACE
+#if WITH_TRACE_ANY_P
   trace_install,
 #endif
 #if WITH_PROFILE
index 915965d4636123d1ef541100ec7fe5f057b73ba1..f00fe9bc3afae773a42bab57778b0d8ad30dd1e3 100644 (file)
@@ -232,7 +232,7 @@ trace_option_handler (SIM_DESC sd, sim_cpu *cpu, int opt,
   switch (opt)
     {
     case 't' :
-      if (! WITH_TRACE)
+      if (!WITH_TRACE_ANY_P)
        sim_io_eprintf (sd, "Tracing not compiled in, `-t' ignored\n");
       else
        return set_trace_option_mask (sd, "trace", TRACE_USEFUL_MASK, arg);
@@ -352,7 +352,7 @@ trace_option_handler (SIM_DESC sd, sim_cpu *cpu, int opt,
 
 #ifdef SIM_HAVE_ADDR_RANGE
     case OPTION_TRACE_RANGE :
-      if (WITH_TRACE)
+      if (WITH_TRACE_ANY_P)
        {
          int cpu_nr;
          char *chp = arg;
@@ -378,7 +378,7 @@ trace_option_handler (SIM_DESC sd, sim_cpu *cpu, int opt,
       break;
 
     case OPTION_TRACE_FUNCTION :
-      if (WITH_TRACE)
+      if (WITH_TRACE_ANY_P)
        {
          /*wip: need to compute function range given name*/
        }
@@ -395,7 +395,7 @@ trace_option_handler (SIM_DESC sd, sim_cpu *cpu, int opt,
       break;
 
     case OPTION_TRACE_FILE :
-      if (! WITH_TRACE)
+      if (!WITH_TRACE_ANY_P)
        sim_io_eprintf (sd, "Tracing not compiled in, `--trace-file' ignored\n");
       else
        {
index 5d6919a5cf7f29c5f4ed306bc019951c358efa12..822940b9edb0cceef466a9fa1de11a43248d3abc 100644 (file)
@@ -107,8 +107,11 @@ enum {
 #define TRACE_syscall  (1 << TRACE_SYSCALL_IDX)
 #define TRACE_debug    (1 << TRACE_DEBUG_IDX)
 
-/* Preprocessor macros to simplify tests of WITH_TRACE.  */
+/* Return non-zero if tracing of idx is enabled (compiled in).  */
 #define WITH_TRACE_P(idx)      (WITH_TRACE & (1 << idx))
+
+/* Preprocessor macros to simplify tests of WITH_TRACE.  */
+#define WITH_TRACE_ANY_P       (WITH_TRACE)
 #define WITH_TRACE_INSN_P      WITH_TRACE_P (TRACE_INSN_IDX)
 #define WITH_TRACE_DECODE_P    WITH_TRACE_P (TRACE_DECODE_IDX)
 #define WITH_TRACE_EXTRACT_P   WITH_TRACE_P (TRACE_EXTRACT_IDX)
@@ -193,7 +196,7 @@ typedef struct _trace_data {
   (WITH_TRACE_P (idx) && STATE_TRACE_FLAGS (sd)[idx] != 0)
 
 /* Non-zero if --trace-<xxxx> was specified for SD.  */
-#define STRACE_ANY_P(sd)       ((WITH_TRACE) && (STATE_TRACE_DATA (sd)->trace_any_p))
+#define STRACE_ANY_P(sd)       (WITH_TRACE_ANY_P && (STATE_TRACE_DATA (sd)->trace_any_p))
 #define STRACE_INSN_P(sd)      STRACE_P (sd, TRACE_INSN_IDX)
 #define STRACE_DECODE_P(sd)    STRACE_P (sd, TRACE_DECODE_IDX)
 #define STRACE_EXTRACT_P(sd)   STRACE_P (sd, TRACE_EXTRACT_IDX)
@@ -218,7 +221,7 @@ typedef struct _trace_data {
   (WITH_TRACE_P (idx) && CPU_TRACE_FLAGS (cpu)[idx] != 0)
 
 /* Non-zero if --trace-<xxxx> was specified for CPU.  */
-#define TRACE_ANY_P(cpu)       ((WITH_TRACE) && (CPU_TRACE_DATA (cpu)->trace_any_p))
+#define TRACE_ANY_P(cpu)       (WITH_TRACE_ANY_P && (CPU_TRACE_DATA (cpu)->trace_any_p))
 #define TRACE_INSN_P(cpu)      TRACE_P (cpu, TRACE_INSN_IDX)
 #define TRACE_DECODE_P(cpu)    TRACE_P (cpu, TRACE_DECODE_IDX)
 #define TRACE_EXTRACT_P(cpu)   TRACE_P (cpu, TRACE_EXTRACT_IDX)