Disable indvars on loops when LoopSimplify form is not available.

This fixes PR7333.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106267 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Dan Gohman
2010-06-18 01:35:11 +00:00
parent e54081088e
commit a52838285b
2 changed files with 29 additions and 1 deletions
+18 -1
View File
@@ -1,6 +1,6 @@
; RUN: opt < %s -indvars -S -disable-output
; PR5758
; PR5758
define zeroext i1 @foo() nounwind {
entry:
indirectbr i8* undef, [label %"202", label %"133"]
@@ -20,3 +20,20 @@ entry:
"202": ; preds = %entry
ret i1 false
}
; PR7333
define void @__atomvec_module__put_vrml_bonds() nounwind {
bb7.preheader: ; preds = %entry
indirectbr i8* undef, [label %bb14, label %bb16]
bb14: ; preds = %bb14, %bb7.preheader
br label %bb16
bb16: ; preds = %bb16, %bb14, %bb7.preheader
%S.31.0 = phi i64 [ %3, %bb16 ], [ 1, %bb7.preheader ], [ 1, %bb14 ] ; <i64> [#uses=2]
%0 = add nsw i64 %S.31.0, -1 ; <i64> [#uses=1]
%1 = getelementptr inbounds [3 x double]* undef, i64 0, i64 %0 ; <double*> [#uses=1]
%2 = load double* %1, align 8 ; <double> [#uses=0]
%3 = add nsw i64 %S.31.0, 1 ; <i64> [#uses=1]
br label %bb16
}