203,205c203,212
< if options.at_instruction:
< checkpoint_dir = joinpath(cptdir, "cpt.%s.%s" % \
< (options.bench, options.checkpoint_restore))
---
> if options.at_instruction or options.simpoint:
> inst = options.checkpoint_restore
> if options.simpoint:
> # assume workload 0 has the simpoint
> if testsys.cpu[0].workload[0].simpoint == 0:
> fatal('Unable to find simpoint')
> inst += int(testsys.cpu[0].workload[0].simpoint)
>
> checkpoint_dir = joinpath(cptdir,
> "cpt.%s.%s" % (options.bench, inst))
212,228d218
< elif options.simpoint:
< # assume workload 0 has the simpoint
< if testsys.cpu[0].workload[0].simpoint == 0:
< fatal('Unable to find simpoint')
<
< options.checkpoint_restore += \
< int(testsys.cpu[0].workload[0].simpoint)
<
< checkpoint_dir = joinpath(cptdir, "cpt.%s.%d" % \
< (options.bench, options.checkpoint_restore))
< if not exists(checkpoint_dir):
< fatal("Unable to find checkpoint directory %s.%s",
< options.bench, options.checkpoint_restore)
<
< print "Restoring checkpoint ..."
< m5.restoreCheckpoint(checkpoint_dir)
< print "Done."