[flang-commits] [flang] [mlir] [mlir][OpenMP][flang] make private variable allocation implicit in omp.private (PR #124019)
Tom Eccles via flang-commits
flang-commits at lists.llvm.org
Mon Jan 27 03:22:12 PST 2025
================
@@ -13,32 +13,42 @@ module m1
contains
+!CHECK-LABEL: omp.private {type = private} @_QMm1Ftest_class_allocatable
+!CHECK: fir.call @_FortranAInitialize
+!CHECK: omp.yield
+
+!CHECK-LABEL: omp.private {type = private} @_QMm1Ftest_allocatable
+!CHECK: fir.call @_FortranAInitialize
+!CHECK: omp.yield
+
!CHECK-LABEL: omp.private {type = private} @_QMm1Ftest_pointer
!CHECK-NOT: fir.call @_FortranAInitializeClone
!CHECK: omp.yield
!CHECK-LABEL: omp.private {type = private} @_QMm1Ftest_nested
!CHECK: fir.call @_FortranAInitializeClone
-!CHECK-NEXT: omp.yield
+!CHECK: omp.yield
!CHECK-LABEL: omp.private {type = private} @_QMm1Ftest_array_of_allocs
!CHECK: fir.call @_FortranAInitializeClone
-!CHECK-NEXT: omp.yield
+!CHECK: omp.yield
!CHECK: } dealloc {
!CHECK: fir.call @_FortranAAllocatableDeallocate
!CHECK: omp.yield
!CHECK-LABEL: omp.private {type = firstprivate} @_QMm1Ftest_array
+!CHECK: fir.call @_FortranAInitialize(
!CHECK-NOT: fir.call @_FortranAInitializeClone
!CHECK: omp.yield
!CHECK-LABEL: omp.private {type = private} @_QMm1Ftest_array
+!CHECK: fir.call @_FortranAInitialize(
!CHECK: fir.call @_FortranAInitializeClone
-!CHECK-NEXT: omp.yield
+!CHECK: omp.yield
!CHECK-LABEL: omp.private {type = private} @_QMm1Ftest_scalar
!CHECK: fir.call @_FortranAInitializeClone
-!CHECK-NEXT: omp.yield
+!CHECK: omp.yield
----------------
tblah wrote:
No the following operation is a `fir.store %box_value to %private_allocation_arg`. Would you like me to add the stores to these and bring back the CHECK-NEXT?
https://github.com/llvm/llvm-project/pull/124019
More information about the flang-commits
mailing list