On 7/22/20 2:15 AM, frank.ch...@sifive.com wrote: > From: Frank Chang <frank.ch...@sifive.com> > > For floating-point operations, the scalar can be taken from a scalar > f register. If FLEN > SEW, the value in the f registers is checked for > a valid NaN-boxed value, in which case the least-significant SEW bits > of the f register are used, else the canonical NaN value is used. > > Add helper to generate the correspond NaN-boxed value or the SEW-bit > canonical NaN for floating-point operations. > > Signed-off-by: Frank Chang <frank.ch...@sifive.com> > --- > target/riscv/helper.h | 2 ++ > target/riscv/vector_helper.c | 32 ++++++++++++++++++++++++++++++++ > 2 files changed, 34 insertions(+)
The helper can be done inline in two tcg ops. Though, really, we need to coordinate with Liu Zhiwei's other patch set that also deals with nan-boxing. r~