#include "smx_private.h"
#ifdef HAVE_MC
-#include "mc/mc_process.h"
-#include "mc/mc_model_checker.h"
+#include "mc/mc_forward.h"
#endif
XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(simix_popping);
[SIMCALL_VM_SHUTDOWN] = "SIMCALL_VM_SHUTDOWN",
[SIMCALL_VM_SAVE] = "SIMCALL_VM_SAVE",
[SIMCALL_VM_RESTORE] = "SIMCALL_VM_RESTORE",
+ [SIMCALL_VM_MIGRATEFROM_RESUMETO] = "SIMCALL_VM_MIGRATEFROM_RESUMETO",
[SIMCALL_PROCESS_CREATE] = "SIMCALL_PROCESS_CREATE",
[SIMCALL_PROCESS_KILL] = "SIMCALL_PROCESS_KILL",
[SIMCALL_PROCESS_KILLALL] = "SIMCALL_PROCESS_KILLALL",
[SIMCALL_STORAGE_GET_CONTENT] = "SIMCALL_STORAGE_GET_CONTENT",
[SIMCALL_ASR_GET_PROPERTIES] = "SIMCALL_ASR_GET_PROPERTIES",
[SIMCALL_MC_RANDOM] = "SIMCALL_MC_RANDOM",
+ [SIMCALL_SET_CATEGORY] = "SIMCALL_SET_CATEGORY",
#ifdef HAVE_LATENCY_BOUND_TRACKING
[SIMCALL_COMM_IS_LATENCY_BOUNDED] = "SIMCALL_COMM_IS_LATENCY_BOUNDED",
#endif
-#ifdef HAVE_TRACING
- [SIMCALL_SET_CATEGORY] = "SIMCALL_SET_CATEGORY",
-#endif
-
#ifdef HAVE_MC
[SIMCALL_MC_SNAPSHOT] = "SIMCALL_MC_SNAPSHOT",
[SIMCALL_MC_COMPARE_SNAPSHOTS] = "SIMCALL_MC_COMPARE_SNAPSHOTS",
*/
void SIMIX_simcall_handle(smx_simcall_t simcall, int value) {
XBT_DEBUG("Handling simcall %p: %s", simcall, SIMIX_simcall_name(simcall->call));
- #ifdef HAVE_MC
- if (mc_model_checker) {
- mc_model_checker->process.cache_flags = 0;
- }
- #endif
SIMCALL_SET_MC_VALUE(simcall, value);
if (simcall->issuer->context->iwannadie && simcall->call != SIMCALL_PROCESS_CLEANUP)
return;
SIMIX_simcall_answer(simcall);
break;
+case SIMCALL_VM_MIGRATEFROM_RESUMETO:
+ SIMIX_vm_migratefrom_resumeto((smx_host_t) simcall->args[0].dp,(smx_host_t) simcall->args[1].dp,(smx_host_t) simcall->args[2].dp);
+ SIMIX_simcall_answer(simcall);
+ break;
+
case SIMCALL_PROCESS_CREATE:
simcall_HANDLER_process_create(simcall , (smx_process_t*) simcall->args[0].dp, simcall->args[1].cc, (xbt_main_func_t) simcall->args[2].fp, simcall->args[3].dp, simcall->args[4].cc, simcall->args[5].d, simcall->args[6].i, (char**) simcall->args[7].dp, (xbt_dict_t) simcall->args[8].dp, simcall->args[9].i);
SIMIX_simcall_answer(simcall);
SIMIX_simcall_answer(simcall);
break;
-#ifdef HAVE_LATENCY_BOUND_TRACKING
-case SIMCALL_COMM_IS_LATENCY_BOUNDED:
- simcall->result.i = SIMIX_comm_is_latency_bounded((smx_synchro_t) simcall->args[0].dp);
+case SIMCALL_SET_CATEGORY:
+ SIMIX_set_category((smx_synchro_t) simcall->args[0].dp, simcall->args[1].cc);
SIMIX_simcall_answer(simcall);
break;
-#endif
-
-#ifdef HAVE_TRACING
-case SIMCALL_SET_CATEGORY:
- SIMIX_set_category((smx_synchro_t) simcall->args[0].dp, simcall->args[1].cc);
+#ifdef HAVE_LATENCY_BOUND_TRACKING
+case SIMCALL_COMM_IS_LATENCY_BOUNDED:
+ simcall->result.i = SIMIX_comm_is_latency_bounded((smx_synchro_t) simcall->args[0].dp);
SIMIX_simcall_answer(simcall);
break;