[PATCH] D99704: [RISCV] Fix handling of nxvXi64 vmsgt(u).vx intrinsics on RV32.

Craig Topper via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Mar 31 22:45:02 PDT 2021


craig.topper created this revision.
craig.topper added reviewers: HsiangKai, khchen, evandro, arcbbb.
Herald added subscribers: StephenFan, vkmr, frasercrmck, luismarques, apazos, sameer.abuasal, s.egerton, Jim, benna, psnobl, jocewei, PkmX, the_o, brucehoult, MartinMosbeck, rogfer01, edward-jones, zzheng, jrtc27, shiva0217, kito-cheng, niosHD, sabuasal, simoncook, johnrusso, rbar, asb, hiraditya.
craig.topper requested review of this revision.
Herald added a subscriber: MaskRay.
Herald added a project: LLVM.

We need to splat the scalar separately and use .vv, but there is
no vmsgt(u).vv. So add isel patterns to select vmslt(u).vv with
swapped operands.

We also need to get VT to use for the splat from an operand rather
than the result since the result VT is nxvXi1.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D99704

Files:
  llvm/lib/Target/RISCV/RISCVISelLowering.cpp
  llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
  llvm/test/CodeGen/RISCV/rvv/vmsgt-rv32.ll
  llvm/test/CodeGen/RISCV/rvv/vmsgt-rv64.ll
  llvm/test/CodeGen/RISCV/rvv/vmsgtu-rv32.ll
  llvm/test/CodeGen/RISCV/rvv/vmsgtu-rv64.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D99704.334593.patch
Type: text/x-patch
Size: 27386 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210401/ec0f037a/attachment-0001.bin>


More information about the llvm-commits mailing list