xref: /llvm-project/polly/test/CodeGen/20150328-SCEVExpanderIntroducesNewIV.ll (revision e1f056f692d869708c1898d9d65a69ac5584a0ed)
1; RUN: opt %loadNPMPolly -passes=polly-codegen -S < %s | FileCheck %s
2
3target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
4
5@A = common global [1536 x float] zeroinitializer
6
7; CHECK: polly
8
9define void @foo() {
10entry:
11  br label %while.header
12
13while.cond.loopexit3:
14  br label %while.header
15
16while.header:
17  br label %switchbb
18
19switchbb:
20  switch i32 undef, label %while.header [
21    i32 1, label %for.body121
22    i32 2, label %unreachableA
23    i32 3, label %unreachableB
24  ]
25
26unreachableA:
27  unreachable
28
29for.body121:
30  %indvar = phi i32 [ 0, %switchbb ], [ %indvar.next, %for.body121 ]
31  %ptr = getelementptr [1536 x float], ptr @A, i64 0, i32 %indvar
32  store float undef, ptr %ptr
33  %indvar.next = add nsw i32 %indvar, 1
34  br i1 false, label %for.body121, label %while.cond.loopexit3
35
36unreachableB:
37  unreachable
38}
39