diff options
author | Tim Newsome <tim@sifive.com> | 2016-03-15 13:50:17 -0700 |
---|---|---|
committer | Tim Newsome <tim@sifive.com> | 2016-05-23 12:12:10 -0700 |
commit | 0cc52e8e5dd9dadf7835869e0de4c9daa1e0d5db (patch) | |
tree | d1eb9915b0ce5ae11f596bc961582744e6b49161 /tests | |
parent | 77a51e91f8a71b6d66304a0a134ac2af04adafc3 (diff) | |
download | spike-0cc52e8e5dd9dadf7835869e0de4c9daa1e0d5db.zip spike-0cc52e8e5dd9dadf7835869e0de4c9daa1e0d5db.tar.gz spike-0cc52e8e5dd9dadf7835869e0de4c9daa1e0d5db.tar.bz2 |
Update regnum handling to match gdb CSR changes.
Diffstat (limited to 'tests')
-rwxr-xr-x | tests/gdbserver-smoke.py | 11 | ||||
-rw-r--r-- | tests/testlib.py | 8 |
2 files changed, 18 insertions, 1 deletions
diff --git a/tests/gdbserver-smoke.py b/tests/gdbserver-smoke.py index 9d04915..306f6f2 100755 --- a/tests/gdbserver-smoke.py +++ b/tests/gdbserver-smoke.py @@ -56,7 +56,7 @@ class DebugTest(unittest.TestCase): # The time register should always be changing. last_time = None for _ in range(5): - time = self.gdb.command("p $time").split('=')[-1] + time = self.gdb.p("$time") self.assertNotEqual(time, last_time) last_time = time self.gdb.command("stepi") @@ -93,5 +93,14 @@ class RegsTest(unittest.TestCase): self.assertEqual(self.gdb.x("data+%d" % (8*n), 'g'), n*0xdeadbeef+17) + def test_write_csrs(self): + # As much a test of gdb as of the simulator. + self.gdb.p("$mscratch=0") + self.gdb.stepi() + self.assertEqual(self.gdb.p("$mscratch"), 0) + self.gdb.p("$mscratch=123") + self.gdb.stepi() + self.assertEqual(self.gdb.p("$mscratch"), 123) + if __name__ == '__main__': unittest.main() diff --git a/tests/testlib.py b/tests/testlib.py index 0c1713c..d41c150 100644 --- a/tests/testlib.py +++ b/tests/testlib.py @@ -56,3 +56,11 @@ class Gdb(object): output = self.command("x/%s %s" % (size, address)) value = int(output.split(':')[1].strip()) return value + + def p(self, obj): + output = self.command("p %s" % obj) + value = int(output.split('=')[-1].strip()) + return value + + def stepi(self): + return self.command("stepi") |