brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.8 KiB · f4f3504 Raw
101 lines · plain
1; RUN: opt %loadNPMPolly -polly-only-func=f,g '-passes=polly-custom<scops>' -polly-print-scops -disable-output < %s 2>&1 | FileCheck %s2;3; Check that the flag `-polly-only-func` limits analysis to `f` and `g`.4;5; CHECK:      Function: f6; CHECK-NEXT:    Region: %for.cond---%for.end7;8; CHECK:      Function: g9; CHECK-NEXT:    Region: %for.cond---%for.end10;11; CHECK-NOT:      Function: h12;13; void f(int* sum) {14;   for (int i = 0; i <= 100; i++)15;     sum += i * 3;16; }17; void g(int* sum) {18;   for (int i = 0; i <= 100; i++)19;     sum += i * 3;20; }21; void h(int* sum) {22;   for (int i = 0; i <= 100; i++)23;     sum += i * 3;24; }25target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64"26 27define void @f(ptr %sum) {28entry:29  br label %entry.split130 31entry.split1:                                     ; preds = %entry32  br label %entry.split33 34entry.split:                                      ; preds = %entry.split135  br label %for.cond36 37for.cond:                                         ; preds = %for.cond, %entry.split38  %i1.0 = phi i32 [ 0, %entry.split ], [ %inc, %for.cond ]39  %sum.reload = load i32, ptr %sum40  %mul = mul nsw i32 %i1.0, 341  %add = add nsw i32 %sum.reload, %mul42  %inc = add nsw i32 %i1.0, 143  store i32 %add, ptr %sum44  %cmp = icmp slt i32 %i1.0, 10045  br i1 %cmp, label %for.cond, label %for.end46 47for.end:                                          ; preds = %for.cond48  ret void49}50 51 52define void @g(ptr %sum) {53entry:54  br label %entry.split155 56entry.split1:                                     ; preds = %entry57  br label %entry.split58 59entry.split:                                      ; preds = %entry.split160  br label %for.cond61 62for.cond:                                         ; preds = %for.cond, %entry.split63  %i1.0 = phi i32 [ 0, %entry.split ], [ %inc, %for.cond ]64  %sum.reload = load i32, ptr %sum65  %mul = mul nsw i32 %i1.0, 366  %add = add nsw i32 %sum.reload, %mul67  %inc = add nsw i32 %i1.0, 168  store i32 %add, ptr %sum69  %cmp = icmp slt i32 %i1.0, 10070  br i1 %cmp, label %for.cond, label %for.end71 72for.end:                                          ; preds = %for.cond73  ret void74}75 76 77define void @h(ptr %sum) {78entry:79  br label %entry.split180 81entry.split1:                                     ; preds = %entry82  br label %entry.split83 84entry.split:                                      ; preds = %entry.split185  br label %for.cond86 87for.cond:                                         ; preds = %for.cond, %entry.split88  %i1.0 = phi i32 [ 0, %entry.split ], [ %inc, %for.cond ]89  %sum.reload = load i32, ptr %sum90  %mul = mul nsw i32 %i1.0, 391  %add = add nsw i32 %sum.reload, %mul92  %inc = add nsw i32 %i1.0, 193  store i32 %add, ptr %sum94  %cmp = icmp slt i32 %i1.0, 10095  br i1 %cmp, label %for.cond, label %for.end96 97for.end:                                          ; preds = %for.cond98  ret void99}100 101