This is an archive of the discontinued LLVM Phabricator instance.

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

Authored by craig.topper on Mar 31 2021, 10:44 PM.

Details

Summary

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.

Diff Detail

Event Timeline

craig.topper created this revision.Mar 31 2021, 10:44 PM
craig.topper requested review of this revision.Mar 31 2021, 10:45 PM
Herald added a project: Restricted Project. · View Herald TranscriptMar 31 2021, 10:45 PM
Herald added a subscriber: MaskRay. · View Herald Transcript
HsiangKai accepted this revision.Apr 1 2021, 9:25 AM

LGTM.

This revision is now accepted and ready to land.Apr 1 2021, 9:25 AM
This revision was landed with ongoing or failed builds.Apr 1 2021, 10:38 AM
This revision was automatically updated to reflect the committed changes.