aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Newsome <tim@sifive.com>2021-02-11 10:04:25 -0800
committerGitHub <noreply@github.com>2021-02-11 10:04:25 -0800
commit1ce128fa78c24bb0ed399c647e7139322b5353a7 (patch)
treed1f22cfe0e1c56fc4f8fd526ceb2ac264ca836f8
parent8b90534d16ed57ba3a41645aee0d045ba83c3e05 (diff)
downloadriscv-tests-1ce128fa78c24bb0ed399c647e7139322b5353a7.zip
riscv-tests-1ce128fa78c24bb0ed399c647e7139322b5353a7.tar.gz
riscv-tests-1ce128fa78c24bb0ed399c647e7139322b5353a7.tar.bz2
Add early_applicable() to a few tests. (#325)
It's faster to figure out there that the test is going to N/A.
-rwxr-xr-xdebug/gdbserver.py15
1 files changed, 8 insertions, 7 deletions
diff --git a/debug/gdbserver.py b/debug/gdbserver.py
index 20c1dbe..0a174d3 100755
--- a/debug/gdbserver.py
+++ b/debug/gdbserver.py
@@ -590,10 +590,10 @@ class DebugBreakpoint(DebugTest):
self.exit()
class Hwbp1(DebugTest):
- def test(self):
- if self.hart.instruction_hardware_breakpoint_count < 1:
- raise TestNotApplicable
+ def early_applicable(self):
+ return self.hart.instruction_hardware_breakpoint_count > 0
+ def test(self):
if not self.hart.honors_tdata1_hmode:
# Run to main before setting the breakpoint, because startup code
# will otherwise clear the trigger that we set.
@@ -704,10 +704,10 @@ class HwbpManual(DebugTest):
class Hwbp2(DebugTest):
- def test(self):
- if self.hart.instruction_hardware_breakpoint_count < 2:
- raise TestNotApplicable
+ def early_applicable(self):
+ return self.hart.instruction_hardware_breakpoint_count >= 2
+ def test(self):
self.gdb.command("delete")
self.gdb.hbreak("main")
self.gdb.hbreak("rot13")
@@ -1327,7 +1327,8 @@ class TriggerStoreAddressInstant(TriggerTest):
class TriggerDmode(TriggerTest):
def early_applicable(self):
- return self.hart.honors_tdata1_hmode
+ return self.hart.honors_tdata1_hmode and \
+ self.hart.instruction_hardware_breakpoint_count > 0
def check_triggers(self, tdata1_lsbs, tdata2):
dmode = 1 << (self.hart.xlen-5)