1; RUN: opt %loadPolly -polly-detect -analyze < %s | FileCheck %s 2 3target 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" 4 5define void @remove_all_children(i32* %eclass) { 6entry: 7 br label %while.body 8 9while.cond.loopexit: ; preds = %while.body50, %while.end44 10 fence seq_cst 11 br label %while.cond.backedge 12 13while.body: ; preds = %while.cond.backedge, %entry 14 br label %if.end33 15 16while.cond.backedge: ; preds = %while.end30, %while.cond.loopexit 17 br i1 false, label %while.body, label %while.end60 18 19if.end33: ; preds = %while.end30 20 br i1 false, label %while.body36, label %while.end44 21 22while.body36: ; preds = %while.body36, %while.body36.lr.ph 23 %indvar77 = phi i64 [ 0, %if.end33 ], [ %indvar.next78, %while.body36 ] 24 %arrayidx40 = getelementptr i32, i32* %eclass, i64 0 25 %indvar.next78 = add i64 %indvar77, 1 26 br i1 false, label %while.body36, label %while.end44 27 28while.end44: ; preds = %while.body36, %if.end33 29 br i1 false, label %while.body50, label %while.cond.loopexit 30 31while.body50: ; preds = %while.body50, %while.body50.lr.ph 32 %indvar79 = phi i64 [ 0, %while.end44 ], [ %indvar.next80, %while.body50 ] 33 %arrayidx55 = getelementptr i32, i32* %eclass, i64 0 34 store i32 0, i32* %arrayidx55, align 4 35 %indvar.next80 = add i64 %indvar79, 1 36 br i1 false, label %while.body50, label %while.cond.loopexit 37 38while.end60: ; preds = %while.cond.backedge 39 ret void 40} 41; remove_all_children 42; CHECK-NOT: Valid Region 43; CHECK: Valid Region for Scop: if.end33 => while.cond.loopexit 44; CHECK-NOT: Valid Region 45