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