Modify depends(Src, Dst, PossiblyLoopIndependent).
If the Src and Dst are the same instruction,
no loop-independent dependence is possible,
so we force the PossiblyLoopIndependent flag to false.
The test case results are updated appropriately.
llvm-svn: 168678
diff --git a/llvm/test/Analysis/DependenceAnalysis/Banerjee.ll b/llvm/test/Analysis/DependenceAnalysis/Banerjee.ll
index bc6de42..eb1a325 100644
--- a/llvm/test/Analysis/DependenceAnalysis/Banerjee.ll
+++ b/llvm/test/Analysis/DependenceAnalysis/Banerjee.ll
@@ -14,12 +14,12 @@
entry:
br label %for.cond1.preheader
-; CHECK: da analyze - output [= =|<]!
+; CHECK: da analyze - output [= =]!
; CHECK: da analyze - flow [<= <>]!
; CHECK: da analyze - confused!
-; CHECK: da analyze - input [= =|<]!
+; CHECK: da analyze - input [= =]!
; CHECK: da analyze - confused!
-; CHECK: da analyze - output [= =|<]!
+; CHECK: da analyze - output [= =]!
for.cond1.preheader: ; preds = %entry, %for.inc7
%B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc7 ]
@@ -65,12 +65,12 @@
%cmp4 = icmp sgt i64 %n, 0
br i1 %cmp4, label %for.cond1.preheader.preheader, label %for.end9
-; CHECK: da analyze - output [* *|<]!
+; CHECK: da analyze - output [* *]!
; CHECK: da analyze - flow [* <>]!
; CHECK: da analyze - confused!
-; CHECK: da analyze - input [* *|<]!
+; CHECK: da analyze - input [* *]!
; CHECK: da analyze - confused!
-; CHECK: da analyze - output [* *|<]!
+; CHECK: da analyze - output [* *]!
for.cond1.preheader.preheader: ; preds = %entry
%0 = add i64 %n, 1
@@ -131,12 +131,12 @@
entry:
br label %for.cond1.preheader
-; CHECK: da analyze - output [= =|<]!
+; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
-; CHECK: da analyze - input [= =|<]!
+; CHECK: da analyze - input [= =]!
; CHECK: da analyze - confused!
-; CHECK: da analyze - output [= =|<]!
+; CHECK: da analyze - output [= =]!
for.cond1.preheader: ; preds = %entry, %for.inc8
%B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc8 ]
@@ -181,12 +181,12 @@
entry:
br label %for.cond1.preheader
-; CHECK: da analyze - output [= =|<]!
+; CHECK: da analyze - output [= =]!
; CHECK: da analyze - flow [> >]!
; CHECK: da analyze - confused!
-; CHECK: da analyze - input [= =|<]!
+; CHECK: da analyze - input [= =]!
; CHECK: da analyze - confused!
-; CHECK: da analyze - output [= =|<]!
+; CHECK: da analyze - output [= =]!
for.cond1.preheader: ; preds = %entry, %for.inc8
%B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc8 ]
@@ -231,12 +231,12 @@
entry:
br label %for.cond1.preheader
-; CHECK: da analyze - output [= =|<]!
+; CHECK: da analyze - output [= =]!
; CHECK: da analyze - none!
; CHECK: da analyze - confused!
-; CHECK: da analyze - input [= =|<]!
+; CHECK: da analyze - input [= =]!
; CHECK: da analyze - confused!
-; CHECK: da analyze - output [= =|<]!
+; CHECK: da analyze - output [= =]!
for.cond1.preheader: ; preds = %entry, %for.inc7
%B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc7 ]
@@ -281,12 +281,12 @@
entry:
br label %for.cond1.preheader
-; CHECK: da analyze - output [= =|<]!
+; CHECK: da analyze - output [= =]!
; CHECK: da analyze - flow [< <]!
; CHECK: da analyze - confused!
-; CHECK: da analyze - input [= =|<]!
+; CHECK: da analyze - input [= =]!
; CHECK: da analyze - confused!
-; CHECK: da analyze - output [= =|<]!
+; CHECK: da analyze - output [= =]!
for.cond1.preheader: ; preds = %entry, %for.inc7
%B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc7 ]
@@ -331,12 +331,12 @@
entry:
br label %for.cond1.preheader
-; CHECK: da analyze - output [= =|<]!
+; CHECK: da analyze - output [= =]!
; CHECK: da analyze - flow [=> <>]!
; CHECK: da analyze - confused!
-; CHECK: da analyze - input [= =|<]!
+; CHECK: da analyze - input [= =]!
; CHECK: da analyze - confused!
-; CHECK: da analyze - output [= =|<]!
+; CHECK: da analyze - output [= =]!
for.cond1.preheader: ; preds = %entry, %for.inc8
%B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc8 ]
@@ -381,12 +381,12 @@
entry:
br label %for.cond1.preheader
-; CHECK: da analyze - output [= =|<]!
+; CHECK: da analyze - output [= =]!
; CHECK: da analyze - flow [> <=]!
; CHECK: da analyze - confused!
-; CHECK: da analyze - input [= =|<]!
+; CHECK: da analyze - input [= =]!
; CHECK: da analyze - confused!
-; CHECK: da analyze - output [= =|<]!
+; CHECK: da analyze - output [= =]!
for.cond1.preheader: ; preds = %entry, %for.inc8
%B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc8 ]
@@ -431,12 +431,12 @@
entry:
br label %for.cond1.preheader
-; CHECK: da analyze - output [= =|<]!
+; CHECK: da analyze - output [= =]!
; CHECK: da analyze - flow [> <>]!
; CHECK: da analyze - confused!
-; CHECK: da analyze - input [= =|<]!
+; CHECK: da analyze - input [= =]!
; CHECK: da analyze - confused!
-; CHECK: da analyze - output [= =|<]!
+; CHECK: da analyze - output [= =]!
for.cond1.preheader: ; preds = %entry, %for.inc8
%B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc8 ]
@@ -481,12 +481,12 @@
entry:
br label %for.cond1.preheader
-; CHECK: da analyze - output [* *|<]!
+; CHECK: da analyze - output [* *]!
; CHECK: da analyze - flow [<= =|<]!
; CHECK: da analyze - confused!
-; CHECK: da analyze - input [= =|<]!
+; CHECK: da analyze - input [= =]!
; CHECK: da analyze - confused!
-; CHECK: da analyze - output [= =|<]!
+; CHECK: da analyze - output [= =]!
for.cond1.preheader: ; preds = %entry, %for.inc8
%B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc8 ]
@@ -532,12 +532,12 @@
entry:
br label %for.cond1.preheader
-; CHECK: da analyze - output [= =|<]!
+; CHECK: da analyze - output [= =]!
; CHECK: da analyze - flow [<> =]!
; CHECK: da analyze - confused!
-; CHECK: da analyze - input [= =|<]!
+; CHECK: da analyze - input [= =]!
; CHECK: da analyze - confused!
-; CHECK: da analyze - output [= =|<]!
+; CHECK: da analyze - output [= =]!
for.cond1.preheader: ; preds = %entry, %for.inc7
%B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc7 ]
@@ -582,12 +582,12 @@
entry:
br label %for.cond1.preheader
-; CHECK: da analyze - output [= =|<]!
+; CHECK: da analyze - output [= =]!
; CHECK: da analyze - flow [<= <>]!
; CHECK: da analyze - confused!
-; CHECK: da analyze - input [= =|<]!
+; CHECK: da analyze - input [= =]!
; CHECK: da analyze - confused!
-; CHECK: da analyze - output [= =|<]!
+; CHECK: da analyze - output [= =]!
for.cond1.preheader: ; preds = %entry, %for.inc7
%B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc7 ]
@@ -632,12 +632,12 @@
entry:
br label %for.cond1.preheader
-; CHECK: da analyze - output [= =|<]!
+; CHECK: da analyze - output [= =]!
; CHECK: da analyze - flow [= <>]!
; CHECK: da analyze - confused!
-; CHECK: da analyze - input [= =|<]!
+; CHECK: da analyze - input [= =]!
; CHECK: da analyze - confused!
-; CHECK: da analyze - output [= =|<]!
+; CHECK: da analyze - output [= =]!
for.cond1.preheader: ; preds = %entry, %for.inc7
%B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc7 ]