xref: /llvm-project/llvm/test/Transforms/NewGVN/2007-07-30-PredIDom.ll (revision 229640343e400394b315c6798c7c19e8a9bd188c)
1; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 4
2; RUN: opt < %s -passes=newgvn | llvm-dis
3
4  %"struct.Block::$_16" = type { i32 }
5  %struct.Exp = type { ptr, i32, i32, i32, ptr, ptr, %"struct.Exp::$_10", %"struct.Block::$_16", %"struct.Exp::$_12" }
6  %"struct.Exp::$_10" = type { ptr }
7  %"struct.Exp::$_12" = type { ptr }
8  %struct.Exp_ = type { i32, i32, i32, i32, ptr }
9  %struct.Id = type { ptr, i32, i32, i32, %"struct.Id::$_13" }
10  %"struct.Id::$_13" = type { double }
11
12define ptr @_ZN3Exp8toStringEj(ptr %this, i32 %nextpc) {
13entry:
14  switch i32 0, label %bb970 [
15  i32 1, label %bb
16  i32 2, label %bb39
17  i32 3, label %bb195
18  i32 4, label %bb270
19  i32 5, label %bb418
20  i32 6, label %bb633
21  i32 7, label %bb810
22  i32 8, label %bb882
23  i32 9, label %bb925
24  ]
25
26bb:		; preds = %entry
27  store ptr null, ptr null
28  br label %return
29
30bb39:		; preds = %entry
31  br i1 false, label %cond_true, label %cond_false132
32
33cond_true:		; preds = %bb39
34  br i1 false, label %cond_true73, label %cond_false
35
36cond_true73:		; preds = %cond_true
37  br i1 false, label %cond_true108, label %cond_next
38
39cond_true108:		; preds = %cond_true73
40  br label %cond_next
41
42cond_next:		; preds = %cond_true108, %cond_true73
43  br label %cond_next131
44
45cond_false:		; preds = %cond_true
46  br label %cond_next131
47
48cond_next131:		; preds = %cond_false, %cond_next
49  br label %cond_next141
50
51cond_false132:		; preds = %bb39
52  br label %cond_next141
53
54cond_next141:		; preds = %cond_false132, %cond_next131
55  br i1 false, label %cond_true169, label %cond_false175
56
57cond_true169:		; preds = %cond_next141
58  br label %cond_next181
59
60cond_false175:		; preds = %cond_next141
61  br label %cond_next181
62
63cond_next181:		; preds = %cond_false175, %cond_true169
64  br i1 false, label %cond_true189, label %cond_next191
65
66cond_true189:		; preds = %cond_next181
67  br label %cond_next191
68
69cond_next191:		; preds = %cond_true189, %cond_next181
70  store ptr null, ptr null
71  br label %return
72
73bb195:		; preds = %entry
74  br i1 false, label %cond_true248, label %cond_false250
75
76cond_true248:		; preds = %bb195
77  br label %cond_next252
78
79cond_false250:		; preds = %bb195
80  br label %cond_next252
81
82cond_next252:		; preds = %cond_false250, %cond_true248
83  br i1 false, label %cond_true265, label %cond_next267
84
85cond_true265:		; preds = %cond_next252
86  br label %cond_next267
87
88cond_next267:		; preds = %cond_true265, %cond_next252
89  store ptr null, ptr null
90  br label %return
91
92bb270:		; preds = %entry
93  br i1 false, label %cond_true338, label %cond_false340
94
95cond_true338:		; preds = %bb270
96  br label %cond_next342
97
98cond_false340:		; preds = %bb270
99  br label %cond_next342
100
101cond_next342:		; preds = %cond_false340, %cond_true338
102  br i1 false, label %cond_true362, label %cond_false364
103
104cond_true362:		; preds = %cond_next342
105  br label %cond_next366
106
107cond_false364:		; preds = %cond_next342
108  br label %cond_next366
109
110cond_next366:		; preds = %cond_false364, %cond_true362
111  br i1 false, label %cond_true393, label %cond_next395
112
113cond_true393:		; preds = %cond_next366
114  br label %cond_next395
115
116cond_next395:		; preds = %cond_true393, %cond_next366
117  br i1 false, label %cond_true406, label %cond_next408
118
119cond_true406:		; preds = %cond_next395
120  br label %cond_next408
121
122cond_next408:		; preds = %cond_true406, %cond_next395
123  br i1 false, label %cond_true413, label %cond_next415
124
125cond_true413:		; preds = %cond_next408
126  br label %cond_next415
127
128cond_next415:		; preds = %cond_true413, %cond_next408
129  store ptr null, ptr null
130  br label %return
131
132bb418:		; preds = %entry
133  br i1 false, label %cond_true512, label %cond_false514
134
135cond_true512:		; preds = %bb418
136  br label %cond_next516
137
138cond_false514:		; preds = %bb418
139  br label %cond_next516
140
141cond_next516:		; preds = %cond_false514, %cond_true512
142  br i1 false, label %cond_true536, label %cond_false538
143
144cond_true536:		; preds = %cond_next516
145  br label %cond_next540
146
147cond_false538:		; preds = %cond_next516
148  br label %cond_next540
149
150cond_next540:		; preds = %cond_false538, %cond_true536
151  br i1 false, label %cond_true560, label %cond_false562
152
153cond_true560:		; preds = %cond_next540
154  br label %cond_next564
155
156cond_false562:		; preds = %cond_next540
157  br label %cond_next564
158
159cond_next564:		; preds = %cond_false562, %cond_true560
160  br i1 false, label %cond_true597, label %cond_next599
161
162cond_true597:		; preds = %cond_next564
163  br label %cond_next599
164
165cond_next599:		; preds = %cond_true597, %cond_next564
166  br i1 false, label %cond_true614, label %cond_next616
167
168cond_true614:		; preds = %cond_next599
169  br label %cond_next616
170
171cond_next616:		; preds = %cond_true614, %cond_next599
172  br i1 false, label %cond_true621, label %cond_next623
173
174cond_true621:		; preds = %cond_next616
175  br label %cond_next623
176
177cond_next623:		; preds = %cond_true621, %cond_next616
178  br i1 false, label %cond_true628, label %cond_next630
179
180cond_true628:		; preds = %cond_next623
181  br label %cond_next630
182
183cond_next630:		; preds = %cond_true628, %cond_next623
184  store ptr null, ptr null
185  br label %return
186
187bb633:		; preds = %entry
188  br i1 false, label %cond_true667, label %cond_next669
189
190cond_true667:		; preds = %bb633
191  br label %cond_next669
192
193cond_next669:		; preds = %cond_true667, %bb633
194  br i1 false, label %cond_true678, label %cond_next791
195
196cond_true678:		; preds = %cond_next669
197  br label %bb735
198
199bb679:		; preds = %bb735
200  br i1 false, label %cond_true729, label %cond_next731
201
202cond_true729:		; preds = %bb679
203  br label %cond_next731
204
205cond_next731:		; preds = %cond_true729, %bb679
206  br label %bb735
207
208bb735:		; preds = %cond_next731, %cond_true678
209  br i1 false, label %bb679, label %bb743
210
211bb743:		; preds = %bb735
212  br i1 false, label %cond_true788, label %cond_next790
213
214cond_true788:		; preds = %bb743
215  br label %cond_next790
216
217cond_next790:		; preds = %cond_true788, %bb743
218  br label %cond_next791
219
220cond_next791:		; preds = %cond_next790, %cond_next669
221  br i1 false, label %cond_true805, label %cond_next807
222
223cond_true805:		; preds = %cond_next791
224  br label %cond_next807
225
226cond_next807:		; preds = %cond_true805, %cond_next791
227  store ptr null, ptr null
228  br label %return
229
230bb810:		; preds = %entry
231  br i1 false, label %cond_true870, label %cond_next872
232
233cond_true870:		; preds = %bb810
234  br label %cond_next872
235
236cond_next872:		; preds = %cond_true870, %bb810
237  br i1 false, label %cond_true877, label %cond_next879
238
239cond_true877:		; preds = %cond_next872
240  br label %cond_next879
241
242cond_next879:		; preds = %cond_true877, %cond_next872
243  store ptr null, ptr null
244  br label %return
245
246bb882:		; preds = %entry
247  br i1 false, label %cond_true920, label %cond_next922
248
249cond_true920:		; preds = %bb882
250  br label %cond_next922
251
252cond_next922:		; preds = %cond_true920, %bb882
253  store ptr null, ptr null
254  br label %return
255
256bb925:		; preds = %entry
257  br i1 false, label %cond_true965, label %cond_next967
258
259cond_true965:		; preds = %bb925
260  br label %cond_next967
261
262cond_next967:		; preds = %cond_true965, %bb925
263  store ptr null, ptr null
264  br label %return
265
266bb970:		; preds = %entry
267  unreachable
268  ; No predecessors!
269  store ptr null, ptr null
270  br label %return
271
272return:		; preds = %0, %cond_next967, %cond_next922, %cond_next879, %cond_next807, %cond_next630, %cond_next415, %cond_next267, %cond_next191, %bb
273  %retval980 = load ptr, ptr null		; <ptr> [#uses=1]
274  ret ptr %retval980
275}
276