LLVM 20.0.0git
|
#include "Target/Hexagon/BitTracker.h"
Public Member Functions | |
RegisterCell (uint16_t Width=DefaultBitN) | |
uint16_t | width () const |
const BitValue & | operator[] (uint16_t BitN) const |
BitValue & | operator[] (uint16_t BitN) |
bool | meet (const RegisterCell &RC, Register SelfR) |
RegisterCell & | insert (const RegisterCell &RC, const BitMask &M) |
RegisterCell | extract (const BitMask &M) const |
RegisterCell & | rol (uint16_t Sh) |
RegisterCell & | fill (uint16_t B, uint16_t E, const BitValue &V) |
RegisterCell & | cat (const RegisterCell &RC) |
uint16_t | cl (bool B) const |
uint16_t | ct (bool B) const |
bool | operator== (const RegisterCell &RC) const |
bool | operator!= (const RegisterCell &RC) const |
RegisterCell & | regify (unsigned R) |
Static Public Member Functions | |
static RegisterCell | self (unsigned Reg, uint16_t Width) |
static RegisterCell | top (uint16_t Width) |
static RegisterCell | ref (const RegisterCell &C) |
Friends | |
raw_ostream & | operator<< (raw_ostream &OS, const RegisterCell &RC) |
Definition at line 300 of file BitTracker.h.
|
inline |
Definition at line 301 of file BitTracker.h.
BT::RegisterCell & BT::RegisterCell::cat | ( | const RegisterCell & | RC | ) |
Definition at line 282 of file BitTracker.cpp.
References llvm::SmallVectorImpl< T >::resize(), and width().
Referenced by llvm::HexagonEvaluator::evaluate().
Definition at line 301 of file BitTracker.cpp.
References B, llvm::CallingConv::C, and width().
Referenced by llvm::BitTracker::MachineEvaluator::eCLB().
Definition at line 292 of file BitTracker.cpp.
References B, llvm::CallingConv::C, and width().
Referenced by llvm::BitTracker::MachineEvaluator::eCTB(), llvm::BitTracker::MachineEvaluator::eMLS(), and llvm::BitTracker::MachineEvaluator::eMLU().
BT::RegisterCell BT::RegisterCell::extract | ( | const BitMask & | M | ) | const |
Definition at line 235 of file BitTracker.cpp.
References assert(), B, for(), and width().
Referenced by llvm::BitTracker::MachineEvaluator::eXTR().
BT::RegisterCell & BT::RegisterCell::fill | ( | uint16_t | B, |
uint16_t | E, | ||
const BitValue & | V | ||
) |
Definition at line 274 of file BitTracker.cpp.
Referenced by llvm::BitTracker::MachineEvaluator::eASL(), llvm::BitTracker::MachineEvaluator::eASR(), llvm::BitTracker::MachineEvaluator::eLSR(), llvm::BitTracker::MachineEvaluator::eMLS(), llvm::BitTracker::MachineEvaluator::eMLU(), llvm::BitTracker::MachineEvaluator::eSXT(), llvm::BitTracker::MachineEvaluator::evaluate(), llvm::HexagonEvaluator::evaluate(), and llvm::BitTracker::MachineEvaluator::eZXT().
BT::RegisterCell & BT::RegisterCell::insert | ( | const RegisterCell & | RC, |
const BitMask & | M | ||
) |
Definition at line 214 of file BitTracker.cpp.
References assert(), B, and width().
Referenced by llvm::BitTracker::MachineEvaluator::eINS(), llvm::BitTracker::MachineEvaluator::evaluate(), and llvm::HexagonEvaluator::evaluate().
bool BT::RegisterCell::meet | ( | const RegisterCell & | RC, |
Register | SelfR | ||
) |
Definition at line 201 of file BitTracker.cpp.
References assert(), llvm::Register::isVirtual(), and llvm::SmallVectorBase< Size_T >::size().
|
inline |
Definition at line 326 of file BitTracker.h.
References llvm::operator==().
bool BT::RegisterCell::operator== | ( | const RegisterCell & | RC | ) | const |
Definition at line 310 of file BitTracker.cpp.
References llvm::SmallVectorBase< Size_T >::size().
Definition at line 311 of file BitTracker.h.
References assert().
Definition at line 307 of file BitTracker.h.
References assert().
|
inlinestatic |
Definition at line 380 of file BitTracker.h.
References llvm::CallingConv::C, and llvm::BitTracker::BitValue::ref().
Referenced by llvm::BitTracker::MachineEvaluator::eASL(), llvm::BitTracker::MachineEvaluator::eASR(), llvm::BitTracker::MachineEvaluator::eCLR(), llvm::BitTracker::MachineEvaluator::eINS(), llvm::BitTracker::MachineEvaluator::eLSR(), llvm::BitTracker::MachineEvaluator::eSET(), llvm::BitTracker::MachineEvaluator::eSXT(), llvm::BitTracker::MachineEvaluator::evaluate(), llvm::HexagonEvaluator::evaluate(), llvm::BitTracker::MachineEvaluator::eXTR(), and llvm::BitTracker::MachineEvaluator::eZXT().
BT::RegisterCell & BT::RegisterCell::regify | ( | unsigned | R | ) |
Definition at line 320 of file BitTracker.cpp.
References llvm::BitTracker::BitValue::Ref, and width().
Referenced by llvm::BitTracker::MachineEvaluator::putCell().
BT::RegisterCell & BT::RegisterCell::rol | ( | uint16_t | Sh | ) |
Definition at line 253 of file BitTracker.cpp.
References width().
Referenced by llvm::BitTracker::MachineEvaluator::eASL(), llvm::BitTracker::MachineEvaluator::eASR(), and llvm::BitTracker::MachineEvaluator::eLSR().
|
inlinestatic |
Definition at line 364 of file BitTracker.h.
References Reg, and llvm::BitTracker::BitValue::self().
Referenced by llvm::BitTracker::MachineEvaluator::eCLB(), llvm::BitTracker::MachineEvaluator::eCTB(), llvm::HexagonEvaluator::evaluate(), and llvm::BitTracker::MachineEvaluator::getCell().
|
inlinestatic |
Definition at line 372 of file BitTracker.h.
References llvm::BitTracker::BitValue::Top.
Referenced by llvm::BitTracker::MachineEvaluator::getCell().
|
inline |
Definition at line 303 of file BitTracker.h.
Referenced by cat(), cl(), ct(), llvm::BitTracker::MachineEvaluator::eADD(), llvm::BitTracker::MachineEvaluator::eAND(), llvm::BitTracker::MachineEvaluator::eASL(), llvm::BitTracker::MachineEvaluator::eASR(), llvm::BitTracker::MachineEvaluator::eCLB(), llvm::BitTracker::MachineEvaluator::eCLR(), llvm::BitTracker::MachineEvaluator::eCTB(), 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::eSET(), llvm::BitTracker::MachineEvaluator::eSUB(), llvm::BitTracker::MachineEvaluator::eSXT(), llvm::HexagonEvaluator::evaluate(), llvm::BitTracker::MachineEvaluator::eXOR(), llvm::BitTracker::MachineEvaluator::eXTR(), extract(), llvm::BitTracker::MachineEvaluator::eZXT(), insert(), regify(), rol(), and llvm::BitTracker::subst().
|
friend |
Definition at line 115 of file BitTracker.cpp.