Lines Matching refs:StoreInst
118 StoreInst *canSinkFromBlock(BasicBlock *BB, StoreInst *SI);
119 PHINode *getPHIOperand(BasicBlock *BB, StoreInst *S0, StoreInst *S1);
122 bool canSinkStoresAndGEPs(StoreInst *S0, StoreInst *S1) const;
123 void sinkStoresAndGEPs(BasicBlock *BB, StoreInst *SinkCand,
124 StoreInst *ElseInst);
187 StoreInst *MergedLoadStoreMotion::canSinkFromBlock(BasicBlock *BB1, in canSinkFromBlock()
188 StoreInst *Store0) { in canSinkFromBlock()
192 auto *Store1 = dyn_cast<StoreInst>(&Inst); in canSinkFromBlock()
210 PHINode *MergedLoadStoreMotion::getPHIOperand(BasicBlock *BB, StoreInst *S0, in getPHIOperand()
211 StoreInst *S1) { in getPHIOperand()
229 bool MergedLoadStoreMotion::canSinkStoresAndGEPs(StoreInst *S0, in canSinkStoresAndGEPs()
230 StoreInst *S1) const { in canSinkStoresAndGEPs()
243 void MergedLoadStoreMotion::sinkStoresAndGEPs(BasicBlock *BB, StoreInst *S0, in sinkStoresAndGEPs()
244 StoreInst *S1) { in sinkStoresAndGEPs()
258 StoreInst *SNew = cast<StoreInst>(S0->clone()); in sinkStoresAndGEPs()
314 auto *S0 = dyn_cast<StoreInst>(I); in mergeStores()
321 if (StoreInst *S1 = canSinkFromBlock(Pred1, S0)) { in mergeStores()