1#ifndef _MALLOC_H
2#define _MALLOC_H
3
4#ifdef __cplusplus
5extern "C" {
6#endif
7
8#define __NEED_size_t
9
10#include <bits/alltypes.h>
11
12#define M_SET_THREAD_CACHE (-1001)
13#define M_THREAD_CACHE_ENABLE 1
14#define M_THREAD_CACHE_DISABLE 0
15
16#define M_FLUSH_THREAD_CACHE (-1002)
17
18#define M_DELAYED_FREE (-1003)
19#define M_DELAYED_FREE_ENABLE 1
20#define M_DELAYED_FREE_DISABLE 0
21
22#define M_OHOS_CONFIG (-1004)
23#define M_DISABLE_OPT_TCACHE 100
24#define M_ENABLE_OPT_TCACHE 101
25#define M_TCACHE_PERFORMANCE_MODE 102
26#define M_TCACHE_NORMAL_MODE 103
27
28void *malloc (size_t);
29void *calloc (size_t, size_t);
30void *realloc (void *, size_t);
31void free (void *);
32void *valloc (size_t);
33void *memalign(size_t, size_t);
34
35size_t malloc_usable_size(void *);
36int mallopt(int param, int value);
37
38struct mallinfo {
39  int arena;
40  int ordblks;
41  int smblks;
42  int hblks;
43  int hblkhd;
44  int usmblks;
45  int fsmblks;
46  int uordblks;
47  int fordblks;
48  int keepcost;
49};
50
51struct mallinfo2 {
52  size_t arena;
53  size_t ordblks;
54  size_t smblks;
55  size_t hblks;
56  size_t hblkhd;
57  size_t usmblks;
58  size_t fsmblks;
59  size_t uordblks;
60  size_t fordblks;
61  size_t keepcost;
62};
63
64#ifdef __cplusplus
65}
66#endif
67
68#endif
69