Lines Matching refs:len
61 heap_size len; // size in units of "sizeof(heap_node)"
76 freelist->len = HEAP_SIZE / sizeof (heap_node);
80 size_t alloc_size (size_t len)
81 { return (len + sizeof(heap_node) - 1) / sizeof(heap_node) + 1; }
86 void *fallback_malloc(size_t len) {
88 const size_t nelems = alloc_size ( len );
98 if (p->len > nelems) { // chunk is larger, shorten, and return the tail
101 p->len -= nelems;
102 q = p + p->len;
104 q->len = static_cast<heap_size>(nelems);
108 if (p->len == nelems) { // exact size match
121 heap_node *after ( struct heap_node *p ) { return p + p->len; }
130 … std::cout << "Freeing item at " << offset_from_node ( cp ) << " of size " << cp->len << std::endl;
146 p->len += cp->len; // make the free heap_node larger
153 cp->len += p->len;
181 << "\tsize: " << p->len << " Next: " << p->next_node << std::endl;
182 total_free += p->len;