def test(self):
self.check_reg("f18", "fs2")
+class SimpleNoExistTest(GdbTest):
+ def test(self):
+ try:
+ self.gdb.p("$csr2288")
+ assert False, "Reading csr2288 should have failed"
+ except testlib.CouldNotFetch:
+ pass
+ try:
+ self.gdb.p("$csr2288=5")
+ assert False, "Writing csr2288 should have failed"
+ except testlib.CouldNotFetch:
+ pass
+
class SimpleMemoryTest(GdbTest):
def access_test(self, size, data_type):
assertEqual(self.gdb.p("sizeof(%s)" % data_type), size)
def test(self):
self.gdb.load()
self.gdb.command("b _exit")
- self.gdb.c(timeout=60)
+ self.gdb.c()
assertEqual(self.gdb.p("status"), self.crc)
os.unlink(self.download_c.name)
# PMP registers are optional
pass
+ # Ensure Virtual Memory is disabled if applicable (SATP register is not reset)
+ try:
+ self.gdb.p("$satp=0")
+ except testlib.CouldNotFetch:
+ # SATP only exists if you have S mode.
+ pass
+
# Leave the PC at _start, where the first 4 instructions should be
# legal in any mode.
for privilege in range(4):