|
LLVM
8.0.1
|
#include "llvm/CodeGen/CalcSpillWeights.h"#include "llvm/ADT/SmallPtrSet.h"#include "llvm/CodeGen/LiveInterval.h"#include "llvm/CodeGen/LiveIntervals.h"#include "llvm/CodeGen/MachineFunction.h"#include "llvm/CodeGen/MachineInstr.h"#include "llvm/CodeGen/MachineLoopInfo.h"#include "llvm/CodeGen/MachineOperand.h"#include "llvm/CodeGen/MachineRegisterInfo.h"#include "llvm/CodeGen/TargetInstrInfo.h"#include "llvm/CodeGen/TargetRegisterInfo.h"#include "llvm/CodeGen/TargetSubtargetInfo.h"#include "llvm/CodeGen/VirtRegMap.h"#include "llvm/Support/Debug.h"#include "llvm/Support/raw_ostream.h"#include <cassert>#include <tuple>
Go to the source code of this file.
Macros | |
| #define | DEBUG_TYPE "calcspillweights" |
Functions | |
| static unsigned | copyHint (const MachineInstr *mi, unsigned reg, const TargetRegisterInfo &tri, const MachineRegisterInfo &mri) |
| static bool | isRematerializable (const LiveInterval &LI, const LiveIntervals &LIS, VirtRegMap *VRM, const TargetInstrInfo &TII) |
| #define DEBUG_TYPE "calcspillweights" |
Definition at line 30 of file CalcSpillWeights.cpp.
|
static |
Definition at line 52 of file CalcSpillWeights.cpp.
References llvm::TargetRegisterClass::contains(), llvm::TargetRegisterInfo::getMatchingSuperReg(), llvm::MachineInstr::getOperand(), llvm::MachineOperand::getReg(), llvm::MachineRegisterInfo::getRegClass(), llvm::MCRegisterInfo::getSubReg(), llvm::MachineOperand::getSubReg(), llvm::TargetRegisterInfo::isVirtualRegister(), rc, and llvm::ARM_AM::sub.
Referenced by llvm::VirtRegAuxInfo::weightCalcHelper().
|
static |
Definition at line 85 of file CalcSpillWeights.cpp.
References assert(), llvm::VNInfo::def, E, llvm::LiveIntervals::getAliasAnalysis(), llvm::LiveIntervals::getInstructionFromIndex(), llvm::LiveIntervals::getInterval(), llvm::MachineInstr::getOperand(), llvm::VirtRegMap::getOriginal(), llvm::MachineOperand::getReg(), I, llvm::MachineInstr::isFullCopy(), llvm::VNInfo::isPHIDef(), llvm::TargetInstrInfo::isTriviallyReMaterializable(), llvm::VNInfo::isUnused(), llvm::TargetRegisterInfo::isVirtualRegister(), MI, llvm::LiveRange::Query(), llvm::LiveInterval::reg, Reg, llvm::LiveQueryResult::valueIn(), llvm::LiveRange::vni_begin(), and llvm::LiveRange::vni_end().
Referenced by llvm::VirtRegAuxInfo::weightCalcHelper().
1.8.13