Lines Matching refs:VersionStack
1332 SmallVectorImpl<MemoryAccess *> &VersionStack, in optimizeUsesInBlock() argument
1344 !VersionStack.empty() && in optimizeUsesInBlock()
1346 BasicBlock *BackBlock = VersionStack.back()->getBlock(); in optimizeUsesInBlock()
1349 while (VersionStack.back()->getBlock() == BackBlock) in optimizeUsesInBlock()
1350 VersionStack.pop_back(); in optimizeUsesInBlock()
1357 VersionStack.push_back(&MA); in optimizeUsesInBlock()
1390 LocInfo.LowerBoundBlock = VersionStack[0]->getBlock(); in optimizeUsesInBlock()
1401 LocInfo.LastKill = VersionStack.size() - 1; in optimizeUsesInBlock()
1407 assert(LocInfo.LowerBound < VersionStack.size() && in optimizeUsesInBlock()
1409 assert(LocInfo.LastKill < VersionStack.size() && in optimizeUsesInBlock()
1412 unsigned long UpperBound = VersionStack.size() - 1; in optimizeUsesInBlock()
1428 if (isa<MemoryPhi>(VersionStack[UpperBound])) { in optimizeUsesInBlock()
1436 while (VersionStack[UpperBound] != Result) { in optimizeUsesInBlock()
1444 MemoryDef *MD = cast<MemoryDef>(VersionStack[UpperBound]); in optimizeUsesInBlock()
1455 MU->setDefiningAccess(VersionStack[UpperBound], true); in optimizeUsesInBlock()
1460 MU->setDefiningAccess(VersionStack[LocInfo.LastKill], true); in optimizeUsesInBlock()
1462 LocInfo.LowerBound = VersionStack.size() - 1; in optimizeUsesInBlock()
1469 SmallVector<MemoryAccess *, 16> VersionStack; in optimizeUses() local
1471 VersionStack.push_back(MSSA->getLiveOnEntryDef()); in optimizeUses()
1477 optimizeUsesInBlock(DomNode->getBlock(), StackEpoch, PopEpoch, VersionStack, in optimizeUses()