[RISCV] Use vcompress in deinterleave2 intrinsic lowering (#118325)
[llvm-project.git] / polly / test / DeLICM / skip_notinloop.ll
blob8e265e19aefea69166ef4708d2840db9e3f94438
1 ; RUN: opt %loadNPMPolly '-passes=print<polly-delicm>' -pass-remarks-missed=polly-delicm -disable-output < %s 2>&1 | FileCheck %s
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 ;    }
10 define void @func(ptr noalias nonnull %A) {
11 entry:
12   br label %reduction.preheader
14   reduction.preheader:
15     br label %reduction.for
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, 4
21     br i1 %i.cmp, label %body, label %reduction.exit
25       body:
26         %add = fadd double %phi, 4.2
27         br label %reduction.inc
31   reduction.inc:
32     %i.inc = add nuw nsw i32 %i, 1
33     br label %reduction.for
35   reduction.exit:
36     store double %phi, ptr %A
37     br label %return
40 return:
41   ret void
45 ; CHECK: skipped possible mapping target because it is not in a loop