Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Merge branch 'master' into mc
[simgrid.git] / src / include / mc / datatypes.h
1 /* Copyright (c) 2008-2014. The SimGrid Team.
2  * All rights reserved.                                                     */
3
4 /* This program is free software; you can redistribute it and/or modify it
5  * under the terms of the license (GNU LGPL) which comes with this package. */
6
7 #ifndef MC_DATATYPE_H
8 #define MC_DATATYPE_H
9
10 #include "xbt/misc.h"
11 #include "xbt/swag.h"
12 #include "xbt/fifo.h"
13
14 #if HAVE_MC
15 #include <libunwind.h>
16 #include <dwarf.h>
17 #endif 
18
19 SG_BEGIN_DECL()
20
21 /******************************* Transitions **********************************/
22
23 typedef struct s_mc_transition *mc_transition_t;
24
25 /*********** Structures for snapshot comparison **************************/
26
27 typedef struct s_mc_heap_ignore_region{
28   int block;
29   int fragment;
30   void *address;
31   size_t size;
32 }s_mc_heap_ignore_region_t, *mc_heap_ignore_region_t;
33
34 typedef struct s_stack_region{
35   void *address;
36   void *context;
37   size_t size;
38   int block;
39   int process_index;
40 }s_stack_region_t, *stack_region_t;
41
42 void heap_ignore_region_free(mc_heap_ignore_region_t r);
43 void heap_ignore_region_free_voidp(void *r);
44
45
46 /************ DWARF structures *************/
47
48 SG_END_DECL()
49 #endif                          /* _MC_MC_H */