File tree Expand file tree Collapse file tree 1 file changed +15
-0
lines changed Expand file tree Collapse file tree 1 file changed +15
-0
lines changed Original file line number Diff line number Diff line change @@ -185,4 +185,19 @@ program OmpAtomicUpdate
185185 ! $omp atomic update
186186 w = max (w,x,y,z)
187187
188+ ! CHECK: %[[IMP_DO:.*]] = hlfir.elemental %{{.*}} unordered : (!fir.shape<1>) -> !hlfir.expr<?xi32> {
189+ ! CHECK: ^bb0(%{{.*}}: index):
190+ ! [...]
191+ ! CHECK: %[[ADD_I1:.*]] = arith.addi {{.*}} : i32
192+ ! CHECK: hlfir.yield_element %[[ADD_I1]] : i32
193+ ! CHECK: }
194+ ! [...]
195+ ! CHECK: %[[SUM:.*]] = hlfir.sum %[[IMP_DO]]
196+ ! CHECK: omp.atomic.update %[[VAL_X_DECLARE]]#1 : !fir.ref<i32> {
197+ ! CHECK: ^bb0(%[[ARG0:.*]]: i32):
198+ ! CHECK: %[[ADD_I2:.*]] = arith.addi %[[ARG0]], %[[SUM]] : i32
199+ ! CHECK: omp.yield(%[[ADD_I2]] : i32)
200+ ! CHECK: }
201+ ! $omp atomic update
202+ x = x + sum ([ (y+2 , y= 1 , z) ])
188203end program OmpAtomicUpdate
You can’t perform that action at this time.
0 commit comments