[all-commits] [llvm/llvm-project] 84e85e: [SelectionDAG][VP] Provide expansion for VP_MERGE
Fraser Cormack via All-commits
all-commits at lists.llvm.org
Thu Jan 27 01:11:18 PST 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 84e85e025e02211d1f24ea423cd1be8945e70009
https://github.com/llvm/llvm-project/commit/84e85e025e02211d1f24ea423cd1be8945e70009
Author: Fraser Cormack <fraser at codeplay.com>
Date: 2022-01-27 (Thu, 27 Jan 2022)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vpmerge.ll
M llvm/test/CodeGen/RISCV/rvv/vpmerge-sdnode.ll
Log Message:
-----------
[SelectionDAG][VP] Provide expansion for VP_MERGE
This patch adds support for expanding VP_MERGE through a sequence of
vector operations producing a full-length mask setting up the elements
past EVL/pivot to be false, combining this with the original mask, and
culminating in a full-length vector select.
This expansion should work for any data type, though the only use for
RVV is for boolean vectors, which themselves rely on an expansion for
the VSELECT.
Reviewed By: craig.topper
Differential Revision: https://reviews.llvm.org/D118058
More information about the All-commits
mailing list