LLVM API Documentation
#include <TargetSchedInfo.h>
Inheritance diagram for llvm::TargetSchedInfo:


Public Member Functions | |
| TargetSchedInfo (const TargetMachine &tgt, int _numSchedClasses, const InstrClassRUsage *_classRUsages, const InstrRUsageDelta *_usageDeltas, const InstrIssueDelta *_issueDeltas, unsigned _numUsageDeltas, unsigned _numIssueDeltas) | |
| virtual | ~TargetSchedInfo () |
| const TargetInstrInfo & | getInstrInfo () const |
| int | getNumSchedClasses () const |
| unsigned | getMaxNumIssueTotal () const |
| unsigned | getMaxIssueForClass (const InstrSchedClass &sc) const |
| InstrSchedClass | getSchedClass (MachineOpCode opCode) const |
| bool | instrCanUseSlot (MachineOpCode opCode, unsigned s) const |
| int | getLongestIssueConflict () const |
| int | getMinIssueGap (MachineOpCode fromOp, MachineOpCode toOp) const |
| const std::vector< MachineOpCode > & | getConflictList (MachineOpCode opCode) const |
| bool | isSingleIssue (MachineOpCode opCode) const |
| bool | breaksIssueGroup (MachineOpCode opCode) const |
| unsigned | numBubblesAfter (MachineOpCode opCode) const |
| unsigned | getCPUResourceNum (int rd) const |
Public Attributes | |
| const TargetMachine & | target |
| unsigned | maxNumIssueTotal |
| int | longestIssueConflict |
| std::vector< std::pair< int, int > > | resourceNumVector |
Protected Member Functions | |
| const InstrRUsage & | getInstrRUsage (MachineOpCode opCode) const |
| const InstrClassRUsage & | getClassRUsage (const InstrSchedClass &sc) const |
| virtual void | initializeResources () |
Protected Attributes | |
| unsigned | numSchedClasses |
| const TargetInstrInfo * | mii |
| const InstrClassRUsage * | classRUsages |
| const InstrRUsageDelta * | usageDeltas |
| const InstrIssueDelta * | issueDeltas |
| unsigned | numUsageDeltas |
| unsigned | numIssueDeltas |
| std::vector< InstrRUsage > | instrRUsages |
| std::vector< std::vector< int > > | issueGaps |
| std::vector< std::vector< MachineOpCode > > | conflictLists |
Friends | |
| class | ModuloSchedulingPass |
| class | MSSchedule |
Definition at line 155 of file TargetSchedInfo.h.
|
||||||||||||||||||||||||||||||||
|
Definition at line 98 of file TargetSchedInfo.cpp. |
|
|
Definition at line 183 of file TargetSchedInfo.h. |
|
|
Definition at line 233 of file TargetSchedInfo.h. References llvm::InstrRUsage::breaksGroup, and getInstrRUsage(). Referenced by llvm::FindSlotChoices(). |
|
|
Definition at line 167 of file TargetSchedInfo.h. References classRUsages, and numSchedClasses. |
|
|
Definition at line 224 of file TargetSchedInfo.h. References conflictLists. |
|
|
Definition at line 241 of file TargetSchedInfo.h. References resourceNumVector. |
|
|
Definition at line 185 of file TargetSchedInfo.h. References mii. Referenced by llvm::SchedulingManager::getInstrInfo(), getSchedClass(), and llvm::RecordSchedule(). |
|
|
Definition at line 163 of file TargetSchedInfo.h. References instrRUsages. Referenced by breaksIssueGroup(), instrCanUseSlot(), isSingleIssue(), and numBubblesAfter(). |
|
|
Definition at line 212 of file TargetSchedInfo.h. References longestIssueConflict. |
|
|
Definition at line 197 of file TargetSchedInfo.h. References classRUsages, llvm::InstrClassRUsage::maxNumIssue, and numSchedClasses. Referenced by llvm::ConflictsWithChoices(). |
|
|
Definition at line 193 of file TargetSchedInfo.h. References maxNumIssueTotal. Referenced by initializeResources(). |
|
||||||||||||
|
Definition at line 216 of file TargetSchedInfo.h. References issueGaps. |
|
|
Definition at line 189 of file TargetSchedInfo.h. References numSchedClasses. |
|
|
Definition at line 202 of file TargetSchedInfo.h. References getInstrInfo(), and llvm::TargetInstrInfo::getSchedClass(). Referenced by llvm::SchedulingManager::addChoice(), llvm::ConflictsWithChoices(), and llvm::SchedulingManager::scheduleInstr(). |
|
|
Reimplemented in llvm::SparcV9SchedInfo. Definition at line 113 of file TargetSchedInfo.cpp. References classRUsages, getMaxNumIssueTotal(), llvm::MAX_NUM_SLOTS, and numSchedClasses. Referenced by llvm::SparcV9SchedInfo::initializeResources(). |
|
||||||||||||
|
Definition at line 206 of file TargetSchedInfo.h. References llvm::InstrRUsage::feasibleSlots, and getInstrRUsage(). Referenced by llvm::FindSlotChoices(), and llvm::DelaySlotInfo::scheduleDelayedNode(). |
|
|
Definition at line 229 of file TargetSchedInfo.h. References getInstrRUsage(), and llvm::InstrRUsage::isSingleIssue. Referenced by llvm::ConflictsWithChoices(), llvm::FindSlotChoices(), and llvm::NodeCanFillDelaySlot(). |
|
|
Definition at line 237 of file TargetSchedInfo.h. References getInstrRUsage(), and llvm::InstrRUsage::numBubbles. |
|
|
Definition at line 282 of file TargetSchedInfo.h. |
|
|
Definition at line 283 of file TargetSchedInfo.h. |
|
|
Definition at line 270 of file TargetSchedInfo.h. Referenced by getClassRUsage(), getMaxIssueForClass(), and initializeResources(). |
|
|
Definition at line 279 of file TargetSchedInfo.h. Referenced by getConflictList(). |
|
|
Definition at line 276 of file TargetSchedInfo.h. Referenced by getInstrRUsage(). |
|
|
Definition at line 272 of file TargetSchedInfo.h. |
|
|
Definition at line 277 of file TargetSchedInfo.h. Referenced by getMinIssueGap(). |
|
|
Definition at line 160 of file TargetSchedInfo.h. Referenced by getLongestIssueConflict(), and llvm::SparcV9SchedInfo::SparcV9SchedInfo(). |
|
|
Definition at line 159 of file TargetSchedInfo.h. Referenced by getMaxNumIssueTotal(), and llvm::SparcV9SchedInfo::SparcV9SchedInfo(). |
|
|
Definition at line 269 of file TargetSchedInfo.h. Referenced by getInstrInfo(). |
|
|
Definition at line 274 of file TargetSchedInfo.h. |
|
|
Definition at line 268 of file TargetSchedInfo.h. Referenced by getClassRUsage(), getMaxIssueForClass(), getNumSchedClasses(), and initializeResources(). |
|
|
Definition at line 273 of file TargetSchedInfo.h. |
|
|
Definition at line 265 of file TargetSchedInfo.h. Referenced by getCPUResourceNum(). |
|
|
Definition at line 157 of file TargetSchedInfo.h. |
|
|
Definition at line 271 of file TargetSchedInfo.h. |