DeadStoreElimination can now trim the size of a store if the end of it is dead.
authorPete Cooper <peter_cooper@apple.com>
Thu, 3 Nov 2011 18:01:56 +0000 (18:01 +0000)
committerPete Cooper <peter_cooper@apple.com>
Thu, 3 Nov 2011 18:01:56 +0000 (18:01 +0000)
commit2d32b86543aa857a07371a93766652510f1cc0d6
treea6610d3deba36e35673c1730f113d29f704570bd
parentfb6d79a58e710b3b4aef34ecacc28603b6d5042e
DeadStoreElimination can now trim the size of a store if the end of it is dead.

Only currently done if the later store is writing to a power of 2 address or
has the same alignment as the earlier store as then its likely to not break up
large stores into smaller ones

Fixes <rdar://problem/10140300>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143630 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/Scalar/DeadStoreElimination.cpp
test/Transforms/DeadStoreElimination/OverwriteStoreEnd.ll [new file with mode: 0644]