#ifndef LLVM_LIB_TARGET_AMDGPU_SIMACHINESCHEDULER_H
#define LLVM_LIB_TARGET_AMDGPU_SIMACHINESCHEDULER_H
#include "llvm/CodeGen/MachineScheduler.h"
#include "llvm/CodeGen/RegisterPressure.h"
#include "llvm/CodeGen/ScheduleDAG.h"
#include <cstdint>
#include <set>
#include <vector>
namespace llvm {
class SIInstrInfo;
class SIRegisterInfo;
class SIScheduleDAGMI;
class SIScheduleBlockCreator;
enum SIScheduleCandReason { … };
struct SISchedulerCandidate { … };
enum SIScheduleBlockLinkKind { … };
class SIScheduleBlock { … };
struct SIScheduleBlocks { … };
enum SISchedulerBlockCreatorVariant { … };
class SIScheduleBlockCreator { … };
enum SISchedulerBlockSchedulerVariant { … };
class SIScheduleBlockScheduler { … };
struct SIScheduleBlockResult { … };
class SIScheduler { … };
class SIScheduleDAGMI final : public ScheduleDAGMILive { … };
}
#endif