Lines Matching defs:Info
278 AllocaInfo &Info);
279 void ComputeLiveInBlocks(AllocaInst *AI, AllocaInfo &Info,
283 void RewriteSingleStoreAlloca(AllocaInst *AI, AllocaInfo &Info,
285 void PromoteSingleBlockAlloca(AllocaInst *AI, AllocaInfo &Info,
393 AllocaInfo Info;
419 Info.AnalyzeAlloca(AI);
423 if (Info.DefiningBlocks.size() == 1) {
424 RewriteSingleStoreAlloca(AI, Info, LBI);
427 if (Info.UsingBlocks.empty()) {
430 if (DbgDeclareInst *DDI = Info.DbgDeclare) {
433 ConvertDebugDeclareToDebugValue(DDI, Info.OnlyStore, *DIB);
437 Info.OnlyStore->eraseFromParent();
438 LBI.deleteValue(Info.OnlyStore);
454 if (Info.OnlyUsedInOneBlock) {
455 PromoteSingleBlockAlloca(AI, Info, LBI);
459 if (Info.UsingBlocks.empty()) {
465 if (DbgDeclareInst *DDI = Info.DbgDeclare) {
482 if (DbgDeclareInst *DDI = Info.DbgDeclare)
520 PointerAllocaValues[AllocaNum] = Info.AllocaPointerVal;
523 if (Info.DbgDeclare) AllocaDbgDeclares[AllocaNum] = Info.DbgDeclare;
532 DetermineInsertionPoint(AI, AllocaNum, Info);
675 ComputeLiveInBlocks(AllocaInst *AI, AllocaInfo &Info,
682 SmallVector<BasicBlock*, 64> LiveInBlockWorklist(Info.UsingBlocks.begin(),
683 Info.UsingBlocks.end());
747 AllocaInfo &Info) {
750 DefBlocks.insert(Info.DefiningBlocks.begin(), Info.DefiningBlocks.end());
755 ComputeLiveInBlocks(AI, Info, DefBlocks, LiveInBlocks);
835 AllocaInfo &Info,
837 StoreInst *OnlyStore = Info.OnlyStore;
843 Info.UsingBlocks.clear();
867 Info.UsingBlocks.push_back(StoreBB);
876 Info.UsingBlocks.push_back(LI->getParent());
922 void PromoteMem2Reg::PromoteSingleBlockAlloca(AllocaInst *AI, AllocaInfo &Info,
930 Info.UsingBlocks.clear();
975 Info.UsingBlocks.push_back(LI->getParent());