[RISCV] Unify scalable- and fixed-vector INSERT_SUBVECTOR lowering
authorFraser Cormack <fraser@codeplay.com>
Fri, 26 Feb 2021 12:42:52 +0000 (12:42 +0000)
committerFraser Cormack <fraser@codeplay.com>
Mon, 1 Mar 2021 11:38:47 +0000 (11:38 +0000)
commit4ea734e6ec9da0587da733424fe616b7e401cf8c
tree8592db866502e6e400cce28c2e078bf810849ad1
parentbd4d4216881d2ddba170808a8cd2f7b75cbc8de9
[RISCV] Unify scalable- and fixed-vector INSERT_SUBVECTOR lowering

This patch unifies the two disparate paths for lowering INSERT_SUBVECTOR
operations under one roof. Consequently, with this patch it is possible to
support any fixed-length subvector insertion, not just "cast-like" ones.

As before, support for the insertion of mask vectors will come in a
separate patch.

Reviewed By: craig.topper

Differential Revision: https://reviews.llvm.org/D97543
llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
llvm/lib/Target/RISCV/RISCVISelLowering.cpp
llvm/test/CodeGen/RISCV/rvv/fixed-vectors-insert-subvector.ll [new file with mode: 0644]