implement PR8576, deleting dead stores with intervening may-alias stores.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119927 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner
2010-11-21 07:34:32 +00:00
parent b7dfb970e6
commit f6f1f062cc
4 changed files with 42 additions and 6 deletions

View File

@@ -11,3 +11,12 @@ define void @test1(i32* %Q, i32* %P) {
; CHECK-NEXT: ret void
}
; PR8576 - Should delete store of 10 even though p/q are may aliases.
define void @test2(i32 *%p, i32 *%q) {
store i32 10, i32* %p, align 4
store i32 20, i32* %q, align 4
store i32 30, i32* %p, align 4
ret void
; CHECK: @test2
; CHECK-NEXT: store i32 20
}