LLVM 22.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 24 of file HexagonBitTracker.h.
Definition at line 28 of file HexagonBitTracker.h.
Definition at line 25 of file HexagonBitTracker.h.
Definition at line 27 of file HexagonBitTracker.h.
Definition at line 26 of file HexagonBitTracker.h.
HexagonEvaluator::HexagonEvaluator | ( | const HexagonRegisterInfo & | tri, |
MachineRegisterInfo & | mri, | ||
const HexagonInstrInfo & | tii, | ||
MachineFunction & | mf ) |
Definition at line 30 of file HexagonBitTracker.cpp.
References llvm::BitTracker::MachineEvaluator::MachineEvaluator(), MF, MFI, and TII.
|
overridevirtual |
Reimplemented from llvm::BitTracker::MachineEvaluator.
Definition at line 121 of file HexagonBitTracker.cpp.
References assert(), llvm::dbgs(), llvm::TargetRegisterClass::getID(), 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 977 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(), Opc, and llvm::Test.
|
overridevirtual |
Reimplemented from llvm::BitTracker::MachineEvaluator.
Definition at line 177 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::fill(), llvm::BitTracker::MachineEvaluator::getRegBitWidth(), I, im, llvm::BitTracker::RegisterCell::insert(), llvm::BitTracker::BitValue::is(), MFI, MI, llvm::BitTracker::MachineEvaluator::MRI, N, op, Opc, llvm::BitTracker::MachineEvaluator::putCell(), R2, rc, llvm::BitTracker::RegisterCell::ref(), Reg, llvm::BitTracker::RegisterCell::self(), llvm::shuffle(), and llvm::BitTracker::RegisterCell::width().
|
overridevirtual |
Reimplemented from llvm::BitTracker::MachineEvaluator.
Definition at line 104 of file HexagonBitTracker.cpp.
References llvm_unreachable, MF, and llvm::BitTracker::MachineEvaluator::TRI.
|
overridevirtual |
Reimplemented from llvm::BitTracker::MachineEvaluator.
Definition at line 79 of file HexagonBitTracker.cpp.
References llvm::dbgs(), llvm::TargetRegisterClass::getID(), llvm::BitTracker::MachineEvaluator::getRegBitWidth(), llvm_unreachable, llvm::BitTracker::MachineEvaluator::MRI, llvm::printReg(), llvm::Hexagon::ps_sub_lo, llvm::Sub, and llvm::BitTracker::MachineEvaluator::TRI.
MachineFunction& llvm::HexagonEvaluator::MF |
Definition at line 45 of file HexagonBitTracker.h.
Referenced by getPhysRegBitWidth(), and HexagonEvaluator().
MachineFrameInfo& llvm::HexagonEvaluator::MFI |
Definition at line 46 of file HexagonBitTracker.h.
Referenced by evaluate(), and HexagonEvaluator().
const HexagonInstrInfo& llvm::HexagonEvaluator::TII |
Definition at line 47 of file HexagonBitTracker.h.
Referenced by HexagonEvaluator().