@@ -186,6 +186,17 @@ func.func @extract_size1_vector(%arg0 : vector<1xf32>) -> f32 {
186
186
187
187
// -----
188
188
189
+ // CHECK-LABEL: @extract_size1_vector_dynamic
190
+ // CHECK-SAME: %[[ARG0:.+]]: vector<1xf32>
191
+ // CHECK: %[[R:.+]] = builtin.unrealized_conversion_cast %[[ARG0]]
192
+ // CHECK: return %[[R]]
193
+ func.func @extract_size1_vector_dynamic (%arg0 : vector <1 xf32 >, %id : index ) -> f32 {
194
+ %0 = vector.extract %arg0 [%id ] : f32 from vector <1 xf32 >
195
+ return %0: f32
196
+ }
197
+
198
+ // -----
199
+
189
200
// CHECK-LABEL: @extract_dynamic
190
201
// CHECK-SAME: %[[V:.*]]: vector<4xf32>, %[[ARG1:.*]]: index
191
202
// CHECK: %[[ID:.+]] = builtin.unrealized_conversion_cast %[[ARG1]] : index to i32
@@ -236,6 +247,17 @@ func.func @insert_size1_vector(%arg0 : vector<1xf32>, %arg1: f32) -> vector<1xf3
236
247
237
248
// -----
238
249
250
+ // CHECK-LABEL: @insert_size1_vector_dynamic
251
+ // CHECK-SAME: %[[V:.*]]: vector<1xf32>, %[[S:.*]]: f32
252
+ // CHECK: %[[R:.+]] = builtin.unrealized_conversion_cast %[[S]]
253
+ // CHECK: return %[[R]]
254
+ func.func @insert_size1_vector_dynamic (%arg0 : vector <1 xf32 >, %arg1: f32 , %id : index ) -> vector <1 xf32 > {
255
+ %1 = vector.insert %arg1 , %arg0 [%id ] : f32 into vector <1 xf32 >
256
+ return %1 : vector <1 xf32 >
257
+ }
258
+
259
+ // -----
260
+
239
261
// CHECK-LABEL: @insert_dynamic
240
262
// CHECK-SAME: %[[VAL:.*]]: f32, %[[V:.*]]: vector<4xf32>, %[[ARG2:.*]]: index
241
263
// CHECK: %[[ID:.+]] = builtin.unrealized_conversion_cast %[[ARG2]] : index to i32
0 commit comments