Lines Matching refs:heap_array
396 static void auxtrace_heapify(struct auxtrace_heap_item *heap_array, in auxtrace_heapify() argument
404 if (heap_array[parent].ordinal <= ordinal) in auxtrace_heapify()
406 heap_array[pos] = heap_array[parent]; in auxtrace_heapify()
409 heap_array[pos].queue_nr = queue_nr; in auxtrace_heapify()
410 heap_array[pos].ordinal = ordinal; in auxtrace_heapify()
416 struct auxtrace_heap_item *heap_array; in auxtrace_heap__add() local
423 heap_array = realloc(heap->heap_array, in auxtrace_heap__add()
425 if (!heap_array) in auxtrace_heap__add()
427 heap->heap_array = heap_array; in auxtrace_heap__add()
431 auxtrace_heapify(heap->heap_array, heap->heap_cnt++, queue_nr, ordinal); in auxtrace_heap__add()
438 zfree(&heap->heap_array); in auxtrace_heap__free()
446 struct auxtrace_heap_item *heap_array; in auxtrace_heap__pop() local
453 heap_array = heap->heap_array; in auxtrace_heap__pop()
464 heap_array[pos] = heap_array[left]; in auxtrace_heap__pop()
467 if (heap_array[left].ordinal < heap_array[right].ordinal) { in auxtrace_heap__pop()
468 heap_array[pos] = heap_array[left]; in auxtrace_heap__pop()
471 heap_array[pos] = heap_array[right]; in auxtrace_heap__pop()
477 auxtrace_heapify(heap_array, pos, heap_array[last].queue_nr, in auxtrace_heap__pop()
478 heap_array[last].ordinal); in auxtrace_heap__pop()