As with r70333, give the primary induction variable a use so
authorDan Gohman <gohman@apple.com>
Tue, 28 Apr 2009 22:05:13 +0000 (22:05 +0000)
committerDan Gohman <gohman@apple.com>
Tue, 28 Apr 2009 22:05:13 +0000 (22:05 +0000)
that it can't be trivially eliminated.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70334 91177308-0d34-0410-b5e6-96231b3b80d8

test/Transforms/LoopSimplify/single-backedge.ll

index 0c09b9e51a62d176364840c3ac57f61180b00ba5..8391048eed220f713861aa6659721a483a73e1bb 100644 (file)
@@ -8,7 +8,8 @@ define i32 @test(i1 %C) {
 ; <label>:0
        br label %Loop
 Loop:          ; preds = %BE2, %BE1, %0
-       %IV = phi i32 [ 1, %0 ], [ %IV2, %BE1 ], [ %IV2, %BE2 ]         ; <i32> [#uses=1]
+       %IV = phi i32 [ 1, %0 ], [ %IV2, %BE1 ], [ %IV2, %BE2 ]         ; <i32> [#uses=2]
+       store i32 %IV, i32* null
        %IV2 = add i32 %IV, 2           ; <i32> [#uses=2]
        br i1 %C, label %BE1, label %BE2
 BE1:           ; preds = %Loop