1 ; RUN: opt %loadNPMPolly '-passes=print<polly-detect>' -disable-output < %s 2>&1 | FileCheck %s
3 ; Check that we will recognize this SCoP.
5 ; void f(int *A, long N) {
17 ; CHECK: Valid Region for Scop: bb1 => bb0
19 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
21 define void @f(ptr %A, i64 %N) {
26 %j = phi i64 [ %j.next, %bb1 ], [ 1, %bb ]
27 %tmp = load i32, ptr %A, align 4
28 %exitcond0 = icmp sgt i64 %N, %j
29 %j.next = add nuw nsw i64 %j, 1
30 br i1 %exitcond0, label %bb1, label %bb13
32 bb1: ; preds = %bb7, %bb0
33 %i = phi i64 [ %i.next, %bb1 ], [ 1, %bb0 ]
34 %.0 = phi ptr [ %A, %bb0 ], [ %tmp12, %bb1 ]
35 %tmp8 = sext i32 %tmp to i64
36 %tmp9 = getelementptr inbounds i32, ptr %.0, i64 %tmp8
37 store i32 42, ptr %tmp9, align 4
38 %tmp11 = sext i32 %tmp to i64
39 %tmp12 = getelementptr inbounds i32, ptr %.0, i64 %tmp11
40 %i.next = add nuw nsw i64 %i, 1
41 %exitcond = icmp ne i64 %i, %N
42 br i1 %exitcond, label %bb1, label %bb0