diff --git a/llvm/lib/Target/RISCV/RISCVInstrInfoF.td b/llvm/lib/Target/RISCV/RISCVInstrInfoF.td --- a/llvm/lib/Target/RISCV/RISCVInstrInfoF.td +++ b/llvm/lib/Target/RISCV/RISCVInstrInfoF.td @@ -370,7 +370,7 @@ Sched<[WriteFCvtF32ToI32, ReadFCvtF32ToI32]>; defm : FPUnaryOpDynFrmAlias_m; -let mayRaiseFPException = 0 in +let Predicates = [HasStdExtF], mayRaiseFPException = 0 in def FMV_X_W : FPUnaryOp_r<0b1110000, 0b00000, 0b000, GPR, FPR32, "fmv.x.w">, Sched<[WriteFMovF32ToI32, ReadFMovF32ToI32]>; @@ -392,7 +392,7 @@ Sched<[WriteFCvtI32ToF32, ReadFCvtI32ToF32]>; defm : FPUnaryOpDynFrmAlias_m; -let mayRaiseFPException = 0 in +let Predicates = [HasStdExtF], mayRaiseFPException = 0 in def FMV_W_X : FPUnaryOp_r<0b1111000, 0b00000, 0b000, FPR32, GPR, "fmv.w.x">, Sched<[WriteFMovI32ToF32, ReadFMovI32ToF32]>;