1 case SIMCALL_HOST_GET_BY_NAME:
2 simcall->result.dp = SIMIX_pre_host_get_by_name(simcall , simcall->args[0].cc);
3 SIMIX_simcall_answer(simcall);
6 case SIMCALL_HOST_GET_NAME:
7 simcall->result.cc = SIMIX_pre_host_get_name(simcall , (smx_host_t) simcall->args[0].dp);
8 SIMIX_simcall_answer(simcall);
12 SIMIX_pre_host_on(simcall , (smx_host_t) simcall->args[0].dp);
13 SIMIX_simcall_answer(simcall);
16 case SIMCALL_HOST_OFF:
17 SIMIX_pre_host_off(simcall , (smx_host_t) simcall->args[0].dp);
18 SIMIX_simcall_answer(simcall);
21 case SIMCALL_HOST_GET_PROPERTIES:
22 simcall->result.dp = SIMIX_pre_host_get_properties(simcall , (smx_host_t) simcall->args[0].dp);
23 SIMIX_simcall_answer(simcall);
26 case SIMCALL_HOST_GET_CORE:
27 simcall->result.i = SIMIX_pre_host_get_core(simcall , (smx_host_t) simcall->args[0].dp);
28 SIMIX_simcall_answer(simcall);
31 case SIMCALL_HOST_GET_PROCESS_LIST:
32 simcall->result.dp = SIMIX_pre_host_get_process_list(simcall , (smx_host_t) simcall->args[0].dp);
33 SIMIX_simcall_answer(simcall);
36 case SIMCALL_HOST_GET_SPEED:
37 simcall->result.d = SIMIX_pre_host_get_speed(simcall , (smx_host_t) simcall->args[0].dp);
38 SIMIX_simcall_answer(simcall);
41 case SIMCALL_HOST_GET_AVAILABLE_SPEED:
42 simcall->result.d = SIMIX_pre_host_get_available_speed(simcall , (smx_host_t) simcall->args[0].dp);
43 SIMIX_simcall_answer(simcall);
46 case SIMCALL_HOST_GET_STATE:
47 simcall->result.i = SIMIX_pre_host_get_state(simcall , (smx_host_t) simcall->args[0].dp);
48 SIMIX_simcall_answer(simcall);
51 case SIMCALL_HOST_GET_DATA:
52 simcall->result.dp = SIMIX_pre_host_get_data(simcall , (smx_host_t) simcall->args[0].dp);
53 SIMIX_simcall_answer(simcall);
56 case SIMCALL_HOST_SET_DATA:
57 SIMIX_pre_host_set_data(simcall , (smx_host_t) simcall->args[0].dp, simcall->args[1].dp);
58 SIMIX_simcall_answer(simcall);
61 case SIMCALL_HOST_GET_CURRENT_POWER_PEAK:
62 simcall->result.d = SIMIX_pre_host_get_current_power_peak(simcall , (smx_host_t) simcall->args[0].dp);
63 SIMIX_simcall_answer(simcall);
66 case SIMCALL_HOST_GET_POWER_PEAK_AT:
67 simcall->result.d = SIMIX_pre_host_get_power_peak_at(simcall , (smx_host_t) simcall->args[0].dp, simcall->args[1].i);
68 SIMIX_simcall_answer(simcall);
71 case SIMCALL_HOST_GET_NB_PSTATES:
72 simcall->result.i = SIMIX_pre_host_get_nb_pstates(simcall , (smx_host_t) simcall->args[0].dp);
73 SIMIX_simcall_answer(simcall);
76 case SIMCALL_HOST_SET_POWER_PEAK_AT:
77 SIMIX_pre_host_set_power_peak_at(simcall , (smx_host_t) simcall->args[0].dp, simcall->args[1].i);
78 SIMIX_simcall_answer(simcall);
81 case SIMCALL_HOST_GET_CONSUMED_ENERGY:
82 simcall->result.d = SIMIX_pre_host_get_consumed_energy(simcall , (smx_host_t) simcall->args[0].dp);
83 SIMIX_simcall_answer(simcall);
86 case SIMCALL_HOST_EXECUTE:
87 simcall->result.dp = SIMIX_pre_host_execute(simcall , simcall->args[0].cc, (smx_host_t) simcall->args[1].dp, simcall->args[2].d, simcall->args[3].d, simcall->args[4].d, simcall->args[5].ul);
88 SIMIX_simcall_answer(simcall);
91 case SIMCALL_HOST_PARALLEL_EXECUTE:
92 simcall->result.dp = SIMIX_pre_host_parallel_execute(simcall , simcall->args[0].cc, simcall->args[1].i, (smx_host_t*) simcall->args[2].dp, (double*) simcall->args[3].dp, (double*) simcall->args[4].dp, simcall->args[5].d, simcall->args[6].d);
93 SIMIX_simcall_answer(simcall);
96 case SIMCALL_HOST_EXECUTION_DESTROY:
97 SIMIX_pre_host_execution_destroy(simcall , (smx_action_t) simcall->args[0].dp);
98 SIMIX_simcall_answer(simcall);
101 case SIMCALL_HOST_EXECUTION_CANCEL:
102 SIMIX_pre_host_execution_cancel(simcall , (smx_action_t) simcall->args[0].dp);
103 SIMIX_simcall_answer(simcall);
106 case SIMCALL_HOST_EXECUTION_GET_REMAINS:
107 simcall->result.d = SIMIX_pre_host_execution_get_remains(simcall , (smx_action_t) simcall->args[0].dp);
108 SIMIX_simcall_answer(simcall);
111 case SIMCALL_HOST_EXECUTION_GET_STATE:
112 simcall->result.i = SIMIX_pre_host_execution_get_state(simcall , (smx_action_t) simcall->args[0].dp);
113 SIMIX_simcall_answer(simcall);
116 case SIMCALL_HOST_EXECUTION_SET_PRIORITY:
117 SIMIX_pre_host_execution_set_priority(simcall , (smx_action_t) simcall->args[0].dp, simcall->args[1].d);
118 SIMIX_simcall_answer(simcall);
121 case SIMCALL_HOST_EXECUTION_SET_BOUND:
122 SIMIX_pre_host_execution_set_bound(simcall , (smx_action_t) simcall->args[0].dp, simcall->args[1].d);
123 SIMIX_simcall_answer(simcall);
126 case SIMCALL_HOST_EXECUTION_SET_AFFINITY:
127 SIMIX_pre_host_execution_set_affinity(simcall , (smx_action_t) simcall->args[0].dp, (smx_host_t) simcall->args[1].dp, simcall->args[2].ul);
128 SIMIX_simcall_answer(simcall);
131 case SIMCALL_HOST_EXECUTION_WAIT:
132 SIMIX_pre_host_execution_wait(simcall , (smx_action_t) simcall->args[0].dp);
136 case SIMCALL_HOST_GET_STORAGE_LIST:
137 simcall->result.dp = SIMIX_pre_host_get_storage_list(simcall , (smx_host_t) simcall->args[0].dp);
138 SIMIX_simcall_answer(simcall);
141 case SIMCALL_HOST_GET_PARAMS:
142 SIMIX_pre_host_get_params(simcall , (smx_host_t) simcall->args[0].dp, (ws_params_t) simcall->args[1].dp);
143 SIMIX_simcall_answer(simcall);
146 case SIMCALL_HOST_SET_PARAMS:
147 SIMIX_pre_host_set_params(simcall , (smx_host_t) simcall->args[0].dp, (ws_params_t) simcall->args[1].dp);
148 SIMIX_simcall_answer(simcall);
151 case SIMCALL_VM_CREATE:
152 simcall->result.dp = SIMIX_pre_vm_create(simcall , simcall->args[0].cc, (smx_host_t) simcall->args[1].dp);
153 SIMIX_simcall_answer(simcall);
156 case SIMCALL_VM_START:
157 SIMIX_pre_vm_start(simcall , (smx_host_t) simcall->args[0].dp);
158 SIMIX_simcall_answer(simcall);
161 case SIMCALL_VM_SET_STATE:
162 SIMIX_pre_vm_set_state(simcall , (smx_host_t) simcall->args[0].dp, simcall->args[1].i);
163 SIMIX_simcall_answer(simcall);
166 case SIMCALL_VM_GET_STATE:
167 simcall->result.i = SIMIX_pre_vm_get_state(simcall , (smx_host_t) simcall->args[0].dp);
168 SIMIX_simcall_answer(simcall);
171 case SIMCALL_VM_MIGRATE:
172 SIMIX_pre_vm_migrate(simcall , (smx_host_t) simcall->args[0].dp, (smx_host_t) simcall->args[1].dp);
173 SIMIX_simcall_answer(simcall);
176 case SIMCALL_VM_GET_PM:
177 simcall->result.dp = SIMIX_pre_vm_get_pm(simcall , (smx_host_t) simcall->args[0].dp);
178 SIMIX_simcall_answer(simcall);
181 case SIMCALL_VM_SET_BOUND:
182 SIMIX_pre_vm_set_bound(simcall , (smx_host_t) simcall->args[0].dp, simcall->args[1].d);
183 SIMIX_simcall_answer(simcall);
186 case SIMCALL_VM_SET_AFFINITY:
187 SIMIX_pre_vm_set_affinity(simcall , (smx_host_t) simcall->args[0].dp, (smx_host_t) simcall->args[1].dp, simcall->args[2].ul);
188 SIMIX_simcall_answer(simcall);
191 case SIMCALL_VM_DESTROY:
192 SIMIX_pre_vm_destroy(simcall , (smx_host_t) simcall->args[0].dp);
193 SIMIX_simcall_answer(simcall);
196 case SIMCALL_VM_SUSPEND:
197 SIMIX_pre_vm_suspend(simcall , (smx_host_t) simcall->args[0].dp);
198 SIMIX_simcall_answer(simcall);
201 case SIMCALL_VM_RESUME:
202 SIMIX_pre_vm_resume(simcall , (smx_host_t) simcall->args[0].dp);
203 SIMIX_simcall_answer(simcall);
206 case SIMCALL_VM_SHUTDOWN:
207 SIMIX_pre_vm_shutdown(simcall , (smx_host_t) simcall->args[0].dp);
208 SIMIX_simcall_answer(simcall);
211 case SIMCALL_VM_SAVE:
212 SIMIX_pre_vm_save(simcall , (smx_host_t) simcall->args[0].dp);
213 SIMIX_simcall_answer(simcall);
216 case SIMCALL_VM_RESTORE:
217 SIMIX_pre_vm_restore(simcall , (smx_host_t) simcall->args[0].dp);
218 SIMIX_simcall_answer(simcall);
221 case SIMCALL_PROCESS_CREATE:
222 SIMIX_pre_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);
223 SIMIX_simcall_answer(simcall);
226 case SIMCALL_PROCESS_KILL:
227 SIMIX_pre_process_kill(simcall , (smx_process_t) simcall->args[0].dp);
228 SIMIX_simcall_answer(simcall);
231 case SIMCALL_PROCESS_KILLALL:
232 SIMIX_pre_process_killall(simcall , simcall->args[0].i);
233 SIMIX_simcall_answer(simcall);
236 case SIMCALL_PROCESS_CLEANUP:
237 SIMIX_pre_process_cleanup(simcall , (smx_process_t) simcall->args[0].dp);
238 SIMIX_simcall_answer(simcall);
241 case SIMCALL_PROCESS_CHANGE_HOST:
242 SIMIX_pre_process_change_host(simcall , (smx_process_t) simcall->args[0].dp, (smx_host_t) simcall->args[1].dp);
243 SIMIX_simcall_answer(simcall);
246 case SIMCALL_PROCESS_SUSPEND:
247 SIMIX_pre_process_suspend(simcall , (smx_process_t) simcall->args[0].dp);
251 case SIMCALL_PROCESS_RESUME:
252 SIMIX_pre_process_resume(simcall , (smx_process_t) simcall->args[0].dp);
253 SIMIX_simcall_answer(simcall);
256 case SIMCALL_PROCESS_COUNT:
257 simcall->result.i = SIMIX_pre_process_count(simcall );
258 SIMIX_simcall_answer(simcall);
261 case SIMCALL_PROCESS_GET_PID:
262 simcall->result.i = SIMIX_pre_process_get_PID(simcall , (smx_process_t) simcall->args[0].dp);
263 SIMIX_simcall_answer(simcall);
266 case SIMCALL_PROCESS_GET_PPID:
267 simcall->result.i = SIMIX_pre_process_get_PPID(simcall , (smx_process_t) simcall->args[0].dp);
268 SIMIX_simcall_answer(simcall);
271 case SIMCALL_PROCESS_GET_DATA:
272 simcall->result.dp = SIMIX_pre_process_get_data(simcall , (smx_process_t) simcall->args[0].dp);
273 SIMIX_simcall_answer(simcall);
276 case SIMCALL_PROCESS_SET_DATA:
277 SIMIX_pre_process_set_data(simcall , (smx_process_t) simcall->args[0].dp, simcall->args[1].dp);
278 SIMIX_simcall_answer(simcall);
281 case SIMCALL_PROCESS_GET_HOST:
282 simcall->result.dp = SIMIX_pre_process_get_host(simcall , (smx_process_t) simcall->args[0].dp);
283 SIMIX_simcall_answer(simcall);
286 case SIMCALL_PROCESS_GET_NAME:
287 simcall->result.cc = SIMIX_pre_process_get_name(simcall , (smx_process_t) simcall->args[0].dp);
288 SIMIX_simcall_answer(simcall);
291 case SIMCALL_PROCESS_IS_SUSPENDED:
292 simcall->result.i = SIMIX_pre_process_is_suspended(simcall , (smx_process_t) simcall->args[0].dp);
293 SIMIX_simcall_answer(simcall);
296 case SIMCALL_PROCESS_GET_PROPERTIES:
297 simcall->result.dp = SIMIX_pre_process_get_properties(simcall , (smx_process_t) simcall->args[0].dp);
298 SIMIX_simcall_answer(simcall);
301 case SIMCALL_PROCESS_SLEEP:
302 SIMIX_pre_process_sleep(simcall , simcall->args[0].d);
306 case SIMCALL_PROCESS_ON_EXIT:
307 SIMIX_pre_process_on_exit(simcall , (smx_process_t) simcall->args[0].dp, (int_f_pvoid_t) simcall->args[1].fp, simcall->args[2].dp);
308 SIMIX_simcall_answer(simcall);
311 case SIMCALL_PROCESS_AUTO_RESTART_SET:
312 SIMIX_pre_process_auto_restart_set(simcall , (smx_process_t) simcall->args[0].dp, simcall->args[1].i);
313 SIMIX_simcall_answer(simcall);
316 case SIMCALL_PROCESS_RESTART:
317 simcall->result.dp = SIMIX_pre_process_restart(simcall , (smx_process_t) simcall->args[0].dp);
318 SIMIX_simcall_answer(simcall);
321 case SIMCALL_RDV_CREATE:
322 simcall->result.dp = SIMIX_pre_rdv_create(simcall , simcall->args[0].cc);
323 SIMIX_simcall_answer(simcall);
326 case SIMCALL_RDV_DESTROY:
327 SIMIX_pre_rdv_destroy(simcall , (smx_rdv_t) simcall->args[0].dp);
328 SIMIX_simcall_answer(simcall);
331 case SIMCALL_RDV_GET_BY_NAME:
332 simcall->result.dp = SIMIX_pre_rdv_get_by_name(simcall , simcall->args[0].cc);
333 SIMIX_simcall_answer(simcall);
336 case SIMCALL_RDV_COMM_COUNT_BY_HOST:
337 simcall->result.ui = SIMIX_pre_rdv_comm_count_by_host(simcall , (smx_rdv_t) simcall->args[0].dp, (smx_host_t) simcall->args[1].dp);
338 SIMIX_simcall_answer(simcall);
341 case SIMCALL_RDV_GET_HEAD:
342 simcall->result.dp = SIMIX_pre_rdv_get_head(simcall , (smx_rdv_t) simcall->args[0].dp);
343 SIMIX_simcall_answer(simcall);
346 case SIMCALL_RDV_SET_RECEIVER:
347 SIMIX_pre_rdv_set_receiver(simcall , (smx_rdv_t) simcall->args[0].dp, (smx_process_t) simcall->args[1].dp);
348 SIMIX_simcall_answer(simcall);
351 case SIMCALL_RDV_GET_RECEIVER:
352 simcall->result.dp = SIMIX_pre_rdv_get_receiver(simcall , (smx_rdv_t) simcall->args[0].dp);
353 SIMIX_simcall_answer(simcall);
356 case SIMCALL_COMM_IPROBE:
357 simcall->result.dp = SIMIX_pre_comm_iprobe(simcall , (smx_rdv_t) simcall->args[0].dp, simcall->args[1].i, simcall->args[2].i, (simix_match_func_t) simcall->args[3].fp, simcall->args[4].dp);
358 SIMIX_simcall_answer(simcall);
361 case SIMCALL_COMM_SEND:
362 SIMIX_pre_comm_send(simcall , (smx_rdv_t) simcall->args[0].dp, simcall->args[1].d, simcall->args[2].d, simcall->args[3].dp, simcall->args[4].sz, (simix_match_func_t) simcall->args[5].fp, simcall->args[6].dp, simcall->args[7].d);
366 case SIMCALL_COMM_ISEND:
367 simcall->result.dp = SIMIX_pre_comm_isend(simcall , (smx_rdv_t) simcall->args[0].dp, simcall->args[1].d, simcall->args[2].d, simcall->args[3].dp, simcall->args[4].sz, (simix_match_func_t) simcall->args[5].fp, (simix_clean_func_t) simcall->args[6].fp, simcall->args[7].dp, simcall->args[8].i);
368 SIMIX_simcall_answer(simcall);
371 case SIMCALL_COMM_RECV:
372 SIMIX_pre_comm_recv(simcall , (smx_rdv_t) simcall->args[0].dp, simcall->args[1].dp, (size_t*) simcall->args[2].dp, (simix_match_func_t) simcall->args[3].fp, simcall->args[4].dp, simcall->args[5].d);
376 case SIMCALL_COMM_IRECV:
377 simcall->result.dp = SIMIX_pre_comm_irecv(simcall , (smx_rdv_t) simcall->args[0].dp, simcall->args[1].dp, (size_t*) simcall->args[2].dp, (simix_match_func_t) simcall->args[3].fp, simcall->args[4].dp);
378 SIMIX_simcall_answer(simcall);
381 case SIMCALL_COMM_RECV_BOUNDED:
382 SIMIX_pre_comm_recv_bounded(simcall , (smx_rdv_t) simcall->args[0].dp, simcall->args[1].dp, (size_t*) simcall->args[2].dp, (simix_match_func_t) simcall->args[3].fp, simcall->args[4].dp, simcall->args[5].d, simcall->args[6].d);
386 case SIMCALL_COMM_IRECV_BOUNDED:
387 simcall->result.dp = SIMIX_pre_comm_irecv_bounded(simcall , (smx_rdv_t) simcall->args[0].dp, simcall->args[1].dp, (size_t*) simcall->args[2].dp, (simix_match_func_t) simcall->args[3].fp, simcall->args[4].dp, simcall->args[5].d);
388 SIMIX_simcall_answer(simcall);
391 case SIMCALL_COMM_DESTROY:
392 SIMIX_pre_comm_destroy(simcall , (smx_action_t) simcall->args[0].dp);
393 SIMIX_simcall_answer(simcall);
396 case SIMCALL_COMM_CANCEL:
397 SIMIX_pre_comm_cancel(simcall , (smx_action_t) simcall->args[0].dp);
398 SIMIX_simcall_answer(simcall);
401 case SIMCALL_COMM_WAITANY:
402 SIMIX_pre_comm_waitany(simcall , (xbt_dynar_t) simcall->args[0].dp);
406 case SIMCALL_COMM_WAIT:
407 SIMIX_pre_comm_wait(simcall , (smx_action_t) simcall->args[0].dp, simcall->args[1].d);
411 case SIMCALL_COMM_TEST:
412 SIMIX_pre_comm_test(simcall , (smx_action_t) simcall->args[0].dp);
416 case SIMCALL_COMM_TESTANY:
417 SIMIX_pre_comm_testany(simcall , (xbt_dynar_t) simcall->args[0].dp);
421 case SIMCALL_COMM_GET_REMAINS:
422 simcall->result.d = SIMIX_pre_comm_get_remains(simcall , (smx_action_t) simcall->args[0].dp);
423 SIMIX_simcall_answer(simcall);
426 case SIMCALL_COMM_GET_STATE:
427 simcall->result.i = SIMIX_pre_comm_get_state(simcall , (smx_action_t) simcall->args[0].dp);
428 SIMIX_simcall_answer(simcall);
431 case SIMCALL_COMM_GET_SRC_DATA:
432 simcall->result.dp = SIMIX_pre_comm_get_src_data(simcall , (smx_action_t) simcall->args[0].dp);
433 SIMIX_simcall_answer(simcall);
436 case SIMCALL_COMM_GET_DST_DATA:
437 simcall->result.dp = SIMIX_pre_comm_get_dst_data(simcall , (smx_action_t) simcall->args[0].dp);
438 SIMIX_simcall_answer(simcall);
441 case SIMCALL_COMM_GET_SRC_PROC:
442 simcall->result.dp = SIMIX_pre_comm_get_src_proc(simcall , (smx_action_t) simcall->args[0].dp);
443 SIMIX_simcall_answer(simcall);
446 case SIMCALL_COMM_GET_DST_PROC:
447 simcall->result.dp = SIMIX_pre_comm_get_dst_proc(simcall , (smx_action_t) simcall->args[0].dp);
448 SIMIX_simcall_answer(simcall);
451 case SIMCALL_MUTEX_INIT:
452 simcall->result.dp = SIMIX_pre_mutex_init(simcall );
453 SIMIX_simcall_answer(simcall);
456 case SIMCALL_MUTEX_DESTROY:
457 SIMIX_pre_mutex_destroy(simcall , (smx_mutex_t) simcall->args[0].dp);
458 SIMIX_simcall_answer(simcall);
461 case SIMCALL_MUTEX_LOCK:
462 SIMIX_pre_mutex_lock(simcall , (smx_mutex_t) simcall->args[0].dp);
466 case SIMCALL_MUTEX_TRYLOCK:
467 simcall->result.i = SIMIX_pre_mutex_trylock(simcall , (smx_mutex_t) simcall->args[0].dp);
468 SIMIX_simcall_answer(simcall);
471 case SIMCALL_MUTEX_UNLOCK:
472 SIMIX_pre_mutex_unlock(simcall , (smx_mutex_t) simcall->args[0].dp);
473 SIMIX_simcall_answer(simcall);
476 case SIMCALL_COND_INIT:
477 simcall->result.dp = SIMIX_pre_cond_init(simcall );
478 SIMIX_simcall_answer(simcall);
481 case SIMCALL_COND_DESTROY:
482 SIMIX_pre_cond_destroy(simcall , (smx_cond_t) simcall->args[0].dp);
483 SIMIX_simcall_answer(simcall);
486 case SIMCALL_COND_SIGNAL:
487 SIMIX_pre_cond_signal(simcall , (smx_cond_t) simcall->args[0].dp);
488 SIMIX_simcall_answer(simcall);
491 case SIMCALL_COND_WAIT:
492 SIMIX_pre_cond_wait(simcall , (smx_cond_t) simcall->args[0].dp, (smx_mutex_t) simcall->args[1].dp);
496 case SIMCALL_COND_WAIT_TIMEOUT:
497 SIMIX_pre_cond_wait_timeout(simcall , (smx_cond_t) simcall->args[0].dp, (smx_mutex_t) simcall->args[1].dp, simcall->args[2].d);
501 case SIMCALL_COND_BROADCAST:
502 SIMIX_pre_cond_broadcast(simcall , (smx_cond_t) simcall->args[0].dp);
503 SIMIX_simcall_answer(simcall);
506 case SIMCALL_SEM_INIT:
507 simcall->result.dp = SIMIX_pre_sem_init(simcall , simcall->args[0].i);
508 SIMIX_simcall_answer(simcall);
511 case SIMCALL_SEM_DESTROY:
512 SIMIX_pre_sem_destroy(simcall , (smx_sem_t) simcall->args[0].dp);
513 SIMIX_simcall_answer(simcall);
516 case SIMCALL_SEM_RELEASE:
517 SIMIX_pre_sem_release(simcall , (smx_sem_t) simcall->args[0].dp);
518 SIMIX_simcall_answer(simcall);
521 case SIMCALL_SEM_WOULD_BLOCK:
522 simcall->result.i = SIMIX_pre_sem_would_block(simcall , (smx_sem_t) simcall->args[0].dp);
523 SIMIX_simcall_answer(simcall);
526 case SIMCALL_SEM_ACQUIRE:
527 SIMIX_pre_sem_acquire(simcall , (smx_sem_t) simcall->args[0].dp);
531 case SIMCALL_SEM_ACQUIRE_TIMEOUT:
532 SIMIX_pre_sem_acquire_timeout(simcall , (smx_sem_t) simcall->args[0].dp, simcall->args[1].d);
536 case SIMCALL_SEM_GET_CAPACITY:
537 simcall->result.i = SIMIX_pre_sem_get_capacity(simcall , (smx_sem_t) simcall->args[0].dp);
538 SIMIX_simcall_answer(simcall);
541 case SIMCALL_FILE_GET_DATA:
542 simcall->result.dp = SIMIX_pre_file_get_data(simcall , (smx_file_t) simcall->args[0].dp);
543 SIMIX_simcall_answer(simcall);
546 case SIMCALL_FILE_SET_DATA:
547 SIMIX_pre_file_set_data(simcall , (smx_file_t) simcall->args[0].dp, simcall->args[1].dp);
548 SIMIX_simcall_answer(simcall);
551 case SIMCALL_FILE_READ:
552 SIMIX_pre_file_read(simcall , (smx_file_t) simcall->args[0].dp, simcall->args[1].sgsz);
556 case SIMCALL_FILE_WRITE:
557 SIMIX_pre_file_write(simcall , (smx_file_t) simcall->args[0].dp, simcall->args[1].sgsz);
561 case SIMCALL_FILE_OPEN:
562 SIMIX_pre_file_open(simcall , simcall->args[0].cc, simcall->args[1].cc);
566 case SIMCALL_FILE_CLOSE:
567 SIMIX_pre_file_close(simcall , (smx_file_t) simcall->args[0].dp);
571 case SIMCALL_FILE_UNLINK:
572 simcall->result.i = SIMIX_pre_file_unlink(simcall , (smx_file_t) simcall->args[0].dp);
573 SIMIX_simcall_answer(simcall);
576 case SIMCALL_FILE_LS:
577 SIMIX_pre_file_ls(simcall , simcall->args[0].cc, simcall->args[1].cc);
581 case SIMCALL_FILE_GET_SIZE:
582 simcall->result.sgsz = SIMIX_pre_file_get_size(simcall , (smx_file_t) simcall->args[0].dp);
583 SIMIX_simcall_answer(simcall);
586 case SIMCALL_FILE_TELL:
587 simcall->result.sgsz = SIMIX_pre_file_tell(simcall , (smx_file_t) simcall->args[0].dp);
588 SIMIX_simcall_answer(simcall);
591 case SIMCALL_FILE_SEEK:
592 simcall->result.i = SIMIX_pre_file_seek(simcall , (smx_file_t) simcall->args[0].dp, simcall->args[1].sgsz, simcall->args[2].i);
593 SIMIX_simcall_answer(simcall);
596 case SIMCALL_FILE_GET_INFO:
597 simcall->result.dp = SIMIX_pre_file_get_info(simcall , (smx_file_t) simcall->args[0].dp);
598 SIMIX_simcall_answer(simcall);
601 case SIMCALL_STORAGE_FILE_RENAME:
602 SIMIX_pre_storage_file_rename(simcall , (smx_storage_t) simcall->args[0].dp, simcall->args[1].cc, simcall->args[2].cc);
603 SIMIX_simcall_answer(simcall);
606 case SIMCALL_STORAGE_GET_FREE_SIZE:
607 simcall->result.sgsz = SIMIX_pre_storage_get_free_size(simcall , simcall->args[0].cc);
608 SIMIX_simcall_answer(simcall);
611 case SIMCALL_STORAGE_GET_USED_SIZE:
612 simcall->result.sgsz = SIMIX_pre_storage_get_used_size(simcall , simcall->args[0].cc);
613 SIMIX_simcall_answer(simcall);
616 case SIMCALL_STORAGE_GET_PROPERTIES:
617 simcall->result.dp = SIMIX_pre_storage_get_properties(simcall , (smx_storage_t) simcall->args[0].dp);
618 SIMIX_simcall_answer(simcall);
621 case SIMCALL_STORAGE_GET_CONTENT:
622 simcall->result.dp = SIMIX_pre_storage_get_content(simcall , (smx_storage_t) simcall->args[0].dp);
623 SIMIX_simcall_answer(simcall);
626 case SIMCALL_ASR_GET_PROPERTIES:
627 simcall->result.dp = SIMIX_pre_asr_get_properties(simcall , simcall->args[0].cc);
628 SIMIX_simcall_answer(simcall);
631 #ifdef HAVE_LATENCY_BOUND_TRACKING
632 case SIMCALL_COMM_IS_LATENCY_BOUNDED:
633 simcall->result.i = SIMIX_pre_comm_is_latency_bounded(simcall , (smx_action_t) simcall->args[0].dp);
634 SIMIX_simcall_answer(simcall);
640 case SIMCALL_SET_CATEGORY:
641 SIMIX_pre_set_category(simcall , (smx_action_t) simcall->args[0].dp, simcall->args[1].cc);
642 SIMIX_simcall_answer(simcall);
648 case SIMCALL_MC_SNAPSHOT:
649 simcall->result.dp = SIMIX_pre_mc_snapshot(simcall );
650 SIMIX_simcall_answer(simcall);
653 case SIMCALL_MC_COMPARE_SNAPSHOTS:
654 simcall->result.i = SIMIX_pre_mc_compare_snapshots(simcall , simcall->args[0].dp, simcall->args[1].dp);
655 SIMIX_simcall_answer(simcall);
658 case SIMCALL_MC_RANDOM:
659 simcall->result.i = SIMIX_pre_mc_random(simcall , simcall->args[0].i, simcall->args[1].i);
660 SIMIX_simcall_answer(simcall);