LLVM 17.0.0git
|
#include "llvm/CodeGen/RDFRegisters.h"
Classes | |
struct | rr_iterator |
Public Member Functions | |
RegisterAggr (const PhysicalRegisterInfo &pri) | |
RegisterAggr (const RegisterAggr &RG)=default | |
unsigned | count () const |
bool | empty () const |
bool | hasAliasOf (RegisterRef RR) const |
bool | hasCoverOf (RegisterRef RR) const |
bool | operator== (const RegisterAggr &A) const |
RegisterAggr & | insert (RegisterRef RR) |
RegisterAggr & | insert (const RegisterAggr &RG) |
RegisterAggr & | intersect (RegisterRef RR) |
RegisterAggr & | intersect (const RegisterAggr &RG) |
RegisterAggr & | clear (RegisterRef RR) |
RegisterAggr & | clear (const RegisterAggr &RG) |
RegisterRef | intersectWith (RegisterRef RR) const |
RegisterRef | clearIn (RegisterRef RR) const |
RegisterRef | makeRegRef () const |
size_t | hash () const |
void | print (raw_ostream &OS) const |
rr_iterator | rr_begin () const |
rr_iterator | rr_end () const |
Static Public Member Functions | |
static bool | isCoverOf (RegisterRef RA, RegisterRef RB, const PhysicalRegisterInfo &PRI) |
Definition at line 168 of file RDFRegisters.h.
|
inline |
Definition at line 169 of file RDFRegisters.h.
|
default |
RegisterAggr & RegisterAggr::clear | ( | const RegisterAggr & | RG | ) |
Definition at line 305 of file RDFRegisters.cpp.
References llvm::BitVector::reset().
RegisterAggr & RegisterAggr::clear | ( | RegisterRef | RR | ) |
RegisterRef RegisterAggr::clearIn | ( | RegisterRef | RR | ) | const |
Definition at line 320 of file RDFRegisters.cpp.
References clear(), insert(), and makeRegRef().
Referenced by llvm::rdf::Liveness::computePhiInfo().
|
inline |
Definition at line 173 of file RDFRegisters.h.
References llvm::BitVector::count().
|
inline |
Definition at line 174 of file RDFRegisters.h.
References llvm::BitVector::none().
bool RegisterAggr::hasAliasOf | ( | RegisterRef | RR | ) | const |
Definition at line 245 of file RDFRegisters.cpp.
References llvm::BitVector::anyCommon(), llvm::rdf::PhysicalRegisterInfo::getMaskUnits(), llvm::rdf::PhysicalRegisterInfo::getTRI(), llvm::rdf::PhysicalRegisterInfo::isRegMaskId(), llvm::rdf::RegisterRef::Mask, P, llvm::rdf::RegisterRef::Reg, and llvm::BitVector::test().
Referenced by llvm::rdf::Liveness::computePhiInfo().
bool RegisterAggr::hasCoverOf | ( | RegisterRef | RR | ) | const |
Definition at line 258 of file RDFRegisters.cpp.
References llvm::rdf::PhysicalRegisterInfo::getMaskUnits(), llvm::rdf::PhysicalRegisterInfo::getTRI(), llvm::rdf::PhysicalRegisterInfo::isRegMaskId(), llvm::rdf::RegisterRef::Mask, P, llvm::rdf::RegisterRef::Reg, and llvm::BitVector::test().
Referenced by llvm::rdf::Liveness::computePhiInfo(), llvm::rdf::Liveness::getAllReachedUses(), llvm::rdf::Liveness::getAllReachingDefs(), and isCoverOf().
|
inline |
Definition at line 198 of file RDFRegisters.h.
RegisterAggr & RegisterAggr::insert | ( | const RegisterAggr & | RG | ) |
Definition at line 287 of file RDFRegisters.cpp.
RegisterAggr & RegisterAggr::insert | ( | RegisterRef | RR | ) |
Definition at line 273 of file RDFRegisters.cpp.
References llvm::rdf::PhysicalRegisterInfo::getMaskUnits(), llvm::rdf::PhysicalRegisterInfo::getTRI(), llvm::rdf::PhysicalRegisterInfo::isRegMaskId(), llvm::rdf::RegisterRef::Mask, P, llvm::rdf::RegisterRef::Reg, and llvm::BitVector::set().
Referenced by llvm::rdf::DataFlowGraph::build(), clear(), clearIn(), llvm::rdf::Liveness::computePhiInfo(), llvm::rdf::Liveness::getAllReachedUses(), llvm::rdf::Liveness::getAllReachingDefs(), intersect(), and isCoverOf().
RegisterAggr & RegisterAggr::intersect | ( | const RegisterAggr & | RG | ) |
Definition at line 296 of file RDFRegisters.cpp.
RegisterAggr & RegisterAggr::intersect | ( | RegisterRef | RR | ) |
Definition at line 292 of file RDFRegisters.cpp.
References insert(), and intersect().
Referenced by intersect().
RegisterRef RegisterAggr::intersectWith | ( | RegisterRef | RR | ) | const |
Definition at line 310 of file RDFRegisters.cpp.
References assert().
Referenced by llvm::rdf::Liveness::computePhiInfo().
|
inlinestatic |
Definition at line 182 of file RDFRegisters.h.
References hasCoverOf(), insert(), and RA.
Referenced by llvm::rdf::Liveness::getAllReachingDefs().
RegisterRef RegisterAggr::makeRegRef | ( | ) | const |
Definition at line 324 of file RDFRegisters.cpp.
References F, llvm::BitVector::find_first(), llvm::BitVector::find_next(), llvm::LaneBitmask::getAll(), llvm::rdf::PhysicalRegisterInfo::getTRI(), llvm::rdf::PhysicalRegisterInfo::getUnitAliases(), I, P, and llvm::BitVector::test().
Referenced by clearIn().
|
inline |
Definition at line 178 of file RDFRegisters.h.
References A.
void RegisterAggr::print | ( | raw_ostream & | OS | ) | const |
Definition at line 360 of file RDFRegisters.cpp.
References llvm::BitVector::find_first(), llvm::BitVector::find_next(), llvm::rdf::PhysicalRegisterInfo::getTRI(), OS, and llvm::printRegUnit().
|
inline |
Definition at line 237 of file RDFRegisters.h.
Referenced by llvm::rdf::DataFlowGraph::build(), llvm::rdf::Liveness::computeLiveIns(), and llvm::rdf::Liveness::resetLiveIns().
|
inline |
Definition at line 240 of file RDFRegisters.h.
Referenced by llvm::rdf::DataFlowGraph::build(), llvm::rdf::Liveness::computeLiveIns(), and llvm::rdf::Liveness::resetLiveIns().