fix instcombine merging GEPs through a PHI to only make the

result inbounds if all of the inputs are inbounds.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125785 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner
2011-02-17 22:21:26 +00:00
parent 093399cbf3
commit 4bd8217af3
2 changed files with 10 additions and 5 deletions

View File

@@ -125,7 +125,7 @@ Exit: ; preds = %Loop
define i32* @test8({ i32, i32 } *%A, i1 %b) {
BB0:
%X = getelementptr { i32, i32 } *%A, i32 0, i32 1
%X = getelementptr inbounds { i32, i32 } *%A, i32 0, i32 1
br i1 %b, label %BB1, label %BB2
BB1:
@@ -139,7 +139,7 @@ BB2:
; CHECK: @test8
; CHECK-NOT: phi
; CHECK: BB2:
; CHECK-NEXT: %B = getelementptr
; CHECK-NEXT: %B = getelementptr %0
; CHECK-NEXT: ret i32* %B
}
@@ -525,3 +525,4 @@ Exit: ; preds = %Loop
; CHECK: Exit:
; CHECK-NEXT: ret i32 %B
}