Add macros for CPU_FOO_FILE, CPU_STATE.
authorDavid Edelsohn <dje.gcc@gmail.com>
Thu, 17 Apr 1997 14:07:43 +0000 (14:07 +0000)
committerDavid Edelsohn <dje.gcc@gmail.com>
Thu, 17 Apr 1997 14:07:43 +0000 (14:07 +0000)
sim/common/sim-base.h

index d221e04074efcebef05f01a81e6c5cd96c438d1d..8b1ac932acc9c3d077bc8586a53965445b5afd2f 100644 (file)
@@ -69,7 +69,7 @@ extern struct sim_state *current_state;
 
    sim_cpu is defined to be:
 
-   typedef struct {
+   typedef struct _sim_cpu {
       ... simulator specific members ...
       sim_cpu_base base;
    } sim_cpu;
@@ -150,6 +150,7 @@ typedef struct {
 typedef struct {
   /* Backlink to main state struct.  */
   SIM_DESC sd;
+#define CPU_STATE(cpu) ((cpu)->base.sd)
 
   /* Maximum number of traceable entities.  */
 #ifndef MAX_TRACE_VALUES
@@ -175,6 +176,7 @@ typedef struct {
   /* Tracing output goes to this or stdout if NULL.
      We can't store `stdout' here as stdout goes through a callback.  */
   FILE *trace_file;
+#define CPU_TRACE_FILE(cpu) ((cpu)->base.trace_file)
 
   /* Maximum number of debuggable entities.
      This debugging is not intended for normal use.
@@ -194,6 +196,7 @@ typedef struct {
   /* Debugging output goes to this or stderr if NULL.
      We can't store `stderr' here as stderr goes through a callback.  */
   FILE *debug_file;
+#define CPU_DEBUG_FILE(cpu) ((cpu)->base.debug_file)
 
 #ifdef SIM_HAVE_PROFILE
   /* Maximum number of profilable entities.  */
@@ -223,6 +226,7 @@ typedef struct {
   /* Profile output goes to this or stdout if NULL.
      We can't store `stderr' here as stdout goes through a callback.  */
   FILE *profile_file;
+#define CPU_PROFILE_FILE(cpu) ((cpu)->base.profile_file)
 #endif /* SIM_HAVE_PROFILE */
 } sim_cpu_base;