Lines Matching refs:heap_array
475 static void auxtrace_heapify(struct auxtrace_heap_item *heap_array, in auxtrace_heapify() argument
483 if (heap_array[parent].ordinal <= ordinal) in auxtrace_heapify()
485 heap_array[pos] = heap_array[parent]; in auxtrace_heapify()
488 heap_array[pos].queue_nr = queue_nr; in auxtrace_heapify()
489 heap_array[pos].ordinal = ordinal; in auxtrace_heapify()
495 struct auxtrace_heap_item *heap_array; in auxtrace_heap__add() local
502 heap_array = realloc(heap->heap_array, in auxtrace_heap__add()
504 if (!heap_array) in auxtrace_heap__add()
506 heap->heap_array = heap_array; in auxtrace_heap__add()
510 auxtrace_heapify(heap->heap_array, heap->heap_cnt++, queue_nr, ordinal); in auxtrace_heap__add()
517 zfree(&heap->heap_array); in auxtrace_heap__free()
525 struct auxtrace_heap_item *heap_array; in auxtrace_heap__pop() local
532 heap_array = heap->heap_array; in auxtrace_heap__pop()
543 heap_array[pos] = heap_array[left]; in auxtrace_heap__pop()
546 if (heap_array[left].ordinal < heap_array[right].ordinal) { in auxtrace_heap__pop()
547 heap_array[pos] = heap_array[left]; in auxtrace_heap__pop()
550 heap_array[pos] = heap_array[right]; in auxtrace_heap__pop()
556 auxtrace_heapify(heap_array, pos, heap_array[last].queue_nr, in auxtrace_heap__pop()
557 heap_array[last].ordinal); in auxtrace_heap__pop()