diff -r d27e60efe9e2 -r 2251407a57a5 configs/common/Options.py --- a/configs/common/Options.py Wed Jan 04 15:15:27 2012 -0600 +++ b/configs/common/Options.py Wed Jan 04 15:16:27 2012 -0600 @@ -84,6 +84,10 @@ help="checkpoint at specified work end count") parser.add_option("--work-cpus-checkpoint-count", action="store", type="int", help="checkpoint and exit when active cpu count is reached") +parser.add_option("--restore-with-cpu", action="store", type="choice", + default="atomic", choices = ["atomic", "timing", + "detailed", "inorder"], + help = "cpu type for restoring from a checkpoint") # CPU Switching - default switch model goes from a checkpoint diff -r d27e60efe9e2 -r 2251407a57a5 configs/common/Simulation.py --- a/configs/common/Simulation.py Wed Jan 04 15:15:27 2012 -0600 +++ b/configs/common/Simulation.py Wed Jan 04 15:16:27 2012 -0600 @@ -60,7 +60,15 @@ test_mem_mode = 'atomic' if not atomic: - if options.checkpoint_restore != None or options.fast_forward: + if options.checkpoint_restore != None: + if options.restore_with_cpu != options.cpu_type: + CPUClass = TmpClass + class TmpClass(AtomicSimpleCPU): pass + else: + if options.restore_with_cpu != "atomic": + test_mem_mode = 'timing' + + elif options.fast_forward: CPUClass = TmpClass class TmpClass(AtomicSimpleCPU): pass else: