This is an archive of the discontinued LLVM Phabricator instance.

[DAG][RISCV] Allow scalable vector ISD::STRICT_FP_ROUND and support vector ISD::STRICT_FP_ROUND for RISC-V.
ClosedPublic

Authored by fakepaper56 on Mar 28 2023, 11:00 PM.

Details

Summary

The patch customized lower vector type ISD::STRICT_FP_ROUND to RISCVISD::STRICT_FP_ROUND.

Diff Detail

Event Timeline

fakepaper56 created this revision.Mar 28 2023, 11:00 PM
Herald added a project: Restricted Project. · View Herald TranscriptMar 28 2023, 11:00 PM
fakepaper56 requested review of this revision.Mar 28 2023, 11:00 PM
craig.topper added inline comments.Mar 28 2023, 11:05 PM
llvm/lib/Target/RISCV/RISCVISelLowering.cpp
5411–5412

comment is stale

llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfptrunc-constrained-sdnode.ll
62

Doesn't this need to be vfncvt.rod.f.f.w?

fakepaper56 added inline comments.Mar 28 2023, 11:35 PM
llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfptrunc-constrained-sdnode.ll
62

You are right. The intermediate conversion should be round-to-odd.

Refine comments and vfncvt.rod.f.f.w for intermediate rounding.

fakepaper56 marked 2 inline comments as done.Mar 29 2023, 12:37 AM
This revision is now accepted and ready to land.Mar 29 2023, 8:56 AM
This revision was landed with ongoing or failed builds.Mar 29 2023, 5:20 PM
This revision was automatically updated to reflect the committed changes.