diff options
Diffstat (limited to 'gfsm/gfsm/src/libgfsm/gfsmDebug.c')
-rw-r--r-- | gfsm/gfsm/src/libgfsm/gfsmDebug.c | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/gfsm/gfsm/src/libgfsm/gfsmDebug.c b/gfsm/gfsm/src/libgfsm/gfsmDebug.c new file mode 100644 index 0000000..463e28a --- /dev/null +++ b/gfsm/gfsm/src/libgfsm/gfsmDebug.c @@ -0,0 +1,35 @@ +#include <gfsmDebug.h> +#include <gfsmMem.h> +#include <gfsmConfig.h> + +#ifdef GFSM_DEBUG_ENABLED +# define GFSM_MEM_DEBUG +# define GFSM_ALLOC_DEBUG +#endif /* GFSM_DEBUG_ENABLED */ + +void gfsm_debug_init(void) { +#if defined(GFSM_MEM_DEBUG) + g_mem_set_vtable(glib_mem_profiler_table); +# if defined(GFSM_ALLOC_DEBUG) + gfsm_allocators_enable(); +# endif /* GFSM_ALLOC_DEBUG */ +#endif /* GFSM_MEM_DEBUG */ + return; +} + +void gfsm_debug_finish(void) { +#if defined(GFSM_MEM_DEBUG) + g_blow_chunks(); +# if defined(GFSM_ALLOC_DEBUG) + gfsm_allocators_free(); +# endif /* GFSM_ALLOC_DEBUG */ +#endif /* GFSM_MEM_DEBUG */ + return; +} + +void gfsm_debug_print(void) { +#if defined(GFSM_MEM_DEBUG) + g_mem_profile(); +#endif /* GFSM_MEM_DEBUG */ + return; +} |