diff options
author | Andrew Cagney <cagney@redhat.com> | 1998-11-27 23:35:08 +0000 |
---|---|---|
committer | Andrew Cagney <cagney@redhat.com> | 1998-11-27 23:35:08 +0000 |
commit | 02331869322178ead208b8328caab67c5a77b6b3 (patch) | |
tree | 0e95f5333158653177ab82d4793d08af10c0d2ea /gdb/rs6000-tdep.c | |
parent | 5825dfc52513bdb91e298f7cf7642235644ee65a (diff) | |
download | gdb-02331869322178ead208b8328caab67c5a77b6b3.zip gdb-02331869322178ead208b8328caab67c5a77b6b3.tar.gz gdb-02331869322178ead208b8328caab67c5a77b6b3.tar.bz2 |
CARP:
STEP_SKIPS_DELAY - add STEP_SKIPS_DELAY_P and rewrite use removing
#ifdef's.
NO_SINGLE_STEP - replace with SOFTWARE_SINGLE_STEP_P +
SOFTWARE_SINGLE_STEP. Replace global variable one_stepped with static
singlestep_breakpoints_inserted_p. Cleanup infrun.c (scary!).
Diffstat (limited to 'gdb/rs6000-tdep.c')
-rw-r--r-- | gdb/rs6000-tdep.c | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/gdb/rs6000-tdep.c b/gdb/rs6000-tdep.c index c8db798..47fd886 100644 --- a/gdb/rs6000-tdep.c +++ b/gdb/rs6000-tdep.c @@ -32,9 +32,6 @@ extern struct obstack frame_cache_obstack; extern int errno; -/* Nonzero if we just simulated a single step break. */ -int one_stepped; - /* Breakpoint shadows for the single step instructions will be kept here. */ static struct sstep_breaks { @@ -157,8 +154,9 @@ rs6000_breakpoint_from_pc (bp_addr, bp_size) /* AIX does not support PT_STEP. Simulate it. */ void -single_step (signal) +rs6000_software_single_step (signal, insert_breakpoints_p) enum target_signal signal; + int insert_breakpoints_p; { #define INSNLEN(OPCODE) 4 @@ -170,7 +168,8 @@ single_step (signal) CORE_ADDR breaks[2]; int opcode; - if (!one_stepped) { + if (insert_breakpoints_p) { + loc = read_pc (); insn = read_memory_integer (loc, 4); @@ -197,7 +196,6 @@ single_step (signal) stepBreaks[ii].address = breaks[ii]; } - one_stepped = 1; } else { /* remove step breakpoints. */ @@ -206,7 +204,6 @@ single_step (signal) write_memory (stepBreaks[ii].address, stepBreaks[ii].data, 4); - one_stepped = 0; } errno = 0; /* FIXME, don't ignore errors! */ /* What errors? {read,write}_memory call error(). */ |