LLVM
8.0.1
|
#include "GCNRegPressure.h"
#include "AMDGPUSubtarget.h"
#include "SIRegisterInfo.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/CodeGen/LiveInterval.h"
#include "llvm/CodeGen/LiveIntervals.h"
#include "llvm/CodeGen/MachineInstr.h"
#include "llvm/CodeGen/MachineOperand.h"
#include "llvm/CodeGen/MachineRegisterInfo.h"
#include "llvm/CodeGen/RegisterPressure.h"
#include "llvm/CodeGen/SlotIndexes.h"
#include "llvm/CodeGen/TargetRegisterInfo.h"
#include "llvm/Config/llvm-config.h"
#include "llvm/MC/LaneBitmask.h"
#include "llvm/Support/Compiler.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/raw_ostream.h"
#include <algorithm>
#include <cassert>
Go to the source code of this file.
Macros | |
#define | DEBUG_TYPE "machine-scheduler" |
Functions | |
static bool | isEqual (const GCNRPTracker::LiveRegSet &S1, const GCNRPTracker::LiveRegSet &S2) |
static LaneBitmask | getDefRegMask (const MachineOperand &MO, const MachineRegisterInfo &MRI) |
static LaneBitmask | getUsedRegMask (const MachineOperand &MO, const MachineRegisterInfo &MRI, const LiveIntervals &LIS) |
static SmallVector< RegisterMaskPair, 8 > | collectVirtualRegUses (const MachineInstr &MI, const LiveIntervals &LIS, const MachineRegisterInfo &MRI) |
static LLVM_DUMP_METHOD void | reportMismatch (const GCNRPTracker::LiveRegSet &LISLR, const GCNRPTracker::LiveRegSet &TrackedLR, const TargetRegisterInfo *TRI) |
#define DEBUG_TYPE "machine-scheduler" |
Definition at line 33 of file GCNRegPressure.cpp.
|
static |
Definition at line 227 of file GCNRegPressure.cpp.
References llvm::SmallVectorTemplateCommon< T >::begin(), llvm::SmallVectorTemplateCommon< T >::end(), llvm::find_if(), getUsedRegMask(), I, llvm::TargetRegisterInfo::isVirtualRegister(), llvm::MachineInstr::operands(), llvm::SmallVectorTemplateBase< T >::push_back(), Reg, and llvm::NVPTX::PTXCvtMode::RM.
Referenced by llvm::GCNUpwardRPTracker::recede().
|
static |
Definition at line 193 of file GCNRegPressure.cpp.
References assert(), llvm::MachineRegisterInfo::getMaxLaneMaskForVReg(), llvm::MachineOperand::getReg(), llvm::MachineOperand::getSubReg(), llvm::TargetRegisterInfo::getSubRegIndexLaneMask(), llvm::MachineRegisterInfo::getTargetRegisterInfo(), llvm::MachineOperand::isDef(), llvm::MachineOperand::isReg(), and llvm::TargetRegisterInfo::isVirtualRegister().
Referenced by llvm::GCNDownwardRPTracker::advanceToNext(), and llvm::GCNUpwardRPTracker::recede().
|
static |
Definition at line 206 of file GCNRegPressure.cpp.
References assert(), llvm::LiveIntervals::getInstructionIndex(), llvm::LaneBitmask::getLane(), llvm::getLiveLaneMask(), llvm::MachineRegisterInfo::getMaxLaneMaskForVReg(), llvm::MachineOperand::getParent(), llvm::MachineOperand::getReg(), llvm::MachineOperand::getSubReg(), llvm::TargetRegisterInfo::getSubRegIndexLaneMask(), llvm::MachineRegisterInfo::getTargetRegisterInfo(), llvm::MachineOperand::isReg(), llvm::MachineOperand::isUse(), llvm::TargetRegisterInfo::isVirtualRegister(), MRI, SI, and SubReg.
Referenced by collectVirtualRegUses().
|
static |
Definition at line 68 of file GCNRegPressure.cpp.
References assert(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::end(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::find(), llvm::MachineRegisterInfo::getRegClass(), llvm::MachineRegisterInfo::getTargetRegisterInfo(), I, llvm::SIRegisterInfo::isSGPRClass(), llvm::TargetRegisterInfo::isVirtualRegister(), MRI, P, Reg, llvm::GCNRegPressure::SGPR32, llvm::GCNRegPressure::SGPR_TUPLE, llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::size(), llvm::GCNRegPressure::VGPR32, and llvm::GCNRegPressure::VGPR_TUPLE.
Referenced by llvm::GCNUpwardRPTracker::isValid().
|
static |
Definition at line 442 of file GCNRegPressure.cpp.
References llvm::dbgs(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::end(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::find(), I, P, llvm::PrintLaneMask(), and llvm::printReg().
Referenced by llvm::GCNUpwardRPTracker::isValid().