aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xdebug/gdbserver.py13
1 files changed, 1 insertions, 12 deletions
diff --git a/debug/gdbserver.py b/debug/gdbserver.py
index 17e1734..e459ef9 100755
--- a/debug/gdbserver.py
+++ b/debug/gdbserver.py
@@ -806,18 +806,7 @@ class TriggerStoreAddressInstant(TriggerTest):
write_loop = self.gdb.p("&write_loop")
data = self.gdb.p("&data")
self.gdb.command("watch *0x%x" % data)
- output = self.gdb.c()
- if "_exit (status=0)" in output:
- # We ran to _exit. It looks as if we didn't hit the trigger at all.
- # However this can be "correct" behavior. gdb's definition of
- # "watch" is to run until the value in memory changes. To do this
- # it reads the memory value when the trigger is set, and then when
- # the halt happens. Because our triggers can fire just before the
- # write happens, when gdb does this check the memory hasn't
- # changed. So it silently resumes running.
- # https://github.com/riscv/riscv-openocd/issues/295 tracks this
- # problem. Until it's fixed, we're going to allow running to _exit.
- return
+ self.gdb.c()
# Accept hitting the breakpoint before or after the store instruction.
assertIn(self.gdb.p("$pc"), [write_loop, write_loop + 4])