Lines Matching refs:ml
177 register struct memlist *ml; in dr_memlist_delete() local
179 for (ml = mlist; ml; ml = mlist) { in dr_memlist_delete()
180 mlist = ml->ml_next; in dr_memlist_delete()
181 FREESTRUCT(ml, struct memlist, 1); in dr_memlist_delete()
254 register struct memlist *ml; in memlist_dump() local
258 else for (ml = mlist; ml; ml = ml->ml_next) in memlist_dump()
259 printf("memlist> 0x%lx, 0x%lx\n", ml->ml_address, ml->ml_size); in memlist_dump()
289 struct memlist *ml, *tl, *nl; in dr_memlist_add_span() local
303 for (tl = ml = mlist; ml; tl = ml, ml = ml->ml_next) { in dr_memlist_add_span()
304 if (base < ml->ml_address) { in dr_memlist_add_span()
305 if ((base + len) < ml->ml_address) { in dr_memlist_add_span()
309 nl->ml_next = ml; in dr_memlist_add_span()
310 if ((nl->ml_prev = ml->ml_prev) != NULL) in dr_memlist_add_span()
312 ml->ml_prev = nl; in dr_memlist_add_span()
313 if (mlist == ml) in dr_memlist_add_span()
316 ml->ml_size = MAX((base + len), in dr_memlist_add_span()
317 (ml->ml_address + ml->ml_size)) - base; in dr_memlist_add_span()
318 ml->ml_address = base; in dr_memlist_add_span()
322 } else if (base <= (ml->ml_address + ml->ml_size)) { in dr_memlist_add_span()
323 ml->ml_size = MAX((base + len), in dr_memlist_add_span()
324 (ml->ml_address + ml->ml_size)) - in dr_memlist_add_span()
325 MIN(ml->ml_address, base); in dr_memlist_add_span()
326 ml->ml_address = MIN(ml->ml_address, base); in dr_memlist_add_span()
330 if (ml == NULL) { in dr_memlist_add_span()
348 struct memlist *ml, *tl, *nlp; in dr_memlist_del_span() local
357 for (tl = ml = mlist; ml; tl = ml, ml = nlp) { in dr_memlist_del_span()
360 nlp = ml->ml_next; in dr_memlist_del_span()
362 if (end <= ml->ml_address) in dr_memlist_del_span()
365 mend = ml->ml_address + ml->ml_size; in dr_memlist_del_span()
367 if (base <= ml->ml_address) { in dr_memlist_del_span()
368 ml->ml_address = end; in dr_memlist_del_span()
370 ml->ml_size = 0ull; in dr_memlist_del_span()
372 ml->ml_size = mend - ml->ml_address; in dr_memlist_del_span()
374 ml->ml_size = base - ml->ml_address; in dr_memlist_del_span()
385 nl->ml_prev = ml; in dr_memlist_del_span()
386 ml->ml_next = nl; in dr_memlist_del_span()
390 if (ml->ml_size == 0ull) { in dr_memlist_del_span()
391 if (ml == mlist) { in dr_memlist_del_span()
394 FREESTRUCT(ml, struct memlist, 1); in dr_memlist_del_span()
397 ml = nlp; in dr_memlist_del_span()
401 FREESTRUCT(ml, struct memlist, 1); in dr_memlist_del_span()
402 ml = tl; in dr_memlist_del_span()
417 struct memlist *ml, *tl, *nl; in dr_memlist_cat_span() local
431 for (tl = ml = mlist; ml; tl = ml, ml = ml->ml_next) { in dr_memlist_cat_span()
432 if (base < ml->ml_address) { in dr_memlist_cat_span()
436 nl->ml_next = ml; in dr_memlist_cat_span()
437 if ((nl->ml_prev = ml->ml_prev) != NULL) in dr_memlist_cat_span()
439 ml->ml_prev = nl; in dr_memlist_cat_span()
440 if (mlist == ml) in dr_memlist_cat_span()
446 if (ml == NULL) { in dr_memlist_cat_span()