xref: /llvm-project/polly/test/ScopInfo/bug_2011_1_5.ll (revision e1f056f692d869708c1898d9d65a69ac5584a0ed)
1; RUN: opt %loadNPMPolly '-passes=print<polly-function-scops>' -disable-output < %s
2
3; Bug description: Alias Analysis thinks IntToPtrInst aliases with alloca instructions created by IndependentBlocks Pass.
4;                  This will trigger the assertion when we are verifying the SCoP after IndependentBlocks.
5
6target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
7
8%struct.precisionType = type { i16, i16, i16, i8, [1 x i16] }
9
10define void @main() nounwind {
11entry:
12 br label %bb1.i198.i
13
14bb1.i198.i:                                       ; preds = %bb.i197.i, %psetq.exit196.i
15  %tmp51.i = inttoptr i64 0 to ptr
16  br i1 undef, label %bb1.i210.i, label %bb.i209.i
17
18bb.i209.i:                                        ; preds = %bb1.i198.i
19  br label %bb1.i210.i
20
21bb1.i210.i:                                       ; preds = %bb.i209.i, %bb1.i198.i
22  %0 = icmp eq i64 0, 0
23  br i1 %0, label %bb1.i216.i, label %bb.i215.i
24
25bb.i215.i:                                        ; preds = %bb1.i210.i
26  store i16 undef, ptr %tmp51.i, align 2
27  br label %bb1.i216.i
28
29bb1.i216.i:                                       ; preds = %bb.i215.i, %bb1.i210.i
30  br i1 undef, label %psetq.exit220.i, label %bb2.i217.i
31
32bb2.i217.i:                                       ; preds = %bb1.i216.i
33  br i1 undef, label %bb3.i218.i, label %psetq.exit220.i
34
35bb3.i218.i:                                       ; preds = %bb2.i217.i
36  br label %psetq.exit220.i
37
38psetq.exit220.i:                                  ; preds = %bb3.i218.i, %bb2.i217.i, %bb1.i216.i
39  br i1 undef, label %bb14.i76, label %bb15.i77
40
41bb14.i76:                                         ; preds = %psetq.exit220.i
42  unreachable
43
44bb15.i77:                                         ; preds = %psetq.exit220.i
45  br i1 %0, label %psetq.exit238.i, label %bb2.i235.i
46
47bb2.i235.i:                                       ; preds = %bb15.i77
48  br i1 undef, label %bb3.i236.i, label %psetq.exit238.i
49
50bb3.i236.i:                                       ; preds = %bb2.i235.i
51  unreachable
52
53psetq.exit238.i:                                  ; preds = %bb2.i235.i, %bb15.i77
54  unreachable
55
56bb56.i.loopexit:                                  ; preds = %psetq.exit172.i
57  unreachable
58}
59