Blame


1 e830a908 2005-11-06 devnull /*
2 e830a908 2005-11-06 devnull * These are here mainly so that I can link against
3 e830a908 2005-11-06 devnull * debugmalloc.c instead and not recompile the world.
4 e830a908 2005-11-06 devnull */
5 e830a908 2005-11-06 devnull
6 e830a908 2005-11-06 devnull #include <u.h>
7 e830a908 2005-11-06 devnull #define NOPLAN9DEFINES
8 e830a908 2005-11-06 devnull #include <libc.h>
9 e830a908 2005-11-06 devnull
10 e830a908 2005-11-06 devnull void*
11 e830a908 2005-11-06 devnull p9malloc(ulong n)
12 e830a908 2005-11-06 devnull {
13 e830a908 2005-11-06 devnull void *v;
14 fa325e9b 2020-01-10 cross
15 e830a908 2005-11-06 devnull if(n == 0)
16 e830a908 2005-11-06 devnull n++;
17 e830a908 2005-11-06 devnull v = malloc(n);
18 e830a908 2005-11-06 devnull print("p9malloc %lud => %p; pc %lux\n", n, v, getcallerpc(&n));
19 e830a908 2005-11-06 devnull return v;
20 e830a908 2005-11-06 devnull }
21 e830a908 2005-11-06 devnull
22 e830a908 2005-11-06 devnull void
23 e830a908 2005-11-06 devnull p9free(void *v)
24 e830a908 2005-11-06 devnull {
25 e830a908 2005-11-06 devnull if(v == nil)
26 e830a908 2005-11-06 devnull return;
27 e830a908 2005-11-06 devnull print("p9free %p; pc %lux\n", v, getcallerpc(&v));
28 e830a908 2005-11-06 devnull free(v);
29 e830a908 2005-11-06 devnull }
30 e830a908 2005-11-06 devnull
31 e830a908 2005-11-06 devnull void*
32 e830a908 2005-11-06 devnull p9calloc(ulong a, ulong b)
33 e830a908 2005-11-06 devnull {
34 e830a908 2005-11-06 devnull void *v;
35 fa325e9b 2020-01-10 cross
36 e830a908 2005-11-06 devnull if(a*b == 0)
37 e830a908 2005-11-06 devnull a = b = 1;
38 e830a908 2005-11-06 devnull
39 e830a908 2005-11-06 devnull v = calloc(a*b, 1);
40 e830a908 2005-11-06 devnull print("p9calloc %lud %lud => %p; pc %lux\n", a, b, v, getcallerpc(&a));
41 e830a908 2005-11-06 devnull return v;
42 e830a908 2005-11-06 devnull }
43 e830a908 2005-11-06 devnull
44 e830a908 2005-11-06 devnull void*
45 e830a908 2005-11-06 devnull p9realloc(void *v, ulong n)
46 e830a908 2005-11-06 devnull {
47 e830a908 2005-11-06 devnull void *vv;
48 fa325e9b 2020-01-10 cross
49 e830a908 2005-11-06 devnull vv = realloc(v, n);
50 e830a908 2005-11-06 devnull print("p9realloc %p %lud => %p; pc %lux\n", v, n, vv, getcallerpc(&v));
51 e830a908 2005-11-06 devnull return vv;
52 e830a908 2005-11-06 devnull }