brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.0 KiB · 34a6f48 Raw
39 lines · plain
1; RUN: opt %loadNPMPolly -polly-pragma-based-opts=1 '-passes=polly-custom<opt-isl>' -polly-print-opt-isl -disable-output < %s | FileCheck %s --match-full-lines2; RUN: opt %loadNPMPolly -polly-pragma-based-opts=0 '-passes=polly-custom<opt-isl>' -polly-print-opt-isl -disable-output < %s | FileCheck %s --match-full-lines3;4; Unrolling with heuristic factor.5; Currently not supported and expected to be handled by LLVM's unroll pass.6;7define void @func(i32 %n, ptr noalias nonnull %A) {8entry:9  br label %for10 11for:12  %j = phi i32 [0, %entry], [%j.inc, %inc]13  %j.cmp = icmp slt i32 %j, %n14  br i1 %j.cmp, label %body, label %exit15 16    body:17      store double 42.0, ptr %A18      br label %inc19 20inc:21  %j.inc = add nuw nsw i32 %j, 122  br label %for, !llvm.loop !223 24exit:25  br label %return26 27return:28  ret void29}30 31 32!2 = distinct !{!2, !4}33!4 = !{!"llvm.loop.unroll.enable", i1 true}34 35 36; CHECK-LABEL: Printing analysis 'Polly - Optimize schedule of SCoP' for region: 'for => return' in function 'func':37; CHECK-NEXT:  Calculated schedule:38; CHECK-NEXT:    n/a39