|
LLVM
3.7.0
|
#include <HexagonBitTracker.h>
Public Types | |
| typedef BitTracker::CellMapType | CellMapType |
| typedef BitTracker::RegisterRef | RegisterRef |
| typedef BitTracker::RegisterCell | RegisterCell |
| typedef BitTracker::BranchTargetList | BranchTargetList |
Public Attributes | |
| MachineFunction & | MF |
| MachineFrameInfo & | MFI |
| const HexagonInstrInfo & | TII |
Public Attributes inherited from llvm::BitTracker::MachineEvaluator | |
| const TargetRegisterInfo & | TRI |
| MachineRegisterInfo & | MRI |
Definition at line 20 of file HexagonBitTracker.h.
Definition at line 24 of file HexagonBitTracker.h.
Definition at line 21 of file HexagonBitTracker.h.
Definition at line 23 of file HexagonBitTracker.h.
Definition at line 22 of file HexagonBitTracker.h.
| HexagonEvaluator::HexagonEvaluator | ( | const HexagonRegisterInfo & | tri, |
| MachineRegisterInfo & | mri, | ||
| const HexagonInstrInfo & | tii, | ||
| MachineFunction & | mf | ||
| ) |
Definition at line 25 of file HexagonBitTracker.cpp.
References llvm::Function::arg_begin(), llvm::Function::arg_end(), F(), llvm::Function::getAttributes(), llvm::MachineFunction::getFunction(), llvm::Type::getIntegerBitWidth(), llvm::Value::getType(), llvm::AttributeSet::hasAttribute(), I, llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::insert(), llvm::Type::isIntegerTy(), llvm::Type::isPointerTy(), MF, llvm::Attribute::SExt, and llvm::Attribute::ZExt.
|
overridevirtual |
Reimplemented from llvm::BitTracker::MachineEvaluator.
Definition at line 123 of file HexagonBitTracker.cpp.
References llvm::ARM_PROC::A, llvm::abs(), llvm::BX, llvm::BitTracker::RegisterCell::cat(), llvm::HexagonISD::CONST32, llvm::BitTracker::MachineEvaluator::eADD(), llvm::BitTracker::MachineEvaluator::eAND(), llvm::BitTracker::MachineEvaluator::eASL(), llvm::BitTracker::MachineEvaluator::eASR(), llvm::BitTracker::MachineEvaluator::eCLB(), llvm::BitTracker::MachineEvaluator::eCTB(), llvm::BitTracker::MachineEvaluator::eIMM(), llvm::BitTracker::MachineEvaluator::eINS(), llvm::BitTracker::MachineEvaluator::eLSR(), llvm::BitTracker::MachineEvaluator::eMLS(), llvm::BitTracker::MachineEvaluator::eMLU(), llvm::BitTracker::MachineEvaluator::eNOT(), llvm::BitTracker::MachineEvaluator::eORL(), llvm::BitTracker::MachineEvaluator::eSUB(), llvm::BitTracker::MachineEvaluator::eSXT(), llvm::BitTracker::MachineEvaluator::eXOR(), llvm::MipsISD::Ext, llvm::BitTracker::MachineEvaluator::eXTR(), llvm::BitTracker::MachineEvaluator::eZXT(), F(), llvm::BitTracker::RegisterCell::fill(), llvm::MachineOperand::getImm(), llvm::MachineInstr::getNumOperands(), llvm::MachineFrameInfo::getObjectAlignment(), llvm::MachineInstr::getOpcode(), llvm::MachineInstr::getOperand(), llvm::BitTracker::MachineEvaluator::getRegBitWidth(), llvm::MachineOperand::getSubReg(), I, im, llvm::BitTracker::RegisterCell::insert(), llvm::BitTracker::BitValue::is(), llvm::MachineOperand::isBlockAddress(), llvm::MachineInstr::isCopy(), llvm::MachineOperand::isCPI(), llvm::MachineOperand::isDef(), llvm::MachineOperand::isGlobal(), llvm::MachineOperand::isImm(), llvm::MachineOperand::isJTI(), llvm::MachineOperand::isReg(), llvm::MachineOperand::isSymbol(), llvm::Log2_32(), llvm::MachineInstr::mayLoad(), llvm::BitTracker::RegisterCell::meet(), MFI, llvm::AArch64CC::MI, N, llvm::BitTracker::BitValue::One, op, llvm::BitTracker::MachineEvaluator::putCell(), R2, rc, llvm::BitTracker::RegisterCell::ref(), llvm::NVPTX::PTXCvtMode::RZ, llvm::BitTracker::BitValue::self(), llvm::BitTracker::RegisterCell::self(), llvm::BitTracker::RegisterCell::width(), llvm::SystemZISD::XC, and llvm::BitTracker::BitValue::Zero.
|
overridevirtual |
Implements llvm::BitTracker::MachineEvaluator.
Definition at line 882 of file HexagonBitTracker.cpp.
References llvm::BitTracker::MachineEvaluator::getCell(), llvm::MachineOperand::getMBB(), llvm::MachineInstr::getOpcode(), llvm::MachineInstr::getOperand(), llvm::SetVector< T, Vector, Set >::insert(), and llvm::BitTracker::BitValue::is().
|
overridevirtual |
Reimplemented from llvm::BitTracker::MachineEvaluator.
Definition at line 78 of file HexagonBitTracker.cpp.
References llvm::dbgs(), llvm::BitTracker::MachineEvaluator::getRegBitWidth(), llvm::MachineRegisterInfo::getRegClass(), llvm_unreachable, llvm::BitTracker::MachineEvaluator::MRI, and llvm::BitTracker::MachineEvaluator::TRI.
| MachineFunction& llvm::HexagonEvaluator::MF |
Definition at line 36 of file HexagonBitTracker.h.
Referenced by HexagonEvaluator().
| MachineFrameInfo& llvm::HexagonEvaluator::MFI |
Definition at line 37 of file HexagonBitTracker.h.
Referenced by evaluate().
| const HexagonInstrInfo& llvm::HexagonEvaluator::TII |
Definition at line 38 of file HexagonBitTracker.h.
1.8.6