64 lines · plain
1; RUN: opt %loadNPMPolly '-passes=polly-custom<scops>' -polly-print-scops -disable-output < %s 2>&1 | FileCheck %s2;3; CHECK: Reduction Type: NONE4;5; int c, d;6; void f(int *sum) {7; for (int i = 0; i < 1024; i++)8; *sum = c + d;9; }10;11target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64"12 13@c = common global i32 0, align 414@d = common global i32 0, align 415 16define void @loads_outside_scop(ptr %sum) {17entry:18 %tmp = load i32, ptr @c, align 419 %tmp1 = load i32, ptr @d, align 420 br label %for.cond21 22for.cond: ; preds = %for.inc, %entry23 %i.0 = phi i32 [ 0, %entry ], [ %inc, %for.inc ]24 %exitcond = icmp ne i32 %i.0, 102425 br i1 %exitcond, label %for.body, label %for.end26 27for.body: ; preds = %for.cond28 %add = add nsw i32 %tmp, %tmp129 store i32 %add, ptr %sum, align 430 br label %for.inc31 32for.inc: ; preds = %for.body33 %inc = add nsw i32 %i.0, 134 br label %for.cond35 36for.end: ; preds = %for.cond37 ret void38}39 40 41define void @binop_outside_scop(ptr %sum) {42entry:43 %tmp = load i32, ptr @c, align 444 %tmp1 = load i32, ptr @d, align 445 %add = add nsw i32 %tmp, %tmp146 br label %for.cond47 48for.cond: ; preds = %for.inc, %entry49 %i.0 = phi i32 [ 0, %entry ], [ %inc, %for.inc ]50 %exitcond = icmp ne i32 %i.0, 102451 br i1 %exitcond, label %for.body, label %for.end52 53for.body: ; preds = %for.cond54 store i32 %add, ptr %sum, align 455 br label %for.inc56 57for.inc: ; preds = %for.body58 %inc = add nsw i32 %i.0, 159 br label %for.cond60 61for.end: ; preds = %for.cond62 ret void63}64