1 ; RUN: opt %loadNPMPolly -polly-ignore-inbounds '-passes=print<polly-simplify>' -disable-output < %s | FileCheck %s -match-full-lines
5 define void @func(i32 %n, ptr noalias nonnull %A,
6 i32 %p0, i32 %p1, i32 %p2, i32 %p3, i32 %p4, i32 %p5, i32 %p6, i32 %p7, i32 %p8, i32 %p9,
7 i32 %p10, i32 %p11, i32 %p12, i32 %p13, i32 %p14, i32 %p15, i32 %p16, i32 %p17, i32 %p18, i32 %p19,
8 i32 %p20, i32 %p21, i32 %p22, i32 %p23, i32 %p24, i32 %p25, i32 %p26, i32 %p27, i32 %p28, i32 %p29,
9 i32 %p30, i32 %p31, i32 %p32) {
14 %j = phi i32 [0, %entry], [%j.inc, %inc]
15 %j.cmp = icmp slt i32 %j, %n
16 br i1 %j.cmp, label %body, label %exit
20 %A0 = getelementptr inbounds double, ptr %A, i32 %p0
21 %A1 = getelementptr inbounds double, ptr %A, i32 %p1
22 %A2 = getelementptr inbounds double, ptr %A, i32 %p2
23 %A3 = getelementptr inbounds double, ptr %A, i32 %p3
24 %A4 = getelementptr inbounds double, ptr %A, i32 %p4
25 %A5 = getelementptr inbounds double, ptr %A, i32 %p5
26 %A6 = getelementptr inbounds double, ptr %A, i32 %p6
27 %A7 = getelementptr inbounds double, ptr %A, i32 %p7
28 %A8 = getelementptr inbounds double, ptr %A, i32 %p8
29 %A9 = getelementptr inbounds double, ptr %A, i32 %p9
30 %A10 = getelementptr inbounds double, ptr %A, i32 %p10
31 %A11 = getelementptr inbounds double, ptr %A, i32 %p11
32 %A12 = getelementptr inbounds double, ptr %A, i32 %p12
33 %A13 = getelementptr inbounds double, ptr %A, i32 %p13
34 %A14 = getelementptr inbounds double, ptr %A, i32 %p14
35 %A15 = getelementptr inbounds double, ptr %A, i32 %p15
36 %A16 = getelementptr inbounds double, ptr %A, i32 %p16
37 %A17 = getelementptr inbounds double, ptr %A, i32 %p17
38 %A18 = getelementptr inbounds double, ptr %A, i32 %p18
39 %A19 = getelementptr inbounds double, ptr %A, i32 %p19
40 %A20 = getelementptr inbounds double, ptr %A, i32 %p20
41 %A21 = getelementptr inbounds double, ptr %A, i32 %p21
42 %A22 = getelementptr inbounds double, ptr %A, i32 %p22
43 %A23 = getelementptr inbounds double, ptr %A, i32 %p23
44 %A24 = getelementptr inbounds double, ptr %A, i32 %p24
45 %A25 = getelementptr inbounds double, ptr %A, i32 %p25
46 %A26 = getelementptr inbounds double, ptr %A, i32 %p26
47 %A27 = getelementptr inbounds double, ptr %A, i32 %p27
48 %A28 = getelementptr inbounds double, ptr %A, i32 %p28
49 %A29 = getelementptr inbounds double, ptr %A, i32 %p29
50 %A30 = getelementptr inbounds double, ptr %A, i32 %p30
51 %A31 = getelementptr inbounds double, ptr %A, i32 %p31
52 %A32 = getelementptr inbounds double, ptr %A, i32 %p32
54 %val = load double, ptr %A0
56 store double %val, ptr %A1
57 store double %val, ptr %A2
58 store double %val, ptr %A3
59 store double %val, ptr %A4
60 store double %val, ptr %A5
61 store double %val, ptr %A6
62 store double %val, ptr %A7
63 store double %val, ptr %A8
64 store double %val, ptr %A9
65 store double %val, ptr %A10
66 store double %val, ptr %A11
67 store double %val, ptr %A12
68 store double %val, ptr %A13
69 store double %val, ptr %A14
70 store double %val, ptr %A15
71 store double %val, ptr %A16
72 store double %val, ptr %A17
73 store double %val, ptr %A18
74 store double %val, ptr %A19
75 store double %val, ptr %A20
76 store double %val, ptr %A21
77 store double %val, ptr %A22
78 store double %val, ptr %A23
79 store double %val, ptr %A24
80 store double %val, ptr %A25
81 store double %val, ptr %A26
82 store double %val, ptr %A27
83 store double %val, ptr %A28
84 store double %val, ptr %A29
85 store double %val, ptr %A30
86 store double %val, ptr %A31
87 store double %val, ptr %A32
93 %j.inc = add nuw nsw i32 %j, 1
104 ; CHECK: SCoP could not be simplified