Searched refs:MemoryPhi (Results 1 – 11 of 11) sorted by relevance
/freebsd/contrib/llvm-project/llvm/lib/Analysis/ |
H A D | MemorySSAUpdater.cpp | 89 MemoryPhi *Phi = dyn_cast_or_null<MemoryPhi>(MSSA->getMemoryAccess(BB)); in getPreviousDefRecursive() 192 if (MemoryPhi *UsePhi = dyn_cast<MemoryPhi>(&*U)) in recursePhi() 202 MemoryAccess *MemorySSAUpdater::tryRemoveTrivialPhi(MemoryPhi *Phi) { in tryRemoveTrivialPhi() 208 MemoryAccess *MemorySSAUpdater::tryRemoveTrivialPhi(MemoryPhi *Phi, in tryRemoveTrivialPhi() 279 if (MemoryPhi *Phi = cast_or_null<MemoryPhi>(MP)) in insertUse() 284 // Set every incoming edge {BB, MP->getBlock()} of MemoryPhi MP to NewDef. 285 static void setMemoryPhiValueForBlock(MemoryPhi *M [all...] |
H A D | MemorySSA.cpp | 459 assert(isa<MemoryPhi>(MA)); in checkClobberSanity() 482 assert((isa<MemoryPhi>(ClobberAt) || FoundClobber) && in checkClobberSanity() 527 const MemoryAccess *getWalkTarget(const MemoryPhi *From) const { in getWalkTarget() 589 assert(isa<MemoryPhi>(Desc.Last) && in walkToPhiOrClobber() 594 void addSearches(MemoryPhi *Phi, SmallVectorImpl<ListIndex> &PausedSearches, in addSearches() 689 addSearches(cast<MemoryPhi>(Res.Result), PausedSearches, PathIndex); in getBlockingAccess() 764 OptznResult tryOptimizePhi(MemoryPhi *Phi, MemoryAccess *Start, in tryOptimizePhi() 793 MemoryPhi *Current = Phi; in tryOptimizePhi() 901 auto *DefChainPhi = cast<MemoryPhi>(DefChainEnd); in tryOptimizePhi() 953 OptznResult OptRes = tryOptimizePhi(cast<MemoryPhi>(FirstDesc.Last), in findClobber() [all …]
|
/freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/ |
H A D | MemorySSA.h | 211 friend class MemoryPhi; variable 480 class MemoryPhi final : public MemoryAccess { 490 MemoryPhi(LLVMContext &C, BasicBlock *BB, unsigned Ver, unsigned NumPreds = 0) 663 assert((isa<MemoryDef>(this) || isa<MemoryPhi>(this)) && 667 return cast<MemoryPhi>(this)->getID(); 696 template <> struct OperandTraits<MemoryPhi> : public HungoffOperandTraits<2> {}; 697 DEFINE_TRANSPARENT_OPERAND_ACCESSORS(MemoryPhi, MemoryAccess) 723 MemoryPhi *getMemoryAccess(const BasicBlock *BB) const { 724 return cast_or_null<MemoryPhi>(ValueToMemoryAccess.lookup(cast<Value>(BB))); 863 MemoryPhi *createMemoryPhi(BasicBlock *BB); [all …]
|
H A D | MemorySSAUpdater.h | 51 using PhiToDefMap = SmallDenseMap<MemoryPhi *, MemoryAccess *>; 63 SmallSet<AssertingVH<MemoryPhi>, 8> NonOptPhis; 87 /// Update the MemoryPhi in `To` following an edge deletion between `From` and 90 /// Update the MemoryPhi in `To` to have a single incoming edge from `From`, 257 MemoryAccess *tryRemoveTrivialPhi(MemoryPhi *Phi); 259 MemoryAccess *tryRemoveTrivialPhi(MemoryPhi *Phi, RangeType &Operands); 263 // instructions and blocks cloned, and a map of MemoryPhi : Definition
|
/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/Utils/ |
H A D | AMDGPUMemoryUtils.cpp | 363 const MemoryPhi *Phi = cast<MemoryPhi>(MA); in isClobberedInFunction()
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
H A D | NewGVN.cpp | 296 using MemoryMemberType = MemoryPhi; 605 DenseMap<const MemoryPhi *, MemoryPhiState> MemoryPhiState; 776 void valueNumberMemoryPhi(MemoryPhi *); 869 MemoryPhi *getMemoryAccess(const BasicBlock *) const; 945 MemoryPhi *NewGVN::getMemoryAccess(const BasicBlock *BB) const { in getMemoryAccess() 960 auto *MP = dyn_cast<MemoryPhi>(V); in getBlockForValue() 1673 if (auto *MP = dyn_cast<MemoryPhi>(From)) { in setMemoryClass() 2168 return getMinDFSOfRange<const MemoryPhi>(CC->memory()); in getNextMemoryLeader() 2716 if (MemAccess && !isa<MemoryPhi>(MemAccess->getDefiningAccess()) && in makePossiblePHIOfOps() 2903 const MemoryPhi *MP = cast<MemoryPhi>(&Def); in initializeCongruenceClasses() [all …]
|
H A D | GVNHoist.cpp | 999 SmallPtrSet<MemoryPhi *, 4> UsePhis; in raMPHIuw() 1001 if (MemoryPhi *Phi = dyn_cast<MemoryPhi>(U)) in raMPHIuw() 1004 for (MemoryPhi *Phi : UsePhis) { in raMPHIuw()
|
H A D | DeadStoreElimination.cpp | 1185 if (isa<MemoryPhi>(UseAccess)) { in isWriteAtEndOfFunction() 1192 pushMemUses(cast<MemoryPhi>(UseAccess), WorkList, Visited); in isWriteAtEndOfFunction() 1383 if (isa<MemoryPhi>(Current)) { in getDomMemoryDef() 1523 if (isa<MemoryPhi>(UseAccess)) { in getDomMemoryDef() 2032 if (auto PhiAccess = dyn_cast<MemoryPhi>(Current)) { in storeIsNoop() 2201 if (isa<MemoryPhi>(DeadAccess)) { in eliminateDeadStores() 2203 for (Value *V : cast<MemoryPhi>(DeadAccess)->incoming_values()) { in eliminateDeadStores()
|
H A D | LICM.cpp | 1135 if (isa<MemoryPhi>(&Acc)) in isOnlyMemoryAccess() 2365 … !(InvariantGroup && Source->getBlock() == CurLoop->getHeader() && isa<MemoryPhi>(Source)); in pointerInvalidatedByLoop()
|
H A D | SimpleLoopUnswitch.cpp | 316 if (auto *MemPhi = dyn_cast<MemoryPhi>(DefiningAccess)) in buildPartialInvariantUnswitchConditionalBranch() 1073 if (!isa<MemoryPhi>(*Defs->begin()) || (++Defs->begin() != Defs->end())) in unswitchAllTrivialConditions()
|
/freebsd/contrib/llvm-project/llvm/include/llvm/IR/ |
H A D | Value.def | 122 HANDLE_MEMORY_VALUE(MemoryPhi)
|