LLVM 17.0.0git
|
#include "GCNHazardRecognizer.h"
#include "GCNSubtarget.h"
#include "MCTargetDesc/AMDGPUMCTargetDesc.h"
#include "SIMachineFunctionInfo.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/ScheduleDAG.h"
#include "llvm/TargetParser/TargetParser.h"
Go to the source code of this file.
Typedefs | |
typedef function_ref< bool(const MachineInstr &, int WaitStates)> | IsExpiredFn |
typedef function_ref< unsigned int(const MachineInstr &)> | GetNumWaitStatesFn |
Enumerations | |
enum | HazardFnResult { HazardFound , HazardExpired , NoHazardFound } |
Variables | |
static cl::opt< unsigned, false, MFMAPaddingRatioParser > | MFMAPaddingRatio ("amdgpu-mfma-padding-ratio", cl::init(0), cl::Hidden, cl::desc("Fill a percentage of the latency between " "neighboring MFMA with s_nops.")) |
typedef function_ref<unsigned int(const MachineInstr &)> GetNumWaitStatesFn |
Definition at line 448 of file GCNHazardRecognizer.cpp.
typedef function_ref<bool(const MachineInstr &, int WaitStates)> IsExpiredFn |
Definition at line 447 of file GCNHazardRecognizer.cpp.
enum HazardFnResult |
Enumerator | |
---|---|
HazardFound | |
HazardExpired | |
NoHazardFound |
Definition at line 445 of file GCNHazardRecognizer.cpp.
|
static |
Definition at line 595 of file GCNHazardRecognizer.cpp.
References addRegUnits(), and TRI.
|
static |
Definition at line 589 of file GCNHazardRecognizer.cpp.
References llvm::MCRegisterInfo::DiffListIterator::isValid(), llvm::BitVector::set(), and TRI.
Referenced by addRegsToSet().
|
static |
Definition at line 608 of file GCNHazardRecognizer.cpp.
References llvm::SIInstrInfo::isSMRD(), and MI.
|
static |
Definition at line 612 of file GCNHazardRecognizer.cpp.
References llvm::SIInstrInfo::isFLAT(), llvm::SIInstrInfo::isVMEM(), and MI.
|
static |
Definition at line 174 of file GCNHazardRecognizer.cpp.
References llvm::MachineOperand::getImm(), llvm::AMDGPU::Hwreg::ID_MASK_, and TII.
|
static |
Definition at line 495 of file GCNHazardRecognizer.cpp.
References E, getWaitStatesSince(), I, llvm::detail::DenseSetImpl< ValueT, MapTy, ValueInfoT >::insert(), llvm::MachineBasicBlock::instr_rend(), MBB, and llvm::MachineBasicBlock::predecessors().
Referenced by getWaitStatesSince().
|
static |
Definition at line 531 of file GCNHazardRecognizer.cpp.
References getWaitStatesSince(), and MI.
|
static |
Definition at line 453 of file GCNHazardRecognizer.cpp.
References E, hasHazard(), HazardExpired, HazardFound, I, llvm::detail::DenseSetImpl< ValueT, MapTy, ValueInfoT >::insert(), llvm::MachineBasicBlock::instr_rend(), MBB, and llvm::MachineBasicBlock::predecessors().
Referenced by hasHazard().
|
static |
Definition at line 259 of file GCNHazardRecognizer.cpp.
References llvm::MachineInstrBuilder::addImm(), Arg, llvm::BuildMI(), MI, and TII.
Definition at line 118 of file GCNHazardRecognizer.cpp.
References llvm::AMDGPU::getMAIIsDGEMM().
Referenced by isXDL().
Definition at line 79 of file GCNHazardRecognizer.cpp.
Referenced by llvm::GCNHazardRecognizer::getHazardType(), and llvm::GCNHazardRecognizer::PreEmitNoopsCommon().
|
static |
Definition at line 169 of file GCNHazardRecognizer.cpp.
References llvm::SIInstrInfo::isFLAT(), llvm::SIInstrInfo::isMUBUF(), llvm::SIInstrInfo::isVALU(), and MI.
Referenced by llvm::GCNHazardRecognizer::getHazardType(), and llvm::GCNHazardRecognizer::PreEmitNoopsCommon().
|
static |
Definition at line 163 of file GCNHazardRecognizer.cpp.
References MI.
Definition at line 102 of file GCNHazardRecognizer.cpp.
Referenced by llvm::GCNHazardRecognizer::getHazardType(), and llvm::GCNHazardRecognizer::PreEmitNoopsCommon().
Definition at line 98 of file GCNHazardRecognizer.cpp.
Referenced by llvm::GCNHazardRecognizer::getHazardType(), and llvm::GCNHazardRecognizer::PreEmitNoopsCommon().
|
static |
Definition at line 137 of file GCNHazardRecognizer.cpp.
References llvm::AMDGPU::getNamedOperandIdx(), MI, and TII.
Referenced by llvm::GCNHazardRecognizer::getHazardType(), and llvm::GCNHazardRecognizer::PreEmitNoopsCommon().
Definition at line 83 of file GCNHazardRecognizer.cpp.
Referenced by llvm::GCNHazardRecognizer::getHazardType(), and llvm::GCNHazardRecognizer::PreEmitNoopsCommon().
Definition at line 106 of file GCNHazardRecognizer.cpp.
Referenced by llvm::GCNHazardRecognizer::getHazardType(), and llvm::GCNHazardRecognizer::PreEmitNoopsCommon().
Definition at line 87 of file GCNHazardRecognizer.cpp.
Referenced by llvm::GCNHazardRecognizer::getHazardType(), and llvm::GCNHazardRecognizer::PreEmitNoopsCommon().
|
static |
Definition at line 1332 of file GCNHazardRecognizer.cpp.
References I.
|
static |
Definition at line 122 of file GCNHazardRecognizer.cpp.
References llvm::AMDGPU::getMAIIsGFX940XDL(), isDGEMM(), llvm::SIInstrInfo::isMAI(), and MI.
|
static |
Definition at line 1311 of file GCNHazardRecognizer.cpp.
References llvm::SIInstrInfo::isDS(), llvm::SIInstrInfo::isSegmentSpecificFLAT(), llvm::SIInstrInfo::isVMEM(), MBB, and MI.
Referenced by llvm::GCNHazardRecognizer::GCNHazardRecognizer().
|
static |