1 #include "l.h"
2
3 /*
4 * fake malloc
5 */
6 void*
malloc(usize n)7 malloc(usize n)
8 {
9 return halloc(n);
10 }
11
12 void
free(void * p)13 free(void *p)
14 {
15 USED(p);
16 }
17
18 void*
calloc(usize m,usize n)19 calloc(usize m, usize n)
20 {
21 void *p;
22
23 n *= m;
24 p = malloc(n);
25 memset(p, 0, n);
26 return p;
27 }
28
29 /*
30 * not used by compiler or loader, but Windows needs it
31 */
32 void*
realloc(void * p,usize n)33 realloc(void *p, usize n)
34 {
35 void *new;
36
37 new = malloc(n);
38 if(new != nil && p != nil)
39 memmove(new, p, n); /* safe only when adjecent hunks have no gaps */
40 return new;
41 }
42
43 void
setmalloctag(void * v,ulong pc)44 setmalloctag(void *v, ulong pc)
45 {
46 USED(v);
47 USED(pc);
48 }
49