Implementations are allowed to optimize an x0 stride to perform
less memory accesses. This is the case in SiFive cores.
No idea if this is the case in other implementations. We might
need a tuning flag for this.
Paths
| Differential D100815
[RISCV] Turn splat shuffles of vector loads into strided load with stride of x0. ClosedPublic Authored by craig.topper on Apr 19 2021, 10:11 PM.
Details Summary Implementations are allowed to optimize an x0 stride to perform No idea if this is the case in other implementations. We might
Diff Detail
Event TimelineHerald added subscribers: StephenFan, vkmr, luismarques and 24 others. · View Herald TranscriptApr 19 2021, 10:11 PM This revision is now accepted and ready to land.Apr 22 2021, 2:35 AM Comment Actions LGTM too. I don't have an implementation at hand, so can't really add anything to the discussion about performance/tuning. Closed by commit rG70254ccb69fa: [RISCV] Turn splat shuffles of vector loads into strided load with stride of x0. (authored by craig.topper). · Explain WhyApr 22 2021, 10:03 AM This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 339698 llvm/lib/Target/RISCV/RISCVISelLowering.cpp
llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-vrgather.ll
llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-vrgather.ll
|