Skip to content

Commit 29b2a4e

Browse files
authored
[CIR][NFC] Update formatting for ptr stride op (#1889)
Fixes #1888. #1863 requires this to move forward
1 parent 327ce45 commit 29b2a4e

37 files changed

+141
-142
lines changed

clang/include/clang/CIR/Dialect/IR/CIROps.td

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -409,8 +409,7 @@ def CIR_PtrStrideOp : CIR_Op<"ptr_stride",[
409409
let results = (outs CIR_PointerType:$result);
410410

411411
let assemblyFormat = [{
412-
`(` $base `:` qualified(type($base)) `,` $stride `:` qualified(type($stride)) `)`
413-
`,` qualified(type($result)) attr-dict
412+
$base`,` $stride `:` functional-type(operands, results) attr-dict
414413
}];
415414

416415
let extraClassDeclaration = [{

clang/test/CIR/CodeGen/AArch64/neon-misc.c

Lines changed: 44 additions & 44 deletions
Large diffs are not rendered by default.

clang/test/CIR/CodeGen/address-space-conversion.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ void test_nullptr() {
5858

5959
void test_side_effect(pi1_t b) {
6060
pi2_t p = (pi2_t)(*b++, (int*)0);
61-
// CIR: %{{[0-9]+}} = cir.ptr_stride(%{{[0-9]+}} : !cir.ptr<!s32i, addrspace(target<1>)>, %{{[0-9]+}} : !s32i), !cir.ptr<!s32i, addrspace(target<1>)>
61+
// CIR: %{{[0-9]+}} = cir.ptr_stride %{{[0-9]+}}, %{{[0-9]+}} : (!cir.ptr<!s32i, addrspace(target<1>)>, !s32i) -> !cir.ptr<!s32i, addrspace(target<1>)>
6262
// CIR: %[[#CAST:]] = cir.const #cir.ptr<null> : !cir.ptr<!s32i, addrspace(target<2>)>
6363
// CIR-NEXT: cir.store{{.*}} %[[#CAST]], %{{[0-9]+}} : !cir.ptr<!s32i, addrspace(target<2>)>, !cir.ptr<!cir.ptr<!s32i, addrspace(target<2>)>>
6464

clang/test/CIR/CodeGen/agg-copy.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,10 @@ typedef struct {
1616
// CHECK: cir.store{{.*}} %arg1, [[TMP1]] : !cir.ptr<!rec_A>, !cir.ptr<!cir.ptr<!rec_A>>
1717
// CHECK: [[TMP2:%.*]] = cir.load{{.*}} [[TMP0]] : !cir.ptr<!cir.ptr<!rec_A>>, !cir.ptr<!rec_A>
1818
// CHECK: [[TMP3:%.*]] = cir.const #cir.int<1> : !s32i
19-
// CHECK: [[TMP4:%.*]] = cir.ptr_stride([[TMP2]] : !cir.ptr<!rec_A>, [[TMP3]] : !s32i), !cir.ptr<!rec_A>
19+
// CHECK: [[TMP4:%.*]] = cir.ptr_stride [[TMP2]], [[TMP3]] : (!cir.ptr<!rec_A>, !s32i) -> !cir.ptr<!rec_A>
2020
// CHECK: [[TMP5:%.*]] = cir.load{{.*}} [[TMP1]] : !cir.ptr<!cir.ptr<!rec_A>>, !cir.ptr<!rec_A>
2121
// CHECK: [[TMP6:%.*]] = cir.const #cir.int<1> : !s32i
22-
// CHECK: [[TMP7:%.*]] = cir.ptr_stride([[TMP5]] : !cir.ptr<!rec_A>, [[TMP6]] : !s32i), !cir.ptr<!rec_A>
22+
// CHECK: [[TMP7:%.*]] = cir.ptr_stride [[TMP5]], [[TMP6]] : (!cir.ptr<!rec_A>, !s32i) -> !cir.ptr<!rec_A>
2323
// CHECK: cir.copy [[TMP7]] to [[TMP4]] : !cir.ptr<!rec_A>
2424
void foo1(A* a1, A* a2) {
2525
a1[1] = a2[1];

clang/test/CIR/CodeGen/applearm64-array-cookies.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,11 @@ void t_constant_size_nontrivial() {
1919
// CHECK: %[[#ELEMENT_SIZE:]] = cir.const #cir.int<1> : !u64i
2020
// CHECK: cir.store{{.*}} %[[#ELEMENT_SIZE]], %[[#COOKIE_PTR]] : !u64i, !cir.ptr<!u64i>
2121
// CHECK: %[[#SECOND_COOKIE_OFFSET:]] = cir.const #cir.int<1> : !s32i
22-
// CHECK: %[[#COOKIE_PTR2:]] = cir.ptr_stride(%[[#COOKIE_PTR]] : !cir.ptr<!u64i>, %[[#SECOND_COOKIE_OFFSET]] : !s32i), !cir.ptr<!u64i>
22+
// CHECK: %[[#COOKIE_PTR2:]] = cir.ptr_stride %[[#COOKIE_PTR]], %[[#SECOND_COOKIE_OFFSET]] : (!cir.ptr<!u64i>, !s32i) -> !cir.ptr<!u64i>
2323
// CHECK: cir.store{{.*}} %[[#NUM_ELEMENTS]], %[[#COOKIE_PTR2]] : !u64i, !cir.ptr<!u64i>
2424
// CHECK: %[[#COOKIE_SIZE:]] = cir.const #cir.int<16> : !s32i
2525
// CHECK: %[[#ALLOC_AS_I8:]] = cir.cast(bitcast, %[[#ALLOC_PTR]] : !cir.ptr<!void>), !cir.ptr<!u8i>
26-
// CHECK: cir.ptr_stride(%[[#ALLOC_AS_I8]] : !cir.ptr<!u8i>, %[[#COOKIE_SIZE]] : !s32i), !cir.ptr<!u8i>
26+
// CHECK: cir.ptr_stride %[[#ALLOC_AS_I8]], %[[#COOKIE_SIZE]] : (!cir.ptr<!u8i>, !s32i) -> !cir.ptr<!u8i>
2727

2828
class D {
2929
public:
@@ -47,8 +47,8 @@ void t_constant_size_nontrivial2() {
4747
// CHECK: %[[#ELEMENT_SIZE:]] = cir.const #cir.int<4> : !u64i
4848
// CHECK: cir.store{{.*}} %[[#ELEMENT_SIZE]], %[[#COOKIE_PTR]] : !u64i, !cir.ptr<!u64i>
4949
// CHECK: %[[#SECOND_COOKIE_OFFSET:]] = cir.const #cir.int<1> : !s32i
50-
// CHECK: %[[#COOKIE_PTR2:]] = cir.ptr_stride(%[[#COOKIE_PTR]] : !cir.ptr<!u64i>, %[[#SECOND_COOKIE_OFFSET]] : !s32i), !cir.ptr<!u64i>
50+
// CHECK: %[[#COOKIE_PTR2:]] = cir.ptr_stride %[[#COOKIE_PTR]], %[[#SECOND_COOKIE_OFFSET]] : (!cir.ptr<!u64i>, !s32i) -> !cir.ptr<!u64i>
5151
// CHECK: cir.store{{.*}} %[[#NUM_ELEMENTS]], %[[#COOKIE_PTR2]] : !u64i, !cir.ptr<!u64i>
5252
// CHECK: %[[#COOKIE_SIZE:]] = cir.const #cir.int<16> : !s32i
5353
// CHECK: %[[#ALLOC_AS_I8:]] = cir.cast(bitcast, %[[#ALLOC_PTR]] : !cir.ptr<!void>), !cir.ptr<!u8i>
54-
// CHECK: cir.ptr_stride(%[[#ALLOC_AS_I8]] : !cir.ptr<!u8i>, %[[#COOKIE_SIZE]] : !s32i), !cir.ptr<!u8i>
54+
// CHECK: cir.ptr_stride %[[#ALLOC_AS_I8]], %[[#COOKIE_SIZE]] : (!cir.ptr<!u8i>, !s32i) -> !cir.ptr<!u8i>

clang/test/CIR/CodeGen/array-init-destroy.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,14 +41,14 @@ void x() {
4141
// AFTER: %[[ArrayAddr0:.*]] = cir.alloca !cir.array<!rec_xpto x 2>
4242
// AFTER: %[[ConstTwo:.*]] = cir.const #cir.int<2> : !u64i
4343
// AFTER: %[[ArrayBegin:.*]] = cir.cast(array_to_ptrdecay, %[[ArrayAddr0]] : !cir.ptr<!cir.array<!rec_xpto x 2>>), !cir.ptr<!rec_xpto>
44-
// AFTER: %[[ArrayPastEnd:.*]] = cir.ptr_stride(%[[ArrayBegin]] : !cir.ptr<!rec_xpto>, %[[ConstTwo]] : !u64i), !cir.ptr<!rec_xpto>
44+
// AFTER: %[[ArrayPastEnd:.*]] = cir.ptr_stride %[[ArrayBegin]], %[[ConstTwo]] : (!cir.ptr<!rec_xpto>, !u64i) -> !cir.ptr<!rec_xpto>
4545
// AFTER: %[[TmpIdx:.*]] = cir.alloca !cir.ptr<!rec_xpto>, !cir.ptr<!cir.ptr<!rec_xpto>>, ["__array_idx"] {alignment = 1 : i64}
4646
// AFTER: cir.store %[[ArrayBegin]], %[[TmpIdx]] : !cir.ptr<!rec_xpto>, !cir.ptr<!cir.ptr<!rec_xpto>>
4747
// AFTER: cir.do {
4848
// AFTER: %[[ArrayElt:.*]] = cir.load %[[TmpIdx]] : !cir.ptr<!cir.ptr<!rec_xpto>>, !cir.ptr<!rec_xpto>
4949
// AFTER: cir.call @_ZN4xptoC1Ev(%[[ArrayElt]]) : (!cir.ptr<!rec_xpto>) -> ()
5050
// AFTER: %[[ConstOne:.*]] = cir.const #cir.int<1> : !u64i
51-
// AFTER: %[[NextElt:.*]] = cir.ptr_stride(%[[ArrayElt]] : !cir.ptr<!rec_xpto>, %[[ConstOne]] : !u64i), !cir.ptr<!rec_xpto>
51+
// AFTER: %[[NextElt:.*]] = cir.ptr_stride %[[ArrayElt]], %[[ConstOne]] : (!cir.ptr<!rec_xpto>, !u64i) -> !cir.ptr<!rec_xpto>
5252
// AFTER: cir.store %[[NextElt]], %[[TmpIdx]] : !cir.ptr<!rec_xpto>, !cir.ptr<!cir.ptr<!rec_xpto>>
5353
// AFTER: cir.yield
5454
// AFTER: } while {
@@ -58,14 +58,14 @@ void x() {
5858
// AFTER: }
5959
// AFTER: %[[ConstOne:.*]] = cir.const #cir.int<1> : !u64i
6060
// AFTER: %[[ArrayBegin:.*]] = cir.cast(array_to_ptrdecay, %[[ArrayAddr0]] : !cir.ptr<!cir.array<!rec_xpto x 2>>), !cir.ptr<!rec_xpto>
61-
// AFTER: %[[ArrayEnd:.*]] = cir.ptr_stride(%[[ArrayBegin]] : !cir.ptr<!rec_xpto>, %[[ConstOne]] : !u64i), !cir.ptr<!rec_xpto>
61+
// AFTER: %[[ArrayEnd:.*]] = cir.ptr_stride %[[ArrayBegin]], %[[ConstOne]] : (!cir.ptr<!rec_xpto>, !u64i) -> !cir.ptr<!rec_xpto>
6262
// AFTER: %[[TmpIdx:.*]] = cir.alloca !cir.ptr<!rec_xpto>, !cir.ptr<!cir.ptr<!rec_xpto>>, ["__array_idx"] {alignment = 1 : i64}
6363
// AFTER: cir.store %[[ArrayEnd]], %[[TmpIdx]] : !cir.ptr<!rec_xpto>, !cir.ptr<!cir.ptr<!rec_xpto>>
6464
// AFTER cir.do {
6565
// AFTER %[[ArrElt:.*]] = cir.load{{.*}} %[[TmpIdx]]
6666
// AFTER cir.call @_ZN13array_elementD1Ev(%[[ArrElt]]) : (!cir.ptr<!rec_xpto>) -> ()
6767
// AFTER %[[ConstNegOne:.*]] = cir.const #cir.int<-1> : !s64i
68-
// AFTER %[[NextElt:.*]] = cir.ptr_stride(%[[ARR_CUR]] : !cir.ptr<!rec_xpto>, %[[ConstNegOne]] : !s64i), !cir.ptr<!rec_xpto>
68+
// AFTER %[[NextElt:.*]] = cir.ptr_stride %[[ARR_CUR]], %[[ConstNegOne]] : (!cir.ptr<!rec_xpto>, !s64i) -> !cir.ptr<!rec_xpto>
6969
// AFTER cir.store %[[NextElt]], %[[TmpIdx]] : !cir.ptr<!rec_xpto>, !cir.ptr<!cir.ptr<!rec_xpto>>
7070
// AFTER cir.yield
7171
// AFTER } while {

clang/test/CIR/CodeGen/array-init.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ void zero_init(int x) {
129129
// CIR: [[FILLER:%.*]] = cir.const #cir.int<0> : !s32i
130130
// CIR: cir.store{{.*}} [[FILLER]], [[CUR]] : !s32i, !cir.ptr<!s32i>
131131
// CIR: [[ONE:%.*]] = cir.const #cir.int<1> : !s64i
132-
// CIR: [[NEXT:%.*]] = cir.ptr_stride([[CUR]] : !cir.ptr<!s32i>, [[ONE]] : !s64i), !cir.ptr<!s32i>
132+
// CIR: [[NEXT:%.*]] = cir.ptr_stride [[CUR]], [[ONE]] : (!cir.ptr<!s32i>, !s64i) -> !cir.ptr<!s32i>
133133
// CIR: cir.store{{.*}} [[NEXT]], [[TEMP]] : !cir.ptr<!s32i>, !cir.ptr<!cir.ptr<!s32i>>
134134
// CIR: cir.yield
135135
// CIR: } while {
@@ -176,7 +176,7 @@ void aggr_init() {
176176
// CIR: [[FILLER:%.*]] = cir.const #cir.int<0> : !s32i
177177
// CIR: cir.store{{.*}} [[FILLER]], [[CUR]] : !s32i, !cir.ptr<!s32i>
178178
// CIR: [[ONE:%.*]] = cir.const #cir.int<1> : !s64i
179-
// CIR: [[NEXT:%.*]] = cir.ptr_stride([[CUR]] : !cir.ptr<!s32i>, [[ONE]] : !s64i), !cir.ptr<!s32i>
179+
// CIR: [[NEXT:%.*]] = cir.ptr_stride [[CUR]], [[ONE]] : (!cir.ptr<!s32i>, !s64i) -> !cir.ptr<!s32i>
180180
// CIR: cir.store{{.*}} [[NEXT]], [[TEMP]] : !cir.ptr<!s32i>, !cir.ptr<!cir.ptr<!s32i>>
181181
// CIR: cir.yield
182182
// CIR: } while {

clang/test/CIR/CodeGen/array-init.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ void foo() {
2828
// CHECK: %[[VAL_9:.*]] = cir.const #cir.int<0> : !s32i
2929
// CHECK: cir.store{{.*}} %[[VAL_9]], %[[VAL_8]] : !s32i, !cir.ptr<!s32i>
3030
// CHECK: %[[VAL_10:.*]] = cir.const #cir.int<1> : !s64i
31-
// CHECK: %[[VAL_11:.*]] = cir.ptr_stride(%[[VAL_8]] : !cir.ptr<!s32i>, %[[VAL_10]] : !s64i), !cir.ptr<!s32i>
31+
// CHECK: %[[VAL_11:.*]] = cir.ptr_stride %[[VAL_8]], %[[VAL_10]] : (!cir.ptr<!s32i>, !s64i) -> !cir.ptr<!s32i>
3232
// CHECK: cir.store{{.*}} %[[VAL_11]], %[[VAL_1]] : !cir.ptr<!s32i>, !cir.ptr<!cir.ptr<!s32i>>
3333
// CHECK: cir.yield
3434
// CHECK: } while {

clang/test/CIR/CodeGen/array-new-init.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ void t_new_constant_size_constructor() {
2020
// BEFORE: cir.store{{.*}} %[[NUM_ELEMENTS]], %[[COOKIE_PTR]] : !u64i, !cir.ptr<!u64i>
2121
// BEFORE: %[[PTR_AS_U8:.*]] = cir.cast(bitcast, %[[ALLOC_PTR]] : !cir.ptr<!void>), !cir.ptr<!u8i>
2222
// BEFORE: %[[OFFSET:.*]] = cir.const #cir.int<8> : !s32i
23-
// BEFORE: %[[OBJ_PTR:.*]] = cir.ptr_stride(%[[PTR_AS_U8]] : !cir.ptr<!u8i>, %[[OFFSET]] : !s32i), !cir.ptr<!u8i>
23+
// BEFORE: %[[OBJ_PTR:.*]] = cir.ptr_stride %[[PTR_AS_U8]], %[[OFFSET]] : (!cir.ptr<!u8i>, !s32i) -> !cir.ptr<!u8i>
2424
// BEFORE: %[[OBJ_ELEM_PTR:.*]] = cir.cast(bitcast, %[[OBJ_PTR]] : !cir.ptr<!u8i>), !cir.ptr<!rec_E>
2525
// BEFORE: %[[OBJ_ARRAY_PTR:.*]] = cir.cast(bitcast, %[[OBJ_ELEM_PTR]] : !cir.ptr<!rec_E>), !cir.ptr<!cir.array<!rec_E x 3>>
2626
// BEFORE: cir.array.ctor(%[[OBJ_ARRAY_PTR]] : !cir.ptr<!cir.array<!rec_E x 3>>) {
@@ -38,19 +38,19 @@ void t_new_constant_size_constructor() {
3838
// AFTER: cir.store{{.*}} %[[NUM_ELEMENTS]], %[[COOKIE_PTR]] : !u64i, !cir.ptr<!u64i>
3939
// AFTER: %[[PTR_AS_U8:.*]] = cir.cast(bitcast, %[[ALLOC_PTR]] : !cir.ptr<!void>), !cir.ptr<!u8i>
4040
// AFTER: %[[OFFSET:.*]] = cir.const #cir.int<8> : !s32i
41-
// AFTER: %[[OBJ_PTR:.*]] = cir.ptr_stride(%[[PTR_AS_U8]] : !cir.ptr<!u8i>, %[[OFFSET]] : !s32i), !cir.ptr<!u8i>
41+
// AFTER: %[[OBJ_PTR:.*]] = cir.ptr_stride %[[PTR_AS_U8]], %[[OFFSET]] : (!cir.ptr<!u8i>, !s32i) -> !cir.ptr<!u8i>
4242
// AFTER: %[[OBJ_ELEM_PTR:.*]] = cir.cast(bitcast, %[[OBJ_PTR]] : !cir.ptr<!u8i>), !cir.ptr<!rec_E>
4343
// AFTER: %[[OBJ_ARRAY_PTR:.*]] = cir.cast(bitcast, %[[OBJ_ELEM_PTR]] : !cir.ptr<!rec_E>), !cir.ptr<!cir.array<!rec_E x 3>>
4444
// AFTER: %[[NUM_ELEMENTS2:.*]] = cir.const #cir.int<3> : !u64i
4545
// AFTER: %[[ELEM_PTR:.*]] = cir.cast(array_to_ptrdecay, %10 : !cir.ptr<!cir.array<!rec_E x 3>>), !cir.ptr<!rec_E>
46-
// AFTER: %[[END_PTR:.*]] = cir.ptr_stride(%[[ELEM_PTR]] : !cir.ptr<!rec_E>, %[[NUM_ELEMENTS2]] : !u64i), !cir.ptr<!rec_E>
46+
// AFTER: %[[END_PTR:.*]] = cir.ptr_stride %[[ELEM_PTR]], %[[NUM_ELEMENTS2]] : (!cir.ptr<!rec_E>, !u64i) -> !cir.ptr<!rec_E>
4747
// AFTER: %[[CUR_ELEM_ALLOCA:.*]] = cir.alloca !cir.ptr<!rec_E>, !cir.ptr<!cir.ptr<!rec_E>>, ["__array_idx"] {alignment = 1 : i64}
4848
// AFTER: cir.store{{.*}} %[[ELEM_PTR]], %[[CUR_ELEM_ALLOCA]] : !cir.ptr<!rec_E>, !cir.ptr<!cir.ptr<!rec_E>>
4949
// AFTER: cir.do {
5050
// AFTER: %[[CUR_ELEM_PTR:.*]] = cir.load %[[CUR_ELEM_ALLOCA]] : !cir.ptr<!cir.ptr<!rec_E>>, !cir.ptr<!rec_E>
5151
// AFTER: cir.call @_ZN1EC1Ev(%[[CUR_ELEM_PTR]]) : (!cir.ptr<!rec_E>) -> ()
5252
// AFTER: %[[OFFSET:.*]] = cir.const #cir.int<1> : !u64i
53-
// AFTER: %[[NEXT_PTR:.*]] = cir.ptr_stride(%[[CUR_ELEM_PTR]] : !cir.ptr<!rec_E>, %[[OFFSET]] : !u64i), !cir.ptr<!rec_E>
53+
// AFTER: %[[NEXT_PTR:.*]] = cir.ptr_stride %[[CUR_ELEM_PTR]], %[[OFFSET]] : (!cir.ptr<!rec_E>, !u64i) -> !cir.ptr<!rec_E>
5454
// AFTER: cir.store{{.*}} %[[NEXT_PTR]], %[[CUR_ELEM_ALLOCA]] : !cir.ptr<!rec_E>, !cir.ptr<!cir.ptr<!rec_E>>
5555
// AFTER: cir.yield
5656
// AFTER: } while {

clang/test/CIR/CodeGen/array.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ void testPointerDecaySubscriptAccess(int arr[]) {
7474
// CHECK: %[[#TWO:]] = cir.const #cir.int<2> : !s32i
7575
// CHECK: %[[#BASE:]] = cir.load{{.*}} %{{.+}} : !cir.ptr<!cir.ptr<!s32i>>, !cir.ptr<!s32i>
7676
// CHECK: %[[#DIM1:]] = cir.const #cir.int<1> : !s32i
77-
// CHECK: %[[#ELEM:]] = cir.ptr_stride(%[[#BASE]] : !cir.ptr<!s32i>, %[[#DIM1]] : !s32i), !cir.ptr<!s32i>
77+
// CHECK: %[[#ELEM:]] = cir.ptr_stride %[[#BASE]], %[[#DIM1]] : (!cir.ptr<!s32i>, !s32i) -> !cir.ptr<!s32i>
7878
// CHECK: cir.store{{.*}} %[[#TWO]], %[[#ELEM]] : !s32i, !cir.ptr<!s32i>
7979
}
8080

@@ -84,7 +84,7 @@ void testPointerDecayedArrayMultiDimSubscriptAccess(int arr[][3]) {
8484
// CHECK: %[[#THREE:]] = cir.const #cir.int<3> : !s32i
8585
// CHECK: %[[#ARRAY:]] = cir.load{{.*}} %{{.+}} : !cir.ptr<!cir.ptr<!cir.array<!s32i x 3>>>, !cir.ptr<!cir.array<!s32i x 3>>
8686
// CHECK: %[[#ONE:]] = cir.const #cir.int<1> : !s32i
87-
// CHECK: %[[#OUTER:]] = cir.ptr_stride(%[[#ARRAY]] : !cir.ptr<!cir.array<!s32i x 3>>, %[[#ONE]] : !s32i), !cir.ptr<!cir.array<!s32i x 3>>
87+
// CHECK: %[[#OUTER:]] = cir.ptr_stride %[[#ARRAY]], %[[#ONE]] : (!cir.ptr<!cir.array<!s32i x 3>>, !s32i) -> !cir.ptr<!cir.array<!s32i x 3>>
8888
// CHECK: %[[#TWO:]] = cir.const #cir.int<2> : !s32i
8989
// CHECK: %[[#INNER:]] = cir.get_element %[[#OUTER]][%[[#TWO]]] : (!cir.ptr<!cir.array<!s32i x 3>>, !s32i) -> !cir.ptr<!s32i>
9090
// CHECK: cir.store{{.*}} %[[#THREE]], %[[#INNER]] : !s32i, !cir.ptr<!s32i>

0 commit comments

Comments
 (0)