[all-commits] [llvm/llvm-project] e60a93: [RISCV] Use zext and shift for spread(4, 8) when ty...

Philip Reames via All-commits all-commits at lists.llvm.org
Thu Dec 5 16:34:37 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: e60a939a51252df594a0a9922cd511e5d9c2bd6e
      https://github.com/llvm/llvm-project/commit/e60a939a51252df594a0a9922cd511e5d9c2bd6e
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-12-05 (Thu, 05 Dec 2024)

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

  Log Message:
  -----------
  [RISCV] Use zext and shift for spread(4,8) when types allow (#118893)

For a spread with an element type small enough, we can use a zext and
shift to perform the shuffle. For e8, this covers spread(2,4,8), and for
e16 covers spread(2,4). Note that spread(2) is already covered by the
existing interleave logic, and is simply listed for completeness in the
prior description.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list