def cmd_skip_to(poly): if SIM_simics_is_running(): raise CliError, "Simics is already running" if not VT_hindsight_license_check(): print "Command requires hindsight license." SIM_command_has_problem() return cpu, steps = poly_to_pair(poly) backer.rewind(steps, cpu) blurb()
def cmd_unstep(count): if SIM_simics_is_running(): raise CliError, "Simics is already running" if not VT_hindsight_license_check(): print "Command requires hindsight license." SIM_command_has_problem() return pt = ptime() backer.rewind(pt - count, current_processor()) output.divert(re.obj.state_level) VT_save_micro_checkpoint("<unstep-mark>", Sim_MC_ID_Tmp | Sim_MC_Persistent) output.undivert() output.separator() count = pt - ptime() if count > 0: eval_cli_line("si %d" % count) output.undivert() output.divert(re.obj.state_level) restore_state_with_id(Sim_MC_ID_Tmp) delete_state(0) output.undivert()