LLVM 20.0.0git
|
#include "Target/Hexagon/BitTracker.h"
Classes | |
struct | BitMask |
struct | BitRef |
struct | BitValue |
struct | MachineEvaluator |
struct | RegisterCell |
struct | RegisterRef |
Public Types | |
using | BranchTargetList = SetVector< const MachineBasicBlock * > |
using | CellMapType = std::map< unsigned, RegisterCell > |
Public Member Functions | |
BitTracker (const MachineEvaluator &E, MachineFunction &F) | |
~BitTracker () | |
void | run () |
void | trace (bool On=false) |
bool | has (unsigned Reg) const |
const RegisterCell & | lookup (unsigned Reg) const |
RegisterCell | get (RegisterRef RR) const |
void | put (RegisterRef RR, const RegisterCell &RC) |
void | subst (RegisterRef OldRR, RegisterRef NewRR) |
bool | reached (const MachineBasicBlock *B) const |
void | visit (const MachineInstr &MI) |
void | print_cells (raw_ostream &OS) const |
Definition at line 35 of file BitTracker.h.
Definition at line 43 of file BitTracker.h.
using llvm::BitTracker::CellMapType = std::map<unsigned, RegisterCell> |
Definition at line 44 of file BitTracker.h.
BitTracker::BitTracker | ( | const MachineEvaluator & | E, |
MachineFunction & | F | ||
) |
Definition at line 187 of file BitTracker.cpp.
BitTracker::~BitTracker | ( | ) |
Definition at line 191 of file BitTracker.cpp.
BT::RegisterCell BT::get | ( | RegisterRef | RR | ) | const |
Definition at line 990 of file BitTracker.cpp.
References llvm::BitTracker::MachineEvaluator::getCell().
Definition at line 352 of file BitTracker.h.
References Reg.
|
inline |
Definition at line 357 of file BitTracker.h.
void BitTracker::print_cells | ( | raw_ostream & | OS | ) | const |
Definition at line 182 of file BitTracker.cpp.
References llvm::dbgs(), P, llvm::printReg(), and llvm::BitTracker::MachineEvaluator::TRI.
Referenced by run().
void BT::put | ( | RegisterRef | RR, |
const RegisterCell & | RC | ||
) |
Definition at line 994 of file BitTracker.cpp.
References llvm::BitTracker::MachineEvaluator::putCell().
bool BT::reached | ( | const MachineBasicBlock * | B | ) | const |
Definition at line 1025 of file BitTracker.cpp.
References assert(), B, and llvm::detail::DenseSetImpl< ValueT, MapTy, ValueInfoT >::count().
void BT::run | ( | ) |
Definition at line 1118 of file BitTracker.cpp.
References assert(), B, llvm::dbgs(), and print_cells().
void BT::subst | ( | RegisterRef | OldRR, |
RegisterRef | NewRR | ||
) |
Definition at line 1000 of file BitTracker.cpp.
References assert(), llvm::BitTracker::BitMask::first(), llvm::BitTracker::BitMask::last(), llvm::BitTracker::MachineEvaluator::mask(), P, llvm::BitTracker::BitValue::Ref, llvm::BitTracker::RegisterRef::Reg, llvm::BitTracker::RegisterRef::Sub, and llvm::BitTracker::RegisterCell::width().
|
inline |
Definition at line 50 of file BitTracker.h.
void BT::visit | ( | const MachineInstr & | MI | ) |
Definition at line 1033 of file BitTracker.cpp.