| /freebsd-14.2/contrib/llvm-project/llvm/include/llvm/CodeGen/ |
| H A D | RDFRegisters.h | 88 struct RegisterRef { struct 153 bool alias(RegisterRef RA, RegisterRef RB) const; 172 RegisterRef mapTo(RegisterRef RR, unsigned R) const; 175 bool equal_to(RegisterRef A, RegisterRef B) const; 176 bool less(RegisterRef A, RegisterRef B) const; 220 static bool isCoverOf(RegisterRef RA, RegisterRef RB, in isCoverOf() 232 RegisterRef intersectWith(RegisterRef RR) const; 233 RegisterRef clearIn(RegisterRef RR) const; 342 bool operator()(llvm::rdf::RegisterRef A, llvm::rdf::RegisterRef B) const { 361 bool operator()(llvm::rdf::RegisterRef A, llvm::rdf::RegisterRef B) const { [all …]
|
| H A D | RDFLiveness.h | 66 NodeList getAllReachingDefs(RegisterRef RefRR, NodeAddr<RefNode *> RefA, 75 NodeList getAllReachingDefs(RegisterRef RefRR, NodeAddr<RefNode *> RefA) { 79 NodeSet getAllReachedUses(RegisterRef RefRR, NodeAddr<DefNode *> DefA, 82 NodeSet getAllReachedUses(RegisterRef RefRR, NodeAddr<DefNode *> DefA) { 86 std::pair<NodeSet, bool> getAllReachingDefsRec(RegisterRef RefRR, 91 NodeAddr<RefNode *> getNearestAliasedRef(RegisterRef RefRR, 151 getAllReachingDefsRecImpl(RegisterRef RefRR, NodeAddr<RefNode *> RefA,
|
| H A D | RDFGraph.h | 450 using RegisterSet = std::set<RegisterRef>; 556 RegisterRef getRegRef(const DataFlowGraph &G) const; 563 void setRegRef(RegisterRef RR, DataFlowGraph &G); 583 Ref getNextRef(RegisterRef RR, Predicate P, bool NextOnly, 781 PackedRegisterRef pack(RegisterRef RR) { in pack() 784 PackedRegisterRef pack(RegisterRef RR) const { in pack() 787 RegisterRef unpack(PackedRegisterRef PR) const { in unpack() 791 RegisterRef makeRegRef(unsigned Reg, unsigned Sub) const; 792 RegisterRef makeRegRef(const MachineOperand &Op) const; 813 bool isTracked(RegisterRef RR) const; [all …]
|
| /freebsd-14.2/contrib/llvm-project/llvm/lib/CodeGen/ |
| H A D | RDFRegisters.cpp | 100 bool PhysicalRegisterInfo::alias(RegisterRef RA, RegisterRef RB) const { in alias() 108 if (RegisterRef::isMaskId(Reg)) { in getAliasSet() 165 RegisterRef PhysicalRegisterInfo::mapTo(RegisterRef RR, unsigned R) const { in mapTo() 180 bool PhysicalRegisterInfo::equal_to(RegisterRef A, RegisterRef B) const { in equal_to() 216 bool PhysicalRegisterInfo::less(RegisterRef A, RegisterRef B) const { in less() 344 RegisterRef RegisterAggr::intersectWith(RegisterRef RR) const { in intersectWith() 348 return RegisterRef(); in intersectWith() 354 RegisterRef RegisterAggr::clearIn(RegisterRef RR) const { in clearIn() 361 return RegisterRef(); in makeRegRef() 383 return RegisterRef(); in makeRegRef() [all …]
|
| H A D | RDFLiveness.cpp | 144 RegisterRef RR = TA.Addr->getRegRef(DFG); in getAllReachingDefs() 441 RegisterRef DR = DA.Addr->getRegRef(DFG); in getAllReachedUses() 657 using RefHash = std::hash<RegisterRef>; in computePhiInfo() 659 using SubMap = std::unordered_map<RegisterRef, RegisterRef>; in computePhiInfo() 667 RegisterRef S = Mid.clearIn(RR); in computePhiInfo() 701 RegisterRef R(T.first); in computePhiInfo() 713 if (RegisterRef SS = ClearIn(RegisterRef(R.Reg, M), MidDefs, SM)) { in computePhiInfo() 873 std::vector<RegisterRef> LV; in computeLiveIns() 905 for (RegisterRef R : LiveIns.refs()) in resetLiveIns() 1052 RegisterRef LRef(LE.first); in traverse() [all …]
|
| H A D | RDFGraph.cpp | 750 LR.insert(RegisterRef(R)); in getLandingPadLiveIns() 753 LR.insert(RegisterRef(R)); in getLandingPadLiveIns() 917 LiveIns.insert(RegisterRef(P.first)); in build() 986 assert(RegisterRef::isRegId(Reg) || RegisterRef::isMaskId(Reg)); in makeRegRef() 990 return RegisterRef(Reg); in makeRegRef() 1065 if (RegisterRef::isRegId(A) && !isTracked(RegisterRef(A))) in pushClobbers() 1122 if (RegisterRef::isRegId(A) && !isTracked(RegisterRef(A))) in pushDefs() 1271 RegisterRef UR = makeRegRef(Op); in buildStmt() 1325 if (!isTracked(RegisterRef(i))) in buildStmt() 1341 RegisterRef RR = makeRegRef(Op); in buildStmt() [all …]
|
| /freebsd-14.2/contrib/llvm-project/llvm/lib/Target/Hexagon/ |
| H A D | HexagonExpandCondsets.cpp | 179 struct RegisterRef { struct in __anonaf918d220111::HexagonExpandCondsets 232 void renameInRange(RegisterRef RO, RegisterRef RN, unsigned PredR, 240 bool coalesceRegisters(RegisterRef R1, RegisterRef R2); 606 RegisterRef RS = SO; in getCondTfrOpcode() 665 if (RegisterRef(SrcOp) == RegisterRef(DstR, DstSR)) in genCondTfrFor() 713 RegisterRef RT(ST); in split() 825 RegisterRef RR = Op; in canMoveOver() 931 void HexagonExpandCondsets::renameInRange(RegisterRef RO, RegisterRef RN, in renameInRange() 979 RegisterRef RT(MS); in predicate() 1054 RegisterRef RD = MD; in predicate() [all …]
|
| H A D | RDFCopy.cpp | 46 RegisterRef DstR = DFG.makeRegRef(Dst.getReg(), Dst.getSubReg()); in interpretAsCopy() 47 RegisterRef SrcR = DFG.makeRegRef(Src.getReg(), Src.getSubReg()); in interpretAsCopy() 112 EqualityMap EM(std::less<RegisterRef>(DFG.getPRI())); in scanBlock() 139 dbgs() << ' ' << Print<RegisterRef>(J.first, DFG) << '=' in run() 140 << Print<RegisterRef>(J.second, DFG); in run() 146 dbgs() << Print<RegisterRef>(R.first, DFG) << " -> {"; in run() 159 auto MinPhysReg = [this] (RegisterRef RR) -> unsigned { in run() 185 RegisterRef DR = DA.Addr->getRegRef(DFG); in run() 189 RegisterRef SR = FR->second; in run() 214 dbgs() << "Can replace " << Print<RegisterRef>(DR, DFG) in run() [all …]
|
| H A D | RDFCopy.h | 29 RDefMap(std::less<RegisterRef>(DFG.getPRI())) {} in CopyPropagation() 38 using EqualityMap = std::map<RegisterRef, RegisterRef>; 48 std::map<RegisterRef,std::map<NodeId,NodeId>> RDefMap;
|
| H A D | HexagonBitSimplify.cpp | 246 BitTracker::RegisterRef &SL, BitTracker::RegisterRef &SH, 463 BitTracker::RegisterRef &SL, BitTracker::RegisterRef &SH, in parseRegSequence() 1095 bool usedBitsEqual(BitTracker::RegisterRef RD, BitTracker::RegisterRef RS); 1307 BitTracker::RegisterRef RS) { in usedBitsEqual() 1641 BitTracker::RegisterRef MR; in processBlock() 1719 BitTracker::RegisterRef SL, SH; in propagateRegCopy() 1793 BitTracker::RegisterRef &Rs, BitTracker::RegisterRef &Rt); 1920 BitTracker::RegisterRef &Rt) { in matchPackhl() 2053 BitTracker::RegisterRef Rs, Rt; in genPackhl() 2178 BitTracker::RegisterRef RS = Op; in genExtractLow() [all …]
|
| H A D | BitTracker.h | 37 struct RegisterRef; 53 RegisterCell get(RegisterRef RR) const; 54 void put(RegisterRef RR, const RegisterCell &RC); 55 void subst(RegisterRef OldRR, RegisterRef NewRR); 141 struct BitTracker::RegisterRef { struct 142 RegisterRef(Register R = 0, unsigned S = 0) : Reg(R), Sub(S) {} in Reg() argument 143 RegisterRef(const MachineOperand &MO) in RegisterRef() function 397 uint16_t getRegBitWidth(const RegisterRef &RR) const; 399 RegisterCell getCell(const RegisterRef &RR, const CellMapType &M) const; 400 void putCell(const RegisterRef &RR, RegisterCell RC, CellMapType &M) const; [all …]
|
| H A D | HexagonBlockRanges.cpp | 262 RegisterRef R, const MachineRegisterInfo &MRI, in expandToSubRegs() 291 std::map<RegisterRef,IndexType> LastDef, LastUse; in computeInitialLiveRanges() 302 auto closeRange = [&LastUse,&LastDef,&LiveMap] (RegisterRef R) -> void { in computeInitialLiveRanges() 322 RegisterRef R = { Op.getReg(), Op.getSubReg() }; in computeInitialLiveRanges() 338 RegisterRef R = { Op.getReg(), Op.getSubReg() }; in computeInitialLiveRanges() 363 RegisterRef R = { PR, 0 }; in computeInitialLiveRanges() 370 for (RegisterRef R : Defs) in computeInitialLiveRanges() 374 for (RegisterRef S : Defs) { in computeInitialLiveRanges() 382 for (RegisterRef S : Clobbers) { in computeInitialLiveRanges() 432 auto addDeadRanges = [&IndexMap,&LiveMap,&DeadMap] (RegisterRef R) -> void { in computeDeadMap()
|
| H A D | HexagonBlockRanges.h | 35 struct RegisterRef { struct 39 bool operator<(RegisterRef R) const { 43 using RegisterSet = std::set<RegisterRef>; 145 using RegToRangeMap = std::map<RegisterRef, RangeList>; 149 static RegisterSet expandToSubRegs(RegisterRef R,
|
| H A D | BitTracker.cpp | 725 RegisterRef RD = MI.getOperand(0); in evaluate() 727 RegisterRef RS = MI.getOperand(1); in evaluate() 729 RegisterRef RT = MI.getOperand(3); in evaluate() 744 RegisterRef RD = MI.getOperand(0); in evaluate() 745 RegisterRef RS = MI.getOperand(1); in evaluate() 804 RegisterRef DefRR(MD); in visitPHI() 825 RegisterRef RU = PI.getOperand(i); in visitPHI() 856 RegisterRef RU(MO); in visitNonBranch() 862 RegisterRef RD(P.first); in visitNonBranch() 874 RegisterRef RD(MO); in visitNonBranch() [all …]
|
| H A D | HexagonBitTracker.h | 27 using RegisterRef = BitTracker::RegisterRef; member
|
| H A D | HexagonOptAddrMode.cpp | 169 RegisterRef OffsetRR; in canRemoveAddasl() 172 RegisterRef RR = UA.Addr->getRegRef(*DFG); in canRemoveAddasl() 218 RegisterRef UR = UN.Addr->getRegRef(*DFG); in allValidCandidates() 251 RegisterRef DR = DA.Addr->getRegRef(*DFG); in getAllRealUses() 271 if (!DFG->getPRI().alias(RegisterRef(I.first), DR)) in getAllRealUses() 289 RegisterRef LRExtRR; in isSafeToExtLR() 294 RegisterRef RR = UA.Addr->getRegRef(*DFG); in isSafeToExtLR() 458 RegisterRef RR = UA.Addr->getRegRef(*DFG); in processAddUses()
|
| H A D | HexagonBitTracker.cpp | 94 uint16_t RW = getRegBitWidth(RegisterRef(Reg, Sub)); in mask() 161 std::vector<BT::RegisterRef> Vector; 168 Vector[i] = BT::RegisterRef(MO); in RegisterRefs() 176 const BT::RegisterRef &operator[](unsigned n) const { in operator []() 968 BT::RegisterRef PD(DefR, 0); in evaluate() 1023 RegisterRef PR = BI.getOperand(0); in evaluate() 1194 RegisterRef RD = MD; in evaluateLoad() 1223 RegisterRef RD = MI.getOperand(0); in evaluateFormalCopy() 1224 RegisterRef RS = MI.getOperand(1); in evaluateFormalCopy()
|
| H A D | HexagonRDFOpt.cpp | 115 auto mapRegs = [&EM] (RegisterRef DstR, RegisterRef SrcR) -> void { in INITIALIZE_PASS_DEPENDENCY()
|
| H A D | HexagonFrameLowering.cpp | 2411 HexagonBlockRanges::RegisterRef SrcRR = { SrcOp.getReg(), in optimizeSpillSlots() 2480 HexagonBlockRanges::RegisterRef FoundRR = { FoundR, 0 }; in optimizeSpillSlots()
|
| /freebsd-14.2/contrib/llvm-project/llvm/lib/Target/X86/ |
| H A D | X86LoadValueInjectionLoadHardening.cpp | 369 RegisterRef DefReg = Def.Addr->getRegRef(DFG); in getGadgetGraph() 375 if (DFG.getPRI().alias(RegisterRef(I.first), DefReg)) { in getGadgetGraph()
|