Modified depends() to recognize that when all levels are "=" and

there's no possible loo-independent dependence, then there's no
dependence.

Updated all test result appropriately.

llvm-svn: 168719
This commit is contained in:
Preston Briggs 2012-11-27 19:12:26 +00:00
parent 3e0f1fb7b2
commit 5cb8cfae1e
16 changed files with 376 additions and 361 deletions

View File

@ -3563,8 +3563,10 @@ Dependence *DependenceAnalysis::depends(Instruction *Src,
if (CompleteLoops[II])
Result.DV[II - 1].Scalar = false;
// make sure loopIndepent flag is set correctly
if (PossiblyLoopIndependent) {
// Make sure the LoopIndependent flag is set correctly.
// All directions must include equal, otherwise no
// loop-independent dependence is possible.
for (unsigned II = 1; II <= CommonLevels; ++II) {
if (!(Result.getDirection(II) & Dependence::DVEntry::EQ)) {
Result.LoopIndependent = false;
@ -3572,6 +3574,19 @@ Dependence *DependenceAnalysis::depends(Instruction *Src,
}
}
}
else {
// On the other hand, if all directions are equal and there's no
// loop-independent dependence possible, then no dependence exists.
bool AllEqual = true;
for (unsigned II = 1; II <= CommonLevels; ++II) {
if (Result.getDirection(II) != Dependence::DVEntry::EQ) {
AllEqual = false;
break;
}
}
if (AllEqual)
return NULL;
}
FullDependence *Final = new FullDependence(Result);
Result.DV = NULL;

View File

@ -14,12 +14,12 @@ define void @banerjee0(i64* %A, i64* %B, i64 %m, i64 %n) nounwind uwtable ssp {
entry:
br label %for.cond1.preheader
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [<= <>]!
; CHECK: da analyze - confused!
; CHECK: da analyze - input [= =]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc7
%B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc7 ]
@ -131,12 +131,12 @@ define void @banerjee2(i64* %A, i64* %B, i64 %m, i64 %n) nounwind uwtable ssp {
entry:
br label %for.cond1.preheader
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - input [= =]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc8
%B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc8 ]
@ -181,12 +181,12 @@ define void @banerjee3(i64* %A, i64* %B, i64 %m, i64 %n) nounwind uwtable ssp {
entry:
br label %for.cond1.preheader
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [> >]!
; CHECK: da analyze - confused!
; CHECK: da analyze - input [= =]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc8
%B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc8 ]
@ -231,12 +231,12 @@ define void @banerjee4(i64* %A, i64* %B, i64 %m, i64 %n) nounwind uwtable ssp {
entry:
br label %for.cond1.preheader
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - input [= =]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc7
%B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc7 ]
@ -281,12 +281,12 @@ define void @banerjee5(i64* %A, i64* %B, i64 %m, i64 %n) nounwind uwtable ssp {
entry:
br label %for.cond1.preheader
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [< <]!
; CHECK: da analyze - confused!
; CHECK: da analyze - input [= =]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc7
%B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc7 ]
@ -331,12 +331,12 @@ define void @banerjee6(i64* %A, i64* %B, i64 %m, i64 %n) nounwind uwtable ssp {
entry:
br label %for.cond1.preheader
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [=> <>]!
; CHECK: da analyze - confused!
; CHECK: da analyze - input [= =]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc8
%B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc8 ]
@ -381,12 +381,12 @@ define void @banerjee7(i64* %A, i64* %B, i64 %m, i64 %n) nounwind uwtable ssp {
entry:
br label %for.cond1.preheader
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [> <=]!
; CHECK: da analyze - confused!
; CHECK: da analyze - input [= =]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc8
%B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc8 ]
@ -431,12 +431,12 @@ define void @banerjee8(i64* %A, i64* %B, i64 %m, i64 %n) nounwind uwtable ssp {
entry:
br label %for.cond1.preheader
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [> <>]!
; CHECK: da analyze - confused!
; CHECK: da analyze - input [= =]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc8
%B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc8 ]
@ -484,9 +484,9 @@ entry:
; CHECK: da analyze - output [* *]!
; CHECK: da analyze - flow [<= =|<]!
; CHECK: da analyze - confused!
; CHECK: da analyze - input [= =]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc8
%B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc8 ]
@ -532,12 +532,12 @@ define void @banerjee10(i64* %A, i64* %B, i64 %m, i64 %n) nounwind uwtable ssp {
entry:
br label %for.cond1.preheader
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [<> =]!
; CHECK: da analyze - confused!
; CHECK: da analyze - input [= =]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc7
%B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc7 ]
@ -582,12 +582,12 @@ define void @banerjee11(i64* %A, i64* %B, i64 %m, i64 %n) nounwind uwtable ssp {
entry:
br label %for.cond1.preheader
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [<= <>]!
; CHECK: da analyze - confused!
; CHECK: da analyze - input [= =]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc7
%B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc7 ]
@ -632,12 +632,12 @@ define void @banerjee12(i64* %A, i64* %B, i64 %m, i64 %n) nounwind uwtable ssp {
entry:
br label %for.cond1.preheader
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [= <>]!
; CHECK: da analyze - confused!
; CHECK: da analyze - input [= =]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc7
%B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc7 ]

View File

@ -13,12 +13,12 @@ define void @couple0([100 x i32]* %A, i32* %B, i32 %n) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -49,12 +49,12 @@ define void @couple1([100 x i32]* %A, i32* %B, i32 %n) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - consistent flow [-9]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -85,12 +85,12 @@ define void @couple2([100 x i32]* %A, i32* %B, i32 %n) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [*|<]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -123,12 +123,12 @@ define void @couple3([100 x i32]* %A, i32* %B, i32 %n) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -161,12 +161,12 @@ define void @couple4([100 x i32]* %A, i32* %B, i32 %n) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [*|<]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -200,12 +200,12 @@ define void @couple5([100 x i32]* %A, i32* %B, i32 %n) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -241,12 +241,12 @@ define void @couple6([100 x i32]* %A, i32* %B, i32 %n) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [=|<]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -277,12 +277,12 @@ define void @couple7([100 x i32]* %A, i32* %B, i32 %n) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -313,12 +313,12 @@ define void @couple8([100 x i32]* %A, i32* %B, i32 %n) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -350,12 +350,12 @@ define void @couple9([100 x i32]* %A, i32* %B, i32 %n) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -387,13 +387,13 @@ define void @couple10([100 x i32]* %A, i32* %B, i32 %n) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [>] splitable!
; CHECK: da analyze - split level = 1, iteration = 3!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -425,13 +425,13 @@ define void @couple11([100 x i32]* %A, i32* %B, i32 %n) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [=|<] splitable!
; CHECK: da analyze - split level = 1, iteration = 9!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -463,13 +463,13 @@ define void @couple12([100 x i32]* %A, i32* %B, i32 %n) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [<] splitable!
; CHECK: da analyze - split level = 1, iteration = 11!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -501,12 +501,12 @@ define void @couple13([100 x i32]* %A, i32* %B, i32 %n) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -537,13 +537,13 @@ define void @couple14([100 x [100 x i32]]* %A, i32* %B, i32 %n) nounwind uwtable
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [=|<] splitable!
; CHECK: da analyze - split level = 1, iteration = 9!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -575,12 +575,12 @@ define void @couple15([100 x [100 x i32]]* %A, i32* %B, i32 %n) nounwind uwtable
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]

