|
LLVM
8.0.1
|
#include "GCNIterativeScheduler.h"#include "AMDGPUSubtarget.h"#include "GCNRegPressure.h"#include "GCNSchedStrategy.h"#include "SIMachineFunctionInfo.h"#include "llvm/ADT/ArrayRef.h"#include "llvm/ADT/STLExtras.h"#include "llvm/ADT/SmallVector.h"#include "llvm/CodeGen/LiveIntervals.h"#include "llvm/CodeGen/MachineBasicBlock.h"#include "llvm/CodeGen/MachineFunction.h"#include "llvm/CodeGen/RegisterPressure.h"#include "llvm/CodeGen/ScheduleDAG.h"#include "llvm/Config/llvm-config.h"#include "llvm/Support/Compiler.h"#include "llvm/Support/Debug.h"#include "llvm/Support/raw_ostream.h"#include <algorithm>#include <cassert>#include <iterator>#include <limits>#include <memory>#include <type_traits>#include <vector>
Go to the source code of this file.
Classes | |
| class | llvm::GCNIterativeScheduler::BuildDAG |
| class | llvm::GCNIterativeScheduler::OverrideLegacyStrategy |
Namespaces | |
| llvm | |
| This class represents lattice values for constants. | |
Macros | |
| #define | DEBUG_TYPE "machine-scheduler" |
Functions | |
| std::vector< const SUnit * > | llvm::makeMinRegSchedule (ArrayRef< const SUnit *> TopRoots, const ScheduleDAG &DAG) |
| std::vector< const SUnit * > | llvm::makeGCNILPScheduler (ArrayRef< const SUnit *> BotRoots, const ScheduleDAG &DAG) |
| static MachineInstr * | getMachineInstr (MachineInstr *MI) |
| static MachineInstr * | getMachineInstr (const SUnit *SU) |
| static MachineInstr * | getMachineInstr (const SUnit &SU) |
| static LLVM_DUMP_METHOD void | printRegion (raw_ostream &OS, MachineBasicBlock::iterator Begin, MachineBasicBlock::iterator End, const LiveIntervals *LIS, unsigned MaxInstNum=std::numeric_limits< unsigned >::max()) |
| static LLVM_DUMP_METHOD void | printLivenessInfo (raw_ostream &OS, MachineBasicBlock::iterator Begin, MachineBasicBlock::iterator End, const LiveIntervals *LIS) |
| #define DEBUG_TYPE "machine-scheduler" |
Definition at line 37 of file GCNIterativeScheduler.cpp.
|
inlinestatic |
Definition at line 49 of file GCNIterativeScheduler.cpp.
References MI.
Referenced by llvm::GCNIterativeScheduler::getSchedulePressure(), lookupCandidateBaseReg(), and llvm::GCNIterativeScheduler::scheduleRegion().
|
inlinestatic |
Definition at line 52 of file GCNIterativeScheduler.cpp.
References llvm::SUnit::getInstr().
|
inlinestatic |
Definition at line 55 of file GCNIterativeScheduler.cpp.
References llvm::SUnit::getInstr(), and LLVM_DUMP_METHOD.
|
static |
Definition at line 92 of file GCNIterativeScheduler.cpp.
References llvm::getLiveRegsBefore(), llvm::getRegPressure(), MRI, and llvm::GCNRegPressure::print().
Referenced by llvm::GCNIterativeScheduler::printRegions(), llvm::GCNIterativeScheduler::schedule(), and llvm::GCNIterativeScheduler::tryMaximizeOccupancy().
|
static |
1.8.13