Lines Matching full:next

32 #define MEMITEM_SIZE(item)      ((rt_uint32_t)item->next - (rt_uint32_t)item - RT_MEMHEAP_SIZE)
64 item->next = RT_NULL; in rt_lwp_memheap_init()
76 item->next = RT_NULL; in rt_lwp_memheap_init()
81 item->next = (struct rt_lwp_memheap_item *) in rt_lwp_memheap_init()
83 item->prev = item->next; in rt_lwp_memheap_init()
97 item = item->next; in rt_lwp_memheap_init()
101 item->next = (struct rt_lwp_memheap_item *)start_addr; in rt_lwp_memheap_init()
154 /* move to next free memory block */ in rt_lwp_memheap_alloc()
176 header_ptr->next, in rt_lwp_memheap_alloc()
188 new_ptr->next = header_ptr->next; in rt_lwp_memheap_alloc()
189 header_ptr->next->prev = new_ptr; in rt_lwp_memheap_alloc()
190 header_ptr->next = new_ptr; in rt_lwp_memheap_alloc()
301 next_ptr = header_ptr->next; in rt_lwp_memheap_realloc()
315 * the next free node without alloc/memcpy, |*| is the control in rt_lwp_memheap_realloc()
339 next_ptr->next->prev = next_ptr->prev; in rt_lwp_memheap_realloc()
340 next_ptr->prev->next = next_ptr->next; in rt_lwp_memheap_realloc()
348 next_ptr->next, in rt_lwp_memheap_realloc()
358 next_ptr->next = header_ptr->next; in rt_lwp_memheap_realloc()
359 header_ptr->next->prev = next_ptr; in rt_lwp_memheap_realloc()
360 header_ptr->next = next_ptr; in rt_lwp_memheap_realloc()
412 header_ptr->next, in rt_lwp_memheap_realloc()
423 new_ptr->next = header_ptr->next; in rt_lwp_memheap_realloc()
424 header_ptr->next->prev = new_ptr; in rt_lwp_memheap_realloc()
425 header_ptr->next = new_ptr; in rt_lwp_memheap_realloc()
427 /* determine if the block can be merged with the next neighbor. */ in rt_lwp_memheap_realloc()
428 if (!RT_MEMHEAP_IS_USED(new_ptr->next)) in rt_lwp_memheap_realloc()
432 /* merge block with next neighbor. */ in rt_lwp_memheap_realloc()
433 free_ptr = new_ptr->next; in rt_lwp_memheap_realloc()
440 free_ptr->next->prev = new_ptr; in rt_lwp_memheap_realloc()
441 new_ptr->next = free_ptr->next; in rt_lwp_memheap_realloc()
490 RT_ASSERT((header_ptr->next->magic & RT_MEMHEAP_MASK) == RT_MEMHEAP_MAGIC); in rt_lwp_memheap_free()
519 (header_ptr->prev)->next = header_ptr->next; in rt_lwp_memheap_free()
520 (header_ptr->next)->prev = header_ptr->prev; in rt_lwp_memheap_free()
528 /* determine if the block can be merged with the next neighbor. */ in rt_lwp_memheap_free()
529 if (!RT_MEMHEAP_IS_USED(header_ptr->next)) in rt_lwp_memheap_free()
534 /* merge block with next neighbor. */ in rt_lwp_memheap_free()
535 new_ptr = header_ptr->next; in rt_lwp_memheap_free()
541 new_ptr->next->prev = header_ptr; in rt_lwp_memheap_free()
542 header_ptr->next = new_ptr->next; in rt_lwp_memheap_free()