llvm/llvm/include/llvm/CodeGen/ResourcePriorityQueue.h

//===----- ResourcePriorityQueue.h - A DFA-oriented priority queue -------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
//
// This file implements the ResourcePriorityQueue class, which is a
// SchedulingPriorityQueue that schedules using DFA state to
// reduce the length of the critical path through the basic block
// on VLIW platforms.
//
//===----------------------------------------------------------------------===//

#ifndef LLVM_CODEGEN_RESOURCEPRIORITYQUEUE_H
#define LLVM_CODEGEN_RESOURCEPRIORITYQUEUE_H

#include "llvm/CodeGen/ScheduleDAG.h"

namespace llvm {
  class DFAPacketizer;
  class InstrItineraryData;
  class ResourcePriorityQueue;
  class SelectionDAGISel;
  class TargetInstrInfo;
  class TargetRegisterInfo;

  /// Sorting functions for the Available queue.
  struct resource_sort {};

  class ResourcePriorityQueue : public SchedulingPriorityQueue {};
}

#endif