+ case SIMCALL_MUTEX_INIT:
+ simcall->mutex_init.result = SIMIX_mutex_init();
+ SIMIX_simcall_answer(simcall);
+ break;
+
+ case SIMCALL_MUTEX_DESTROY:
+ SIMIX_mutex_destroy(simcall->mutex_destroy.mutex);
+ SIMIX_simcall_answer(simcall);
+ break;
+
+ case SIMCALL_MUTEX_LOCK:
+ SIMIX_pre_mutex_lock(simcall);
+ break;
+
+ case SIMCALL_MUTEX_TRYLOCK:
+ simcall->mutex_trylock.result =
+ SIMIX_mutex_trylock(simcall->mutex_trylock.mutex, simcall->issuer);
+ SIMIX_simcall_answer(simcall);
+ break;
+
+ case SIMCALL_MUTEX_UNLOCK:
+ SIMIX_mutex_unlock(simcall->mutex_unlock.mutex, simcall->issuer);
+ SIMIX_simcall_answer(simcall);
+ break;
+
+ case SIMCALL_COND_INIT:
+ simcall->cond_init.result = SIMIX_cond_init();
+ SIMIX_simcall_answer(simcall);
+ break;
+
+ case SIMCALL_COND_DESTROY:
+ SIMIX_cond_destroy(simcall->cond_destroy.cond);
+ SIMIX_simcall_answer(simcall);
+ break;
+
+ case SIMCALL_COND_SIGNAL:
+ SIMIX_cond_signal(simcall->cond_signal.cond);
+ SIMIX_simcall_answer(simcall);
+ break;
+
+ case SIMCALL_COND_WAIT:
+ SIMIX_pre_cond_wait(simcall);