• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1; RUN: opt %loadPolly -polly-scops -analyze < %s | FileCheck %s
2;
3; Check that we do no introduce a parameter here that is actually not needed.
4;
5; CHECK:      Region: %for.body58---%land.lhs.true
6; CHECK-NEXT:     Max Loop Depth:  0
7; CHECK-NEXT:     Invariant Accesses: {
8; CHECK-NEXT:     }
9; CHECK-NEXT:     Context:
10; CHECK-NEXT:     {  :  }
11; CHECK-NEXT:     Assumed Context:
12; CHECK-NEXT:     {  :  }
13; CHECK-NEXT:     Invalid Context:
14; CHECK-NEXT:     {  : false }
15; CHECK-NEXT:     Arrays {
16; CHECK-NEXT:         i32* MemRef_team2_0_in; // Element size 8
17; CHECK-NEXT:     }
18; CHECK-NEXT:     Arrays (Bounds as pw_affs) {
19; CHECK-NEXT:         i32* MemRef_team2_0_in; // Element size 8
20; CHECK-NEXT:     }
21; CHECK-NEXT:     Alias Groups (0):
22; CHECK-NEXT:         n/a
23; CHECK-NEXT:     Statements {
24; CHECK-NEXT:     	Stmt_if_then60
25; CHECK-NEXT:             Domain :=
26; CHECK-NEXT:                 { Stmt_if_then60[] };
27; CHECK-NEXT:             Schedule :=
28; CHECK-NEXT:                 { Stmt_if_then60[] -> [] };
29; CHECK-NEXT:             MustWriteAccess :=	[Reduction Type: NONE] [Scalar: 1]
30; CHECK-NEXT:                 { Stmt_if_then60[] -> MemRef_team2_0_in[] };
31; CHECK-NEXT:     }
32target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
33
34@sched = external global [18 x [15 x [3 x i32]]], align 16
35
36; Function Attrs: nounwind uwtable
37define void @common() #0 {
38entry:
39  br label %for.body36
40
41for.body36:                                       ; preds = %entry
42  br label %for.cond56.preheader
43
44for.cond56.preheader:                             ; preds = %for.inc158, %for.body36
45  %indvars.iv78 = phi i64 [ 0, %for.inc158 ], [ 1, %for.body36 ]
46  br label %for.body58
47
48for.body58:                                       ; preds = %for.cond56.preheader
49  %cmp59 = icmp eq i32 1, 1
50  br i1 %cmp59, label %if.then60, label %if.else71
51
52if.then60:                                        ; preds = %for.body58
53  %arrayidx70 = getelementptr inbounds [18 x [15 x [3 x i32]]], [18 x [15 x [3 x i32]]]* @sched, i64 0, i64 1, i64 %indvars.iv78, i64 1
54  br label %land.lhs.true
55
56if.else71:                                        ; preds = %for.body58
57  br label %land.lhs.true
58
59land.lhs.true:                                    ; preds = %if.else71, %if.then60
60  %team2.0.in = phi i32* [ %arrayidx70, %if.then60 ], [ undef, %if.else71 ]
61  br i1 undef, label %for.inc158, label %if.then86
62
63if.then86:                                        ; preds = %land.lhs.true
64  unreachable
65
66for.inc158:                                       ; preds = %land.lhs.true
67  br label %for.cond56.preheader
68}
69