This is an archive of the discontinued LLVM Phabricator instance.

[RISCV] Handle vmv.x.s intrinsic for i64 vectors on RV32.
ClosedPublic

Authored by craig.topper on Mar 10 2021, 2:41 PM.

Diff Detail

Event Timeline

craig.topper created this revision.Mar 10 2021, 2:41 PM
craig.topper requested review of this revision.Mar 10 2021, 2:41 PM
Herald added a project: Restricted Project. · View Herald TranscriptMar 10 2021, 2:41 PM
Herald added a subscriber: MaskRay. · View Herald Transcript
frasercrmck accepted this revision.Mar 11 2021, 2:14 AM

LGTM. My other question is more about potential future improvements.

llvm/test/CodeGen/RISCV/rvv/vmv.x.s-rv32.ll
243

I was wondering, given that we need to move 32 into a vector register with a separate instruction, would it potentially be better to use an e32 vslidedown by 1? Not sure how vsetvli + vslidedown vs add + vsrl stacks up in terms of performance.

This revision is now accepted and ready to land.Mar 11 2021, 2:14 AM