[all-commits] [llvm/llvm-project] f0a9aa: [RISCV] Use vmv.s.x for a constant build_vector wh...

Philip Reames via All-commits all-commits at lists.llvm.org
Mon Aug 7 17:15:23 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: f0a9aacdb9a2192c34963fe13b947a656c41bdda
      https://github.com/llvm/llvm-project/commit/f0a9aacdb9a2192c34963fe13b947a656c41bdda
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2023-08-07 (Mon, 07 Aug 2023)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-buildvec.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-interleave.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-vslide1up.ll

  Log Message:
  -----------
  [RISCV] Use vmv.s.x for a constant build_vector when the entire size is less than 32 bits

We have a variant of this for splats already, but hadn't handled the case where a single copy of the wider element can be inserted producing the entire required bit pattern. This shows up mostly in very small vector shuffle tests.

Differential Revision: https://reviews.llvm.org/D157299




More information about the All-commits mailing list