aboutsummaryrefslogtreecommitdiff
path: root/system/include/compat/malloc.h
blob: 58d93613d12ac171a8fe65f1db898a0fe7db8494 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#ifndef _COMPAT_MALLOC_H_
#define _COMPAT_MALLOC_H_

#include <stddef.h>

#ifdef __cplusplus
extern "C" {
#endif

/* This version of struct mallinfo must match the one in
   system/lib/dlmallo.c.  */

struct mallinfo {
  int arena;    /* total space allocated from system */
  int ordblks;  /* number of non-inuse chunks */
  int smblks;   /* unused -- always zero */
  int hblks;    /* number of mmapped regions */
  int hblkhd;   /* total space in mmapped regions */
  int usmblks;  /* unused -- always zero */
  int fsmblks;  /* unused -- always zero */
  int uordblks; /* total allocated space */
  int fordblks; /* total non-inuse space */
  int keepcost; /* top-most, releasable (via malloc_trim) space */
};

/* The routines.  */

extern struct mallinfo mallinfo(void);

extern void malloc_stats(void);

extern int mallopt(int, int);

extern size_t malloc_usable_size(void*);

/* mallopt options */

#define M_TRIM_THRESHOLD    -1
#define M_GRANULARITY       -2
#define M_MMAP_THRESHOLD    -3

#ifdef __cplusplus
}
#endif

#include_next <malloc.h>

#endif /* _COMPAT_MALLOC_H_ */