aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMegan Wachs <megan@sifive.com>2017-11-17 11:27:04 -0800
committerMegan Wachs <megan@sifive.com>2017-11-17 11:27:04 -0800
commit11427914d498f36907963506ce2ace0e07143557 (patch)
treebd5231f4187b8c2a3280c47c7e6f857ff2ce3f42
parent4590b79bc7241f3fa2424f96b4c6666a864fb6a9 (diff)
downloadriscv-tests-xlen_fix.zip
riscv-tests-xlen_fix.tar.gz
riscv-tests-xlen_fix.tar.bz2
debug: Fix the XLEN command line checkxlen_fix
-rw-r--r--debug/targets.py15
1 files changed, 8 insertions, 7 deletions
diff --git a/debug/targets.py b/debug/targets.py
index e92b593..1401f1d 100644
--- a/debug/targets.py
+++ b/debug/targets.py
@@ -153,9 +153,9 @@ def add_target_options(parser):
help="The command to use to start the debug server (e.g. OpenOCD)")
xlen_group = parser.add_mutually_exclusive_group()
- xlen_group.add_argument("--32", action="store_const", const=32, dest="xlen",
+ xlen_group.add_argument("--32", action="store_const", const=32, dest="xlen", default=0,
help="Force the target to be 32-bit.")
- xlen_group.add_argument("--64", action="store_const", const=64, dest="xlen",
+ xlen_group.add_argument("--64", action="store_const", const=64, dest="xlen", default=0,
help="Force the target to be 64-bit.")
parser.add_argument("--isolate", action="store_true",
@@ -180,10 +180,11 @@ def target(parsed):
t = found[0](parsed.target, parsed)
assert t.harts, "%s doesn't have any harts defined!" % t.name
- for h in t.harts :
- if (h.xlen == 0):
- h.xlen = parsed.xlen
- elif (h.xlen != parsed.xlen):
- raise Exception("The target has an XLEN of %d, but the command line specified an XLEN of %d. They must match." % (h.xlen, parsed.xlen))
+ if (parsed.xlen > 0):
+ for h in t.harts :
+ if (h.xlen == 0):
+ h.xlen = parsed.xlen
+ elif (h.xlen != parsed.xlen):
+ raise Exception("The target hart specified an XLEN of %d, but the command line specified an XLEN of %d. They must match." % (h.xlen, parsed.xlen))
return t