LLVM API Documentation
#include <MachineScheduler.h>
Public Member Functions | |
SchedCandidate (const CandPolicy &policy) | |
bool | isValid () const |
void | setBest (SchedCandidate &Best) |
bool | isRepeat (CandReason R) |
void | setRepeat (CandReason R) |
void | initResourceDelta (const ScheduleDAGMI *DAG, const TargetSchedModel *SchedModel) |
Public Attributes | |
CandPolicy | Policy |
SUnit * | SU |
CandReason | Reason |
uint32_t | RepeatReasonSet |
RegPressureDelta | RPDelta |
SchedResourceDelta | ResDelta |
Store the state used by GenericScheduler heuristics, required for the lifetime of one invocation of pickNode().
Definition at line 786 of file MachineScheduler.h.
llvm::GenericSchedulerBase::SchedCandidate::SchedCandidate | ( | const CandPolicy & | policy | ) | [inline] |
Definition at line 804 of file MachineScheduler.h.
void GenericSchedulerBase::SchedCandidate::initResourceDelta | ( | const ScheduleDAGMI * | DAG, |
const TargetSchedModel * | SchedModel | ||
) |
Definition at line 2116 of file MachineScheduler.cpp.
References llvm::GenericSchedulerBase::SchedResourceDelta::CritResources, llvm::GenericSchedulerBase::SchedResourceDelta::DemandedResources, llvm::GenericSchedulerBase::CandPolicy::DemandResIdx, llvm::ScheduleDAGInstrs::getSchedClass(), llvm::TargetSchedModel::getWriteProcResBegin(), llvm::TargetSchedModel::getWriteProcResEnd(), Policy, llvm::GenericSchedulerBase::CandPolicy::ReduceResIdx, ResDelta, and llvm::PPCISD::SC.
Referenced by llvm::GenericScheduler::pickNodeFromQueue(), llvm::PostGenericScheduler::pickNodeFromQueue(), and llvm::GenericScheduler::tryCandidate().
Definition at line 818 of file MachineScheduler.h.
References RepeatReasonSet.
Referenced by llvm::GenericScheduler::pickNodeBidirectional().
bool llvm::GenericSchedulerBase::SchedCandidate::isValid | ( | ) | const [inline] |
Definition at line 807 of file MachineScheduler.h.
References SU.
Referenced by llvm::GenericScheduler::tryCandidate(), and llvm::PostGenericScheduler::tryCandidate().
void llvm::GenericSchedulerBase::SchedCandidate::setBest | ( | SchedCandidate & | Best | ) | [inline] |
Definition at line 810 of file MachineScheduler.h.
References llvm::GenericSchedulerBase::NoCand, Reason, ResDelta, RPDelta, and SU.
Referenced by llvm::GenericScheduler::pickNodeFromQueue(), and llvm::PostGenericScheduler::pickNodeFromQueue().
void llvm::GenericSchedulerBase::SchedCandidate::setRepeat | ( | CandReason | R | ) | [inline] |
Definition at line 819 of file MachineScheduler.h.
References RepeatReasonSet.
Referenced by tryGreater(), and tryLess().
Definition at line 787 of file MachineScheduler.h.
Referenced by initResourceDelta(), llvm::PostGenericScheduler::pickNode(), llvm::GenericScheduler::pickNodeBidirectional(), llvm::GenericScheduler::pickNodeFromQueue(), llvm::PostGenericScheduler::pickNodeFromQueue(), and llvm::GenericSchedulerBase::traceCandidate().
Definition at line 793 of file MachineScheduler.h.
Referenced by llvm::GenericScheduler::pickNode(), llvm::PostGenericScheduler::pickNode(), llvm::GenericScheduler::pickNodeBidirectional(), llvm::GenericScheduler::pickNodeFromQueue(), llvm::PostGenericScheduler::pickNodeFromQueue(), setBest(), llvm::GenericSchedulerBase::traceCandidate(), tracePick(), llvm::GenericScheduler::tryCandidate(), llvm::PostGenericScheduler::tryCandidate(), tryGreater(), and tryLess().
Definition at line 796 of file MachineScheduler.h.
Referenced by isRepeat(), and setRepeat().
Definition at line 802 of file MachineScheduler.h.
Referenced by initResourceDelta(), llvm::GenericScheduler::pickNodeFromQueue(), setBest(), llvm::GenericScheduler::tryCandidate(), and llvm::PostGenericScheduler::tryCandidate().
Definition at line 799 of file MachineScheduler.h.
Referenced by setBest(), llvm::GenericSchedulerBase::traceCandidate(), and llvm::GenericScheduler::tryCandidate().
Definition at line 790 of file MachineScheduler.h.
Referenced by isValid(), llvm::GenericScheduler::pickNode(), llvm::PostGenericScheduler::pickNode(), llvm::GenericScheduler::pickNodeBidirectional(), llvm::GenericScheduler::pickNodeFromQueue(), llvm::PostGenericScheduler::pickNodeFromQueue(), setBest(), llvm::GenericSchedulerBase::traceCandidate(), llvm::GenericScheduler::tryCandidate(), llvm::PostGenericScheduler::tryCandidate(), and tryLatency().