Newer gdb requires more debug info in order to "watch data" in this
test. I'm not sure how to make that debug info happen, so instead we
tell it the address to use.
self.gdb.c()
read_loop = self.gdb.p("&read_loop")
read_again = self.gdb.p("&read_again")
self.gdb.c()
read_loop = self.gdb.p("&read_loop")
read_again = self.gdb.p("&read_again")
- self.gdb.command("rwatch data")
+ data = self.gdb.p("&data")
+ self.gdb.command("rwatch *0x%x" % data)
self.gdb.c()
# Accept hitting the breakpoint before or after the load instruction.
assertIn(self.gdb.p("$pc"), [read_loop, read_loop + 4])
self.gdb.c()
# Accept hitting the breakpoint before or after the load instruction.
assertIn(self.gdb.p("$pc"), [read_loop, read_loop + 4])
self.gdb.command("b just_before_write_loop")
self.gdb.c()
write_loop = self.gdb.p("&write_loop")
self.gdb.command("b just_before_write_loop")
self.gdb.c()
write_loop = self.gdb.p("&write_loop")
- self.gdb.command("watch data")
+ data = self.gdb.p("&data")
+ self.gdb.command("watch *0x%x" % data)
self.gdb.c()
# Accept hitting the breakpoint before or after the store instruction.
assertIn(self.gdb.p("$pc"), [write_loop, write_loop + 4])
self.gdb.c()
# Accept hitting the breakpoint before or after the store instruction.
assertIn(self.gdb.p("$pc"), [write_loop, write_loop + 4])