X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/e5302335e3d2d05db342b67533725f631f086ea3..a308bb217e5abbd93413e23cb59776c3f6d1d8db:/src/mc/mc_private.h diff --git a/src/mc/mc_private.h b/src/mc/mc_private.h index 0641d0ce9e..a3323549a5 100644 --- a/src/mc/mc_private.h +++ b/src/mc/mc_private.h @@ -21,6 +21,7 @@ #include "xbt/function_types.h" #include "xbt/mmalloc.h" #include "../simix/smx_private.h" +#include "../xbt/mmalloc/mmprivate.h" #include "xbt/automaton.h" #include "xbt/hash.h" #include "msg/msg.h" @@ -92,6 +93,13 @@ typedef struct s_mc_checkpoint_ignore_region{ size_t size; }s_mc_checkpoint_ignore_region_t, *mc_checkpoint_ignore_region_t; +inline static void* mc_snapshot_get_heap_end(mc_snapshot_t snapshot) { + if(snapshot==NULL) + xbt_die("snapshot is NULL"); + xbt_mheap_t heap = (xbt_mheap_t)snapshot->regions[0]->data; + return heap->breakval; +} + mc_snapshot_t SIMIX_pre_mc_snapshot(smx_simcall_t simcall); mc_snapshot_t MC_take_snapshot(int num_state); void MC_restore_snapshot(mc_snapshot_t); @@ -221,7 +229,7 @@ void MC_print_statistics(mc_stats_t); /* you must wrap the code between MC_SET_RAW_MODE and MC_UNSET_RAW_MODE */ extern void *std_heap; -extern void *raw_heap; +extern void *mc_heap; /* FIXME: Horrible hack! because the mmalloc library doesn't provide yet of */ @@ -236,8 +244,8 @@ extern void *raw_heap; /* size_t bytes_free; /\* Byte total of chunks in the free list. *\/ */ /* }; */ -#define MC_SET_RAW_MEM mmalloc_set_current_heap(raw_heap) -#define MC_UNSET_RAW_MEM mmalloc_set_current_heap(std_heap) +#define MC_SET_MC_HEAP mmalloc_set_current_heap(mc_heap) +#define MC_SET_STD_HEAP mmalloc_set_current_heap(std_heap) /******************************* MEMORY MAPPINGS ***************************/