X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/28944bc4a4982cffdd40b2f91e19aed26c242839..cf64c8ceb2027a65be8789e5fb36902e9274be4c:/src/mc/mc_private.h diff --git a/src/mc/mc_private.h b/src/mc/mc_private.h index 9f36659a5e..ad313238e7 100644 --- a/src/mc/mc_private.h +++ b/src/mc/mc_private.h @@ -19,9 +19,9 @@ #include #include -#include #include #include +#include #include "mc/mc.h" #include "mc/datatypes.h" @@ -37,6 +37,23 @@ #include "src/mc/mc_protocol.h" +#ifdef __cplusplus +namespace simgrid { +namespace mc { + +struct DerefAndCompareByNbProcessesAndUsedHeap { + template + bool operator()(X const& a, Y const& b) + { + return std::make_pair(a->nb_processes, a->heap_bytes_used) < + std::make_pair(b->nb_processes, b->heap_bytes_used); + } +}; + +} +} +#endif + SG_BEGIN_DECL() /********************************* MC Global **********************************/ @@ -45,35 +62,7 @@ XBT_PRIVATE void MC_init_dot_output(); XBT_PRIVATE extern FILE *dot_output; -XBT_PRIVATE extern int user_max_depth_reached; - -XBT_PRIVATE void MC_replay(xbt_fifo_t stack); -XBT_PRIVATE void MC_show_deadlock(smx_simcall_t req); -XBT_PRIVATE void MC_show_stack_safety(xbt_fifo_t stack); -XBT_PRIVATE void MC_dump_stack_safety(xbt_fifo_t stack); -XBT_PRIVATE void MC_show_non_termination(void); - -/** Stack (of `mc_state_t`) representing the current position of the - * the MC in the exploration graph - * - * It is managed by its head (`xbt_fifo_shift` and `xbt_fifo_unshift`). - */ -XBT_PRIVATE extern xbt_fifo_t mc_stack; - -/****************************** Statistics ************************************/ - -typedef struct mc_stats { - unsigned long state_size; - unsigned long visited_states; - unsigned long visited_pairs; - unsigned long expanded_states; - unsigned long expanded_pairs; - unsigned long executed_transitions; -} s_mc_stats_t, *mc_stats_t; - -XBT_PRIVATE extern mc_stats_t mc_stats; - -XBT_PRIVATE void MC_print_statistics(mc_stats_t stats); +XBT_PRIVATE void MC_show_deadlock(void); /********************************** Snapshot comparison **********************************/ @@ -98,6 +87,9 @@ XBT_PRIVATE void find_object_address( XBT_PRIVATE int snapshot_compare(int num1, simgrid::mc::Snapshot* s1, int num2, simgrid::mc::Snapshot* s2); +// Move is somewhere else (in the LivenessChecker class, in the Session class?): +extern XBT_PRIVATE xbt_automaton_t property_automaton; + } }