View File

@ -14,12 +14,12 @@ define void @rdiv0(i32* %A, i32* %B) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.03 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -62,12 +62,12 @@ define void @rdiv1(i32* %A, i32* %B) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.03 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -108,12 +108,12 @@ define void @rdiv2(i32* %A, i32* %B) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.03 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -154,12 +154,12 @@ define void @rdiv3(i32* %A, i32* %B) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.03 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -200,12 +200,12 @@ define void @rdiv4(i32* %A, i32* %B) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.03 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -246,12 +246,12 @@ define void @rdiv5(i32* %A, i32* %B) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.03 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -293,12 +293,12 @@ define void @rdiv6(i32* %A, i32* %B) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.03 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -340,12 +340,12 @@ define void @rdiv7(i32* %A, i32* %B) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.03 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -387,12 +387,12 @@ define void @rdiv8(i32* %A, i32* %B) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.03 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -434,12 +434,12 @@ define void @rdiv9(i32* %A, i32* %B) nounwind uwtable ssp {
entry:
br label %for.cond1.preheader
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [S S]!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc5
%B.addr.04 = phi i32* [ %B, %entry ], [ %scevgep, %for.inc5 ]
@ -483,12 +483,12 @@ define void @rdiv10(i32* %A, i32* %B) nounwind uwtable ssp {
entry:
br label %for.cond1.preheader
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [S S]!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc5
%B.addr.04 = phi i32* [ %B, %entry ], [ %scevgep, %for.inc5 ]
@ -531,12 +531,12 @@ define void @rdiv11(i32* %A, i32* %B) nounwind uwtable ssp {
entry:
br label %for.cond1.preheader
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [S S]!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc5
%B.addr.04 = phi i32* [ %B, %entry ], [ %scevgep, %for.inc5 ]
@ -579,12 +579,12 @@ define void @rdiv12(i32* %A, i32* %B) nounwind uwtable ssp {
entry:
br label %for.cond1.preheader
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [* *|<]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [S S]!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc5
%B.addr.04 = phi i32* [ %B, %entry ], [ %scevgep, %for.inc5 ]

View File

@ -13,12 +13,12 @@ define void @exact0(i32* %A, i32* %B) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [<=|<]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -50,12 +50,12 @@ define void @exact1(i32* %A, i32* %B) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -88,12 +88,12 @@ define void @exact2(i32* %A, i32* %B) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -124,12 +124,12 @@ define void @exact3(i32* %A, i32* %B) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [>]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -160,12 +160,12 @@ define void @exact4(i32* %A, i32* %B) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [>]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -196,12 +196,12 @@ define void @exact5(i32* %A, i32* %B) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [=>|<]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -232,12 +232,12 @@ define void @exact6(i32* %A, i32* %B) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [=>|<]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -268,12 +268,12 @@ define void @exact7(i32* %A, i32* %B) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [*|<]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -304,12 +304,12 @@ define void @exact8(i32* %A, i32* %B) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -340,12 +340,12 @@ define void @exact9(i32* %A, i32* %B) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [>]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -376,12 +376,12 @@ define void @exact10(i32* %A, i32* %B) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [>]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -412,12 +412,12 @@ define void @exact11(i32* %A, i32* %B) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [=>|<]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -448,12 +448,12 @@ define void @exact12(i32* %A, i32* %B) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [=>|<]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -484,12 +484,12 @@ define void @exact13(i32* %A, i32* %B) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [*|<]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]

View File

@ -19,7 +19,7 @@ entry:
; CHECK: da analyze - confused!
; CHECK: da analyze - input [* *]!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc8
%B.addr.04 = phi i32* [ %B, %entry ], [ %scevgep, %for.inc8 ]
@ -71,7 +71,7 @@ entry:
; CHECK: da analyze - confused!
; CHECK: da analyze - input [* *]!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc9
%B.addr.04 = phi i32* [ %B, %entry ], [ %scevgep, %for.inc9 ]
@ -124,7 +124,7 @@ entry:
; CHECK: da analyze - confused!
; CHECK: da analyze - input [* *]!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc9
%B.addr.04 = phi i32* [ %B, %entry ], [ %scevgep, %for.inc9 ]
@ -177,7 +177,7 @@ entry:
; CHECK: da analyze - confused!
; CHECK: da analyze - input [* *]!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc7
%B.addr.04 = phi i32* [ %B, %entry ], [ %scevgep, %for.inc7 ]
@ -228,7 +228,7 @@ entry:
; CHECK: da analyze - confused!
; CHECK: da analyze - input [* *]!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc17
%B.addr.04 = phi i32* [ %B, %entry ], [ %scevgep, %for.inc17 ]
@ -289,7 +289,7 @@ entry:
; CHECK: da analyze - confused!
; CHECK: da analyze - input [* *]!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc17
%B.addr.04 = phi i32* [ %B, %entry ], [ %scevgep, %for.inc17 ]

View File

@ -13,9 +13,9 @@ define i32 @p0(i32 %n, i32* %A, i32* %B) nounwind uwtable ssp {
entry:
store i32 %n, i32* %A, align 4
; CHECK: da analyze - consistent output!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input!
; CHECK: da analyze - none!
%arrayidx1 = getelementptr inbounds i32* %B, i64 1
%0 = load i32* %arrayidx1, align 4
@ -31,9 +31,9 @@ define i32 @p1(i32 %n, i32* noalias %A, i32* noalias %B) nounwind uwtable ssp {
entry:
store i32 %n, i32* %A, align 4
; CHECK: da analyze - consistent output!
; CHECK: da analyze - none!
; CHECK: da analyze - consistent input!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
%arrayidx1 = getelementptr inbounds i32* %B, i64 1
%0 = load i32* %arrayidx1, align 4
@ -54,10 +54,10 @@ entry:
%cmp10 = icmp sgt i64 %n, 0
br i1 %cmp10, label %for.cond1.preheader.preheader, label %for.end26
; CHECK: da analyze - consistent output [0 0 0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [-3 -2]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0 0 0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [* * *]!
@ -428,9 +428,9 @@ entry:
; CHECK: da analyze - output [*]!
; CHECK: da analyze - flow [*|<]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body.preheader: ; preds = %entry
br label %for.body
@ -474,9 +474,9 @@ entry:
; CHECK: da analyze - output [*]!
; CHECK: da analyze - flow [*|<]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body.preheader: ; preds = %entry
br label %for.body
@ -517,12 +517,12 @@ entry:
%cmp1 = icmp sgt i64 %n, 0
br i1 %cmp1, label %for.body.preheader, label %for.end
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - consistent flow [2]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body.preheader: ; preds = %entry
br label %for.body
@ -559,12 +559,12 @@ entry:
%idxprom = sext i8 %n to i64
%arrayidx = getelementptr inbounds i32* %A, i64 %idxprom
; CHECK: da analyze - consistent output!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output!
; CHECK: da analyze - none!
store i32 0, i32* %arrayidx, align 4
%conv = sext i8 %n to i64
@ -586,12 +586,12 @@ entry:
%arrayidx = getelementptr inbounds i32* %A, i64 %idxprom
store i32 0, i32* %arrayidx, align 4
; CHECK: da analyze - consistent output!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output!
; CHECK: da analyze - none!
%conv = sext i16 %n to i64
%add = add i64 %conv, 1
@ -612,12 +612,12 @@ entry:
%arrayidx = getelementptr inbounds i32* %A, i64 %idxprom
store i32 0, i32* %arrayidx, align 4
; CHECK: da analyze - consistent output!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output!
; CHECK: da analyze - none!
%add = add nsw i32 %n, 1
%idxprom1 = sext i32 %add to i64
@ -638,12 +638,12 @@ entry:
%arrayidx = getelementptr inbounds i32* %A, i64 %idxprom
store i32 0, i32* %arrayidx, align 4
; CHECK: da analyze - consistent output!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output!
; CHECK: da analyze - none!
%add = add i32 %n, 1
%idxprom1 = zext i32 %add to i64
@ -672,9 +672,9 @@ entry:
%cmp1 = icmp eq i64 %add.ptr.sum, 0
br i1 %cmp1, label %while.end, label %while.body.preheader
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - consistent anti [1]!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
while.body.preheader: ; preds = %entry
br label %while.body

View File

@ -14,12 +14,12 @@ define void @prop0([100 x i32]* %A, i32* %B, i32 %n) nounwind uwtable ssp {
entry:
br label %for.cond1.preheader
; CHECK: da analyze - consistent output [0 0]!
; CHECK: da analyze - none!
; CHECK: da analyze - consistent flow [1 -1]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0 0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc9
%B.addr.04 = phi i32* [ %B, %entry ], [ %scevgep, %for.inc9 ]
@ -64,12 +64,12 @@ define void @prop1([100 x [100 x i32]]* %A, i32* %B, i32 %n) nounwind uwtable ss
entry:
br label %for.cond1.preheader
; CHECK: da analyze - consistent output [0 0 0]!
; CHECK: da analyze - none!
; CHECK: da analyze - consistent flow [1 1 -1]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0 0 0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= = =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc18
%B.addr.06 = phi i32* [ %B, %entry ], [ %scevgep7, %for.inc18 ]
@ -129,9 +129,9 @@ entry:
; CHECK: da analyze - consistent output [0 S]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0 0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc8
%B.addr.04 = phi i32* [ %B, %entry ], [ %scevgep, %for.inc8 ]
@ -176,12 +176,12 @@ define void @prop3([100 x i32]* %A, i32* %B, i32 %n) nounwind uwtable ssp {
entry:
br label %for.cond1.preheader
; CHECK: da analyze - consistent output [0 0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0 0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc9
%B.addr.04 = phi i32* [ %B, %entry ], [ %scevgep, %for.inc9 ]
@ -227,12 +227,12 @@ define void @prop4([100 x i32]* %A, i32* %B, i32 %n) nounwind uwtable ssp {
entry:
br label %for.cond1.preheader
; CHECK: da analyze - consistent output [0 0]!
; CHECK: da analyze - none!
; CHECK: da analyze - consistent flow [2 -3]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0 0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc11
%B.addr.04 = phi i32* [ %B, %entry ], [ %scevgep, %for.inc11 ]
@ -279,13 +279,13 @@ define void @prop5([100 x [100 x i32]]* %A, i32* %B, i32 %n) nounwind uwtable ss
entry:
br label %for.cond1.preheader
; CHECK: da analyze - consistent output [0 0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [< -16] splitable!
; CHECK: da analyze - split level = 1, iteration = 11!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0 0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc13
%B.addr.04 = phi i32* [ %B, %entry ], [ %scevgep, %for.inc13 ]
@ -333,12 +333,12 @@ define void @prop6([100 x i32]* %A, i32* %B, i32 %n) nounwind uwtable ssp {
entry:
br label %for.cond1.preheader
; CHECK: da analyze - consistent output [0 0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [=> -2]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0 0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc12
%B.addr.04 = phi i32* [ %B, %entry ], [ %scevgep, %for.inc12 ]
@ -386,13 +386,13 @@ define void @prop7([100 x i32]* %A, i32* %B, i32 %n) nounwind uwtable ssp {
entry:
br label %for.cond1.preheader
; CHECK: da analyze - consistent output [0 0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [* -38] splitable!
; CHECK: da analyze - split level = 1, iteration = 4!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0 0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc14
%B.addr.04 = phi i32* [ %B, %entry ], [ %scevgep, %for.inc14 ]
@ -445,9 +445,9 @@ entry:
; CHECK: da analyze - consistent output [S 0]!
; CHECK: da analyze - flow [p<= 2]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0 0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc10
%B.addr.04 = phi i32* [ %B, %entry ], [ %scevgep, %for.inc10 ]
@ -493,12 +493,12 @@ define void @prop9([100 x i32]* %A, i32* %B, i32 %n) nounwind uwtable ssp {
entry:
br label %for.cond1.preheader
; CHECK: da analyze - consistent output [0 0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [p<= 2]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [S 0]!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc10
%B.addr.04 = phi i32* [ %B, %entry ], [ %scevgep, %for.inc10 ]

View File

@ -21,7 +21,7 @@ entry:
; CHECK: da analyze - confused!
; CHECK: da analyze - input [0 * S *]!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= = = =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc22
%B.addr.08 = phi i32* [ %B, %entry ], [ %scevgep11, %for.inc22 ]
@ -96,7 +96,7 @@ entry:
; CHECK: da analyze - confused!
; CHECK: da analyze - input [0 * S *]!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= = = =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc22
%B.addr.08 = phi i32* [ %B, %entry ], [ %scevgep11, %for.inc22 ]
@ -170,7 +170,7 @@ entry:
; CHECK: da analyze - confused!
; CHECK: da analyze - input [0 * * 0]!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= = = =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc26
%B.addr.08 = phi i32* [ %B, %entry ], [ %scevgep11, %for.inc26 ]
@ -244,7 +244,7 @@ entry:
; CHECK: da analyze - confused!
; CHECK: da analyze - input [0 * * 0]!
; CHECK: da analyze - confused!
; CHECK: da analyze - output [= = = =]!
; CHECK: da analyze - none!
for.cond1.preheader: ; preds = %entry, %for.inc27
%B.addr.08 = phi i32* [ %B, %entry ], [ %scevgep11, %for.inc27 ]

View File

@ -14,12 +14,12 @@ entry:
%cmp1 = icmp sgt i64 %n, 0
br i1 %cmp1, label %for.body.preheader, label %for.end
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - consistent flow [2]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body.preheader: ; preds = %entry
br label %for.body
@ -56,12 +56,12 @@ entry:
%cmp1 = icmp sgt i32 %n, 0
br i1 %cmp1, label %for.body.preheader, label %for.end
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - consistent flow [2]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body.preheader: ; preds = %entry
%0 = sext i32 %n to i64
@ -99,12 +99,12 @@ entry:
%cmp1 = icmp eq i64 %n, 0
br i1 %cmp1, label %for.end, label %for.body.preheader
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - consistent flow [2]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body.preheader: ; preds = %entry
br label %for.body
@ -141,12 +141,12 @@ entry:
%cmp1 = icmp sgt i32 %n, 0
br i1 %cmp1, label %for.body.preheader, label %for.end
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - consistent flow [2]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body.preheader: ; preds = %entry
br label %for.body
@ -183,12 +183,12 @@ define void @strong4(i32* %A, i32* %B, i64 %n) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -218,12 +218,12 @@ define void @strong5(i32* %A, i32* %B, i64 %n) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - consistent flow [19]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -253,12 +253,12 @@ define void @strong6(i32* %A, i32* %B, i64 %n) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - consistent flow [3]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -290,12 +290,12 @@ define void @strong7(i32* %A, i32* %B, i64 %n) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -327,12 +327,12 @@ define void @strong8(i32* %A, i32* %B, i64 %n) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - consistent flow [%n|<]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -363,12 +363,12 @@ entry:
%cmp1 = icmp eq i64 %n, 0
br i1 %cmp1, label %for.end, label %for.body.preheader
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body.preheader: ; preds = %entry
br label %for.body
@ -406,12 +406,12 @@ define void @strong10(i32* %A, i32* %B, i64 %n) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - consistent flow [0|<]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]

View File

@ -15,12 +15,12 @@ entry:
%cmp4 = icmp eq i64 %n1, 0
br i1 %cmp4, label %for.cond1.preheader, label %for.body.preheader
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body.preheader: ; preds = %entry
br label %for.body
@ -77,12 +77,12 @@ entry:
%cmp4 = icmp eq i64 %n1, 0
br i1 %cmp4, label %for.cond2.preheader, label %for.body.preheader
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body.preheader: ; preds = %entry
br label %for.body
@ -141,12 +141,12 @@ entry:
%cmp4 = icmp eq i64 %n1, 0
br i1 %cmp4, label %for.cond1.preheader, label %for.body.preheader
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body.preheader: ; preds = %entry
br label %for.body
@ -203,12 +203,12 @@ entry:
%cmp4 = icmp eq i64 %n1, 0
br i1 %cmp4, label %for.cond1.preheader, label %for.body.preheader
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body.preheader: ; preds = %entry
br label %for.body
@ -263,12 +263,12 @@ entry:
%cmp4 = icmp eq i64 %n1, 0
br i1 %cmp4, label %for.cond1.preheader, label %for.body.preheader
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body.preheader: ; preds = %entry
br label %for.body
@ -324,12 +324,12 @@ entry:
%cmp4 = icmp eq i64 %n1, 0
br i1 %cmp4, label %for.cond1.preheader, label %for.body.preheader
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body.preheader: ; preds = %entry
br label %for.body

View File

@ -14,12 +14,12 @@ entry:
%cmp1 = icmp eq i64 %n, 0
br i1 %cmp1, label %for.end, label %for.body.preheader
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body.preheader: ; preds = %entry
br label %for.body
@ -59,12 +59,12 @@ entry:
%cmp1 = icmp eq i64 %n, 0
br i1 %cmp1, label %for.end, label %for.body.preheader
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body.preheader: ; preds = %entry
br label %for.body
@ -106,12 +106,12 @@ entry:
%cmp1 = icmp eq i64 %n, 0
br i1 %cmp1, label %for.end, label %for.body.preheader
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body.preheader: ; preds = %entry
br label %for.body
@ -151,12 +151,12 @@ entry:
%cmp1 = icmp eq i64 %n, 0
br i1 %cmp1, label %for.end, label %for.body.preheader
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body.preheader: ; preds = %entry
br label %for.body
@ -197,12 +197,12 @@ entry:
%cmp1 = icmp eq i64 %n, 0
br i1 %cmp1, label %for.end, label %for.body.preheader
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body.preheader: ; preds = %entry
br label %for.body
@ -242,12 +242,12 @@ entry:
%cmp1 = icmp eq i64 %n, 0
br i1 %cmp1, label %for.end, label %for.body.preheader
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body.preheader: ; preds = %entry
br label %for.body
@ -289,13 +289,13 @@ entry:
%cmp1 = icmp eq i64 %n, 0
br i1 %cmp1, label %for.end, label %for.body.preheader
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [*|<] splitable!
; CHECK: da analyze - split level = 1, iteration = ((0 smax (-1 + (-1 * %n))) /u 2)!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body.preheader: ; preds = %entry
br label %for.body
@ -334,12 +334,12 @@ entry:
%cmp1 = icmp eq i64 %n, 0
br i1 %cmp1, label %for.end, label %for.body.preheader
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body.preheader: ; preds = %entry
br label %for.body
@ -383,12 +383,12 @@ entry:
%cmp1 = icmp eq i64 %n, 0
br i1 %cmp1, label %for.end, label %for.body.preheader
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [<>]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body.preheader: ; preds = %entry
br label %for.body

View File

@ -17,12 +17,12 @@ entry:
for.body.preheader: ; preds = %entry
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [0|<]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %for.body.preheader, %for.body
%i.03 = phi i64 [ %inc, %for.body ], [ 0, %for.body.preheader ]
@ -59,13 +59,13 @@ entry:
%cmp1 = icmp eq i64 %n, 0
br i1 %cmp1, label %for.end, label %for.body.preheader
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [<>] splitable!
; CHECK: da analyze - split level = 1, iteration = 0!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body.preheader: ; preds = %entry
br label %for.body
@ -103,12 +103,12 @@ define void @weakcrossing2(i32* %A, i32* %B, i64 %n) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -138,12 +138,12 @@ define void @weakcrossing3(i32* %A, i32* %B, i64 %n) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [0|<]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -173,12 +173,12 @@ define void @weakcrossing4(i32* %A, i32* %B, i64 %n) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -209,12 +209,12 @@ entry:
%cmp1 = icmp eq i64 %n, 0
br i1 %cmp1, label %for.end, label %for.body.preheader
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body.preheader: ; preds = %entry
br label %for.body
@ -252,13 +252,13 @@ define void @weakcrossing6(i32* %A, i32* %B, i64 %n) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [<>] splitable!
; CHECK: da analyze - split level = 1, iteration = 2!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]

View File

@ -13,12 +13,12 @@ define void @weakzerodst0(i32* %A, i32* %B, i64 %n) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [p<=|<]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [S]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -50,12 +50,12 @@ entry:
%cmp1 = icmp eq i64 %n, 0
br i1 %cmp1, label %for.end, label %for.body.preheader
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [p<=|<]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [S]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body.preheader: ; preds = %entry
br label %for.body
@ -92,12 +92,12 @@ define void @weakzerodst2(i32* %A, i32* %B, i64 %n) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [S]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -127,12 +127,12 @@ define void @weakzerodst3(i32* %A, i32* %B, i64 %n) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [=>p|<]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [S]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -162,12 +162,12 @@ define void @weakzerodst4(i32* %A, i32* %B, i64 %n) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - flow [*|<]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [S]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -197,12 +197,12 @@ define void @weakzerodst5(i32* %A, i32* %B, i64 %n) nounwind uwtable ssp {
entry:
br label %for.body
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [S]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -233,12 +233,12 @@ entry:
%cmp1 = icmp eq i64 %n, 0
br i1 %cmp1, label %for.end, label %for.body.preheader
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [S]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body.preheader: ; preds = %entry
br label %for.body

View File

@ -16,9 +16,9 @@ entry:
; CHECK: da analyze - consistent output [S]!
; CHECK: da analyze - flow [p<=|<]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -53,9 +53,9 @@ entry:
; CHECK: da analyze - consistent output [S]!
; CHECK: da analyze - flow [p<=|<]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body.preheader: ; preds = %entry
br label %for.body
@ -95,9 +95,9 @@ entry:
; CHECK: da analyze - consistent output [S]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -130,9 +130,9 @@ entry:
; CHECK: da analyze - consistent output [S]!
; CHECK: da analyze - flow [=>p|<]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -165,9 +165,9 @@ entry:
; CHECK: da analyze - consistent output [S]!
; CHECK: da analyze - flow [*|<]!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -200,9 +200,9 @@ entry:
; CHECK: da analyze - consistent output [S]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body: ; preds = %entry, %for.body
%i.02 = phi i64 [ 0, %entry ], [ %inc, %for.body ]
@ -236,9 +236,9 @@ entry:
; CHECK: da analyze - consistent output [S]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input [0]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output [0]!
; CHECK: da analyze - none!
for.body.preheader: ; preds = %entry
br label %for.body

View File

@ -14,12 +14,12 @@ entry:
%arrayidx = getelementptr inbounds i32* %A, i64 %add
store i32 0, i32* %arrayidx, align 4
; CHECK: da analyze - consistent output!
; CHECK: da analyze - none!
; CHECK: da analyze - consistent flow!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output!
; CHECK: da analyze - none!
%add1 = add i64 %n, 1
%arrayidx2 = getelementptr inbounds i32* %A, i64 %add1
@ -37,12 +37,12 @@ entry:
%arrayidx = getelementptr inbounds i32* %A, i64 %n
store i32 0, i32* %arrayidx, align 4
; CHECK: da analyze - consistent output!
; CHECK: da analyze - none!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output!
; CHECK: da analyze - none!
%add = add i64 %n, 1
%arrayidx1 = getelementptr inbounds i32* %A, i64 %add
@ -60,12 +60,12 @@ entry:
%arrayidx = getelementptr inbounds i32* %A, i64 %n
store i32 0, i32* %arrayidx, align 4
; CHECK: da analyze - consistent output!
; CHECK: da analyze - none!
; CHECK: da analyze - flow!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent input!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
; CHECK: da analyze - consistent output!
; CHECK: da analyze - none!
%arrayidx1 = getelementptr inbounds i32* %A, i64 %m
%0 = load i32* %arrayidx1, align 4