HomePhabricator

[ValueTypes][RISCV] Cap RVV fixed-length vectors by size

Authored by frasercrmck on Jun 7 2021, 12:39 AM.

Description

[ValueTypes][RISCV] Cap RVV fixed-length vectors by size

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.

Reviewed By: craig.topper

Differential Revision: https://reviews.llvm.org/D103884

Details

Committed
frasercrmckJun 9 2021, 4:15 AM
Reviewer
craig.topper
Differential Revision
D103884: [ValueTypes][RISCV] Cap RVV fixed-length vectors by size
Parents
rGc92f505346b8: Correct the behavior of va_arg checking in C++
Branches
Unknown
Tags
Unknown