diff options
| author | Nick Lewycky <nicholas@mxc.ca> | 2014-09-01 06:03:11 +0000 |
|---|---|---|
| committer | Nick Lewycky <nicholas@mxc.ca> | 2014-09-01 06:03:11 +0000 |
| commit | fc243d54d2048bec081a6c0257288306960f3e49 (patch) | |
| tree | 8a8b1953e12bc877b4456bcf699fd48df1c0b1cb /llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp | |
| parent | 97756409ea50ebefff8233ad6478b3d38b626c46 (diff) | |
| download | bcm5719-llvm-fc243d54d2048bec081a6c0257288306960f3e49.tar.gz bcm5719-llvm-fc243d54d2048bec081a6c0257288306960f3e49.zip | |
Ignore lifetime intrinsics in use list for MemCpyOptimizer. Patch by Luqman Aden, review by Hal Finkel.
llvm-svn: 216865
Diffstat (limited to 'llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp')
| -rw-r--r-- | llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp b/llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp index 7c184a4ad2c..b1a2ed39f24 100644 --- a/llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp +++ b/llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp @@ -679,6 +679,10 @@ bool MemCpyOpt::performCallSlotOptzn(Instruction *cpy, srcUseList.push_back(UU); else return false; + } else if (const IntrinsicInst *IT = dyn_cast<IntrinsicInst>(U)) { + if (IT->getIntrinsicID() != Intrinsic::lifetime_start && + IT->getIntrinsicID() != Intrinsic::lifetime_end) + continue; } else if (U != C && U != cpy) { return false; } |

