xref: /plan9-contrib/sys/src/cmd/il/compat.c (revision ce95e1b3727b9cb1c223ffbed69aff21a8ced255)
1*ce95e1b3SDavid du Colombier #include	"l.h"
2*ce95e1b3SDavid du Colombier 
3*ce95e1b3SDavid du Colombier /*
4*ce95e1b3SDavid du Colombier  * fake malloc
5*ce95e1b3SDavid du Colombier  */
6*ce95e1b3SDavid du Colombier void*
malloc(ulong n)7*ce95e1b3SDavid du Colombier malloc(ulong n)
8*ce95e1b3SDavid du Colombier {
9*ce95e1b3SDavid du Colombier 	void *p;
10*ce95e1b3SDavid du Colombier 
11*ce95e1b3SDavid du Colombier 	while(n & 7)
12*ce95e1b3SDavid du Colombier 		n++;
13*ce95e1b3SDavid du Colombier 	while(nhunk < n)
14*ce95e1b3SDavid du Colombier 		gethunk();
15*ce95e1b3SDavid du Colombier 	p = hunk;
16*ce95e1b3SDavid du Colombier 	nhunk -= n;
17*ce95e1b3SDavid du Colombier 	hunk += n;
18*ce95e1b3SDavid du Colombier 	return p;
19*ce95e1b3SDavid du Colombier }
20*ce95e1b3SDavid du Colombier 
21*ce95e1b3SDavid du Colombier void
free(void * p)22*ce95e1b3SDavid du Colombier free(void *p)
23*ce95e1b3SDavid du Colombier {
24*ce95e1b3SDavid du Colombier 	USED(p);
25*ce95e1b3SDavid du Colombier }
26*ce95e1b3SDavid du Colombier 
27*ce95e1b3SDavid du Colombier void*
calloc(ulong m,ulong n)28*ce95e1b3SDavid du Colombier calloc(ulong m, ulong n)
29*ce95e1b3SDavid du Colombier {
30*ce95e1b3SDavid du Colombier 	void *p;
31*ce95e1b3SDavid du Colombier 
32*ce95e1b3SDavid du Colombier 	n *= m;
33*ce95e1b3SDavid du Colombier 	p = malloc(n);
34*ce95e1b3SDavid du Colombier 	memset(p, 0, n);
35*ce95e1b3SDavid du Colombier 	return p;
36*ce95e1b3SDavid du Colombier }
37*ce95e1b3SDavid du Colombier 
38*ce95e1b3SDavid du Colombier void*
realloc(void *,ulong)39*ce95e1b3SDavid du Colombier realloc(void*, ulong)
40*ce95e1b3SDavid du Colombier {
41*ce95e1b3SDavid du Colombier 	fprint(2, "realloc called\n");
42*ce95e1b3SDavid du Colombier 	abort();
43*ce95e1b3SDavid du Colombier 	return 0;
44*ce95e1b3SDavid du Colombier }
45*ce95e1b3SDavid du Colombier 
46*ce95e1b3SDavid du Colombier void
setmalloctag(void * v,ulong pc)47*ce95e1b3SDavid du Colombier setmalloctag(void *v, ulong pc)
48*ce95e1b3SDavid du Colombier {
49*ce95e1b3SDavid du Colombier 	USED(v, pc);
50*ce95e1b3SDavid du Colombier }
51*ce95e1b3SDavid du Colombier 
52*ce95e1b3SDavid du Colombier void*
mysbrk(ulong size)53*ce95e1b3SDavid du Colombier mysbrk(ulong size)
54*ce95e1b3SDavid du Colombier {
55*ce95e1b3SDavid du Colombier 	return sbrk(size);
56*ce95e1b3SDavid du Colombier }
57