[VP][RISCV] Add vp.bswap and RISC-V support.
authorYeting Kuo <yeting.kuo@sifive.com>
Mon, 14 Nov 2022 09:58:18 +0000 (17:58 +0800)
committerYeting Kuo <yeting.kuo@sifive.com>
Wed, 16 Nov 2022 03:36:38 +0000 (11:36 +0800)
commit5c3ca10b097eed98e04239fedf7bd3af747afba2
tree42f407e721456a43dc204a5520eef09f93dd8572
parent8ef1cc9894430f6c7c722c63c227d3b84bf889e9
[VP][RISCV] Add vp.bswap and RISC-V support.

The patch also added function expandVPBSWAP to expand ISD::VP_BSWAP nodes.

Reviewed By: craig.topper

Differential Revision: https://reviews.llvm.org/D137928
13 files changed:
llvm/docs/LangRef.rst
llvm/include/llvm/CodeGen/TargetLowering.h
llvm/include/llvm/IR/Intrinsics.td
llvm/include/llvm/IR/VPIntrinsics.def
llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
llvm/lib/Target/RISCV/RISCVISelLowering.cpp
llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
llvm/test/Analysis/CostModel/RISCV/int-bit-manip.ll
llvm/test/CodeGen/RISCV/rvv/bswap-vp.ll [new file with mode: 0644]
llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bswap-vp.ll [new file with mode: 0644]
llvm/unittests/IR/VPIntrinsicTest.cpp