@@ -2952,75 +2952,6 @@ func.func @extract_from_0d_splat_broadcast_regression(%a: f32, %b: vector<f32>,
2952
2952
2953
2953
// -----
2954
2954
2955
- // CHECK-LABEL: func @extract_scalar_from_from_elements(
2956
- // CHECK-SAME: %[[a:.*]]: f32, %[[b:.*]]: f32)
2957
- func.func @extract_scalar_from_from_elements (%a: f32 , %b: f32 ) -> (f32 , f32 , f32 , f32 , f32 , f32 , f32 ) {
2958
- // Extract from 0D.
2959
- %0 = vector.from_elements %a : vector <f32 >
2960
- %1 = vector.extract %0 [] : f32 from vector <f32 >
2961
-
2962
- // Extract from 1D.
2963
- %2 = vector.from_elements %a : vector <1 xf32 >
2964
- %3 = vector.extract %2 [0 ] : f32 from vector <1 xf32 >
2965
- %4 = vector.from_elements %a , %b , %a , %a , %b : vector <5 xf32 >
2966
- %5 = vector.extract %4 [4 ] : f32 from vector <5 xf32 >
2967
-
2968
- // Extract from 2D.
2969
- %6 = vector.from_elements %a , %a , %a , %b , %b , %b : vector <2 x3 xf32 >
2970
- %7 = vector.extract %6 [0 , 0 ] : f32 from vector <2 x3 xf32 >
2971
- %8 = vector.extract %6 [0 , 1 ] : f32 from vector <2 x3 xf32 >
2972
- %9 = vector.extract %6 [1 , 1 ] : f32 from vector <2 x3 xf32 >
2973
- %10 = vector.extract %6 [1 , 2 ] : f32 from vector <2 x3 xf32 >
2974
-
2975
- // CHECK: return %[[a]], %[[a]], %[[b]], %[[a]], %[[a]], %[[b]], %[[b]]
2976
- return %1 , %3 , %5 , %7 , %8 , %9 , %10 : f32 , f32 , f32 , f32 , f32 , f32 , f32
2977
- }
2978
-
2979
- // -----
2980
-
2981
- // CHECK-LABEL: func @extract_1d_from_from_elements(
2982
- // CHECK-SAME: %[[a:.*]]: f32, %[[b:.*]]: f32)
2983
- func.func @extract_1d_from_from_elements (%a: f32 , %b: f32 ) -> (vector <3 xf32 >, vector <3 xf32 >) {
2984
- %0 = vector.from_elements %a , %a , %a , %b , %b , %b : vector <2 x3 xf32 >
2985
- // CHECK: %[[splat1:.*]] = vector.splat %[[a]] : vector<3xf32>
2986
- %1 = vector.extract %0 [0 ] : vector <3 xf32 > from vector <2 x3 xf32 >
2987
- // CHECK: %[[splat2:.*]] = vector.splat %[[b]] : vector<3xf32>
2988
- %2 = vector.extract %0 [1 ] : vector <3 xf32 > from vector <2 x3 xf32 >
2989
- // CHECK: return %[[splat1]], %[[splat2]]
2990
- return %1 , %2 : vector <3 xf32 >, vector <3 xf32 >
2991
- }
2992
-
2993
- // -----
2994
-
2995
- // CHECK-LABEL: func @extract_2d_from_from_elements(
2996
- // CHECK-SAME: %[[a:.*]]: f32, %[[b:.*]]: f32)
2997
- func.func @extract_2d_from_from_elements (%a: f32 , %b: f32 ) -> (vector <2 x2 xf32 >, vector <2 x2 xf32 >) {
2998
- %0 = vector.from_elements %a , %a , %a , %b , %b , %b , %b , %a , %b , %a , %a , %b : vector <3 x2 x2 xf32 >
2999
- // CHECK: %[[splat1:.*]] = vector.from_elements %[[a]], %[[a]], %[[a]], %[[b]] : vector<2x2xf32>
3000
- %1 = vector.extract %0 [0 ] : vector <2 x2 xf32 > from vector <3 x2 x2 xf32 >
3001
- // CHECK: %[[splat2:.*]] = vector.from_elements %[[b]], %[[b]], %[[b]], %[[a]] : vector<2x2xf32>
3002
- %2 = vector.extract %0 [1 ] : vector <2 x2 xf32 > from vector <3 x2 x2 xf32 >
3003
- // CHECK: return %[[splat1]], %[[splat2]]
3004
- return %1 , %2 : vector <2 x2 xf32 >, vector <2 x2 xf32 >
3005
- }
3006
-
3007
- // -----
3008
-
3009
- // CHECK-LABEL: func @from_elements_to_splat(
3010
- // CHECK-SAME: %[[a:.*]]: f32, %[[b:.*]]: f32)
3011
- func.func @from_elements_to_splat (%a: f32 , %b: f32 ) -> (vector <2 x3 xf32 >, vector <2 x3 xf32 >, vector <f32 >) {
3012
- // CHECK: %[[splat:.*]] = vector.splat %[[a]] : vector<2x3xf32>
3013
- %0 = vector.from_elements %a , %a , %a , %a , %a , %a : vector <2 x3 xf32 >
3014
- // CHECK: %[[from_el:.*]] = vector.from_elements {{.*}} : vector<2x3xf32>
3015
- %1 = vector.from_elements %a , %a , %a , %a , %b , %a : vector <2 x3 xf32 >
3016
- // CHECK: %[[splat2:.*]] = vector.splat %[[a]] : vector<f32>
3017
- %2 = vector.from_elements %a : vector <f32 >
3018
- // CHECK: return %[[splat]], %[[from_el]], %[[splat2]]
3019
- return %0 , %1 , %2 : vector <2 x3 xf32 >, vector <2 x3 xf32 >, vector <f32 >
3020
- }
3021
-
3022
- // -----
3023
-
3024
2955
// CHECK-LABEL: func @vector_insert_const_regression(
3025
2956
// CHECK: llvm.mlir.undef
3026
2957
// CHECK: vector.insert
0 commit comments