From cfe78c775598b9d9a77cd4012df025512a62be19 Mon Sep 17 00:00:00 2001 From: Tim Newsome Date: Wed, 24 Oct 2018 15:49:33 -0700 Subject: Re-enable TriggerStoreAddressInstant Gdb and OpenOCD were fixed so we don't have to accept broken behavior anymore. --- debug/gdbserver.py | 13 +------------ 1 file changed, 1 insertion(+), 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]) -- cgit v1.1