[llvm-dev] [RISCV] Discrepancy between FCVT_D_{W, WU} and FCVT_D_{L, LU}

Roger Ferrer Ibáñez via llvm-dev llvm-dev at lists.llvm.org
Tue Aug 28 00:08:50 PDT 2018


(This time with subject, sorry)

Missatge de Roger Ferrer Ibáñez <rofirrim at gmail.com> del dia dt., 28 d’ag.
2018 a les 9:07:

> Dear Alex, all,
>
> I was looking for fcvt.d.{w,l}{,u} in RISCVInstrInfoD and I'm not sure to
> understand the current definitions:
>
>   138     def FCVT_D_W : FPUnaryOp_r<0b1101001, 0b000, FPR64, GPR,
> "fcvt.d.w"> {
>   139       let rs2 = 0b00000;
>   140     }
>   141
>   142     def FCVT_D_WU : FPUnaryOp_r<0b1101001, 0b000, FPR64, GPR,
> "fcvt.d.wu"> {
>   143       let rs2 = 0b00001;
>   144     }
>
>   162     def FCVT_D_L : FPUnaryOp_r_frm<0b1101001, FPR64, GPR,
> "fcvt.d.l"> {
>   163       let rs2 = 0b00010;
>   164     }
>   165     def          : FPUnaryOpDynFrmAlias<FCVT_D_L, "fcvt.d.l", FPR64,
> GPR>;
>   166
>   167     def FCVT_D_LU : FPUnaryOp_r_frm<0b1101001, FPR64, GPR, "
> fcvt.d.lu"> {
>   168       let rs2 = 0b00011;
>   169     }
>
>
> I would expect FCVT_D_W and FCVT_D_WU to be FPUnaryOp_r_frm instead of
> FPUnaryOp_r. Currently they seem to hard code the rounding mode to 0b000.
>
> Is my understanding correct or I'm missing something?
>
> Thank you very much,
> Roger
>


-- 
Roger Ferrer Ibáñez
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20180828/ba858918/attachment.html>


More information about the llvm-dev mailing list