55func.func @scalar_trunc (%v: f32 ) -> f16 {
66 // CHECK: %[[poison:.*]] = llvm.mlir.poison : f32
77 // CHECK: %[[trunc:.*]] = rocdl.cvt.pkrtz %[[value]], %[[poison]] : vector<2xf16>
8- // CHECK: %[[extract:.*]] = vector.extractelement %[[trunc]][%c0 : index] : vector<2xf16>
8+ // CHECK: %[[extract:.*]] = vector.extract %[[trunc]][0] : f16 from vector<2xf16>
99 // CHECK: return %[[extract]] : f16
1010 %w = arith.truncf %v : f32 to f16
1111 return %w : f16
@@ -14,8 +14,8 @@ func.func @scalar_trunc(%v: f32) -> f16{
1414// CHECK-LABEL: @vector_trunc
1515// CHECK-SAME: (%[[value:.*]]: vector<2xf32>)
1616func.func @vector_trunc_short (%v: vector <2 xf32 >) -> vector <2 xf16 > {
17- // CHECK: %[[elem0:.*]] = vector.extractelement %[[value]]
18- // CHECK: %[[elem1:.*]] = vector.extractelement %[[value]]
17+ // CHECK: %[[elem0:.*]] = vector.extract %[[value]]
18+ // CHECK: %[[elem1:.*]] = vector.extract %[[value]]
1919 // CHECK: %[[ret:.*]] = rocdl.cvt.pkrtz %[[elem0]], %[[elem1]] : vector<2xf16>
2020 // CHECK: return %[[ret]]
2121 %w = arith.truncf %v : vector <2 xf32 > to vector <2 xf16 >
@@ -25,23 +25,23 @@ func.func @vector_trunc_short(%v: vector<2xf32>) -> vector<2xf16> {
2525// CHECK-LABEL: @vector_trunc_long
2626// CHECK-SAME: (%[[value:.*]]: vector<9xf32>)
2727func.func @vector_trunc_long (%v: vector <9 xf32 >) -> vector <9 xf16 > {
28- // CHECK: %[[elem0:.*]] = vector.extractelement %[[value]][%c0 : index ]
29- // CHECK: %[[elem1:.*]] = vector.extractelement %[[value]][%c1 : index ]
28+ // CHECK: %[[elem0:.*]] = vector.extract %[[value]][0 ]
29+ // CHECK: %[[elem1:.*]] = vector.extract %[[value]][1 ]
3030 // CHECK: %[[packed0:.*]] = rocdl.cvt.pkrtz %[[elem0]], %[[elem1]] : vector<2xf16>
3131 // CHECK: %[[out0:.*]] = vector.insert_strided_slice %[[packed0]], {{.*}} {offsets = [0], strides = [1]} : vector<2xf16> into vector<9xf16>
32- // CHECK: %[[elem2:.*]] = vector.extractelement %[[value]][%c2 : index ]
33- // CHECK: %[[elem3:.*]] = vector.extractelement %[[value]][%c3 : index ]
32+ // CHECK: %[[elem2:.*]] = vector.extract %[[value]][2 ]
33+ // CHECK: %[[elem3:.*]] = vector.extract %[[value]][3 ]
3434 // CHECK: %[[packed1:.*]] = rocdl.cvt.pkrtz %[[elem2]], %[[elem3]] : vector<2xf16>
3535 // CHECK: %[[out1:.*]] = vector.insert_strided_slice %[[packed1]], %[[out0]] {offsets = [2], strides = [1]} : vector<2xf16> into vector<9xf16>
36- // CHECK: %[[elem4:.*]] = vector.extractelement %[[value]][%c4 : index ]
37- // CHECK: %[[elem5:.*]] = vector.extractelement %[[value]][%c5 : index ]
36+ // CHECK: %[[elem4:.*]] = vector.extract %[[value]][4 ]
37+ // CHECK: %[[elem5:.*]] = vector.extract %[[value]][5 ]
3838 // CHECK: %[[packed2:.*]] = rocdl.cvt.pkrtz %[[elem4]], %[[elem5]] : vector<2xf16>
3939 // CHECK: %[[out2:.*]] = vector.insert_strided_slice %[[packed2]], %[[out1]] {offsets = [4], strides = [1]} : vector<2xf16> into vector<9xf16>
40- // CHECK: %[[elem6:.*]] = vector.extractelement %[[value]]
41- // CHECK: %[[elem7:.*]] = vector.extractelement %[[value]]
40+ // CHECK: %[[elem6:.*]] = vector.extract %[[value]]
41+ // CHECK: %[[elem7:.*]] = vector.extract %[[value]]
4242 // CHECK: %[[packed3:.*]] = rocdl.cvt.pkrtz %[[elem6]], %[[elem7]] : vector<2xf16>
4343 // CHECK: %[[out3:.*]] = vector.insert_strided_slice %[[packed3]], %[[out2]] {offsets = [6], strides = [1]} : vector<2xf16> into vector<9xf16>
44- // CHECK: %[[elem8:.*]] = vector.extractelement %[[value]]
44+ // CHECK: %[[elem8:.*]] = vector.extract %[[value]]
4545 // CHECK: %[[packed4:.*]] = rocdl.cvt.pkrtz %[[elem8:.*]] : vector<2xf16>
4646 // CHECK: %[[slice:.*]] = vector.extract_strided_slice %[[packed4]] {offsets = [0], sizes = [1], strides = [1]} : vector<2xf16> to vector<1xf16>
4747 // CHECK: %[[out4:.*]] = vector.insert_strided_slice %[[slice]], %[[out3]] {offsets = [8], strides = [1]} : vector<1xf16> into vector<9xf16>
0 commit comments