A
lgorithmique
N
umérique
D
istribuée
Public GIT Repository
projects
/
simgrid.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
improve a comment
[simgrid.git]
/
src
/
xbt
/
mmalloc
/
mmprivate.h
diff --git
a/src/xbt/mmalloc/mmprivate.h
b/src/xbt/mmalloc/mmprivate.h
index
4f61135
..
061a4e7
100644
(file)
--- a/
src/xbt/mmalloc/mmprivate.h
+++ b/
src/xbt/mmalloc/mmprivate.h
@@
-107,6
+107,18
@@
struct mstats
size_t bytes_free; /* Byte total of chunks in the free list. */
};
size_t bytes_free; /* Byte total of chunks in the free list. */
};
+typedef struct s_heap_area{
+ int block;
+ int fragment;
+}s_heap_area_t, *heap_area_t;
+
+typedef struct s_heap_area_pair{
+ int block1;
+ int fragment1;
+ int block2;
+ int fragment2;
+}s_heap_area_pair_t, *heap_area_pair_t;
+
/* Data structure giving per-block information.
*
* There is one such structure in the mdp->heapinfo array per block used in that heap,
/* Data structure giving per-block information.
*
* There is one such structure in the mdp->heapinfo array per block used in that heap,
@@
-141,16
+153,16
@@
typedef struct {
struct {
size_t nfree; /* Free fragments in a fragmented block. */
size_t first; /* First free fragment of the block. */
struct {
size_t nfree; /* Free fragments in a fragmented block. */
size_t first; /* First free fragment of the block. */
-
unsigned
short frag_size[MAX_FRAGMENT_PER_BLOCK];
+ short frag_size[MAX_FRAGMENT_PER_BLOCK];
void *bt[MAX_FRAGMENT_PER_BLOCK][XBT_BACKTRACE_SIZE]; /* Where it was malloced (or realloced lastly) */
void *bt[MAX_FRAGMENT_PER_BLOCK][XBT_BACKTRACE_SIZE]; /* Where it was malloced (or realloced lastly) */
-
in
t equal_to[MAX_FRAGMENT_PER_BLOCK];
+
heap_area_
t equal_to[MAX_FRAGMENT_PER_BLOCK];
} busy_frag;
struct {
size_t size; /* Size (in blocks) of a large cluster. */
size_t busy_size; /* Actually used space, in bytes */
void *bt[XBT_BACKTRACE_SIZE]; /* Where it was malloced (or realloced lastly) */
int bt_size;
} busy_frag;
struct {
size_t size; /* Size (in blocks) of a large cluster. */
size_t busy_size; /* Actually used space, in bytes */
void *bt[XBT_BACKTRACE_SIZE]; /* Where it was malloced (or realloced lastly) */
int bt_size;
-
in
t equal_to;
+
heap_area_
t equal_to;
} busy_block;
/* Heap information for a free block (that may be the first of a free cluster). */
struct {
} busy_block;
/* Heap information for a free block (that may be the first of a free cluster). */
struct {