xref: /llvm-project/polly/test/ScopInfo/reduction_simple_w_constant.ll (revision e1f056f692d869708c1898d9d65a69ac5584a0ed)
1; RUN: opt %loadNPMPolly '-passes=print<polly-function-scops>' -disable-output < %s 2>&1 | FileCheck %s
2;
3; CHECK: Reduction Type: +
4;
5; void f(int *sum) {
6;   for (int i = 0; i <= 100; i++)
7;     sum += 3;
8; }
9target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64"
10
11define void @f(ptr %sum) {
12entry:
13  br label %for.cond
14
15for.cond:                                         ; preds = %for.cond, %entry
16  %i1.0 = phi i32 [ 0, %entry ], [ %inc, %for.cond ]
17  %sum.reload = load i32, ptr %sum
18  %add = add nsw i32 %sum.reload, 3
19  %inc = add nsw i32 %i1.0, 1
20  store i32 %add, ptr %sum
21  %cmp = icmp slt i32 %i1.0, 100
22  br i1 %cmp, label %for.cond, label %for.end
23
24for.end:                                          ; preds = %for.cond
25  ret void
26}
27