Lines Matching defs:MSSA

318 static bool writtenBetween(MemorySSA *MSSA, BatchAAResults &AA,
338 MemoryAccess *Clobber = MSSA->getWalker()->getClobberingMemoryAccess(
340 return !MSSA->dominates(Clobber, Start);
600 // Find MSSA insertion point. Normally P will always have a corresponding
602 // pipelines, there may be a mismatch between AA and MSSA, in which case we
605 // TODO: Simplify this once P will be determined by MSSA, in which case the
655 // TODO: Can use MSSA for this.
723 MSSA->getWalker()->getClobberingMemoryAccess(LI, BAA)))
822 auto *StoreDef = cast<MemoryDef>(MSSA->getMemoryAccess(SI));
918 if (accessedBetween(BAA, DestLoc, MSSA->getMemoryAccess(C),
919 MSSA->getMemoryAccess(cpyStore), &SkippedLifetimeStart)) {
1111 MSSAU->moveBefore(MSSA->getMemoryAccess(SkippedLifetimeStart),
1112 MSSA->getMemoryAccess(C));
1210 if (writtenBetween(MSSA, BAA, MCopyLoc, MSSA->getMemoryAccess(MDep),
1211 MSSA->getMemoryAccess(M)))
1317 MSSA->getMemoryAccess(MemSet),
1318 MSSA->getMemoryAccess(MemCpy)))
1389 static bool hasUndefContents(MemorySSA *MSSA, BatchAAResults &AA, Value *V,
1391 if (MSSA->isLiveOnEntryDef(Def))
1466 MemoryUseOrDef *MemSetAccess = MSSA->getMemoryAccess(MemSet);
1467 MemoryAccess *Clobber = MSSA->getWalker()->getClobberingMemoryAccess(
1470 if (hasUndefContents(MSSA, BAA, MemCpy->getSource(), MD, CopySize))
1744 MemoryUseOrDef *MA = MSSA->getMemoryAccess(M);
1772 MSSA->getWalker()->getClobberingMemoryAccess(AnyClobber, DestLoc, BAA);
1784 MemoryAccess *SrcClobber = MSSA->getWalker()->getClobberingMemoryAccess(
1825 if (hasUndefContents(MSSA, BAA, M->getSource(), MD, M->getLength())) {
1888 MemoryUseOrDef *CallAccess = MSSA->getMemoryAccess(&CB);
1893 MemoryAccess *Clobber = MSSA->getWalker()->getClobberingMemoryAccess(
1935 if (writtenBetween(MSSA, BAA, MemoryLocation::getForSource(MDep),
1936 MSSA->getMemoryAccess(MDep), CallAccess))
1961 /// (if MSSA clobber check is safe.)
1985 MemoryUseOrDef *CallAccess = MSSA->getMemoryAccess(&CB);
1991 MemoryAccess *Clobber = MSSA->getWalker()->getClobberingMemoryAccess(
2026 if (writtenBetween(MSSA, BAA, MemoryLocation::getForSource(MDep),
2027 MSSA->getMemoryAccess(MDep), CallAccess))
2099 auto *MSSA = &AM.getResult<MemorySSAAnalysis>(F);
2101 bool MadeChange = runImpl(F, &TLI, AA, AC, DT, PDT, &MSSA->getMSSA());
2121 MSSA = MSSA_;