diff options
author | Doug Evans <dje@google.com> | 1997-11-18 23:55:33 +0000 |
---|---|---|
committer | Doug Evans <dje@google.com> | 1997-11-18 23:55:33 +0000 |
commit | e5ce1670c108daaa40ca941557daa29b0d26b09d (patch) | |
tree | 8eda18428c5770f59ff81fc04c4c5bad4d9a031f /sim/common/sim-base.h | |
parent | 590fc16693e122726350b8a8cecf1769885386be (diff) | |
download | gdb-e5ce1670c108daaa40ca941557daa29b0d26b09d.zip gdb-e5ce1670c108daaa40ca941557daa29b0d26b09d.tar.gz gdb-e5ce1670c108daaa40ca941557daa29b0d26b09d.tar.bz2 |
* Make-common.in (SIM_NEW_COMMON_OBJS): New variable.
* sim-base.h (CIA_ADDR): Provide default definition.
Diffstat (limited to 'sim/common/sim-base.h')
-rw-r--r-- | sim/common/sim-base.h | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/sim/common/sim-base.h b/sim/common/sim-base.h index 21be805..231b26e 100644 --- a/sim/common/sim-base.h +++ b/sim/common/sim-base.h @@ -62,9 +62,16 @@ with this program; if not, write to the Free Software Foundation, Inc., #ifndef NULL_CIA #define NULL_CIA ((sim_cia) 0) #endif +/* Return the current instruction address as a number. + Some targets treat the current instruction address as a struct + (e.g. for delay slot handling). */ +#ifndef CIA_ADDR +#define CIA_ADDR(cia) (cia) +#endif #ifndef INVALID_INSTRUCTION_ADDRESS #define INVALID_INSTRUCTION_ADDRESS ((address_word)0 - 1) #endif + typedef struct _sim_cpu sim_cpu; #include "sim-module.h" @@ -80,7 +87,9 @@ typedef struct _sim_cpu sim_cpu; #include "sim-engine.h" #include "sim-watch.h" #include "sim-memopt.h" - +#ifdef SIM_HAVE_BREAKPOINTS +#include "sim-break.h" +#endif /* Global pointer to current state while sim_resume is running. On a machine with lots of registers, it might be possible to reserve @@ -153,6 +162,10 @@ typedef struct { int verbose_p; #define STATE_VERBOSE_P(sd) ((sd)->base.verbose_p) + /* Non cpu-specific trace data. See sim-trace.h. */ + TRACE_DATA trace_data; +#define STATE_TRACE_DATA(sd) (& (sd)->base.trace_data) + /* If non NULL, the BFD architecture specified on the command line */ const struct bfd_arch_info *architecture; #define STATE_ARCHITECTURE(sd) ((sd)->base.architecture) @@ -220,13 +233,16 @@ typedef struct { sim_watchpoints watchpoints; #define STATE_WATCHPOINTS(sd) (&(sd)->base.watchpoints) + /* Pointer to list of breakpoints */ + struct sim_breakpoint *breakpoints; +#define STATE_BREAKPOINTS(sd) ((sd)->base.breakpoints) + /* Marker for those wanting to do sanity checks. This should remain the last member of this struct to help catch miscompilation errors. */ int magic; #define SIM_MAGIC_NUMBER 0x4242 #define STATE_MAGIC(sd) ((sd)->base.magic) - } sim_state_base; |