Lines Matching refs:MemNode
76 * Objects in the pool must be aligned to at least the size of struct MemNode.
80 typedef char assert_align[(sizeof(struct MemNode) <= MALLOCALIGN) ? 1 : -1];
93 MemNode **pmn;
94 MemNode *mn;
133 MemNode *new;
135 new = (MemNode *)aligned;
154 mn = (MemNode *)((char *)mn + bytes);
155 mn->mr_Next = ((MemNode *)ptr)->mr_Next;
156 mn->mr_Bytes = ((MemNode *)ptr)->mr_Bytes - bytes;
177 MemNode **pmn;
178 MemNode *mn;
224 ((MemNode *)ptr)->mr_Next = mn->mr_Next;
225 ((MemNode *)ptr)->mr_Bytes =
228 ((MemNode *)ptr)->mr_Next = mn;
229 ((MemNode *)ptr)->mr_Bytes = bytes;
231 *pmn = mn = (MemNode *)ptr;
239 if ((char *)pmn + ((MemNode*)pmn)->mr_Bytes ==
241 ((MemNode *)pmn)->mr_Next = mn->mr_Next;
242 ((MemNode *)pmn)->mr_Bytes +=
244 mn = (MemNode *)pmn;
255 * We are beyond the last MemNode, append new MemNode. Merge against
259 (char *)pmn + ((MemNode *)pmn)->mr_Bytes != (char *)ptr) {
260 ((MemNode *)ptr)->mr_Next = NULL;
261 ((MemNode *)ptr)->mr_Bytes = bytes;
262 *pmn = (MemNode *)ptr;
263 mn = (MemNode *)ptr;
265 ((MemNode *)pmn)->mr_Bytes += bytes;
266 mn = (MemNode *)pmn;
314 MemNode *mn;