|
LLVM
4.0.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 22 of file HexagonBitTracker.h.
Definition at line 26 of file HexagonBitTracker.h.
Definition at line 23 of file HexagonBitTracker.h.
Definition at line 25 of file HexagonBitTracker.h.
Definition at line 24 of file HexagonBitTracker.h.
| HexagonEvaluator::HexagonEvaluator | ( | const HexagonRegisterInfo & | tri, |
| MachineRegisterInfo & | mri, | ||
| const HexagonInstrInfo & | tii, | ||
| MachineFunction & | mf | ||
| ) |
Definition at line 39 of file HexagonBitTracker.cpp.
References llvm::Function::arg_begin(), llvm::Function::arg_end(), E, 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(), and MF.
|
overridevirtual |
Reimplemented from llvm::BitTracker::MachineEvaluator.
Definition at line 145 of file HexagonBitTracker.cpp.
References A, llvm::abs(), assert(), 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, 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(), L, llvm::Log2_32(), llvm::MachineInstr::mayLoad(), llvm::BitTracker::RegisterCell::meet(), MFI, MI, N, llvm::BitTracker::BitValue::One, op, PC, 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, Zero, and llvm::BitTracker::BitValue::Zero.
|
overridevirtual |
Implements llvm::BitTracker::MachineEvaluator.
Definition at line 914 of file HexagonBitTracker.cpp.
References llvm::BitTracker::MachineEvaluator::getCell(), llvm::MachineOperand::getMBB(), llvm::MachineInstr::getOpcode(), llvm::MachineInstr::getOperand(), llvm::SetVector< T, Vector, Set >::insert(), llvm::BitTracker::BitValue::is(), and PC.
|
overridevirtual |
Reimplemented from llvm::BitTracker::MachineEvaluator.
Definition at line 93 of file HexagonBitTracker.cpp.
References llvm::dbgs(), llvm::BitTracker::MachineEvaluator::getRegBitWidth(), llvm::MachineRegisterInfo::getRegClass(), llvm_unreachable, llvm::BitTracker::MachineEvaluator::MRI, llvm::PrintReg(), llvm::Hexagon::ps_sub_lo, and llvm::BitTracker::MachineEvaluator::TRI.
| MachineFunction& llvm::HexagonEvaluator::MF |
Definition at line 38 of file HexagonBitTracker.h.
Referenced by HexagonEvaluator().
| MachineFrameInfo& llvm::HexagonEvaluator::MFI |
Definition at line 39 of file HexagonBitTracker.h.
Referenced by evaluate().
| const HexagonInstrInfo& llvm::HexagonEvaluator::TII |
Definition at line 40 of file HexagonBitTracker.h.
1.8.6