@@ -72,97 +72,97 @@ subroutine worst_case(a, b, c, d)
7272! CHECK-NEXT: br label %omp.private.copy
7373
7474! CHECK: omp.private.copy: ; preds = %omp.region.cont
75- ! CHECK-NEXT: br label %omp.private.copy10
75+ ! CHECK-NEXT: br label %omp.private.copy11
7676
77- ! CHECK: omp.private.copy10 : ; preds = %omp.private.copy
77+ ! CHECK: omp.private.copy11 : ; preds = %omp.private.copy
7878! [begin firstprivate copy for first var]
7979! [read the length, is it non-zero?]
80- ! CHECK: br i1 %{{.*}}, label %omp.private.copy11 , label %omp.private.copy12
80+ ! CHECK: br i1 %{{.*}}, label %omp.private.copy12 , label %omp.private.copy13
8181
82- ! CHECK: omp.private.copy12 : ; preds = %omp.private.copy11 , %omp.private.copy10
83- ! CHECK-NEXT: br label %omp.region.cont9
82+ ! CHECK: omp.private.copy13 : ; preds = %omp.private.copy12 , %omp.private.copy11
83+ ! CHECK-NEXT: br label %omp.region.cont10
8484
85- ! CHECK: omp.region.cont9 : ; preds = %omp.private.copy12
85+ ! CHECK: omp.region.cont10 : ; preds = %omp.private.copy13
8686! CHECK-NEXT: %{{.*}} = phi ptr
87- ! CHECK-NEXT: br label %omp.private.copy14
87+ ! CHECK-NEXT: br label %omp.private.copy15
8888
89- ! CHECK: omp.private.copy14 : ; preds = %omp.region.cont9
89+ ! CHECK: omp.private.copy15 : ; preds = %omp.region.cont10
9090! [begin firstprivate copy for second var]
9191! [read the length, is it non-zero?]
92- ! CHECK: br i1 %{{.*}}, label %omp.private.copy15 , label %omp.private.copy16
92+ ! CHECK: br i1 %{{.*}}, label %omp.private.copy16 , label %omp.private.copy17
9393
94- ! CHECK: omp.private.copy16 : ; preds = %omp.private.copy15 , %omp.private.copy14
95- ! CHECK-NEXT: br label %omp.region.cont13
94+ ! CHECK: omp.private.copy17 : ; preds = %omp.private.copy16 , %omp.private.copy15
95+ ! CHECK-NEXT: br label %omp.region.cont14
9696
97- ! CHECK: omp.region.cont13 : ; preds = %omp.private.copy16
97+ ! CHECK: omp.region.cont14 : ; preds = %omp.private.copy17
9898! CHECK-NEXT: %{{.*}} = phi ptr
9999! CHECK-NEXT: br label %omp.reduction.init
100100
101- ! CHECK: omp.reduction.init: ; preds = %omp.region.cont13
101+ ! CHECK: omp.reduction.init: ; preds = %omp.region.cont14
102102! [deffered stores for results of reduction alloc regions]
103103! CHECK: br label %[[VAL_96:.*]]
104104
105105! CHECK: omp.reduction.neutral: ; preds = %omp.reduction.init
106106! [start of reduction initialization region]
107107! [null check:]
108- ! CHECK: br i1 %{{.*}}, label %omp.reduction.neutral18 , label %omp.reduction.neutral19
108+ ! CHECK: br i1 %{{.*}}, label %omp.reduction.neutral19 , label %omp.reduction.neutral20
109109
110- ! CHECK: omp.reduction.neutral19 : ; preds = %omp.reduction.neutral
110+ ! CHECK: omp.reduction.neutral20 : ; preds = %omp.reduction.neutral
111111! [malloc and assign the default value to the reduction variable]
112- ! CHECK: br label %omp.reduction.neutral20
112+ ! CHECK: br label %omp.reduction.neutral21
113113
114- ! CHECK: omp.reduction.neutral20 : ; preds = %omp.reduction.neutral18 , %omp.reduction.neutral19
115- ! CHECK-NEXT: br label %omp.region.cont17
114+ ! CHECK: omp.reduction.neutral21 : ; preds = %omp.reduction.neutral19 , %omp.reduction.neutral20
115+ ! CHECK-NEXT: br label %omp.region.cont18
116116
117- ! CHECK: omp.region.cont17 : ; preds = %omp.reduction.neutral20
117+ ! CHECK: omp.region.cont18 : ; preds = %omp.reduction.neutral21
118118! CHECK-NEXT: %{{.*}} = phi ptr
119- ! CHECK-NEXT: br label %omp.reduction.neutral22
119+ ! CHECK-NEXT: br label %omp.reduction.neutral23
120120
121- ! CHECK: omp.reduction.neutral22 : ; preds = %omp.region.cont17
121+ ! CHECK: omp.reduction.neutral23 : ; preds = %omp.region.cont18
122122! [start of reduction initialization region]
123123! [null check:]
124- ! CHECK: br i1 %{{.*}}, label %omp.reduction.neutral23 , label %omp.reduction.neutral24
124+ ! CHECK: br i1 %{{.*}}, label %omp.reduction.neutral24 , label %omp.reduction.neutral25
125125
126- ! CHECK: omp.reduction.neutral24 : ; preds = %omp.reduction.neutral22
126+ ! CHECK: omp.reduction.neutral25 : ; preds = %omp.reduction.neutral23
127127! [malloc and assign the default value to the reduction variable]
128- ! CHECK: br label %omp.reduction.neutral25
128+ ! CHECK: br label %omp.reduction.neutral26
129129
130- ! CHECK: omp.reduction.neutral25 : ; preds = %omp.reduction.neutral23 , %omp.reduction.neutral24
131- ! CHECK-NEXT: br label %omp.region.cont21
130+ ! CHECK: omp.reduction.neutral26 : ; preds = %omp.reduction.neutral24 , %omp.reduction.neutral25
131+ ! CHECK-NEXT: br label %omp.region.cont22
132132
133- ! CHECK: omp.region.cont21 : ; preds = %omp.reduction.neutral25
133+ ! CHECK: omp.region.cont22 : ; preds = %omp.reduction.neutral26
134134! CHECK-NEXT: %{{.*}} = phi ptr
135135! CHECK-NEXT: br label %omp.par.region
136136
137- ! CHECK: omp.par.region: ; preds = %omp.region.cont21
138- ! CHECK-NEXT: br label %omp.par.region27
137+ ! CHECK: omp.par.region: ; preds = %omp.region.cont22
138+ ! CHECK-NEXT: br label %omp.par.region28
139139
140- ! CHECK: omp.par.region27 : ; preds = %omp.par.region
140+ ! CHECK: omp.par.region28 : ; preds = %omp.par.region
141141! [call SUM runtime function]
142142! [if (sum(a) == 1)]
143- ! CHECK: br i1 %{{.*}}, label %omp.par.region28 , label %omp.par.region29
143+ ! CHECK: br i1 %{{.*}}, label %omp.par.region29 , label %omp.par.region30
144144
145- ! CHECK: omp.par.region29 : ; preds = %omp.par.region27
146- ! CHECK-NEXT: br label %omp.region.cont26
145+ ! CHECK: omp.par.region30 : ; preds = %omp.par.region28
146+ ! CHECK-NEXT: br label %omp.region.cont27
147147
148- ! CHECK: omp.region.cont26 : ; preds = %omp.par.region28 , %omp.par.region29
148+ ! CHECK: omp.region.cont27 : ; preds = %omp.par.region29 , %omp.par.region30
149149! [omp parallel region done, call into the runtime to complete reduction]
150150! CHECK: %[[VAL_233:.*]] = call i32 @__kmpc_reduce(
151151! CHECK: switch i32 %[[VAL_233]], label %reduce.finalize [
152152! CHECK-NEXT: i32 1, label %reduce.switch.nonatomic
153153! CHECK-NEXT: i32 2, label %reduce.switch.atomic
154154! CHECK-NEXT: ]
155155
156- ! CHECK: reduce.switch.atomic: ; preds = %omp.region.cont26
156+ ! CHECK: reduce.switch.atomic: ; preds = %omp.region.cont27
157157! CHECK-NEXT: unreachable
158158
159- ! CHECK: reduce.switch.nonatomic: ; preds = %omp.region.cont26
159+ ! CHECK: reduce.switch.nonatomic: ; preds = %omp.region.cont27
160160! CHECK-NEXT: %[[red_private_value_0:.*]] = load ptr, ptr %{{.*}}, align 8
161161! CHECK-NEXT: br label %omp.reduction.nonatomic.body
162162
163163! [various blocks implementing the reduction]
164164
165- ! CHECK: omp.region.cont35 : ; preds =
165+ ! CHECK: omp.region.cont36 : ; preds =
166166! CHECK-NEXT: %{{.*}} = phi ptr
167167! CHECK-NEXT: call void @__kmpc_end_reduce(
168168! CHECK-NEXT: br label %reduce.finalize
@@ -176,79 +176,79 @@ subroutine worst_case(a, b, c, d)
176176
177177! CHECK: omp.reduction.cleanup: ; preds = %omp.par.pre_finalize
178178! [null check]
179- ! CHECK: br i1 %{{.*}}, label %omp.reduction.cleanup41 , label %omp.reduction.cleanup42
179+ ! CHECK: br i1 %{{.*}}, label %omp.reduction.cleanup42 , label %omp.reduction.cleanup43
180180
181- ! CHECK: omp.reduction.cleanup42 : ; preds = %omp.reduction.cleanup41 , %omp.reduction.cleanup
182- ! CHECK-NEXT: br label %omp.region.cont40
181+ ! CHECK: omp.reduction.cleanup43 : ; preds = %omp.reduction.cleanup42 , %omp.reduction.cleanup
182+ ! CHECK-NEXT: br label %omp.region.cont41
183183
184- ! CHECK: omp.region.cont40 : ; preds = %omp.reduction.cleanup42
184+ ! CHECK: omp.region.cont41 : ; preds = %omp.reduction.cleanup43
185185! CHECK-NEXT: %{{.*}} = load ptr, ptr
186- ! CHECK-NEXT: br label %omp.reduction.cleanup44
186+ ! CHECK-NEXT: br label %omp.reduction.cleanup45
187187
188- ! CHECK: omp.reduction.cleanup44 : ; preds = %omp.region.cont40
188+ ! CHECK: omp.reduction.cleanup45 : ; preds = %omp.region.cont41
189189! [null check]
190- ! CHECK: br i1 %{{.*}}, label %omp.reduction.cleanup45 , label %omp.reduction.cleanup46
190+ ! CHECK: br i1 %{{.*}}, label %omp.reduction.cleanup46 , label %omp.reduction.cleanup47
191191
192- ! CHECK: omp.reduction.cleanup46 : ; preds = %omp.reduction.cleanup45 , %omp.reduction.cleanup44
193- ! CHECK-NEXT: br label %omp.region.cont43
192+ ! CHECK: omp.reduction.cleanup47 : ; preds = %omp.reduction.cleanup46 , %omp.reduction.cleanup45
193+ ! CHECK-NEXT: br label %omp.region.cont44
194194
195- ! CHECK: omp.region.cont43 : ; preds = %omp.reduction.cleanup46
195+ ! CHECK: omp.region.cont44 : ; preds = %omp.reduction.cleanup47
196196! CHECK-NEXT: br label %omp.private.dealloc
197197
198- ! CHECK: omp.private.dealloc: ; preds = %omp.region.cont43
198+ ! CHECK: omp.private.dealloc: ; preds = %omp.region.cont44
199199! [null check]
200- ! CHECK: br i1 %{{.*}}, label %omp.private.dealloc48 , label %omp.private.dealloc49
200+ ! CHECK: br i1 %{{.*}}, label %omp.private.dealloc49 , label %omp.private.dealloc50
201201
202- ! CHECK: omp.private.dealloc49 : ; preds = %omp.private.dealloc48 , %omp.private.dealloc
203- ! CHECK-NEXT: br label %omp.region.cont47
202+ ! CHECK: omp.private.dealloc50 : ; preds = %omp.private.dealloc49 , %omp.private.dealloc
203+ ! CHECK-NEXT: br label %omp.region.cont48
204204
205- ! CHECK: omp.region.cont47 : ; preds = %omp.private.dealloc49
206- ! CHECK-NEXT: br label %omp.private.dealloc51
205+ ! CHECK: omp.region.cont48 : ; preds = %omp.private.dealloc50
206+ ! CHECK-NEXT: br label %omp.private.dealloc52
207207
208- ! CHECK: omp.private.dealloc51 : ; preds = %omp.region.cont47
208+ ! CHECK: omp.private.dealloc52 : ; preds = %omp.region.cont48
209209! [null check]
210- ! CHECK: br i1 %{{.*}}, label %omp.private.dealloc52 , label %omp.private.dealloc53
210+ ! CHECK: br i1 %{{.*}}, label %omp.private.dealloc53 , label %omp.private.dealloc54
211211
212- ! CHECK: omp.private.dealloc53 : ; preds = %omp.private.dealloc52 , %omp.private.dealloc51
213- ! CHECK-NEXT: br label %omp.region.cont50
212+ ! CHECK: omp.private.dealloc54 : ; preds = %omp.private.dealloc53 , %omp.private.dealloc52
213+ ! CHECK-NEXT: br label %omp.region.cont51
214214
215- ! CHECK: omp.region.cont50 : ; preds = %omp.private.dealloc53
215+ ! CHECK: omp.region.cont51 : ; preds = %omp.private.dealloc54
216216! CHECK-NEXT: br label %omp.par.outlined.exit.exitStub
217217
218- ! CHECK: omp.private.dealloc52 : ; preds = %omp.private.dealloc51
218+ ! CHECK: omp.private.dealloc53 : ; preds = %omp.private.dealloc52
219219! [dealloc memory]
220- ! CHECK: br label %omp.private.dealloc53
220+ ! CHECK: br label %omp.private.dealloc54
221221
222- ! CHECK: omp.private.dealloc48 : ; preds = %omp.private.dealloc
222+ ! CHECK: omp.private.dealloc49 : ; preds = %omp.private.dealloc
223223! [dealloc memory]
224- ! CHECK: br label %omp.private.dealloc49
224+ ! CHECK: br label %omp.private.dealloc50
225225
226- ! CHECK: omp.reduction.cleanup45 : ; preds = %omp.reduction.cleanup44
226+ ! CHECK: omp.reduction.cleanup46 : ; preds = %omp.reduction.cleanup45
227227! CHECK-NEXT: call void @free(
228- ! CHECK-NEXT: br label %omp.reduction.cleanup46
228+ ! CHECK-NEXT: br label %omp.reduction.cleanup47
229229
230- ! CHECK: omp.reduction.cleanup41 : ; preds = %omp.reduction.cleanup
230+ ! CHECK: omp.reduction.cleanup42 : ; preds = %omp.reduction.cleanup
231231! CHECK-NEXT: call void @free(
232- ! CHECK-NEXT: br label %omp.reduction.cleanup42
232+ ! CHECK-NEXT: br label %omp.reduction.cleanup43
233233
234- ! CHECK: omp.par.region28 : ; preds = %omp.par.region27
234+ ! CHECK: omp.par.region29 : ; preds = %omp.par.region28
235235! CHECK-NEXT: call {} @_FortranAStopStatement
236236
237- ! CHECK: omp.reduction.neutral23 : ; preds = %omp.reduction.neutral22
237+ ! CHECK: omp.reduction.neutral24 : ; preds = %omp.reduction.neutral23
238238! [source length was zero: finish initializing array]
239- ! CHECK: br label %omp.reduction.neutral25
239+ ! CHECK: br label %omp.reduction.neutral26
240240
241- ! CHECK: omp.reduction.neutral18 : ; preds = %omp.reduction.neutral
241+ ! CHECK: omp.reduction.neutral19 : ; preds = %omp.reduction.neutral
242242! [source length was zero: finish initializing array]
243- ! CHECK: br label %omp.reduction.neutral20
243+ ! CHECK: br label %omp.reduction.neutral21
244244
245- ! CHECK: omp.private.copy15 : ; preds = %omp.private.copy14
245+ ! CHECK: omp.private.copy16 : ; preds = %omp.private.copy15
246246! [source length was non-zero: call assign runtime]
247- ! CHECK: br label %omp.private.copy16
247+ ! CHECK: br label %omp.private.copy17
248248
249- ! CHECK: omp.private.copy11 : ; preds = %omp.private.copy10
249+ ! CHECK: omp.private.copy12 : ; preds = %omp.private.copy11
250250! [source length was non-zero: call assign runtime]
251- ! CHECK: br label %omp.private.copy12
251+ ! CHECK: br label %omp.private.copy13
252252
253253! CHECK: omp.private.alloc1: ; preds = %omp.private.alloc
254254! [var extent was non-zero: malloc a private array]
@@ -258,5 +258,5 @@ subroutine worst_case(a, b, c, d)
258258! [var extent was non-zero: malloc a private array]
259259! CHECK: br label %omp.private.alloc8
260260
261- ! CHECK: omp.par.outlined.exit.exitStub: ; preds = %omp.region.cont50
261+ ! CHECK: omp.par.outlined.exit.exitStub: ; preds = %omp.region.cont51
262262! CHECK-NEXT: ret void
0 commit comments