|
5 | 5 |
|
6 | 6 | ! Privatizers
|
7 | 7 |
|
| 8 | +! CHECK-LABEL: omp.private |
| 9 | +! CHECK-SAME: {type = firstprivate} @[[TEST7_Y_FIRSTPRIV:.*]] : i32 |
| 10 | +! CHECK-SAME: copy { |
| 11 | + |
| 12 | +! CHECK-LABEL: omp.private |
| 13 | +! CHECK-SAME: {type = firstprivate} @[[TEST7_X_FIRSTPRIV:.*]] : i32 |
| 14 | +! CHECK-SAME: copy { |
| 15 | + |
8 | 16 | ! CHECK-LABEL: omp.private
|
9 | 17 | ! CHECK-SAME: {type = private} @[[TEST6_Y_PRIV:.*]] : i32
|
10 | 18 | ! CHECK-NOT: copy {
|
@@ -277,22 +285,19 @@ subroutine implicit_dsa_test6
|
277 | 285 | !$omp end task
|
278 | 286 | end subroutine
|
279 | 287 |
|
280 |
| -! Test taskgroup - it uses the same scope as task. |
| 288 | +! Test taskgroup. |
281 | 289 | !CHECK-LABEL: func @_QPimplicit_dsa_test7
|
282 | 290 | !CHECK: %[[X:.*]] = fir.alloca i32 {bindc_name = "x", uniq_name = "_QFimplicit_dsa_test7Ex"}
|
283 | 291 | !CHECK: %[[X_DECL:.*]]:2 = hlfir.declare %[[X]] {uniq_name = "_QFimplicit_dsa_test7Ex"} : (!fir.ref<i32>) -> (!fir.ref<i32>, !fir.ref<i32>)
|
284 | 292 | !CHECK: %[[Y:.*]] = fir.alloca i32 {bindc_name = "y", uniq_name = "_QFimplicit_dsa_test7Ey"}
|
285 | 293 | !CHECK: %[[Y_DECL:.*]]:2 = hlfir.declare %[[Y]] {uniq_name = "_QFimplicit_dsa_test7Ey"} : (!fir.ref<i32>) -> (!fir.ref<i32>, !fir.ref<i32>)
|
286 |
| -!CHECK: omp.task { |
| 294 | +!CHECK: omp.task private(@[[TEST7_X_FIRSTPRIV]] %[[X_DECL]]#0 -> %[[PRIV_X:[^,]*]], |
| 295 | +!CHECK-SAME: @[[TEST7_Y_FIRSTPRIV]] %[[Y_DECL]]#0 -> %[[PRIV_Y:.*]] : !fir.ref<i32>, !fir.ref<i32>) { |
| 296 | +!CHECK: %[[PRIV_X_DECL:.*]]:2 = hlfir.declare %[[PRIV_X]] {uniq_name = "_QFimplicit_dsa_test7Ex"} |
| 297 | +!CHECK: %[[PRIV_Y_DECL:.*]]:2 = hlfir.declare %[[PRIV_Y]] {uniq_name = "_QFimplicit_dsa_test7Ey"} |
287 | 298 | !CHECK: omp.taskgroup {
|
288 |
| -!CHECK-NEXT: %[[PRIV_X:.*]] = fir.alloca i32 {bindc_name = "x", pinned, uniq_name = "_QFimplicit_dsa_test7Ex"} |
289 |
| -!CHECK-NEXT: %[[PRIV_X_DECL:.*]]:2 = hlfir.declare %[[PRIV_X]] {uniq_name = "_QFimplicit_dsa_test7Ex"} : (!fir.ref<i32>) -> (!fir.ref<i32>, !fir.ref<i32>) |
290 |
| -!CHECK-NEXT: %[[TEMP:.*]] = fir.load %[[X_DECL]]#0 : !fir.ref<i32> |
| 299 | +!CHECK-NEXT: %[[TEMP:.*]] = fir.load %[[PRIV_Y_DECL]]#0 : !fir.ref<i32> |
291 | 300 | !CHECK-NEXT: hlfir.assign %[[TEMP]] to %[[PRIV_X_DECL]]#0 : i32, !fir.ref<i32>
|
292 |
| -!CHECK-NEXT: %[[PRIV_Y:.*]] = fir.alloca i32 {bindc_name = "y", pinned, uniq_name = "_QFimplicit_dsa_test7Ey"} |
293 |
| -!CHECK-NEXT: %[[PRIV_Y_DECL:.*]]:2 = hlfir.declare %[[PRIV_Y]] {uniq_name = "_QFimplicit_dsa_test7Ey"} : (!fir.ref<i32>) -> (!fir.ref<i32>, !fir.ref<i32>) |
294 |
| -!CHECK-NEXT: %[[TEMP2:.*]] = fir.load %[[Y_DECL]]#0 : !fir.ref<i32> |
295 |
| -!CHECK-NEXT: hlfir.assign %[[TEMP2]] to %[[PRIV_Y_DECL]]#0 : i32, !fir.ref<i32> |
296 | 301 | !CHECK: }
|
297 | 302 | !CHECK: }
|
298 | 303 | subroutine implicit_dsa_test7
|
|
0 commit comments