Fix typo.
[oota-llvm.git] / test / CodeGen / PowerPC / extra-toc-reg-deps.ll
1 ; RUN: llc < %s | FileCheck %s
2 target datalayout = "E-m:e-i64:64-n32:64"
3 target triple = "powerpc64-bgq-linux"
4
5 %"class.Foam::messageStream.6" = type <{ %"class.Foam::string.5", i32, i32, i32, [4 x i8] }>
6 %"class.Foam::string.5" = type { %"class.std::basic_string.4" }
7 %"class.std::basic_string.4" = type { %"struct.std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Alloc_hider.3" }
8 %"struct.std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Alloc_hider.3" = type { i8* }
9 %"class.Foam::prefixOSstream.27" = type { %"class.Foam::OSstream.26", i8, %"class.Foam::string.5" }
10 %"class.Foam::OSstream.26" = type { %"class.Foam::Ostream.base.9", %"class.Foam::fileName.10", %"class.std::basic_ostream.25"* }
11 %"class.Foam::Ostream.base.9" = type <{ %"class.Foam::IOstream.8", i16 }>
12 %"class.Foam::IOstream.8" = type { i32 (...)**, i32, [4 x i8], %"class.Foam::IOstream::versionNumber.7", i32, i32, i32, i32 }
13 %"class.Foam::IOstream::versionNumber.7" = type <{ double, i32, [4 x i8] }>
14 %"class.Foam::fileName.10" = type { %"class.Foam::string.5" }
15 %"class.std::basic_ostream.25" = type { i32 (...)**, %"class.std::basic_ios.24" }
16 %"class.std::basic_ios.24" = type { %"class.std::ios_base.16", %"class.std::basic_ostream.25"*, i8, i8, %"class.std::basic_streambuf.17"*, %"class.std::ctype.21"*, %"class.std::__gnu_cxx_ldbl128::num_put.22"*, %"class.std::__gnu_cxx_ldbl128::num_get.23"* }
17 %"class.std::ios_base.16" = type { i32 (...)**, i64, i64, i32, i32, i32, %"struct.std::ios_base::_Callback_list.11"*, %"struct.std::ios_base::_Words.12", [8 x %"struct.std::ios_base::_Words.12"], i32, %"struct.std::ios_base::_Words.12"*, %"class.std::locale.15" }
18 %"struct.std::ios_base::_Callback_list.11" = type { %"struct.std::ios_base::_Callback_list.11"*, void (i32, %"class.std::ios_base.16"*, i32)*, i32, i32 }
19 %"struct.std::ios_base::_Words.12" = type { i8*, i64 }
20 %"class.std::locale.15" = type { %"class.std::locale::_Impl.14"* }
21 %"class.std::locale::_Impl.14" = type { i32, %"class.std::locale::facet.13"**, i64, %"class.std::locale::facet.13"**, i8** }
22 %"class.std::locale::facet.13" = type <{ i32 (...)**, i32, [4 x i8] }>
23 %"class.std::basic_streambuf.17" = type { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, %"class.std::locale.15" }
24 %"class.std::ctype.21" = type <{ %"class.std::locale::facet.base.18", [4 x i8], %struct.__locale_struct.20*, i8, [7 x i8], i32*, i32*, i16*, i8, [256 x i8], [256 x i8], i8, [6 x i8] }>
25 %"class.std::locale::facet.base.18" = type <{ i32 (...)**, i32 }>
26 %struct.__locale_struct.20 = type { [13 x %struct.__locale_data.19*], i16*, i32*, i32*, [13 x i8*] }
27 %struct.__locale_data.19 = type opaque
28 %"class.std::__gnu_cxx_ldbl128::num_put.22" = type { %"class.std::locale::facet.base.18", [4 x i8] }
29 %"class.std::__gnu_cxx_ldbl128::num_get.23" = type { %"class.std::locale::facet.base.18", [4 x i8] }
30 %"class.Foam::primitiveMesh.135" = type { i32 (...)**, i32, i32, i32, i32, i32, i32, i32, i32, i32, %"class.Foam::List.116"*, %"class.Foam::List.0"*, %"class.Foam::List.1"*, %"class.Foam::List.1"*, %"class.Foam::List.1"*, %"class.Foam::List.5"*, %"class.Foam::List.1"*, %"class.Foam::List.1"*, %"class.Foam::List.1"*, %"class.Foam::List.1"*, %"class.Foam::List.1"*, %"class.Foam::List.1"*, %"class.Foam::List.1"*, %"class.Foam::DynamicList.40", %"class.Foam::HashSet.127", %"class.Foam::Field.131"*, %"class.Foam::Field.131"*, %"class.Foam::Field.11"*, %"class.Foam::Field.131"* }
31 %"class.Foam::List.116" = type opaque
32 %"class.Foam::List.0" = type { %"class.Foam::UList.119" }
33 %"class.Foam::UList.119" = type { i32, %"class.Foam::edge.118"* }
34 %"class.Foam::edge.118" = type { %"class.Foam::FixedList.117" }
35 %"class.Foam::FixedList.117" = type { [2 x i32] }
36 %"class.Foam::List.5" = type { %"class.Foam::UList.6" }
37 %"class.Foam::UList.6" = type { i32, %"class.Foam::cell.121"* }
38 %"class.Foam::cell.121" = type { %"class.Foam::List.3" }
39 %"class.Foam::List.3" = type { %"class.Foam::UList.4" }
40 %"class.Foam::UList.4" = type { i32, i32* }
41 %"class.Foam::List.1" = type { %"class.Foam::UList.2" }
42 %"class.Foam::UList.2" = type { i32, %"class.Foam::List.3"* }
43 %"class.Foam::DynamicList.40" = type <{ %"class.Foam::List.3", i32, [4 x i8] }>
44 %"class.Foam::HashSet.127" = type { %"class.Foam::HashTable.7" }
45 %"class.Foam::HashTable.7" = type { i32, i32, %"struct.Foam::HashTable<Foam::nil, int, Foam::Hash<Foam::label> >::hashedEntry.125"** }
46 %"struct.Foam::HashTable<Foam::nil, int, Foam::Hash<Foam::label> >::hashedEntry.125" = type <{ i32, [4 x i8], %"struct.Foam::HashTable<Foam::nil, int, Foam::Hash<Foam::label> >::hashedEntry.125"*, %"class.Foam::nil.124", [7 x i8] }>
47 %"class.Foam::nil.124" = type { i8 }
48 %"class.Foam::Field.11" = type { %"class.Foam::refCount.128", %"class.Foam::List.12" }
49 %"class.Foam::refCount.128" = type { i32 }
50 %"class.Foam::List.12" = type { %"class.Foam::UList.13" }
51 %"class.Foam::UList.13" = type { i32, double* }
52 %"class.Foam::Field.131" = type { %"class.Foam::refCount.128", %"class.Foam::List.8" }
53 %"class.Foam::List.8" = type { %"class.Foam::UList.9" }
54 %"class.Foam::UList.9" = type { i32, %"class.Foam::Vector.29"* }
55 %"class.Foam::Vector.29" = type { %"class.Foam::VectorSpace.10" }
56 %"class.Foam::VectorSpace.10" = type { [3 x double] }
57 %"class.Foam::Ostream.189" = type <{ %"class.Foam::IOstream.8", i16, [6 x i8] }>
58
59 @_ZN4Foam4InfoE = external global %"class.Foam::messageStream.6", align 8
60 @.str27 = external unnamed_addr constant [24 x i8], align 1
61 @.str28 = external unnamed_addr constant [7 x i8], align 1
62 @_ZN4Foam4PoutE = external global %"class.Foam::prefixOSstream.27", align 8
63
64 define void @_ZN4Foam13checkTopologyERKNS_8polyMeshEbb(i1 zeroext %allTopology) #0 personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) {
65 entry:
66   br i1 undef, label %for.body, label %for.cond.cleanup
67
68 ; CHECK-LABEL: @_ZN4Foam13checkTopologyERKNS_8polyMeshEbb
69
70 ; CHECK: addis [[REG1:[0-9]+]], 2, .LC0@toc@ha
71 ; CHECK: std 2, 40(1)
72 ; CHECK: ld {{[0-9]+}}, .LC0@toc@l([[REG1]])
73 ; CHECK: {{mr|ld}} 2,
74 ; CHECK: mtctr
75 ; CHECK: bctrl
76 ; CHECK: ld 2, 40(1)
77
78 ; CHECK: addis [[REG1:[0-9]+]], 2, .LC0@toc@ha
79 ; CHECK: std 2, 40(1)
80 ; CHECK: ld {{[0-9]+}}, .LC0@toc@l([[REG1]])
81 ; CHECK: {{mr|ld}} 2,
82 ; CHECK: mtctr
83 ; CHECK: bctrl
84 ; CHECK: ld 2, 40(1)
85
86 for.cond.cleanup:                                 ; preds = %entry
87   br i1 undef, label %if.then.i, label %if.else.i
88
89 if.then.i:                                        ; preds = %for.cond.cleanup
90   br i1 undef, label %if.then.i1435, label %if.else.i1436
91
92 if.else.i:                                        ; preds = %for.cond.cleanup
93   unreachable
94
95 if.then.i1435:                                    ; preds = %if.then.i
96   br label %_ZN4Foam12returnReduceIiNS_5sumOpIiEEEET_RKS3_RKT0_ii.exit
97
98 if.else.i1436:                                    ; preds = %if.then.i
99   br label %_ZN4Foam12returnReduceIiNS_5sumOpIiEEEET_RKS3_RKT0_ii.exit
100
101 _ZN4Foam12returnReduceIiNS_5sumOpIiEEEET_RKS3_RKT0_ii.exit: ; preds = %if.else.i1436, %if.then.i1435
102   br i1 undef, label %for.body.i, label %_ZNK4Foam8ZoneMeshINS_8cellZoneENS_8polyMeshEE15checkDefinitionEb.exit
103
104 for.body:                                         ; preds = %entry
105   unreachable
106
107 for.body.i:                                       ; preds = %_ZN4Foam12returnReduceIiNS_5sumOpIiEEEET_RKS3_RKT0_ii.exit
108   unreachable
109
110 _ZNK4Foam8ZoneMeshINS_8cellZoneENS_8polyMeshEE15checkDefinitionEb.exit: ; preds = %_ZN4Foam12returnReduceIiNS_5sumOpIiEEEET_RKS3_RKT0_ii.exit
111   br i1 undef, label %for.body.i1480, label %_ZNK4Foam8ZoneMeshINS_8faceZoneENS_8polyMeshEE15checkDefinitionEb.exit
112
113 for.body.i1480:                                   ; preds = %_ZNK4Foam8ZoneMeshINS_8cellZoneENS_8polyMeshEE15checkDefinitionEb.exit
114   unreachable
115
116 _ZNK4Foam8ZoneMeshINS_8faceZoneENS_8polyMeshEE15checkDefinitionEb.exit: ; preds = %_ZNK4Foam8ZoneMeshINS_8cellZoneENS_8polyMeshEE15checkDefinitionEb.exit
117   br i1 undef, label %for.body.i1504, label %_ZNK4Foam8ZoneMeshINS_9pointZoneENS_8polyMeshEE15checkDefinitionEb.exit
118
119 for.body.i1504:                                   ; preds = %_ZNK4Foam8ZoneMeshINS_8faceZoneENS_8polyMeshEE15checkDefinitionEb.exit
120   unreachable
121
122 _ZNK4Foam8ZoneMeshINS_9pointZoneENS_8polyMeshEE15checkDefinitionEb.exit: ; preds = %_ZNK4Foam8ZoneMeshINS_8faceZoneENS_8polyMeshEE15checkDefinitionEb.exit
123   invoke void @_ZN4Foam4word12stripInvalidEv()
124           to label %_ZN4Foam4wordC2EPKcb.exit unwind label %lpad.i
125
126 lpad.i:                                           ; preds = %_ZNK4Foam8ZoneMeshINS_9pointZoneENS_8polyMeshEE15checkDefinitionEb.exit
127   %0 = landingpad { i8*, i32 }
128           cleanup
129   resume { i8*, i32 } %0
130
131 _ZN4Foam4wordC2EPKcb.exit:                        ; preds = %_ZNK4Foam8ZoneMeshINS_9pointZoneENS_8polyMeshEE15checkDefinitionEb.exit
132   invoke void @_ZN4Foam7cellSetC1ERKNS_8polyMeshERKNS_4wordEiNS_8IOobject11writeOptionE()
133           to label %invoke.cont59 unwind label %lpad
134
135 invoke.cont59:                                    ; preds = %_ZN4Foam4wordC2EPKcb.exit
136   br i1 undef, label %_ZNSsD2Ev.exit, label %if.then.i.i, !prof !1
137
138 if.then.i.i:                                      ; preds = %invoke.cont59
139   br i1 true, label %if.then.i.i.i1508, label %if.else.i.i.i
140
141 if.then.i.i.i1508:                                ; preds = %if.then.i.i
142   br label %_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii.exit.i.i
143
144 if.else.i.i.i:                                    ; preds = %if.then.i.i
145   br label %_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii.exit.i.i
146
147 _ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii.exit.i.i: ; preds = %if.else.i.i.i, %if.then.i.i.i1508
148   br i1 undef, label %if.then4.i.i, label %_ZNSsD2Ev.exit
149
150 if.then4.i.i:                                     ; preds = %_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii.exit.i.i
151   br label %_ZNSsD2Ev.exit
152
153 _ZNSsD2Ev.exit:                                   ; preds = %if.then4.i.i, %_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii.exit.i.i, %invoke.cont59
154   br i1 undef, label %for.body70, label %for.cond.cleanup69
155
156 for.cond.cleanup69:                               ; preds = %_ZNSsD2Ev.exit
157   br i1 undef, label %if.then121, label %if.else
158
159 lpad:                                             ; preds = %_ZN4Foam4wordC2EPKcb.exit
160   %1 = landingpad { i8*, i32 }
161           cleanup
162   br i1 undef, label %_ZNSsD2Ev.exit1578, label %if.then.i.i1570, !prof !1
163
164 if.then.i.i1570:                                  ; preds = %lpad
165   br i1 undef, label %if.then4.i.i1577, label %_ZNSsD2Ev.exit1578
166
167 if.then4.i.i1577:                                 ; preds = %if.then.i.i1570
168   unreachable
169
170 _ZNSsD2Ev.exit1578:                               ; preds = %if.then.i.i1570, %lpad
171   unreachable
172
173 for.body70:                                       ; preds = %_ZNSsD2Ev.exit
174   unreachable
175
176 if.then121:                                       ; preds = %for.cond.cleanup69
177   unreachable
178
179 if.else:                                          ; preds = %for.cond.cleanup69
180   invoke void @_ZN4Foam4word12stripInvalidEv()
181           to label %_ZN4Foam4wordC2EPKcb.exit1701 unwind label %lpad.i1689
182
183 lpad.i1689:                                       ; preds = %if.else
184   %2 = landingpad { i8*, i32 }
185           cleanup
186   unreachable
187
188 _ZN4Foam4wordC2EPKcb.exit1701:                    ; preds = %if.else
189   invoke void @_ZN4Foam8pointSetC1ERKNS_8polyMeshERKNS_4wordEiNS_8IOobject11writeOptionE()
190           to label %invoke.cont169 unwind label %lpad165
191
192 invoke.cont169:                                   ; preds = %_ZN4Foam4wordC2EPKcb.exit1701
193   %call177 = invoke zeroext i1 undef(%"class.Foam::primitiveMesh.135"* undef, i1 zeroext true, %"class.Foam::HashSet.127"* undef)
194           to label %invoke.cont176 unwind label %lpad175
195
196 invoke.cont176:                                   ; preds = %invoke.cont169
197   br i1 %call177, label %if.then178, label %if.end213
198
199 if.then178:                                       ; preds = %invoke.cont176
200   unreachable
201
202 lpad165:                                          ; preds = %_ZN4Foam4wordC2EPKcb.exit1701
203   %3 = landingpad { i8*, i32 }
204           cleanup
205   unreachable
206
207 lpad175:                                          ; preds = %invoke.cont169
208   %4 = landingpad { i8*, i32 }
209           cleanup
210   invoke void @_ZN4Foam8pointSetD1Ev()
211           to label %eh.resume unwind label %terminate.lpad
212
213 if.end213:                                        ; preds = %invoke.cont176
214   invoke void @_ZN4Foam4word12stripInvalidEv()
215           to label %_ZN4Foam4wordC2EPKcb.exit1777 unwind label %lpad.i1765
216
217 lpad.i1765:                                       ; preds = %if.end213
218   %5 = landingpad { i8*, i32 }
219           cleanup
220   br i1 undef, label %eh.resume.i1776, label %if.then.i.i.i1767, !prof !1
221
222 if.then.i.i.i1767:                                ; preds = %lpad.i1765
223   unreachable
224
225 eh.resume.i1776:                                  ; preds = %lpad.i1765
226   resume { i8*, i32 } %5
227
228 _ZN4Foam4wordC2EPKcb.exit1777:                    ; preds = %if.end213
229   invoke void @_ZN4Foam7faceSetC1ERKNS_8polyMeshERKNS_4wordEiNS_8IOobject11writeOptionE()
230           to label %invoke.cont221 unwind label %lpad217
231
232 invoke.cont221:                                   ; preds = %_ZN4Foam4wordC2EPKcb.exit1777
233   br i1 undef, label %_ZNSsD2Ev.exit1792, label %if.then.i.i1784, !prof !1
234
235 if.then.i.i1784:                                  ; preds = %invoke.cont221
236   br i1 undef, label %if.then4.i.i1791, label %_ZNSsD2Ev.exit1792
237
238 if.then4.i.i1791:                                 ; preds = %if.then.i.i1784
239   br label %_ZNSsD2Ev.exit1792
240
241 _ZNSsD2Ev.exit1792:                               ; preds = %if.then4.i.i1791, %if.then.i.i1784, %invoke.cont221
242   %call232 = invoke zeroext i1 undef(%"class.Foam::primitiveMesh.135"* undef, i1 zeroext true, %"class.Foam::HashSet.127"* undef)
243           to label %invoke.cont231 unwind label %lpad230
244
245 invoke.cont231:                                   ; preds = %_ZNSsD2Ev.exit1792
246   invoke void @_ZN4Foam6reduceIiNS_5sumOpIiEEEEvRKNS_4ListINS_8UPstream11commsStructEEERT_RKT0_ii()
247           to label %invoke.cont243 unwind label %lpad230
248
249 lpad217:                                          ; preds = %_ZN4Foam4wordC2EPKcb.exit1777
250   %6 = landingpad { i8*, i32 }
251           cleanup
252   br label %eh.resume
253
254 lpad230:                                          ; preds = %invoke.cont231, %_ZNSsD2Ev.exit1792
255   %7 = landingpad { i8*, i32 }
256           cleanup
257   invoke void @_ZN4Foam7faceSetD1Ev()
258           to label %eh.resume unwind label %terminate.lpad
259
260 invoke.cont243:                                   ; preds = %invoke.cont231
261   invoke void @_ZN4Foam4word12stripInvalidEv()
262           to label %_ZN4Foam4wordC2EPKcb.exit1862 unwind label %lpad.i1850
263
264 lpad.i1850:                                       ; preds = %invoke.cont243
265   %8 = landingpad { i8*, i32 }
266           cleanup
267   unreachable
268
269 _ZN4Foam4wordC2EPKcb.exit1862:                    ; preds = %invoke.cont243
270   invoke void @_ZN4Foam7faceSetC1ERKNS_8polyMeshERKNS_4wordEiNS_8IOobject11writeOptionE()
271           to label %invoke.cont280 unwind label %lpad276
272
273 invoke.cont280:                                   ; preds = %_ZN4Foam4wordC2EPKcb.exit1862
274   br i1 undef, label %_ZNSsD2Ev.exit1877, label %if.then.i.i1869, !prof !1
275
276 if.then.i.i1869:                                  ; preds = %invoke.cont280
277   unreachable
278
279 _ZNSsD2Ev.exit1877:                               ; preds = %invoke.cont280
280   br i1 undef, label %if.then292, label %if.end328
281
282 if.then292:                                       ; preds = %_ZNSsD2Ev.exit1877
283   unreachable
284
285 lpad276:                                          ; preds = %_ZN4Foam4wordC2EPKcb.exit1862
286   %9 = landingpad { i8*, i32 }
287           cleanup
288   unreachable
289
290 if.end328:                                        ; preds = %_ZNSsD2Ev.exit1877
291   br i1 %allTopology, label %if.then331, label %if.end660
292
293 if.then331:                                       ; preds = %if.end328
294   unreachable
295
296 if.end660:                                        ; preds = %if.end328
297   invoke void @_ZN4Foam13messageStreamcvRNS_8OSstreamEEv()
298           to label %invoke.cont668 unwind label %lpad663
299
300 invoke.cont668:                                   ; preds = %if.end660
301   %call671 = invoke dereferenceable(56) %"class.Foam::Ostream.189"* @_ZN4FoamlsERNS_7OstreamEPKc()
302           to label %invoke.cont670 unwind label %lpad663
303
304 invoke.cont670:                                   ; preds = %invoke.cont668
305   invoke void @_ZN4FoamlsERNS_7OstreamEi()
306           to label %invoke.cont674 unwind label %lpad663
307
308 invoke.cont674:                                   ; preds = %invoke.cont670
309   %call677 = invoke dereferenceable(56) %"class.Foam::Ostream.189"* @_ZN4FoamlsERNS_7OstreamEPKc()
310           to label %invoke.cont676 unwind label %lpad663
311
312 invoke.cont676:                                   ; preds = %invoke.cont674
313   invoke void undef(%"class.Foam::Ostream.189"* %call677)
314           to label %if.end878 unwind label %lpad663
315
316 lpad663:                                          ; preds = %invoke.cont670, %if.end660, %invoke.cont668, %invoke.cont674, %invoke.cont676
317   %10 = landingpad { i8*, i32 }
318           cleanup
319   br i1 undef, label %_ZN4Foam4ListIiED2Ev.exit.i3073, label %delete.notnull.i.i3071
320
321 if.end878:                                        ; preds = %invoke.cont676
322   br i1 undef, label %_ZN4Foam11regionSplitD2Ev.exit, label %delete.notnull.i.i3056
323
324 delete.notnull.i.i3056:                           ; preds = %if.end878
325   unreachable
326
327 _ZN4Foam11regionSplitD2Ev.exit:                   ; preds = %if.end878
328   br i1 undef, label %if.then883, label %if.else888
329
330 if.then883:                                       ; preds = %_ZN4Foam11regionSplitD2Ev.exit
331   unreachable
332
333 delete.notnull.i.i3071:                           ; preds = %lpad663
334   unreachable
335
336 _ZN4Foam4ListIiED2Ev.exit.i3073:                  ; preds = %lpad663
337   invoke void @_ZN4Foam11regIOobjectD2Ev()
338           to label %eh.resume unwind label %terminate.lpad
339
340 if.else888:                                       ; preds = %_ZN4Foam11regionSplitD2Ev.exit
341   invoke void @_ZN4Foam4word12stripInvalidEv()
342           to label %_ZN4Foam4wordC2EPKcb.exit3098 unwind label %lpad.i3086
343
344 lpad.i3086:                                       ; preds = %if.else888
345   %11 = landingpad { i8*, i32 }
346           cleanup
347   unreachable
348
349 _ZN4Foam4wordC2EPKcb.exit3098:                    ; preds = %if.else888
350   invoke void @_ZN4Foam8pointSetC1ERKNS_8polyMeshERKNS_4wordEiNS_8IOobject11writeOptionE()
351           to label %invoke.cont902 unwind label %lpad898
352
353 invoke.cont902:                                   ; preds = %_ZN4Foam4wordC2EPKcb.exit3098
354   br i1 undef, label %_ZNSsD2Ev.exit3113, label %if.then.i.i3105, !prof !1
355
356 if.then.i.i3105:                                  ; preds = %invoke.cont902
357   br i1 undef, label %if.then4.i.i3112, label %_ZNSsD2Ev.exit3113
358
359 if.then4.i.i3112:                                 ; preds = %if.then.i.i3105
360   unreachable
361
362 _ZNSsD2Ev.exit3113:                               ; preds = %if.then.i.i3105, %invoke.cont902
363   %call.i31163117 = invoke zeroext i32 undef(%"class.Foam::IOstream.8"* getelementptr inbounds (%"class.Foam::prefixOSstream.27", %"class.Foam::prefixOSstream.27"* @_ZN4Foam4PoutE, i64 0, i32 0, i32 0, i32 0))
364           to label %call.i3116.noexc unwind label %lpad905.loopexit.split-lp
365
366 call.i3116.noexc:                                 ; preds = %_ZNSsD2Ev.exit3113
367   %call5.i3118 = invoke zeroext i32 null(%"class.Foam::IOstream.8"* getelementptr inbounds (%"class.Foam::prefixOSstream.27", %"class.Foam::prefixOSstream.27"* @_ZN4Foam4PoutE, i64 0, i32 0, i32 0, i32 0), i32 zeroext undef)
368           to label %invoke.cont906 unwind label %lpad905.loopexit.split-lp
369
370 invoke.cont906:                                   ; preds = %call.i3116.noexc
371   unreachable
372
373 lpad898:                                          ; preds = %_ZN4Foam4wordC2EPKcb.exit3098
374   %12 = landingpad { i8*, i32 }
375           cleanup
376   br i1 undef, label %_ZNSsD2Ev.exit3204, label %if.then.i.i3196, !prof !1
377
378 if.then.i.i3196:                                  ; preds = %lpad898
379   unreachable
380
381 _ZNSsD2Ev.exit3204:                               ; preds = %lpad898
382   unreachable
383
384 lpad905.loopexit.split-lp:                        ; preds = %call.i3116.noexc, %_ZNSsD2Ev.exit3113
385   %lpad.loopexit.split-lp = landingpad { i8*, i32 }
386           cleanup
387   invoke void @_ZN4Foam8pointSetD1Ev()
388           to label %eh.resume unwind label %terminate.lpad
389
390 eh.resume:                                        ; preds = %_ZN4Foam4ListIiED2Ev.exit.i3073, %lpad230, %lpad175, %lpad905.loopexit.split-lp, %lpad217
391   resume { i8*, i32 } undef
392
393 terminate.lpad:                                   ; preds = %_ZN4Foam4ListIiED2Ev.exit.i3073, %lpad230, %lpad175, %lpad905.loopexit.split-lp
394   %13 = landingpad { i8*, i32 }
395           catch i8* null
396   unreachable
397 }
398
399 declare dereferenceable(56) %"class.Foam::Ostream.189"* @_ZN4FoamlsERNS_7OstreamEPKc() #0
400
401 declare void @_ZN4Foam13messageStreamcvRNS_8OSstreamEEv() #0
402
403 declare i32 @__gxx_personality_v0(...)
404
405 declare void @_ZN4Foam7cellSetC1ERKNS_8polyMeshERKNS_4wordEiNS_8IOobject11writeOptionE() #0
406
407 declare void @_ZN4FoamlsERNS_7OstreamEi() #0
408
409 declare void @_ZN4Foam8pointSetC1ERKNS_8polyMeshERKNS_4wordEiNS_8IOobject11writeOptionE() #0
410
411 declare void @_ZN4Foam8pointSetD1Ev() #0
412
413 declare void @_ZN4Foam7faceSetC1ERKNS_8polyMeshERKNS_4wordEiNS_8IOobject11writeOptionE() #0
414
415 declare void @_ZN4Foam7faceSetD1Ev() #0
416
417 ; Function Attrs: inlinehint
418 declare void @_ZN4Foam4word12stripInvalidEv() #1 align 2
419
420 declare void @_ZN4Foam11regIOobjectD2Ev() #0
421
422 declare void @_ZN4Foam6reduceIiNS_5sumOpIiEEEEvRKNS_4ListINS_8UPstream11commsStructEEERT_RKT0_ii() #0
423
424 attributes #0 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="a2q" "unsafe-fp-math"="false" "use-soft-float"="false" }
425 attributes #1 = { inlinehint "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="a2q" "unsafe-fp-math"="false" "use-soft-float"="false" }
426
427 !llvm.module.flags = !{!0}
428
429 !0 = !{i32 1, !"PIC Level", i32 2}
430 !1 = !{!"branch_weights", i32 64, i32 4}