From: Devang Patel Date: Fri, 1 Jun 2007 22:15:31 +0000 (+0000) Subject: Insert new instructions in AliasSet. X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=e7ae1a9dee1b023dbd5f7d6d1fbdb165fbbcb26c;p=oota-llvm.git Insert new instructions in AliasSet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37390 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Transforms/Scalar/LICM.cpp b/lib/Transforms/Scalar/LICM.cpp index 087325c6906..3b16814fe86 100644 --- a/lib/Transforms/Scalar/LICM.cpp +++ b/lib/Transforms/Scalar/LICM.cpp @@ -476,9 +476,11 @@ void LICM::sink(Instruction &I) { // Firstly, we create a stack object to hold the value... AllocaInst *AI = 0; - if (I.getType() != Type::VoidTy) + if (I.getType() != Type::VoidTy) { AI = new AllocaInst(I.getType(), 0, I.getName(), I.getParent()->getParent()->getEntryBlock().begin()); + CurAST->add(AI); + } // Secondly, insert load instructions for each use of the instruction // outside of the loop. @@ -499,6 +501,7 @@ void LICM::sink(Instruction &I) { // Insert a new load instruction right before the terminator in // the predecessor block. PredVal = new LoadInst(AI, "", Pred->getTerminator()); + CurAST->add(cast(PredVal)); } UPN->setIncomingValue(i, PredVal); @@ -507,6 +510,7 @@ void LICM::sink(Instruction &I) { } else { LoadInst *L = new LoadInst(AI, "", U); U->replaceUsesOfWith(&I, L); + CurAST->add(L); } }