diff --git a/llvm/test/Analysis/DependenceAnalysis/Banerjee.ll b/llvm/test/Analysis/DependenceAnalysis/Banerjee.ll index 09e8fd29dcc4..5c17064f7e89 100644 --- a/llvm/test/Analysis/DependenceAnalysis/Banerjee.ll +++ b/llvm/test/Analysis/DependenceAnalysis/Banerjee.ll @@ -1,4 +1,5 @@ -; RUN: opt < %s -analyze -basicaa -da | FileCheck %s +; RUN: opt < %s -analyze -basicaa -da -da-delinearize=false | FileCheck %s +; RUN: opt < %s -analyze -basicaa -da -da-delinearize | FileCheck %s -check-prefix=DELIN ; ModuleID = 'Banerjee.bc' target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128" @@ -21,6 +22,14 @@ entry: ; CHECK: da analyze - confused! ; CHECK: da analyze - none! +; DELIN: 'Dependence Analysis' for function 'banerjee0': +; DELIN: da analyze - none! +; DELIN: da analyze - consistent flow [0 1]! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! + for.cond1.preheader: ; preds = %entry, %for.inc7 %B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc7 ] %i.03 = phi i64 [ 1, %entry ], [ %inc8, %for.inc7 ] @@ -73,6 +82,14 @@ entry: ; CHECK: da analyze - confused! ; CHECK: da analyze - output [* *]! +; DELIN: 'Dependence Analysis' for function 'banerjee1': +; DELIN: da analyze - none +; DELIN: da analyze - consistent flow [0 1]! +; DELIN: da analyze - confused! +; DELIN: da analyze - none +; DELIN: da analyze - confused! +; DELIN: da analyze - output [* *]! + for.cond1.preheader.preheader: ; preds = %entry %0 = add i64 %n, 1 br label %for.cond1.preheader @@ -140,6 +157,14 @@ entry: ; CHECK: da analyze - confused! ; CHECK: da analyze - none! +; DELIN: 'Dependence Analysis' for function 'banerjee2': +; DELIN: da analyze - none! +; DELIN: da analyze - none! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! + for.cond1.preheader: ; preds = %entry, %for.inc8 %B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc8 ] %i.03 = phi i64 [ 0, %entry ], [ %inc9, %for.inc8 ] @@ -191,6 +216,14 @@ entry: ; CHECK: da analyze - confused! ; CHECK: da analyze - none! +; DELIN: 'Dependence Analysis' for function 'banerjee3': +; DELIN: da analyze - none! +; DELIN: da analyze - consistent flow [-9 -9]! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! + for.cond1.preheader: ; preds = %entry, %for.inc8 %B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc8 ] %i.03 = phi i64 [ 0, %entry ], [ %inc9, %for.inc8 ] @@ -242,6 +275,14 @@ entry: ; CHECK: da analyze - confused! ; CHECK: da analyze - none! +; DELIN: 'Dependence Analysis' for function 'banerjee4': +; DELIN: da analyze - none! +; DELIN: da analyze - none! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! + for.cond1.preheader: ; preds = %entry, %for.inc7 %B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc7 ] %i.03 = phi i64 [ 0, %entry ], [ %inc8, %for.inc7 ] @@ -293,6 +334,14 @@ entry: ; CHECK: da analyze - confused! ; CHECK: da analyze - none! +; DELIN: 'Dependence Analysis' for function 'banerjee5': +; DELIN: da analyze - none! +; DELIN: da analyze - consistent flow [9 9]! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! + for.cond1.preheader: ; preds = %entry, %for.inc7 %B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc7 ] %i.03 = phi i64 [ 0, %entry ], [ %inc8, %for.inc7 ] @@ -344,6 +393,14 @@ entry: ; CHECK: da analyze - confused! ; CHECK: da analyze - none! +; DELIN: 'Dependence Analysis' for function 'banerjee6': +; DELIN: da analyze - none! +; DELIN: da analyze - consistent flow [0 -9]! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! + for.cond1.preheader: ; preds = %entry, %for.inc8 %B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc8 ] %i.03 = phi i64 [ 0, %entry ], [ %inc9, %for.inc8 ] @@ -395,6 +452,14 @@ entry: ; CHECK: da analyze - confused! ; CHECK: da analyze - none! +; DELIN: 'Dependence Analysis' for function 'banerjee7': +; DELIN: da analyze - none! +; DELIN: da analyze - consistent flow [-1 0]! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! + for.cond1.preheader: ; preds = %entry, %for.inc8 %B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc8 ] %i.03 = phi i64 [ 0, %entry ], [ %inc9, %for.inc8 ] @@ -446,6 +511,14 @@ entry: ; CHECK: da analyze - confused! ; CHECK: da analyze - none! +; DELIN: 'Dependence Analysis' for function 'banerjee8': +; DELIN: da analyze - none! +; DELIN: da analyze - consistent flow [-1 -1]! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! + for.cond1.preheader: ; preds = %entry, %for.inc8 %B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc8 ] %i.03 = phi i64 [ 0, %entry ], [ %inc9, %for.inc8 ] @@ -497,6 +570,14 @@ entry: ; CHECK: da analyze - confused! ; CHECK: da analyze - none! +; DELIN: 'Dependence Analysis' for function 'banerjee9': +; DELIN: da analyze - none! +; DELIN: da analyze - flow [<= =|<]! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! + for.cond1.preheader: ; preds = %entry, %for.inc8 %B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc8 ] %i.03 = phi i64 [ 0, %entry ], [ %inc9, %for.inc8 ] @@ -549,6 +630,14 @@ entry: ; CHECK: da analyze - confused! ; CHECK: da analyze - none! +; DELIN: 'Dependence Analysis' for function 'banerjee10': +; DELIN: da analyze - none! +; DELIN: da analyze - flow [<> =]! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! + for.cond1.preheader: ; preds = %entry, %for.inc7 %B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc7 ] %i.03 = phi i64 [ 0, %entry ], [ %inc8, %for.inc7 ] @@ -600,6 +689,14 @@ entry: ; CHECK: da analyze - confused! ; CHECK: da analyze - none! +; DELIN: 'Dependence Analysis' for function 'banerjee11': +; DELIN: da analyze - none! +; DELIN: da analyze - flow [<= <>]! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! + for.cond1.preheader: ; preds = %entry, %for.inc7 %B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc7 ] %i.03 = phi i64 [ 0, %entry ], [ %inc8, %for.inc7 ] @@ -651,6 +748,14 @@ entry: ; CHECK: da analyze - confused! ; CHECK: da analyze - none! +; DELIN: 'Dependence Analysis' for function 'banerjee12': +; DELIN: da analyze - none! +; DELIN: da analyze - consistent flow [0 -11]! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! + for.cond1.preheader: ; preds = %entry, %for.inc7 %B.addr.04 = phi i64* [ %B, %entry ], [ %scevgep, %for.inc7 ] %i.03 = phi i64 [ 0, %entry ], [ %inc8, %for.inc7 ] diff --git a/llvm/test/Analysis/DependenceAnalysis/GCD.ll b/llvm/test/Analysis/DependenceAnalysis/GCD.ll index bb31d118857d..7efa8b50190f 100644 --- a/llvm/test/Analysis/DependenceAnalysis/GCD.ll +++ b/llvm/test/Analysis/DependenceAnalysis/GCD.ll @@ -1,4 +1,5 @@ -; RUN: opt < %s -analyze -basicaa -da | FileCheck %s +; RUN: opt < %s -analyze -basicaa -da -da-delinearize=false | FileCheck %s +; RUN: opt < %s -analyze -basicaa -da -da-delinearize | FileCheck %s -check-prefix=DELIN ; ModuleID = 'GCD.bc' target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128" @@ -22,6 +23,14 @@ entry: ; CHECK: da analyze - confused! ; CHECK: da analyze - none! +; DELIN: 'Dependence Analysis' for function 'gcd0' +; DELIN: da analyze - none! +; DELIN: da analyze - flow [=> *|<]! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! + for.cond1.preheader: ; preds = %entry, %for.inc8 %B.addr.04 = phi i32* [ %B, %entry ], [ %scevgep, %for.inc8 ] %i.03 = phi i64 [ 0, %entry ], [ %inc9, %for.inc8 ] @@ -75,6 +84,14 @@ entry: ; CHECK: da analyze - confused! ; CHECK: da analyze - none! +; DELIN: 'Dependence Analysis' for function 'gcd1' +; DELIN: da analyze - none! +; DELIN: da analyze - none! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! + for.cond1.preheader: ; preds = %entry, %for.inc9 %B.addr.04 = phi i32* [ %B, %entry ], [ %scevgep, %for.inc9 ] %i.03 = phi i64 [ 0, %entry ], [ %inc10, %for.inc9 ] @@ -129,6 +146,14 @@ entry: ; CHECK: da analyze - confused! ; CHECK: da analyze - none! +; DELIN: 'Dependence Analysis' for function 'gcd2' +; DELIN: da analyze - none! +; DELIN: da analyze - none! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! + for.cond1.preheader: ; preds = %entry, %for.inc9 %B.addr.04 = phi i32* [ %B, %entry ], [ %scevgep, %for.inc9 ] %i.03 = phi i64 [ 0, %entry ], [ %inc10, %for.inc9 ] @@ -183,6 +208,14 @@ entry: ; CHECK: da analyze - confused! ; CHECK: da analyze - none! +; DELIN: 'Dependence Analysis' for function 'gcd3' +; DELIN: da analyze - output [* *]! +; DELIN: da analyze - flow [<> *]! +; DELIN: da analyze - confused! +; DELIN: da analyze - input [* *]! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! + for.cond1.preheader: ; preds = %entry, %for.inc7 %B.addr.04 = phi i32* [ %B, %entry ], [ %scevgep, %for.inc7 ] %i.03 = phi i64 [ 0, %entry ], [ %inc8, %for.inc7 ] @@ -235,6 +268,14 @@ entry: ; CHECK: da analyze - confused! ; CHECK: da analyze - none! +; DELIN: 'Dependence Analysis' for function 'gcd4' +; DELIN: da analyze - output [* *]! +; DELIN: da analyze - none! +; DELIN: da analyze - confused! +; DELIN: da analyze - input [* *]! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! + for.cond1.preheader: ; preds = %entry, %for.inc17 %B.addr.04 = phi i32* [ %B, %entry ], [ %scevgep, %for.inc17 ] %i.03 = phi i64 [ 0, %entry ], [ %inc18, %for.inc17 ] @@ -297,6 +338,14 @@ entry: ; CHECK: da analyze - confused! ; CHECK: da analyze - none! +; DELIN: 'Dependence Analysis' for function 'gcd5' +; DELIN: da analyze - output [* *]! +; DELIN: da analyze - flow [<> *]! +; DELIN: da analyze - confused! +; DELIN: da analyze - input [* *]! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! + for.cond1.preheader: ; preds = %entry, %for.inc17 %B.addr.04 = phi i32* [ %B, %entry ], [ %scevgep, %for.inc17 ] %i.03 = phi i64 [ 0, %entry ], [ %inc18, %for.inc17 ] @@ -360,6 +409,14 @@ entry: ; CHECK: da analyze - confused! ; CHECK: da analyze - output [* *]! +; DELIN: 'Dependence Analysis' for function 'gcd6' +; DELIN: da analyze - none! +; DELIN: da analyze - none! +; DELIN: da analyze - confused! +; DELIN: da analyze - none! +; DELIN: da analyze - confused! +; DELIN: da analyze - output [* *]! + for.cond1.preheader.preheader: ; preds = %entry br label %for.cond1.preheader @@ -432,6 +489,14 @@ entry: ; CHECK: da analyze - confused! ; CHECK: da analyze - output [* *]! +; DELIN: 'Dependence Analysis' for function 'gcd7' +; DELIN: da analyze - output [* *]! +; DELIN: da analyze - flow [* *|<]! +; DELIN: da analyze - confused! +; DELIN: da analyze - input [* *]! +; DELIN: da analyze - confused! +; DELIN: da analyze - output [* *]! + for.cond1.preheader.preheader: ; preds = %entry br label %for.cond1.preheader @@ -516,6 +581,14 @@ entry: ; CHECK: da analyze - confused! ; CHECK: da analyze - output [* *]! +; DELIN: 'Dependence Analysis' for function 'gcd8' +; DELIN: da analyze - output [* *]! +; DELIN: da analyze - none! +; DELIN: da analyze - confused! +; DELIN: da analyze - input [* *]! +; DELIN: da analyze - confused! +; DELIN: da analyze - output [* *]! + for.cond1.preheader.preheader: ; preds = %entry br label %for.cond1.preheader @@ -595,6 +668,14 @@ entry: ; CHECK: da analyze - confused! ; CHECK: da analyze - output [* *]! +; DELIN: 'Dependence Analysis' for function 'gcd9' +; DELIN: da analyze - output [* *]! +; DELIN: da analyze - flow [* *|<]! +; DELIN: da analyze - confused! +; DELIN: da analyze - input [* *]! +; DELIN: da analyze - confused! +; DELIN: da analyze - output [* *]! + for.cond1.preheader.preheader: ; preds = %entry br label %for.cond1.preheader