LLVM 20.0.0git
|
#include "Target/Hexagon/HexagonBitTracker.h"
Public Types | |
using | CellMapType = BitTracker::CellMapType |
using | RegisterRef = BitTracker::RegisterRef |
using | RegisterCell = BitTracker::RegisterCell |
using | BranchTargetList = BitTracker::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 25 of file HexagonBitTracker.h.
Definition at line 29 of file HexagonBitTracker.h.
Definition at line 26 of file HexagonBitTracker.h.
Definition at line 28 of file HexagonBitTracker.h.
Definition at line 27 of file HexagonBitTracker.h.
HexagonEvaluator::HexagonEvaluator | ( | const HexagonRegisterInfo & | tri, |
MachineRegisterInfo & | mri, | ||
const HexagonInstrInfo & | tii, | ||
MachineFunction & | mf | ||
) |
|
overridevirtual |
Reimplemented from llvm::BitTracker::MachineEvaluator.
Definition at line 128 of file HexagonBitTracker.cpp.
References assert(), llvm::dbgs(), llvm::TargetRegisterClass::getID(), Idx, llvm_unreachable, llvm::Hexagon::ps_sub_hi, llvm::Hexagon::ps_sub_lo, and llvm::BitTracker::MachineEvaluator::TRI.
|
overridevirtual |
Implements llvm::BitTracker::MachineEvaluator.
Definition at line 983 of file HexagonBitTracker.cpp.
References llvm::BitTracker::MachineEvaluator::getCell(), llvm::MachineOperand::getMBB(), llvm::MachineInstr::getOpcode(), llvm::MachineInstr::getOperand(), llvm::SetVector< T, Vector, Set, N >::insert(), and llvm::Test.
|
overridevirtual |
Reimplemented from llvm::BitTracker::MachineEvaluator.
Definition at line 183 of file HexagonBitTracker.cpp.
References A, assert(), llvm::BitTracker::RegisterCell::cat(), llvm::countr_zero(), 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::BitTracker::MachineEvaluator::eXTR(), llvm::BitTracker::MachineEvaluator::eZXT(), F, llvm::BitTracker::RegisterCell::fill(), llvm::MachineFrameInfo::getObjectAlign(), llvm::BitTracker::MachineEvaluator::getRegBitWidth(), llvm::MachineRegisterInfo::getRegClass(), I, im, llvm::BitTracker::RegisterCell::insert(), llvm::BitTracker::BitValue::is(), MFI, MI, llvm::BitTracker::MachineEvaluator::MRI, N, op, llvm::BitTracker::MachineEvaluator::putCell(), R2, rc, llvm::BitTracker::RegisterCell::ref(), llvm::BitTracker::RegisterCell::self(), llvm::shuffle(), llvm::Align::value(), Wd, and llvm::BitTracker::RegisterCell::width().
|
overridevirtual |
Reimplemented from llvm::BitTracker::MachineEvaluator.
Definition at line 111 of file HexagonBitTracker.cpp.
References llvm::TargetRegisterInfo::getMinimalPhysRegClass(), llvm::MCRegisterInfo::getName(), llvm::TargetRegisterInfo::getRegSizeInBits(), llvm::MachineFunction::getSubtarget(), llvm_unreachable, MF, and llvm::BitTracker::MachineEvaluator::TRI.
|
overridevirtual |
Reimplemented from llvm::BitTracker::MachineEvaluator.
Definition at line 87 of file HexagonBitTracker.cpp.
References llvm::dbgs(), llvm::TargetRegisterClass::getID(), llvm::BitTracker::MachineEvaluator::getRegBitWidth(), llvm::MachineRegisterInfo::getRegClass(), llvm::TargetRegisterInfo::getRegClassName(), 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 46 of file HexagonBitTracker.h.
Referenced by getPhysRegBitWidth(), and HexagonEvaluator().
MachineFrameInfo& llvm::HexagonEvaluator::MFI |
Definition at line 47 of file HexagonBitTracker.h.
Referenced by evaluate().
const HexagonInstrInfo& llvm::HexagonEvaluator::TII |
Definition at line 48 of file HexagonBitTracker.h.