config: Fix need to set ISA of switch cpus.
authorAustin Harris <austinharris@utexas.edu>
Sat, 2 Dec 2017 23:03:28 +0000 (17:03 -0600)
committerAustin Harris <austin.dane.harris@gmail.com>
Tue, 12 Dec 2017 02:11:28 +0000 (02:11 +0000)
Since BaseCPU.createThreads() no longer overrides the BaseCPU.isa
parameter, switch_cpus should have the ISA copied. This fixes a
fatal error in BaseCPU when restoring from a checkpoint.

Change-Id: I4fdcacb76da46bdbe1ce37dcf05c5a6a8a9e5237
Signed-off-by: Austin Harris <austinharris@utexas.edu>
Reviewed-on: https://gem5-review.googlesource.com/6241
Reviewed-by: Jason Lowe-Power <jason@lowepower.com>
Maintainer: Jason Lowe-Power <jason@lowepower.com>

configs/common/Simulation.py

index c4d5c96447808ffa000109d9a4db95e5162a323d..71a982af97d3120c1bf8c3f55886e90848801779 100644 (file)
@@ -464,6 +464,7 @@ def run(options, root, testsys, cpu_class):
             switch_cpus[i].clk_domain = testsys.cpu[i].clk_domain
             switch_cpus[i].progress_interval = \
                 testsys.cpu[i].progress_interval
+            switch_cpus[i].isa = testsys.cpu[i].isa
             # simulation period
             if options.maxinsts:
                 switch_cpus[i].max_insts_any_thread = options.maxinsts
@@ -496,6 +497,7 @@ def run(options, root, testsys, cpu_class):
             repeat_switch_cpus[i].system = testsys
             repeat_switch_cpus[i].workload = testsys.cpu[i].workload
             repeat_switch_cpus[i].clk_domain = testsys.cpu[i].clk_domain
+            repeat_switch_cpus[i].isa = testsys.cpu[i].isa
 
             if options.maxinsts:
                 repeat_switch_cpus[i].max_insts_any_thread = options.maxinsts
@@ -525,6 +527,8 @@ def run(options, root, testsys, cpu_class):
             switch_cpus_1[i].workload = testsys.cpu[i].workload
             switch_cpus[i].clk_domain = testsys.cpu[i].clk_domain
             switch_cpus_1[i].clk_domain = testsys.cpu[i].clk_domain
+            switch_cpus[i].isa = testsys.cpu[i].isa
+            switch_cpus_1[i].isa = testsys.cpu[i].isa
 
             # if restoring, make atomic cpu simulate only a few instructions
             if options.checkpoint_restore != None: