Changeset View
Changeset View
Standalone View
Standalone View
test/Analysis/DependenceAnalysis/Separability.ll
Show All 13 Lines | |||||
define void @sep0([100 x [100 x i32]]* %A, i32* %B, i32 %n) nounwind uwtable ssp { | define void @sep0([100 x [100 x i32]]* %A, i32* %B, i32 %n) nounwind uwtable ssp { | ||||
entry: | entry: | ||||
br label %for.cond1.preheader | br label %for.cond1.preheader | ||||
; CHECK: da analyze - output [= * * S]! | ; CHECK: da analyze - output [= * * S]! | ||||
; CHECK: da analyze - flow [* * * *|<]! | ; CHECK: da analyze - flow [* * * *|<]! | ||||
; CHECK: da analyze - confused! | ; CHECK: da analyze - confused! | ||||
; CHECK: da analyze - input [* * S *]! | ; CHECK: da analyze - none! | ||||
; CHECK: da analyze - confused! | ; CHECK: da analyze - confused! | ||||
; CHECK: da analyze - none! | ; CHECK: da analyze - none! | ||||
for.cond1.preheader: ; preds = %entry, %for.inc22 | for.cond1.preheader: ; preds = %entry, %for.inc22 | ||||
%B.addr.08 = phi i32* [ %B, %entry ], [ %scevgep11, %for.inc22 ] | %B.addr.08 = phi i32* [ %B, %entry ], [ %scevgep11, %for.inc22 ] | ||||
%i.07 = phi i64 [ 0, %entry ], [ %inc23, %for.inc22 ] | %i.07 = phi i64 [ 0, %entry ], [ %inc23, %for.inc22 ] | ||||
br label %for.cond4.preheader | br label %for.cond4.preheader | ||||
▲ Show 20 Lines • Show All 58 Lines • ▼ Show 20 Lines | |||||
define void @sep1([100 x [100 x i32]]* %A, i32* %B, i32 %n) nounwind uwtable ssp { | define void @sep1([100 x [100 x i32]]* %A, i32* %B, i32 %n) nounwind uwtable ssp { | ||||
entry: | entry: | ||||
br label %for.cond1.preheader | br label %for.cond1.preheader | ||||
; CHECK: da analyze - output [= * * S]! | ; CHECK: da analyze - output [= * * S]! | ||||
; CHECK: da analyze - flow [* * * *|<]! | ; CHECK: da analyze - flow [* * * *|<]! | ||||
; CHECK: da analyze - confused! | ; CHECK: da analyze - confused! | ||||
; CHECK: da analyze - input [* * S *]! | ; CHECK: da analyze - none! | ||||
; CHECK: da analyze - confused! | ; CHECK: da analyze - confused! | ||||
; CHECK: da analyze - none! | ; CHECK: da analyze - none! | ||||
for.cond1.preheader: ; preds = %entry, %for.inc22 | for.cond1.preheader: ; preds = %entry, %for.inc22 | ||||
%B.addr.08 = phi i32* [ %B, %entry ], [ %scevgep11, %for.inc22 ] | %B.addr.08 = phi i32* [ %B, %entry ], [ %scevgep11, %for.inc22 ] | ||||
%i.07 = phi i64 [ 0, %entry ], [ %inc23, %for.inc22 ] | %i.07 = phi i64 [ 0, %entry ], [ %inc23, %for.inc22 ] | ||||
br label %for.cond4.preheader | br label %for.cond4.preheader | ||||
▲ Show 20 Lines • Show All 54 Lines • ▼ Show 20 Lines | |||||
;; for (long int l = 0; l < 50; l++) { | ;; for (long int l = 0; l < 50; l++) { | ||||
;; A[i][i][i + k][l] = i; | ;; A[i][i][i + k][l] = i; | ||||
;; *B++ = A[10][i + 10][j + k][l + 10]; | ;; *B++ = A[10][i + 10][j + k][l + 10]; | ||||
define void @sep2([100 x [100 x [100 x i32]]]* %A, i32* %B, i32 %n) nounwind uwtable ssp { | define void @sep2([100 x [100 x [100 x i32]]]* %A, i32* %B, i32 %n) nounwind uwtable ssp { | ||||
entry: | entry: | ||||
br label %for.cond1.preheader | br label %for.cond1.preheader | ||||
; CHECK: da analyze - output [= S = =]! | ; CHECK: da analyze - none! | ||||
; CHECK: da analyze - flow [* * * <>]! | ; CHECK: da analyze - flow [* * * <>]! | ||||
; CHECK: da analyze - confused! | ; CHECK: da analyze - confused! | ||||
; CHECK: da analyze - input [= * * *]! | ; CHECK: da analyze - none! | ||||
; CHECK: da analyze - confused! | ; CHECK: da analyze - confused! | ||||
; CHECK: da analyze - none! | ; CHECK: da analyze - none! | ||||
for.cond1.preheader: ; preds = %entry, %for.inc26 | for.cond1.preheader: ; preds = %entry, %for.inc26 | ||||
%B.addr.08 = phi i32* [ %B, %entry ], [ %scevgep11, %for.inc26 ] | %B.addr.08 = phi i32* [ %B, %entry ], [ %scevgep11, %for.inc26 ] | ||||
%i.07 = phi i64 [ 0, %entry ], [ %inc27, %for.inc26 ] | %i.07 = phi i64 [ 0, %entry ], [ %inc27, %for.inc26 ] | ||||
br label %for.cond4.preheader | br label %for.cond4.preheader | ||||
▲ Show 20 Lines • Show All 54 Lines • ▼ Show 20 Lines | |||||
;; for (long int l = 0; l < 50; l++) { | ;; for (long int l = 0; l < 50; l++) { | ||||
;; A[i][i][i + k][l + k] = i; | ;; A[i][i][i + k][l + k] = i; | ||||
;; *B++ = A[10][i + 10][j + k][l + 10]; | ;; *B++ = A[10][i + 10][j + k][l + 10]; | ||||
define void @sep3([100 x [100 x [100 x i32]]]* %A, i32* %B, i32 %n) nounwind uwtable ssp { | define void @sep3([100 x [100 x [100 x i32]]]* %A, i32* %B, i32 %n) nounwind uwtable ssp { | ||||
entry: | entry: | ||||
br label %for.cond1.preheader | br label %for.cond1.preheader | ||||
; CHECK: da analyze - output [= S = =]! | ; CHECK: da analyze - none! | ||||
; CHECK: da analyze - flow [* * * *|<]! | ; CHECK: da analyze - flow [* * * *|<]! | ||||
; CHECK: da analyze - confused! | ; CHECK: da analyze - confused! | ||||
; CHECK: da analyze - input [= * * *]! | ; CHECK: da analyze - none! | ||||
; CHECK: da analyze - confused! | ; CHECK: da analyze - confused! | ||||
; CHECK: da analyze - none! | ; CHECK: da analyze - none! | ||||
for.cond1.preheader: ; preds = %entry, %for.inc27 | for.cond1.preheader: ; preds = %entry, %for.inc27 | ||||
%B.addr.08 = phi i32* [ %B, %entry ], [ %scevgep11, %for.inc27 ] | %B.addr.08 = phi i32* [ %B, %entry ], [ %scevgep11, %for.inc27 ] | ||||
%i.07 = phi i64 [ 0, %entry ], [ %inc28, %for.inc27 ] | %i.07 = phi i64 [ 0, %entry ], [ %inc28, %for.inc27 ] | ||||
br label %for.cond4.preheader | br label %for.cond4.preheader | ||||
▲ Show 20 Lines • Show All 50 Lines • Show Last 20 Lines |