[all-commits] [llvm/llvm-project] 78767b: [RISCV] Add RISCVISD::ROLW/RORW use those for cust...
Craig Topper via All-commits
all-commits at lists.llvm.org
Fri Nov 20 10:26:57 PST 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 78767b7f8e8a31d0941a572ecab0918f6fcc8024
https://github.com/llvm/llvm-project/commit/78767b7f8e8a31d0941a572ecab0918f6fcc8024
Author: Craig Topper <craig.topper at sifive.com>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.h
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.h
M llvm/lib/Target/RISCV/RISCVInstrInfoB.td
M llvm/test/CodeGen/RISCV/rv32Zbp.ll
M llvm/test/CodeGen/RISCV/rv64Zbbp.ll
M llvm/test/CodeGen/RISCV/rv64Zbp.ll
Log Message:
-----------
[RISCV] Add RISCVISD::ROLW/RORW use those for custom legalizing i32 rotl/rotr on RV64IZbb.
This should result in better utilization of RORIW since we
don't need to look for a SIGN_EXTEND_INREG that may not exist.
Also remove rotl/rotr isel matching to GREVI and just prefer RORI.
This is to keep consistency so we don't have to match ROLW/RORW
to GREVIW as well. I imagine RORI/RORIW performance will be the
same or better than GREVI.
Differential Revision: https://reviews.llvm.org/D91449
More information about the All-commits
mailing list