@@ -37,8 +37,8 @@ cvtScalePkUpcastFromFp8(Location loc, ConversionPatternRewriter &rewriter,
37
37
38
38
auto resType = i32_ty;
39
39
auto dstType = f32_ty;
40
- if constexpr (std::is_same_v<convertOp, ROCDL::CvtScale32PkF32Fp8 > ||
41
- std::is_same_v<convertOp, ROCDL::CvtScale32PkF32Bf8 >) {
40
+ if constexpr (std::is_same_v<convertOp, ROCDL::CvtScaleF32PkF32Fp8Op > ||
41
+ std::is_same_v<convertOp, ROCDL::CvtScaleF32PkF32Bf8Op >) {
42
42
resType = i64_ty;
43
43
dstType = f32_ty;
44
44
} else {
@@ -70,8 +70,8 @@ cvtScalePkDowncastToFp8(Location loc, ConversionPatternRewriter &rewriter,
70
70
Value select = b.false_val ();
71
71
72
72
Value result;
73
- if constexpr (std::is_same_v<convertOp, ROCDL::CvtScaleF32PkFp8F32 > ||
74
- std::is_same_v<convertOp, ROCDL::CvtScaleF32PkBf8F32 >) {
73
+ if constexpr (std::is_same_v<convertOp, ROCDL::CvtScaleF32PkFp8F32Op > ||
74
+ std::is_same_v<convertOp, ROCDL::CvtScaleF32PkBf8F32Op >) {
75
75
result = rewriter.create <convertOp>(loc, v2I16Ty, v2I16Vec, v0, v1, scale,
76
76
select );
77
77
} else {
@@ -134,8 +134,8 @@ static SmallVector<Value>
134
134
Fp16_to_Fp8E5M2_RTNE_HW (Location loc, ConversionPatternRewriter &rewriter,
135
135
const SmallVector<Value> &v) {
136
136
assert (v.size () == 2 );
137
- return cvtScalePkDowncastToFp8<ROCDL::CvtScaleF32PkBf8F16 >(loc, rewriter,
138
- v[0 ], v[1 ]);
137
+ return cvtScalePkDowncastToFp8<ROCDL::CvtScaleF32PkBf8F16Op >(loc, rewriter,
138
+ v[0 ], v[1 ]);
139
139
}
140
140
141
141
ConverterT Fp16_to_Fp8E5M2_RTNE (AMD::ISAFamily isaFamily) {
@@ -270,8 +270,8 @@ static SmallVector<Value>
270
270
Fp16_to_Fp8E4M3FN_RTNE_HW (Location loc, ConversionPatternRewriter &rewriter,
271
271
const SmallVector<Value> &v) {
272
272
assert (v.size () == 2 );
273
- return cvtScalePkDowncastToFp8<ROCDL::CvtScaleF32PkFp8F16 >(loc, rewriter,
274
- v[0 ], v[1 ]);
273
+ return cvtScalePkDowncastToFp8<ROCDL::CvtScaleF32PkFp8F16Op >(loc, rewriter,
274
+ v[0 ], v[1 ]);
275
275
}
276
276
277
277
ConverterT Fp16_to_Fp8E4M3FN_RTNE (AMD::ISAFamily isaFamily) {
@@ -378,35 +378,35 @@ static SmallVector<Value> Fp8E4M3FN_to_Fp32(Location loc,
378
378
ConversionPatternRewriter &rewriter,
379
379
const SmallVector<Value> &v) {
380
380
assert (v.size () == 2 );
381
- return cvtScalePkUpcastFromFp8<ROCDL::CvtScale32PkF32Fp8 >(loc, rewriter, v[ 0 ] ,
382
- v[1 ]);
381
+ return cvtScalePkUpcastFromFp8<ROCDL::CvtScaleF32PkF32Fp8Op >(loc, rewriter,
382
+ v[ 0 ], v[1 ]);
383
383
}
384
384
385
385
// Convert OCP Bf8 to Fp32 on CDNA4
386
386
static SmallVector<Value> Fp8E5M2_to_Fp32 (Location loc,
387
387
ConversionPatternRewriter &rewriter,
388
388
const SmallVector<Value> &v) {
389
389
assert (v.size () == 2 );
390
- return cvtScalePkUpcastFromFp8<ROCDL::CvtScale32PkF32Bf8 >(loc, rewriter, v[ 0 ] ,
391
- v[1 ]);
390
+ return cvtScalePkUpcastFromFp8<ROCDL::CvtScaleF32PkF32Bf8Op >(loc, rewriter,
391
+ v[ 0 ], v[1 ]);
392
392
}
393
393
394
394
// Convert Fp32 to OCP Fp8 on CDNA4
395
395
static SmallVector<Value> Fp32_to_Fp8E4M3FN (Location loc,
396
396
ConversionPatternRewriter &rewriter,
397
397
const SmallVector<Value> &v) {
398
398
assert (v.size () == 2 );
399
- return cvtScalePkDowncastToFp8<ROCDL::CvtScaleF32PkFp8F32 >(loc, rewriter,
400
- v[0 ], v[1 ]);
399
+ return cvtScalePkDowncastToFp8<ROCDL::CvtScaleF32PkFp8F32Op >(loc, rewriter,
400
+ v[0 ], v[1 ]);
401
401
}
402
402
403
403
// Convert Fp32 to OCP Bf8 on CDNA4
404
404
static SmallVector<Value> Fp32_to_Fp8E5M2 (Location loc,
405
405
ConversionPatternRewriter &rewriter,
406
406
const SmallVector<Value> &v) {
407
407
assert (v.size () == 2 );
408
- return cvtScalePkDowncastToFp8<ROCDL::CvtScaleF32PkBf8F32 >(loc, rewriter,
409
- v[0 ], v[1 ]);
408
+ return cvtScalePkDowncastToFp8<ROCDL::CvtScaleF32PkBf8F32Op >(loc, rewriter,
409
+ v[0 ], v[1 ]);
410
410
}
411
411
412
412
// Fp32 -> Nanoo Bf8 on CDNA3
@@ -549,8 +549,8 @@ static SmallVector<Value>
549
549
Fp8E4M3FN_to_Fp16_HW (Location loc, ConversionPatternRewriter &rewriter,
550
550
const SmallVector<Value> &v) {
551
551
assert (v.size () == 2 );
552
- return cvtScalePkUpcastFromFp8<ROCDL::CvtScaleF32PkF16Fp8 >(loc, rewriter,
553
- v[0 ], v[1 ]);
552
+ return cvtScalePkUpcastFromFp8<ROCDL::CvtScaleF32PkF16Fp8Op >(loc, rewriter,
553
+ v[0 ], v[1 ]);
554
554
}
555
555
556
556
ConverterT Fp8E4M3FN_to_Fp16 (AMD::ISAFamily isaFamily) {
@@ -591,8 +591,8 @@ static SmallVector<Value>
591
591
Fp8E5M2_to_Fp16_HW (Location loc, ConversionPatternRewriter &rewriter,
592
592
const SmallVector<Value> &v) {
593
593
assert (v.size () == 2 );
594
- return cvtScalePkUpcastFromFp8<ROCDL::CvtScaleF32PkF16Bf8 >(loc, rewriter,
595
- v[0 ], v[1 ]);
594
+ return cvtScalePkUpcastFromFp8<ROCDL::CvtScaleF32PkF16Bf8Op >(loc, rewriter,
595
+ v[0 ], v[1 ]);
596
596
}
597
597
598
598
ConverterT Fp8E5M2_to_Fp16 (AMD::ISAFamily isaFamily) {
@@ -851,8 +851,8 @@ static SmallVector<Value>
851
851
Bf16_to_Fp8E5M2_HW (Location loc, ConversionPatternRewriter &rewriter,
852
852
const SmallVector<Value> &v) {
853
853
assert (v.size () == 2 );
854
- return cvtScalePkDowncastToFp8<ROCDL::CvtScaleF32PkBf8Bf16 >(loc, rewriter,
855
- v[0 ], v[1 ]);
854
+ return cvtScalePkDowncastToFp8<ROCDL::CvtScaleF32PkBf8Bf16Op >(loc, rewriter,
855
+ v[0 ], v[1 ]);
856
856
}
857
857
858
858
static ConverterT Bf16_to_Fp8E5M2 (AMD::ISAFamily isaFamily) {
@@ -864,8 +864,8 @@ static SmallVector<Value> Bf16_to_Fp8E4M3FN(Location loc,
864
864
ConversionPatternRewriter &rewriter,
865
865
const SmallVector<Value> &v) {
866
866
assert (v.size () == 2 );
867
- return cvtScalePkDowncastToFp8<ROCDL::CvtScaleF32PkFp8Bf16 >(loc, rewriter,
868
- v[0 ], v[1 ]);
867
+ return cvtScalePkDowncastToFp8<ROCDL::CvtScaleF32PkFp8Bf16Op >(loc, rewriter,
868
+ v[0 ], v[1 ]);
869
869
}
870
870
871
871
// fp8e4m3fn to bf16
0 commit comments