diff options
| author | Devang Patel <dpatel@apple.com> | 2011-06-03 19:46:19 +0000 | 
|---|---|---|
| committer | Devang Patel <dpatel@apple.com> | 2011-06-03 19:46:19 +0000 | 
| commit | 84bb33add999bf6cd994a1eb075b827f7ea36813 (patch) | |
| tree | a1869ae83404f77caa3cc5addbf75ea075a38281 /llvm/lib/Transforms | |
| parent | 3297ed7065a8ea8d5f8f1566a4cd06f1c46f7ad4 (diff) | |
| download | bcm5719-llvm-84bb33add999bf6cd994a1eb075b827f7ea36813.tar.gz bcm5719-llvm-84bb33add999bf6cd994a1eb075b827f7ea36813.zip | |
Use IRBuilder, preserve line numbers.
llvm-svn: 132578
Diffstat (limited to 'llvm/lib/Transforms')
| -rw-r--r-- | llvm/lib/Transforms/Scalar/ScalarReplAggregates.cpp | 10 | 
1 files changed, 6 insertions, 4 deletions
| diff --git a/llvm/lib/Transforms/Scalar/ScalarReplAggregates.cpp b/llvm/lib/Transforms/Scalar/ScalarReplAggregates.cpp index eb683b8af80..6b3c22b4f5b 100644 --- a/llvm/lib/Transforms/Scalar/ScalarReplAggregates.cpp +++ b/llvm/lib/Transforms/Scalar/ScalarReplAggregates.cpp @@ -1840,9 +1840,10 @@ void SROA::RewriteForScalarRepl(Instruction *I, AllocaInst *AI, uint64_t Offset,          //   %insert = insertvalue { i32, i32 } %insert.0, i32 %load.1, 1          // (Also works for arrays instead of structs)          Value *Insert = UndefValue::get(LIType); +        IRBuilder<> Builder(LI);          for (unsigned i = 0, e = NewElts.size(); i != e; ++i) { -          Value *Load = new LoadInst(NewElts[i], "load", LI); -          Insert = InsertValueInst::Create(Insert, Load, i, "insert", LI); +          Value *Load = Builder.CreateLoad(NewElts[i], "load"); +          Insert = Builder.CreateInsertValue(Insert, Load, i, "insert");          }          LI->replaceAllUsesWith(Insert);          DeadInsts.push_back(LI); @@ -1867,9 +1868,10 @@ void SROA::RewriteForScalarRepl(Instruction *I, AllocaInst *AI, uint64_t Offset,          //   %val.1 = extractvalue { i32, i32 } %val, 1          //   store i32 %val.1, i32* %alloc.1          // (Also works for arrays instead of structs) +        IRBuilder<> Builder(SI);          for (unsigned i = 0, e = NewElts.size(); i != e; ++i) { -          Value *Extract = ExtractValueInst::Create(Val, i, Val->getName(), SI); -          new StoreInst(Extract, NewElts[i], SI); +          Value *Extract = Builder.CreateExtractValue(Val, i, Val->getName()); +          Builder.CreateStore(Extract, NewElts[i]);          }          DeadInsts.push_back(SI);        } else if (SIType->isIntegerTy() && | 

