Lines Matching refs:q
84 register union store *p, *q; local
96 while(!testbusy((q=p->ptr)->ptr)) {
97 ASSERT(q>p);
98 p->ptr = q->ptr;
101 if(q>=p+nw && p+nw>=p)
105 q = p;
107 if(p <= q) {
123 q = (union store *)sbrk(temp*WORD);
124 if((INT)q != -1)
130 ialloc((char *)q, (unsigned)temp*WORD);
134 if(q>allocp) {
168 register union store *p, *q, *s; local
171 q = (union store *)qq;
172 r = q + (nbytes/WORD) - 1;
173 q->ptr = r;
182 if(p<q)
188 p->ptr = q==p+1? q: setbusy(q);
190 if(allocb > q)
191 allocb = q;
206 register union store *q; local
216 q = (union store *)malloc(nbytes);
217 if(q==NULL || q==p)
218 return((char *)q);
219 ASSERT(q<p||q>p[-1].ptr);
221 t = q;
227 ASSERT(clearbusy(q[-1].ptr)-q==nw);
228 if(q<p && q+nw>=p)
229 (q+(q+nw-p))->ptr = allocx;
230 ASSERT(allock(q-1));
231 return((char *)q);
235 allock(q)
236 union store *q; variable
246 if(p==q)
249 return(r==allocb&(x==1|p==q));
251 return(q>=allocb);