aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Newsome <tim@sifive.com>2022-07-04 09:27:05 -0700
committerTim Newsome <tim@sifive.com>2022-11-29 13:11:58 -0800
commit1f55991268c9851de8024ec973d54d5709bf454b (patch)
treeaa3da7d57d813ccde856683ca7c4cbbf1a93dbbd
parent4cb71232a6d203152181a4812dcfce061acc6d93 (diff)
downloadriscv-tests-1f55991268c9851de8024ec973d54d5709bf454b.zip
riscv-tests-1f55991268c9851de8024ec973d54d5709bf454b.tar.gz
riscv-tests-1f55991268c9851de8024ec973d54d5709bf454b.tar.bz2
Add `support_cease` hart feature.
-rwxr-xr-xdebug/gdbserver.py6
-rw-r--r--debug/targets.py3
2 files changed, 6 insertions, 3 deletions
diff --git a/debug/gdbserver.py b/debug/gdbserver.py
index a55ae86..08e8f4f 100755
--- a/debug/gdbserver.py
+++ b/debug/gdbserver.py
@@ -1818,7 +1818,7 @@ class CeaseStepiSingleTest(ProgramTest):
"""Test that we work correctly when the hart we're debugging ceases to
respond."""
def early_applicable(self):
- return len(self.target.harts) == 1
+ return self.hart.support_cease and len(self.target.harts) == 1
def test(self):
self.gdb.b("main")
@@ -1841,7 +1841,7 @@ class CeaseRunSingleTest(ProgramTest):
"""Test that we work correctly when the hart we're debugging ceases to
respond."""
def early_applicable(self):
- return len(self.target.harts) == 1
+ return self.hart.support_cease and len(self.target.harts) == 1
def test(self):
self.gdb.b("main")
@@ -1865,7 +1865,7 @@ class CeaseMultiTest(ProgramTest):
it's powered down)."""
def early_applicable(self):
- return len(self.target.harts) > 1
+ return self.hart.support_cease and len(self.target.harts) > 1
def setup(self):
ProgramTest.setup(self)
diff --git a/debug/targets.py b/debug/targets.py
index b2ed01b..ddd39d5 100644
--- a/debug/targets.py
+++ b/debug/targets.py
@@ -50,6 +50,9 @@ class Hart:
# is fine.
system = None
+ # Supports the cease instruction, which causes a hart to become unavailable.
+ support_cease = False
+
def __init__(self, misa=None, system=None, link_script_path=None):
if misa:
self.misa = misa