@@ -1019,29 +1019,26 @@ func.func @omp_map_info_nested_derived_type_explicit_member_conversion(%arg0 : !
1019
1019
// CHECK: %{{.*}} = llvm.getelementptr %[[ARG0]][%[[VAR_2_OFFSET]]] : (!llvm.ptr, i64) -> !llvm.ptr, i8
1020
1020
1021
1021
func.func @omp_map_common_block_using_common_block_symbol() {
1022
- %0 = fir.address_of(@var_common_) : !fir.ref<!fir.array<8xi8>>
1023
- %1 = omp.map.info var_ptr(%0 : !fir.ref<!fir.array<8xi8>>, !fir.array<8xi8>) map_clauses(tofrom) capture(ByRef) -> !fir.ref<!fir.array<8xi8>> {name = "var_common"}
1024
- omp.target map_entries(%1 -> %arg0 : !fir.ref<!fir.array<8xi8>>) {
1025
- ^bb0(%arg0: !fir.ref<!fir.array<8xi8>>):
1026
- %c4_0 = arith.constant 4 : index
1027
- %c0_1 = arith.constant 0 : index
1028
- %c20_i32 = arith.constant 20 : i32
1029
- %2 = fir.convert %arg0 : (!fir.ref<!fir.array<8xi8>>) -> !fir.ref<!fir.array<?xi8>>
1030
- %3 = fir.coordinate_of %2, %c0_1 : (!fir.ref<!fir.array<?xi8>>, index) -> !fir.ref<i8>
1031
- %4 = fir.convert %3 : (!fir.ref<i8>) -> !fir.ref<i32>
1032
- %5 = fir.declare %4 {uniq_name = "_QFEvar1"} : (!fir.ref<i32>) -> !fir.ref<i32>
1033
- %6 = fir.convert %arg0 : (!fir.ref<!fir.array<8xi8>>) -> !fir.ref<!fir.array<?xi8>>
1034
- %7 = fir.coordinate_of %6, %c4_0 : (!fir.ref<!fir.array<?xi8>>, index) -> !fir.ref<i8>
1035
- %8 = fir.convert %7 : (!fir.ref<i8>) -> !fir.ref<i32>
1036
- %9 = fir.declare %8 {uniq_name = "_QFEvar2"} : (!fir.ref<i32>) -> !fir.ref<i32>
1037
- %10 = fir.load %5 : !fir.ref<i32>
1038
- %11 = fir.load %9 : !fir.ref<i32>
1039
- %12 = arith.addi %10, %c20_i32 : i32
1040
- fir.store %12 to %9 : !fir.ref<i32>
1041
- omp.terminator
1042
- }
1043
- return
1022
+ %0 = fir.address_of(@var_common_) : !fir.ref<!fir.array<8xi8>>
1023
+ %1 = omp.map.info var_ptr(%0 : !fir.ref<!fir.array<8xi8>>, !fir.array<8xi8>) map_clauses(tofrom) capture(ByRef) -> !fir.ref<!fir.array<8xi8>> {name = "var_common"}
1024
+ omp.target map_entries(%1 -> %arg0 : !fir.ref<!fir.array<8xi8>>) {
1025
+ ^bb0(%arg0: !fir.ref<!fir.array<8xi8>>):
1026
+ %c4 = arith.constant 4 : index
1027
+ %c0 = arith.constant 0 : index
1028
+ %c20_i32 = arith.constant 20 : i32
1029
+ %2 = fir.convert %arg0 : (!fir.ref<!fir.array<8xi8>>) -> !fir.ref<!fir.array<?xi8>>
1030
+ %3 = fir.coordinate_of %2, %c0 : (!fir.ref<!fir.array<?xi8>>, index) -> !fir.ref<i8>
1031
+ %4 = fir.convert %3 : (!fir.ref<i8>) -> !fir.ref<i32>
1032
+ %5 = fir.convert %arg0 : (!fir.ref<!fir.array<8xi8>>) -> !fir.ref<!fir.array<?xi8>>
1033
+ %6 = fir.coordinate_of %5, %c4 : (!fir.ref<!fir.array<?xi8>>, index) -> !fir.ref<i8>
1034
+ %7 = fir.convert %6 : (!fir.ref<i8>) -> !fir.ref<i32>
1035
+ %8 = fir.load %4 : !fir.ref<i32>
1036
+ %9 = arith.addi %8, %c20_i32 : i32
1037
+ fir.store %9 to %7 : !fir.ref<i32>
1038
+ omp.terminator
1044
1039
}
1040
+ return
1041
+ }
1045
1042
1046
1043
fir.global common @var_common_(dense<0> : vector<8xi8>) {alignment = 4 : i64} : !fir.array<8xi8>
1047
1044
@@ -1066,21 +1063,17 @@ func.func @omp_map_common_block_using_common_block_members() {
1066
1063
%1 = fir.convert %0 : (!fir.ref<!fir.array<8xi8>>) -> !fir.ref<!fir.array<?xi8>>
1067
1064
%2 = fir.coordinate_of %1, %c0 : (!fir.ref<!fir.array<?xi8>>, index) -> !fir.ref<i8>
1068
1065
%3 = fir.convert %2 : (!fir.ref<i8>) -> !fir.ref<i32>
1069
- %4 = fir.declare %3 {uniq_name = "_QFmodify_2Evar1"} : (!fir.ref<i32>) -> !fir.ref<i32>
1070
- %5 = fir.convert %0 : (!fir.ref<!fir.array<8xi8>>) -> !fir.ref<!fir.array<?xi8>>
1071
- %6 = fir.coordinate_of %5, %c4 : (!fir.ref<!fir.array<?xi8>>, index) -> !fir.ref<i8>
1072
- %7 = fir.convert %6 : (!fir.ref<i8>) -> !fir.ref<i32>
1073
- %8 = fir.declare %7 {uniq_name = "_QFmodify_2Evar2"} : (!fir.ref<i32>) -> !fir.ref<i32>
1074
- %9 = omp.map.info var_ptr(%4 : !fir.ref<i32>, i32) map_clauses(tofrom) capture(ByRef) -> !fir.ref<i32> {name = "var1"}
1075
- %10 = omp.map.info var_ptr(%8 : !fir.ref<i32>, i32) map_clauses(tofrom) capture(ByRef) -> !fir.ref<i32> {name = "var2"}
1076
- omp.target map_entries(%9 -> %arg0, %10 -> %arg1 : !fir.ref<i32>, !fir.ref<i32>) {
1066
+ %4 = fir.convert %0 : (!fir.ref<!fir.array<8xi8>>) -> !fir.ref<!fir.array<?xi8>>
1067
+ %5 = fir.coordinate_of %4, %c4 : (!fir.ref<!fir.array<?xi8>>, index) -> !fir.ref<i8>
1068
+ %6 = fir.convert %5 : (!fir.ref<i8>) -> !fir.ref<i32>
1069
+ %7 = omp.map.info var_ptr(%3 : !fir.ref<i32>, i32) map_clauses(tofrom) capture(ByRef) -> !fir.ref<i32> {name = "var1"}
1070
+ %8 = omp.map.info var_ptr(%6 : !fir.ref<i32>, i32) map_clauses(tofrom) capture(ByRef) -> !fir.ref<i32> {name = "var2"}
1071
+ omp.target map_entries(%7 -> %arg0, %8 -> %arg1 : !fir.ref<i32>, !fir.ref<i32>) {
1077
1072
^bb0(%arg0: !fir.ref<i32>, %arg1: !fir.ref<i32>):
1078
1073
%c10_i32 = arith.constant 10 : i32
1079
- %11 = fir.declare %arg0 {uniq_name = "_QFmodify_2Evar1"} : (!fir.ref<i32>) -> !fir.ref<i32>
1080
- %12 = fir.declare %arg1 {uniq_name = "_QFmodify_2Evar2"} : (!fir.ref<i32>) -> !fir.ref<i32>
1081
- %13 = fir.load %11 : !fir.ref<i32>
1082
- %14 = arith.muli %13, %c10_i32 : i32
1083
- fir.store %14 to %12 : !fir.ref<i32>
1074
+ %9 = fir.load %arg0 : !fir.ref<i32>
1075
+ %10 = arith.muli %9, %c10_i32 : i32
1076
+ fir.store %10 to %arg1 : !fir.ref<i32>
1084
1077
omp.terminator
1085
1078
}
1086
1079
return
0 commit comments