@@ -24,7 +24,7 @@ func.func private @g(%b : !fir.box<f32>)
2424func.func private @ga(%b : !fir.box<!fir.array<?xf32>>)
2525
2626// CHECK-LABEL: define void @f
27- // CHECK: (ptr nocapture %[[ARG:.*]])
27+ // CHECK: (ptr captures(none) %[[ARG:.*]])
2828func.func @f(%a : !fir.ref<f32>) {
2929 // CHECK: %[[DESC:.*]] = alloca { ptr, i64, i32, i8, i8, i8, i8 }
3030 // CHECK: %[[INS0:.*]] = insertvalue {{.*}} { ptr undef, i64 ptrtoint (ptr getelementptr (float, ptr null, i32 1) to i64), i32 20240719, i8 0, i8 27, i8 0, i8 0 }, ptr %[[ARG]], 0
@@ -38,7 +38,7 @@ func.func @f(%a : !fir.ref<f32>) {
3838}
3939
4040// CHECK-LABEL: define void @fa
41- // CHECK: (ptr nocapture %[[ARG:.*]])
41+ // CHECK: (ptr captures(none) %[[ARG:.*]])
4242func.func @fa(%a : !fir.ref<!fir.array<100xf32>>) {
4343 %c = fir.convert %a : (!fir.ref<!fir.array<100xf32>>) -> !fir.ref<!fir.array<?xf32>>
4444 %c1 = arith.constant 1 : index
@@ -54,7 +54,7 @@ func.func @fa(%a : !fir.ref<!fir.array<100xf32>>) {
5454
5555// Boxing of a scalar character of dynamic length
5656// CHECK-LABEL: define void @b1(
57- // CHECK-SAME: ptr nocapture %[[res:.*]], ptr nocapture %[[arg0:.*]], i64 %[[arg1:.*]])
57+ // CHECK-SAME: ptr captures(none) %[[res:.*]], ptr captures(none) %[[arg0:.*]], i64 %[[arg1:.*]])
5858func.func @b1(%arg0 : !fir.ref<!fir.char<1,?>>, %arg1 : index) -> !fir.box<!fir.char<1,?>> {
5959 // CHECK: %[[alloca:.*]] = alloca { ptr, i64, i32, i8, i8, i8, i8 }
6060 // CHECK: %[[size:.*]] = mul i64 ptrtoint (ptr getelementptr (i8, ptr null, i32 1) to i64), %[[arg1]]
@@ -69,8 +69,8 @@ func.func @b1(%arg0 : !fir.ref<!fir.char<1,?>>, %arg1 : index) -> !fir.box<!fir.
6969
7070// Boxing of a dynamic array of character with static length (5)
7171// CHECK-LABEL: define void @b2(
72- // CHECK-SAME: ptr nocapture %[[res]],
73- // CHECK-SAME: ptr nocapture %[[arg0:.*]], i64 %[[arg1:.*]])
72+ // CHECK-SAME: ptr captures(none) %[[res]],
73+ // CHECK-SAME: ptr captures(none) %[[arg0:.*]], i64 %[[arg1:.*]])
7474func.func @b2(%arg0 : !fir.ref<!fir.array<?x!fir.char<1,5>>>, %arg1 : index) -> !fir.box<!fir.array<?x!fir.char<1,5>>> {
7575 %1 = fir.shape %arg1 : (index) -> !fir.shape<1>
7676 // CHECK: %[[alloca:.*]] = alloca { ptr, i64, i32, i8, i8, i8, i8, [1 x [3 x i64]] }
@@ -85,7 +85,7 @@ func.func @b2(%arg0 : !fir.ref<!fir.array<?x!fir.char<1,5>>>, %arg1 : index) ->
8585
8686// Boxing of a dynamic array of character of dynamic length
8787// CHECK-LABEL: define void @b3(
88- // CHECK-SAME: ptr nocapture %[[res:.*]], ptr nocapture %[[arg0:.*]], i64 %[[arg1:.*]], i64 %[[arg2:.*]])
88+ // CHECK-SAME: ptr captures(none) %[[res:.*]], ptr captures(none) %[[arg0:.*]], i64 %[[arg1:.*]], i64 %[[arg2:.*]])
8989func.func @b3(%arg0 : !fir.ref<!fir.array<?x!fir.char<1,?>>>, %arg1 : index, %arg2 : index) -> !fir.box<!fir.array<?x!fir.char<1,?>>> {
9090 %1 = fir.shape %arg2 : (index) -> !fir.shape<1>
9191 // CHECK: %[[alloca:.*]] = alloca { ptr, i64, i32, i8, i8, i8, i8, [1 x [3 x i64]] }
@@ -103,7 +103,7 @@ func.func @b3(%arg0 : !fir.ref<!fir.array<?x!fir.char<1,?>>>, %arg1 : index, %ar
103103
104104// Boxing of a static array of character of dynamic length
105105// CHECK-LABEL: define void @b4(
106- // CHECK-SAME: ptr nocapture %[[res:.*]], ptr nocapture %[[arg0:.*]], i64 %[[arg1:.*]])
106+ // CHECK-SAME: ptr captures(none) %[[res:.*]], ptr captures(none) %[[arg0:.*]], i64 %[[arg1:.*]])
107107func.func @b4(%arg0 : !fir.ref<!fir.array<7x!fir.char<1,?>>>, %arg1 : index) -> !fir.box<!fir.array<7x!fir.char<1,?>>> {
108108 %c_7 = arith.constant 7 : index
109109 %1 = fir.shape %c_7 : (index) -> !fir.shape<1>
@@ -122,7 +122,7 @@ func.func @b4(%arg0 : !fir.ref<!fir.array<7x!fir.char<1,?>>>, %arg1 : index) ->
122122
123123// Storing a fir.box into a fir.ref<fir.box> (modifying descriptors).
124124// CHECK-LABEL: define void @b5(
125- // CHECK-SAME: ptr nocapture %[[arg0:.*]], ptr %[[arg1:.*]])
125+ // CHECK-SAME: ptr captures(none) %[[arg0:.*]], ptr %[[arg1:.*]])
126126func.func @b5(%arg0 : !fir.ref<!fir.box<!fir.heap<!fir.array<?x?xf32>>>>, %arg1 : !fir.box<!fir.heap<!fir.array<?x?xf32>>>) {
127127 fir.store %arg1 to %arg0 : !fir.ref<!fir.box<!fir.heap<!fir.array<?x?xf32>>>>
128128 // CHECK: call void @llvm.memcpy.p0.p0.i32(ptr %0, ptr %1, i32 72, i1 false)
@@ -132,7 +132,7 @@ func.func @b5(%arg0 : !fir.ref<!fir.box<!fir.heap<!fir.array<?x?xf32>>>>, %arg1
132132func.func private @callee6(!fir.box<none>) -> i32
133133
134134// CHECK-LABEL: define i32 @box6(
135- // CHECK-SAME: ptr nocapture %[[ARG0:.*]], i64 %[[ARG1:.*]], i64 %[[ARG2:.*]])
135+ // CHECK-SAME: ptr captures(none) %[[ARG0:.*]], i64 %[[ARG1:.*]], i64 %[[ARG2:.*]])
136136func.func @box6(%0 : !fir.ref<!fir.array<?x?x?x?xf32>>, %1 : index, %2 : index) -> i32 {
137137 %c100 = arith.constant 100 : index
138138 %c50 = arith.constant 50 : index
0 commit comments