brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1021 B · 3a2dede Raw
46 lines · plain
1; RUN: opt %loadNPMPolly '-passes=polly-custom<delicm>' -polly-print-delicm -pass-remarks-missed=polly-delicm -disable-output < %s 2>&1 | FileCheck %s2;3;    void func(double *A) {4;      double phi = 0.0;5;      for (int i = 0; i < 4; i += 1) /* reduction */6;        phi += 4.2;7;      A[0] = phi;8;    }9;10define void @func(ptr noalias nonnull %A) {11entry:12  br label %reduction.preheader13 14  reduction.preheader:15    br label %reduction.for16 17  reduction.for:18    %i = phi i32 [0, %reduction.preheader], [%i.inc, %reduction.inc]19    %phi = phi double [0.0, %reduction.preheader], [%add, %reduction.inc]20    %i.cmp = icmp slt i32 %i, 421    br i1 %i.cmp, label %body, label %reduction.exit22 23 24 25      body:26        %add = fadd double %phi, 4.227        br label %reduction.inc28 29 30 31  reduction.inc:32    %i.inc = add nuw nsw i32 %i, 133    br label %reduction.for34 35  reduction.exit:36    store double %phi, ptr %A37    br label %return38 39 40return:41  ret void42}43 44 45; CHECK: skipped possible mapping target because it is not in a loop46