[PATCH] D103884: [ValueTypes][RISCV] Cap RVV fixed-length vectors by size
Fraser Cormack via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Jun 8 03:55:34 PDT 2021
frasercrmck created this revision.
frasercrmck added reviewers: craig.topper, RKSimon, evandro, rogfer01, HsiangKai, arcbbb, khchen.
Herald added subscribers: vkmr, dexonsmith, luismarques, apazos, sameer.abuasal, s.egerton, Jim, benna, psnobl, jocewei, PkmX, the_o, brucehoult, MartinMosbeck, edward-jones, zzheng, jrtc27, shiva0217, kito-cheng, niosHD, sabuasal, simoncook, johnrusso, rbar, asb, hiraditya, dschuff.
frasercrmck requested review of this revision.
Herald added subscribers: llvm-commits, MaskRay, aheejin.
Herald added a project: LLVM.
This patch changes RVV's policy for its supported list of fixed-length
vector types by capping by vector size rather than element count. Now
all 1024-byte vectors (of supported element types) are supported, rather
than all 256-element vectors.
This is a more natural fit for the architecture, and allows us to, for
example, improve the support for vector bitcasts.
This change necessitated the adding of some new simple types to avoid
"regressing" on the number of currently-supported vectors. We round out
the 1024-byte types by adding `v512i8`, `v1024i8`, `v512i16` and
`v512f16`.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D103884
Files:
llvm/include/llvm/CodeGen/ValueTypes.td
llvm/include/llvm/Support/MachineValueType.h
llvm/lib/CodeGen/ValueTypes.cpp
llvm/lib/Target/RISCV/RISCVISelLowering.cpp
llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitcast-large-vector.ll
llvm/test/CodeGen/RISCV/rvv/interleave-crash.ll
llvm/utils/TableGen/CodeGenTarget.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D103884.350566.patch
Type: text/x-patch
Size: 162812 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210608/c6a35391/attachment-0001.bin>
More information about the llvm-commits
mailing list