[clang] [llvm] [RISCV] Support bf16 vmv.v.v and vmerge.vvm intrinsics with `zvfbfmin` (PR #101611)
Craig Topper via cfe-commits
cfe-commits at lists.llvm.org
Thu Aug 1 23:45:05 PDT 2024
topperc wrote:
> > > I'm wondering why we need these intrinsics since we do not have vmv.v.v and vmerge.vvm instructions for bf16.
> >
> >
> > vmv.v.v and vmerge.vvm don't interpret the value in the elements. They work for integer or FP or bf16. If we don't provide the intrinsics then the user needs to use vreinterpret to do a vmerge or vmv.v.v operation on a vector of bf16.
>
> I know what vmerge and vmv.v.v mean, but in a similar way, does it mean we need to add all the intrinsics for bf16 to keep consistent with other floating-point type?
We already have load, store, vreinterpret, lmul_ext, lmul_trunc, vget, vcreate, vundefined. I file 3 issues on inconsistencies between Zvfhmin and Zvfbfmin
https://github.com/riscv-non-isa/rvv-intrinsic-doc/issues/349
https://github.com/riscv-non-isa/rvv-intrinsic-doc/issues/350
https://github.com/riscv-non-isa/rvv-intrinsic-doc/issues/351
https://github.com/llvm/llvm-project/pull/101611
More information about the cfe-commits
mailing list