Link the infinate loop at 0x10000000
[riscv-tests.git] / debug / testlib.py
index a66d59a7b450baf63e7b99aa6c50ef6e0ded3fec..858c75cb43ba45206aaf7e58c652df9216640e0a 100644 (file)
@@ -67,17 +67,20 @@ class Spike(object):
             spike = os.path.expandvars("$RISCV/bin/spike")
             cmd = [spike]
         if xlen == 32:
-            cmd += ["--isa", "RV32"]
+            cmd += ["--isa", "RV32G"]
+        else:
+            cmd += ["--isa", "RV64G"]
 
         if timeout:
             cmd = ["timeout", str(timeout)] + cmd
 
+        cmd += ["-m0x10000000:0x10000000"]
+
         if halted:
             cmd.append('-H')
         if with_jtag_gdb:
             cmd += ['--rbb-port', '0']
             os.environ['REMOTE_BITBANG_HOST'] = 'localhost'
-        cmd.append("-m32")
         cmd.append('programs/infinite_loop')
         if binary:
             cmd.append(binary)
@@ -113,7 +116,7 @@ class Spike(object):
 class VcsSim(object):
     def __init__(self, sim_cmd=None, debug=False):
         if sim_cmd:
-            cmd = shlex.split(simv)
+            cmd = shlex.split(sim_cmd)
         else:
             cmd = ["simv"]
         cmd += ["+jtag_vpi_enable"]
@@ -538,7 +541,8 @@ class GdbTest(BaseTest):
             self.gdb.command(
                     "target extended-remote localhost:%d" % self.server.port)
 
-        self.gdb.p("$priv=3")
+        # FIXME: OpenOCD doesn't handle PRIV now
+        #self.gdb.p("$priv=3")
 
     def classTeardown(self):
         del self.gdb