; RUN: opt %loadPolly -polly-detect-unprofitable -polly-dependences -analyze < %s | FileCheck %s
;
; CHECK:      RAW dependences:
; CHECK-DAG:    Stmt_S0[] -> Stmt_S1[o0] : N >= 11 and o0 <= 1023 and o0 >= 0
; CHECK-DAG:    Stmt_S1[i0] -> Stmt_S2[] : N >= 11 and i0 <= 1023 and i0 >= 0
; CHECK:      WAR dependences:
; CHECK:       [N] -> {  }
; CHECK:      WAW dependences:
; CHECK-DAG:    Stmt_S0[] -> Stmt_S1[o0] : N >= 11 and o0 <= 1023 and o0 >= 0
; CHECK-DAG:    Stmt_S1[i0] -> Stmt_S2[] : N >= 11 and i0 <= 1023 and i0 >= 0
; CHECK:   Reduction dependences:
; CHECK:        Stmt_S1[i0] -> Stmt_S1[1 + i0] : N >= 11 and i0 <= 1022 and i0 >= 0
;
;    void f(int *sum, int N) {
;      if (N >= 10) {
; S0:    *sum = 0;
;        for (int i = 0; i < 1024; i++)
; S1:      *sum += i;
; S2:    *sum = *sum * 3;
;      }
;    }
target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64"

define void @f(i32* %sum, i32 %N) {
entry:
  br label %entry.1

entry.1:
  %excond = icmp sgt i32 %N, 10
  br i1 %excond, label %S0, label %f.end

S0:
  store i32 0, i32* %sum, align 4
  br label %for.cond

for.cond:                                         ; preds = %for.inc, %S0
  %i.0 = phi i32 [ 0, %S0 ], [ %inc, %for.inc ]
  %exitcond = icmp ne i32 %i.0, 1024
  br i1 %exitcond, label %S1, label %S2

S1:                                               ; preds = %for.cond
  %tmp = load i32, i32* %sum, align 4
  %add = add nsw i32 %tmp, %i.0
  store i32 %add, i32* %sum, align 4
  br label %for.inc

for.inc:                                          ; preds = %S1
  %inc = add nsw i32 %i.0, 1
  br label %for.cond

S2:                                               ; preds = %for.cond
  %tmp1 = load i32, i32* %sum, align 4
  %mul = mul nsw i32 %tmp1, 3
  store i32 %mul, i32* %sum, align 4
  br label %f.end

f.end:
  ret void
}
