Lines Matching defs:MemoryAccess

36 MemoryAccess *MemorySSAUpdater::getPreviousDefRecursive(
38 DenseMap<BasicBlock *, TrackingVH<MemoryAccess>> &CachedPreviousDef) {
52 MemoryAccess *Result = getPreviousDefFromEnd(Pred, CachedPreviousDef);
61 MemoryAccess *Result = MSSA->createMemoryPhi(BB);
68 SmallVector<TrackingVH<MemoryAccess>, 8> PhiOps;
74 MemoryAccess *SingleAccess = nullptr;
137 MemoryAccess *MemorySSAUpdater::getPreviousDef(MemoryAccess *MA) {
140 DenseMap<BasicBlock *, TrackingVH<MemoryAccess>> CachedPreviousDef;
147 MemoryAccess *MemorySSAUpdater::getPreviousDefInBlock(MemoryAccess *MA) {
163 return cast<MemoryAccess>(&U);
172 MemoryAccess *MemorySSAUpdater::getPreviousDefFromEnd(
174 DenseMap<BasicBlock *, TrackingVH<MemoryAccess>> &CachedPreviousDef) {
185 MemoryAccess *MemorySSAUpdater::recursePhi(MemoryAccess *Phi) {
188 TrackingVH<MemoryAccess> Res(Phi);
202 MemoryAccess *MemorySSAUpdater::tryRemoveTrivialPhi(MemoryPhi *Phi) {
208 MemoryAccess *MemorySSAUpdater::tryRemoveTrivialPhi(MemoryPhi *Phi,
215 MemoryAccess *Same = nullptr;
223 Same = cast<MemoryAccess>(&*Op);
268 MemoryAccess *FirstDef = &*Defs->begin();
286 MemoryAccess *NewDef) {
318 MemoryAccess *DefBefore = getPreviousDef(MD);
398 DenseMap<BasicBlock *, TrackingVH<MemoryAccess>> CachedPreviousDef;
438 MemoryAccess *FirstDef = &*MSSA->getWritableBlockDefs(StartBlock)->begin();
466 MemoryAccess *NewDef = dyn_cast_or_null<MemoryAccess>(Var);
542 MPhi->unorderedDeleteIncomingIf([&](const MemoryAccess *, BasicBlock *B) {
556 static MemoryAccess *onlySingleValue(MemoryPhi *MP) {
557 MemoryAccess *MA = nullptr;
561 MA = cast<MemoryAccess>(Arg);
568 static MemoryAccess *getNewDefiningAccessForClone(
569 MemoryAccess *MA, const ValueToValueMapTy &VMap, PhiToDefMap &MPhiMap,
571 MemoryAccess *InsnDefining = MA;
591 if (MemoryAccess *NewDefPhi = MPhiMap.lookup(DefPhi))
605 for (const MemoryAccess &MA : *Acc) {
617 MemoryAccess *NewUseOrDef = MSSA->createDefinedAccess(
640 MemoryAccess *UniqueValue = nullptr;
643 MemoryAccess *IV = MPhi->getIncomingValue(I);
686 MemoryAccess *IncomingAccess = Phi->getIncomingValue(It);
735 if (MemoryAccess *NewPhi = MPhiMap.lookup(MPhi))
855 auto GetLastDef = [&](BasicBlock *BB) -> MemoryAccess * {
1011 SmallDenseMap<BasicBlock *, MemoryAccess *> LastDefAddedPred;
1031 MemoryAccess *DefP1 = GetLastDef(P1);
1124 MemoryAccess *Usr = cast<MemoryAccess>(U.getUser());
1205 MemoryAccess *FirstInNew = nullptr;
1276 Phi->unorderedDeleteIncomingIf([&](MemoryAccess *MA, BasicBlock *B) {
1290 void MemorySSAUpdater::removeMemoryAccess(MemoryAccess *MA, bool OptimizePhis) {
1295 MemoryAccess *NewDefTarget = nullptr;
1371 for (MemoryAccess &MA : *Acc)
1380 for (MemoryAccess &MA : llvm::make_early_inc_range(*Acc)) {
1414 MemoryAccess *MemorySSAUpdater::createMemoryAccessInBB(
1415 Instruction *I, MemoryAccess *Definition, const BasicBlock *BB,
1425 Instruction *I, MemoryAccess *Definition, MemoryUseOrDef *InsertPt) {
1435 Instruction *I, MemoryAccess *Definition, MemoryAccess *InsertPt) {