@@ -3247,23 +3247,23 @@ def : Pat<(f16 (uint_to_fp Int64Regs:$a)),
3247
3247
3248
3248
// sint -> bf16
3249
3249
def : Pat<(bf16 (sint_to_fp Int1Regs:$a)),
3250
- (CVT_bf16_s32 (SELP_u32ii 1, 0, Int1Regs:$a), CvtRN)>;
3250
+ (CVT_bf16_s32 (SELP_u32ii 1, 0, Int1Regs:$a), CvtRN)>, Requires<[hasPTX<78>, hasSM<90>]> ;
3251
3251
def : Pat<(bf16 (sint_to_fp Int16Regs:$a)),
3252
- (CVT_bf16_s16 Int16Regs:$a, CvtRN)>;
3252
+ (CVT_bf16_s16 Int16Regs:$a, CvtRN)>, Requires<[hasPTX<78>, hasSM<90>]> ;
3253
3253
def : Pat<(bf16 (sint_to_fp Int32Regs:$a)),
3254
- (CVT_bf16_s32 Int32Regs:$a, CvtRN)>;
3254
+ (CVT_bf16_s32 Int32Regs:$a, CvtRN)>, Requires<[hasPTX<78>, hasSM<90>]> ;
3255
3255
def : Pat<(bf16 (sint_to_fp Int64Regs:$a)),
3256
- (CVT_bf16_s64 Int64Regs:$a, CvtRN)>;
3256
+ (CVT_bf16_s64 Int64Regs:$a, CvtRN)>, Requires<[hasPTX<78>, hasSM<90>]> ;
3257
3257
3258
3258
// uint -> bf16
3259
3259
def : Pat<(bf16 (uint_to_fp Int1Regs:$a)),
3260
- (CVT_bf16_u32 (SELP_u32ii 1, 0, Int1Regs:$a), CvtRN)>;
3260
+ (CVT_bf16_u32 (SELP_u32ii 1, 0, Int1Regs:$a), CvtRN)>, Requires<[hasPTX<78>, hasSM<90>]> ;
3261
3261
def : Pat<(bf16 (uint_to_fp Int16Regs:$a)),
3262
- (CVT_bf16_u16 Int16Regs:$a, CvtRN)>;
3262
+ (CVT_bf16_u16 Int16Regs:$a, CvtRN)>, Requires<[hasPTX<78>, hasSM<90>]> ;
3263
3263
def : Pat<(bf16 (uint_to_fp Int32Regs:$a)),
3264
- (CVT_bf16_u32 Int32Regs:$a, CvtRN)>;
3264
+ (CVT_bf16_u32 Int32Regs:$a, CvtRN)>, Requires<[hasPTX<78>, hasSM<90>]> ;
3265
3265
def : Pat<(bf16 (uint_to_fp Int64Regs:$a)),
3266
- (CVT_bf16_u64 Int64Regs:$a, CvtRN)>;
3266
+ (CVT_bf16_u64 Int64Regs:$a, CvtRN)>, Requires<[hasPTX<78>, hasSM<90>]> ;
3267
3267
3268
3268
// sint -> f32
3269
3269
def : Pat<(f32 (sint_to_fp Int1Regs:$a)),
0 commit comments