Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
model-checker : use xbt_abort after exhaustive exploration
[simgrid.git] / src / mc / mc_global.c
index d935b75..5ebe09e 100644 (file)
@@ -31,7 +31,6 @@ int _sg_mc_timeout=0;
 int _sg_mc_max_depth=1000;
 int _sg_mc_visited=0;
 
-
 extern int _sg_init_status;
 void _mc_cfg_cb_reduce(const char *name, int pos) {
   if (_sg_init_status && !_sg_do_model_check) {
@@ -181,6 +180,7 @@ void MC_init(){
   get_binary_plt_section();
 
   MC_ignore_data_bss(&end_raw_heap, sizeof(end_raw_heap));
+  MC_ignore_data_bss(&nb_visited_states, sizeof(nb_visited_states));
 
   /* Get global variables */
   MC_get_global_variables(xbt_binary_name);
@@ -198,6 +198,9 @@ void MC_init(){
   MC_ignore_stack("_throw_ctx", "*");
   MC_ignore_stack("ctx", "*");
 
+  MC_ignore_stack("next_context", "smx_ctx_sysv_suspend_serial");
+  MC_ignore_stack("i", "smx_ctx_sysv_suspend_serial");
+
   if(raw_mem_set)
     MC_SET_RAW_MEM;
 
@@ -287,6 +290,7 @@ void MC_exit(void)
 {
   xbt_free(mc_time);
   MC_memory_exit();
+  xbt_abort();
 }