Lines Matching refs:VersionStack
1249 SmallVectorImpl<MemoryAccess *> &VersionStack, in optimizeUsesInBlock() argument
1261 !VersionStack.empty() && in optimizeUsesInBlock()
1263 BasicBlock *BackBlock = VersionStack.back()->getBlock(); in optimizeUsesInBlock()
1266 while (VersionStack.back()->getBlock() == BackBlock) in optimizeUsesInBlock()
1267 VersionStack.pop_back(); in optimizeUsesInBlock()
1274 VersionStack.push_back(&MA); in optimizeUsesInBlock()
1309 LocInfo.LowerBoundBlock = VersionStack[0]->getBlock(); in optimizeUsesInBlock()
1320 LocInfo.LastKill = VersionStack.size() - 1; in optimizeUsesInBlock()
1327 assert(LocInfo.LowerBound < VersionStack.size() && in optimizeUsesInBlock()
1329 assert(LocInfo.LastKill < VersionStack.size() && in optimizeUsesInBlock()
1332 unsigned long UpperBound = VersionStack.size() - 1; in optimizeUsesInBlock()
1347 if (isa<MemoryPhi>(VersionStack[UpperBound])) { in optimizeUsesInBlock()
1352 while (VersionStack[UpperBound] != Result) { in optimizeUsesInBlock()
1360 MemoryDef *MD = cast<MemoryDef>(VersionStack[UpperBound]); in optimizeUsesInBlock()
1385 if (MSSA->isLiveOnEntryDef(VersionStack[UpperBound])) in optimizeUsesInBlock()
1387 MU->setDefiningAccess(VersionStack[UpperBound], true, LocInfo.AR); in optimizeUsesInBlock()
1392 MU->setDefiningAccess(VersionStack[LocInfo.LastKill], true, LocInfo.AR); in optimizeUsesInBlock()
1394 LocInfo.LowerBound = VersionStack.size() - 1; in optimizeUsesInBlock()
1401 SmallVector<MemoryAccess *, 16> VersionStack; in optimizeUses() local
1403 VersionStack.push_back(MSSA->getLiveOnEntryDef()); in optimizeUses()
1409 optimizeUsesInBlock(DomNode->getBlock(), StackEpoch, PopEpoch, VersionStack, in optimizeUses()