Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
model-checker : print statistics in all cases (property satisfied or not)
[simgrid.git] / src / mc / mc_global.c
index d24b438..c0b7acd 100644 (file)
@@ -13,7 +13,7 @@
 #include "xbt/fifo.h"
 #include "mc_private.h"
 
-
+XBT_LOG_NEW_CATEGORY(mc, "All MC categories");
 XBT_LOG_NEW_DEFAULT_SUBCATEGORY(mc_global, mc,
                                 "Logging specific to MC (global)");
 
@@ -504,7 +504,7 @@ void MC_dump_stack_liveness(xbt_fifo_t stack){
 
 void MC_print_statistics(mc_stats_t stats)
 {
-  XBT_INFO("State space size ~= %lu", stats->state_size);
+  //XBT_INFO("State space size ~= %lu", stats->state_size);
   XBT_INFO("Expanded states = %lu", stats->expanded_states);
   XBT_INFO("Visited states = %lu", stats->visited_states);
   XBT_INFO("Executed transitions = %lu", stats->executed_transitions);
@@ -527,14 +527,19 @@ void MC_print_statistics_pairs(mc_stats_pair_t stats)
 
 void MC_assert(int prop)
 {
-  if (MC_IS_ENABLED && !prop) {
-    XBT_INFO("**************************");
-    XBT_INFO("*** PROPERTY NOT VALID ***");
-    XBT_INFO("**************************");
-    XBT_INFO("Counter-example execution trace:");
-    MC_dump_stack_safety_stateless(mc_stack_safety_stateless);
-    MC_print_statistics(mc_stats);
-    xbt_abort();
+  if (MC_IS_ENABLED ){
+    if(!prop) {
+      XBT_INFO("**************************");
+      XBT_INFO("*** PROPERTY NOT VALID ***");
+      XBT_INFO("**************************");
+      XBT_INFO("Counter-example execution trace:");
+      MC_dump_stack_safety_stateless(mc_stack_safety_stateless);
+      MC_print_statistics(mc_stats);
+      xbt_abort();
+    }else{
+      MC_print_statistics(mc_stats);
+      xbt_abort();
+    }
   }
 }
 
@@ -585,7 +590,7 @@ void MC_diff(void){
 
   int i;
 
-  XBT_INFO("Number of regions : %d", sn->num_reg);
+  XBT_INFO("Number of regions : %u", sn->num_reg);
 
   for(i=0; i<sn->num_reg; i++){