[llvm-commits] [llvm] r120974 - in /llvm/trunk: include/llvm/Analysis/AliasAnalysis.h lib/Transforms/Scalar/DeadStoreElimination.cpp test/Transforms/DeadStoreElimination/simple.ll
Chris Lattner
clattner at apple.com
Mon Dec 6 13:02:41 PST 2010
On Dec 6, 2010, at 12:50 PM, Duncan Sands wrote:
> Hi Chris,
>
>>> By the way, presumably when the optimizers see a memcpy of a pointer to itself
>>> it removes the memcpy if it is non-volatile.
>>
>> Right, it does, but the problem is that you can have memcpy(a<- b) in which a and b can be aliased, but aren't provably identical.
>
> if you can prove that they overlap, I guess you can assume that they are
> identical and remove the memcpy.
Yes, we do that.
-Chris
More information about the llvm-commits
mailing list