-
- Downloads
[RISCV] Always select (and (srl X, C), Mask) as (srli (slli X, C2), C3).
SLLI is always compressible to C.SLLI as long as the source and dest register is the same. ANDI and SRLI are only compressible if the register is x8-x15. By using SLLI we have a better chance of generating shorter code. I had to exclude one exclusion for the BEXTI case so that it's pattern match could still fire. Reviewed By: luismarques Differential Revision: https://reviews.llvm.org/D123336
Showing
- llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp 4 additions, 2 deletionsllvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
- llvm/test/CodeGen/RISCV/div-by-constant.ll 16 additions, 16 deletionsllvm/test/CodeGen/RISCV/div-by-constant.ll
- llvm/test/CodeGen/RISCV/div.ll 20 additions, 20 deletionsllvm/test/CodeGen/RISCV/div.ll
- llvm/test/CodeGen/RISCV/rv32zbb-zbp-zbkb.ll 4 additions, 4 deletionsllvm/test/CodeGen/RISCV/rv32zbb-zbp-zbkb.ll
- llvm/test/CodeGen/RISCV/rv32zbs.ll 4 additions, 4 deletionsllvm/test/CodeGen/RISCV/rv32zbs.ll
- llvm/test/CodeGen/RISCV/rv32zbt.ll 4 additions, 4 deletionsllvm/test/CodeGen/RISCV/rv32zbt.ll
- llvm/test/CodeGen/RISCV/rv64zbs.ll 4 additions, 4 deletionsllvm/test/CodeGen/RISCV/rv64zbs.ll
- llvm/test/CodeGen/RISCV/srem-seteq-illegal-types.ll 26 additions, 26 deletionsllvm/test/CodeGen/RISCV/srem-seteq-illegal-types.ll
- llvm/test/CodeGen/RISCV/urem-seteq-illegal-types.ll 6 additions, 6 deletionsllvm/test/CodeGen/RISCV/urem-seteq-illegal-types.ll
Loading
Please register or sign in to comment