Lines Matching refs:MemNode
74 * Objects in the pool must be aligned to at least the size of struct MemNode.
78 typedef char assert_align[(sizeof(struct MemNode) <= MALLOCALIGN) ? 1 : -1];
107 MemNode **pmn;
108 MemNode *mn;
125 mn = (MemNode *)((char *)mn + bytes);
126 mn->mr_Next = ((MemNode *)ptr)->mr_Next;
127 mn->mr_Bytes = ((MemNode *)ptr)->mr_Bytes - bytes;
173 MemNode **pmn;
174 MemNode *mn;
199 ((MemNode *)ptr)->mr_Next = mn->mr_Next;
200 ((MemNode *)ptr)->mr_Bytes= bytes + mn->mr_Bytes;
202 ((MemNode *)ptr)->mr_Next = mn;
203 ((MemNode *)ptr)->mr_Bytes= bytes;
205 *pmn = mn = (MemNode *)ptr;
213 if ((char*)pmn + ((MemNode*)pmn)->mr_Bytes == (char*)ptr) {
214 ((MemNode *)pmn)->mr_Next = mn->mr_Next;
215 ((MemNode *)pmn)->mr_Bytes += mn->mr_Bytes;
216 mn = (MemNode *)pmn;
228 * We are beyond the last MemNode, append new MemNode. Merge against
232 (char *)pmn + ((MemNode *)pmn)->mr_Bytes != (char *)ptr
234 ((MemNode *)ptr)->mr_Next = NULL;
235 ((MemNode *)ptr)->mr_Bytes = bytes;
236 *pmn = (MemNode *)ptr;
237 mn = (MemNode *)ptr;
239 ((MemNode *)pmn)->mr_Bytes += bytes;
240 mn = (MemNode *)pmn;
289 MemNode *mn;