diff options
author | Tim Newsome <tim@sifive.com> | 2017-12-20 12:17:05 -0800 |
---|---|---|
committer | Tim Newsome <tim@sifive.com> | 2017-12-20 12:17:05 -0800 |
commit | 30b70b7ed988fa06ab423e05b272898a1527ba11 (patch) | |
tree | ba663c8457f72f216b2266ea45b371c177507d7f | |
parent | aaf4df2371624744bd90e2c9e71cabab2d91d9e1 (diff) | |
download | riscv-tests-30b70b7ed988fa06ab423e05b272898a1527ba11.zip riscv-tests-30b70b7ed988fa06ab423e05b272898a1527ba11.tar.gz riscv-tests-30b70b7ed988fa06ab423e05b272898a1527ba11.tar.bz2 |
Verify that F18 does not exist on FPU-less targets
-rwxr-xr-x | debug/gdbserver.py | 37 |
1 files changed, 20 insertions, 17 deletions
diff --git a/debug/gdbserver.py b/debug/gdbserver.py index 521fffb..d7092a8 100755 --- a/debug/gdbserver.py +++ b/debug/gdbserver.py @@ -106,23 +106,26 @@ class SimpleT1Test(SimpleRegisterTest): class SimpleF18Test(SimpleRegisterTest): def check_reg(self, name, alias): - self.gdb.p_raw("$mstatus=$mstatus | 0x00006000") - self.gdb.stepi() - a = random.random() - b = random.random() - self.gdb.p_raw("$%s=%f" % (name, a)) - assertLess(abs(float(self.gdb.p_raw("$%s" % alias)) - a), .001) - self.gdb.stepi() - assertLess(abs(float(self.gdb.p_raw("$%s" % name)) - a), .001) - assertLess(abs(float(self.gdb.p_raw("$%s" % alias)) - a), .001) - self.gdb.p_raw("$%s=%f" % (alias, b)) - assertLess(abs(float(self.gdb.p_raw("$%s" % name)) - b), .001) - self.gdb.stepi() - assertLess(abs(float(self.gdb.p_raw("$%s" % name)) - b), .001) - assertLess(abs(float(self.gdb.p_raw("$%s" % alias)) - b), .001) - - def early_applicable(self): - return self.hart.extensionSupported('F') + if self.hart.extensionSupported('F'): + self.gdb.p_raw("$mstatus=$mstatus | 0x00006000") + self.gdb.stepi() + a = random.random() + b = random.random() + self.gdb.p_raw("$%s=%f" % (name, a)) + assertLess(abs(float(self.gdb.p_raw("$%s" % alias)) - a), .001) + self.gdb.stepi() + assertLess(abs(float(self.gdb.p_raw("$%s" % name)) - a), .001) + assertLess(abs(float(self.gdb.p_raw("$%s" % alias)) - a), .001) + self.gdb.p_raw("$%s=%f" % (alias, b)) + assertLess(abs(float(self.gdb.p_raw("$%s" % name)) - b), .001) + self.gdb.stepi() + assertLess(abs(float(self.gdb.p_raw("$%s" % name)) - b), .001) + assertLess(abs(float(self.gdb.p_raw("$%s" % alias)) - b), .001) + else: + output = self.gdb.p_raw("$" + name) + assertEqual(output, "void") + output = self.gdb.p_raw("$" + alias) + assertEqual(output, "void") def test(self): self.check_reg("f18", "fs2") |